. * * For more information, contact Colosa Inc, 2566 Le Jeune Rd., * Coral Gables, FL, 33134, USA, or email info@colosa.com. * */ /** * popupMenu - popupMenu class * @package workflow.engine.ProcessMaker * @copyright COLOSA */ class popupMenu extends form { var $type = 'popupMenu'; var $theme = 'processmaker'; /** * Print the popup * @param string $tableId * @param array $tableFields * @return array */ function renderPopup( $tableId, $tableFields ) { $this->name =$tableId; $fields = array_keys( $tableFields); foreach( $fields as $f ) { switch ( strtolower($tableFields[$f]['Type'])) { case 'javascript': case 'button': case 'private': case 'hidden': case 'cellmark': break; default: $label = ($tableFields[$f]['Label'] !='' ) ? $tableFields[$f]['Label'] : $f; $label = str_replace("\n", ' ', $label); $pmXmlNode = new Xml_Node( $f, 'complete', '', array ( 'label' => $label, 'type' => 'popupOption', 'launch' => $tableId . '.showHideField("' . $f . '")' ) ); $this->fields[$f] = new XmlForm_Field_popupOption( $pmXmlNode ); $this->values[$f]=''; } } $scTemp = ''; $this->values['PAGED_TABLE_ID'] = $tableId; print( parent::render( PATH_CORE . 'templates/popupMenu.html', $scTemp)); $sc = "" ; return $sc; } } /** * XmlForm_Field_popupOption - XmlForm_Field_popupOption class * @package workflow.engine.ProcessMaker * @copyright COLOSA */ class XmlForm_Field_popupOption extends XmlForm_Field { var $launch = ''; /** * Get Events * @return string */ function getEvents( ) { $script = '{name:"' . $this->name . '",text:"' . addcslashes($this->label,'\\"') . '", launch:leimnud.closure({Function:function(target){' . $this->launch . '}, args:target})}'; return $script; } } ?>