2010-12-02 23:34:41 +00:00
|
|
|
<?php
|
2012-10-17 14:28:05 -04:00
|
|
|
|
2010-12-02 23:34:41 +00:00
|
|
|
/**
|
|
|
|
|
* class.xmlMenu.php
|
2012-10-17 14:28:05 -04:00
|
|
|
*
|
|
|
|
|
* @package gulliver.system
|
2011-01-24 21:07:14 +00:00
|
|
|
*
|
2010-12-02 23:34:41 +00:00
|
|
|
* ProcessMaker Open Source Edition
|
2011-01-24 21:07:14 +00:00
|
|
|
* Copyright (C) 2004 - 2011 Colosa Inc.
|
2012-10-17 14:28:05 -04:00
|
|
|
*
|
2010-12-02 23:34:41 +00:00
|
|
|
* This program is free software: you can redistribute it and/or modify
|
|
|
|
|
* it under the terms of the GNU Affero General Public License as
|
|
|
|
|
* published by the Free Software Foundation, either version 3 of the
|
|
|
|
|
* License, or (at your option) any later version.
|
|
|
|
|
*
|
|
|
|
|
* This program is distributed in the hope that it will be useful,
|
|
|
|
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
2012-10-17 14:28:05 -04:00
|
|
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
2010-12-02 23:34:41 +00:00
|
|
|
* GNU Affero General Public License for more details.
|
2012-10-17 14:28:05 -04:00
|
|
|
*
|
2010-12-02 23:34:41 +00:00
|
|
|
* You should have received a copy of the GNU Affero General Public License
|
2012-10-17 14:28:05 -04:00
|
|
|
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
|
|
|
|
*
|
|
|
|
|
* For more information, contact Colosa Inc, 2566 Le Jeune Rd.,
|
2010-12-02 23:34:41 +00:00
|
|
|
* Coral Gables, FL, 33134, USA, or email info@colosa.com.
|
2012-10-17 14:28:05 -04:00
|
|
|
*
|
2010-12-02 23:34:41 +00:00
|
|
|
*/
|
2011-01-14 11:51:34 +00:00
|
|
|
|
2012-10-17 14:28:05 -04:00
|
|
|
/**
|
|
|
|
|
*
|
2011-01-14 11:51:34 +00:00
|
|
|
* @package gulliver.system
|
|
|
|
|
*/
|
2012-10-17 14:28:05 -04:00
|
|
|
class xmlMenu extends form
|
|
|
|
|
{
|
|
|
|
|
public $type = 'xmlmenu';
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* XmlForm_Field_XmlMenu
|
|
|
|
|
*
|
|
|
|
|
* extends XmlForm_Field
|
|
|
|
|
*
|
|
|
|
|
* @package gulliver.system
|
|
|
|
|
*
|
|
|
|
|
*/
|
|
|
|
|
class XmlForm_Field_XmlMenu extends XmlForm_Field
|
|
|
|
|
{
|
|
|
|
|
public $xmlfile = '';
|
|
|
|
|
public $type = 'xmlmenuDyn';
|
|
|
|
|
public $xmlMenu;
|
|
|
|
|
public $home = '';
|
|
|
|
|
public $withoutLabel = true;
|
2010-12-02 23:34:41 +00:00
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* XmlForm_Field_XmlMenu
|
|
|
|
|
*
|
2012-10-17 14:28:05 -04:00
|
|
|
* @param string $xmlNode
|
|
|
|
|
* @param string $lang default value 'en'
|
|
|
|
|
* @param string $home default value ''
|
|
|
|
|
* @param string $owner
|
2010-12-02 23:34:41 +00:00
|
|
|
*
|
|
|
|
|
* @return none
|
2012-10-17 14:28:05 -04:00
|
|
|
*/
|
|
|
|
|
public function XmlForm_Field_XmlMenu ($xmlNode, $lang = 'en', $home = '', $owner = null)
|
2010-12-02 23:34:41 +00:00
|
|
|
{
|
2012-10-17 14:28:05 -04:00
|
|
|
parent::XmlForm_Field( $xmlNode, $lang, $home, $owner );
|
|
|
|
|
$this->home = $home;
|
2010-12-02 23:34:41 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* render
|
|
|
|
|
*
|
2012-10-17 14:28:05 -04:00
|
|
|
* @param string $value
|
2010-12-02 23:34:41 +00:00
|
|
|
*
|
|
|
|
|
* @return object $out
|
2012-10-17 14:28:05 -04:00
|
|
|
*/
|
|
|
|
|
public function render ($value)
|
|
|
|
|
{
|
|
|
|
|
$this->xmlMenu = new xmlMenu( $this->xmlfile, $this->home );
|
|
|
|
|
$this->xmlMenu->setValues( $value );
|
|
|
|
|
$this->type = 'xmlmenuDyn';
|
|
|
|
|
$template = PATH_CORE . 'templates/' . $this->type . '.html';
|
|
|
|
|
$out = $this->xmlMenu->render( $template, $scriptCode );
|
|
|
|
|
$oHeadPublisher = & headPublisher::getSingleton();
|
|
|
|
|
$oHeadPublisher->addScriptFile( $this->xmlMenu->scriptURL );
|
|
|
|
|
$oHeadPublisher->addScriptCode( $scriptCode );
|
|
|
|
|
return $out;
|
2010-12-02 23:34:41 +00:00
|
|
|
}
|
2012-10-17 14:28:05 -04:00
|
|
|
|
2010-12-02 23:34:41 +00:00
|
|
|
/**
|
|
|
|
|
* renderGrid
|
|
|
|
|
*
|
2012-10-17 14:28:05 -04:00
|
|
|
* @param string $value
|
2010-12-02 23:34:41 +00:00
|
|
|
*
|
|
|
|
|
* @return none
|
2012-10-17 14:28:05 -04:00
|
|
|
*/
|
|
|
|
|
public function renderGrid ($value)
|
2010-12-02 23:34:41 +00:00
|
|
|
{
|
2012-10-17 14:28:05 -04:00
|
|
|
return $this->render( $value );
|
2010-12-02 23:34:41 +00:00
|
|
|
}
|
2012-10-17 14:28:05 -04:00
|
|
|
}
|
2010-12-02 23:34:41 +00:00
|
|
|
|