2010-12-02 23:34:41 +00:00
|
|
|
<?php
|
2012-10-09 13:25:46 -04:00
|
|
|
|
2010-12-02 23:34:41 +00:00
|
|
|
/**
|
2017-08-11 18:13:07 -04:00
|
|
|
* ToolBar - ToolBar
|
|
|
|
|
* XmlFormFieldToolButton - XmlFormFieldToolButton class
|
2012-10-09 13:25:46 -04:00
|
|
|
*
|
2011-02-01 12:49:40 +00:00
|
|
|
* @package workflow.engine.ProcessMaker
|
2010-12-02 23:34:41 +00:00
|
|
|
*/
|
2017-08-14 15:53:48 -04:00
|
|
|
class XmlFormFieldToolButton extends XmlFormField
|
2010-12-02 23:34:41 +00:00
|
|
|
{
|
2013-03-05 14:11:12 -04:00
|
|
|
public $file = '';
|
|
|
|
|
public $fileAlt = '';
|
|
|
|
|
public $url = '';
|
|
|
|
|
public $urlAlt = '';
|
|
|
|
|
public $home = 'public_html';
|
2012-10-09 13:25:46 -04:00
|
|
|
/* types of buttons:
|
2010-12-02 23:34:41 +00:00
|
|
|
* image
|
|
|
|
|
* text
|
|
|
|
|
* image/text
|
|
|
|
|
* text/image
|
|
|
|
|
*/
|
2013-03-05 14:11:12 -04:00
|
|
|
public $buttonType = 'image';
|
|
|
|
|
public $withoutLabel = false;
|
|
|
|
|
public $buttonStyle = '';
|
|
|
|
|
/* $hoverMethod : back | switch */
|
|
|
|
|
public $hoverMethod = 'back';
|
|
|
|
|
public $class;
|
2012-10-09 13:25:46 -04:00
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* Prints the components of the toolBar
|
|
|
|
|
*
|
|
|
|
|
* @param string $value
|
|
|
|
|
* @return string
|
|
|
|
|
*/
|
2013-03-05 14:11:12 -04:00
|
|
|
public function render($value)
|
2012-10-09 13:25:46 -04:00
|
|
|
{
|
|
|
|
|
$url = $this->file;
|
2013-03-05 14:11:12 -04:00
|
|
|
if ($this->home === "methods") {
|
|
|
|
|
$url = G::encryptlink(SYS_URI . $url);
|
|
|
|
|
}
|
|
|
|
|
if ($this->home === "public_html") {
|
2012-10-09 13:25:46 -04:00
|
|
|
$url = '/' . $url;
|
2013-03-05 14:11:12 -04:00
|
|
|
}
|
2012-10-09 13:25:46 -04:00
|
|
|
$urlAlt = $this->fileAlt;
|
|
|
|
|
if ($this->fileAlt !== '') {
|
2013-03-05 14:11:12 -04:00
|
|
|
if ($this->home === "methods") {
|
|
|
|
|
$urlAlt = G::encryptlink(SYS_URI . $urlAlt);
|
|
|
|
|
}
|
|
|
|
|
if ($this->home === "public_html") {
|
2012-10-09 13:25:46 -04:00
|
|
|
$urlAlt = '/' . $urlAlt;
|
2013-03-05 14:11:12 -04:00
|
|
|
}
|
2010-12-02 23:34:41 +00:00
|
|
|
}
|
2012-10-09 13:25:46 -04:00
|
|
|
$this->url = $url;
|
|
|
|
|
$this->urlAlt = $urlAlt;
|
|
|
|
|
switch ($this->buttonType) {
|
|
|
|
|
case 'image':
|
|
|
|
|
$html = '';
|
|
|
|
|
if ($this->hoverMethod === 'back') {
|
2013-03-05 14:11:12 -04:00
|
|
|
$html = '<img src="' . htmlentities($url, ENT_QUOTES, 'utf-8') . '"' . (($this->style) ? ' style="' . $this->style . '"' : '') . ' onmouseover=\'backImage(this,"url(' . htmlentities($urlAlt, ENT_QUOTES, 'utf-8') . ') no-repeat")\' onmouseout=\'backImage(this,"")\' title=\'' . addslashes($this->label) . '\' />';
|
2012-10-09 13:25:46 -04:00
|
|
|
} elseif ($this->hoverMethod === 'switch') {
|
2013-03-05 14:11:12 -04:00
|
|
|
$html = '<img src="' . htmlentities($url, ENT_QUOTES, 'utf-8') . '"' . (($this->style) ? ' style="' . $this->style . '"' : '') . ' onmouseover=\'switchImage(this,"' . htmlentities($url, ENT_QUOTES, 'utf-8') . '","' . htmlentities($urlAlt, ENT_QUOTES, 'utf-8') . '")\' onmouseout=\'switchImage(this,"' . htmlentities($url, ENT_QUOTES, 'utf-8') . '","' . htmlentities($urlAlt, ENT_QUOTES, 'utf-8') . '")\'/>';
|
2012-10-09 13:25:46 -04:00
|
|
|
} else {
|
2013-03-05 14:11:12 -04:00
|
|
|
$html = '<img src="' . htmlentities($url, ENT_QUOTES, 'utf-8') . '"' . (($this->style) ? ' style="' . $this->style . '"' : '') . '/>';
|
2012-10-09 13:25:46 -04:00
|
|
|
}
|
|
|
|
|
break;
|
|
|
|
|
case 'text':
|
2013-03-05 14:11:12 -04:00
|
|
|
$html = $this->htmlentities($this->label, ENT_QUOTES, 'utf-8');
|
2012-10-09 13:25:46 -04:00
|
|
|
break;
|
|
|
|
|
case 'html':
|
2013-03-05 14:11:12 -04:00
|
|
|
$html = '<div ' . ' onmouseover=\'backImage(this,"url(' . htmlentities($urlAlt, ENT_QUOTES, 'utf-8') . ') no-repeat")\' onmouseout=\'backImage(this,"")\' style="width:25px;height:25px;margin-bottom:3px">' . $this->label . '</div>';
|
2012-10-09 13:25:46 -04:00
|
|
|
break;
|
|
|
|
|
case 'image/text':
|
2013-03-05 14:11:12 -04:00
|
|
|
$html = '<img src="' . htmlentities($url, ENT_QUOTES, 'utf-8') . '"' . (($this->style) ? ' style="' . $this->style . '"' : '') . '/><br/>' . $this->htmlentities($this->label, ENT_QUOTES, 'utf-8');
|
2012-10-09 13:25:46 -04:00
|
|
|
break;
|
|
|
|
|
case 'text/image':
|
2013-03-05 14:11:12 -04:00
|
|
|
$html = $this->htmlentities($this->label, ENT_QUOTES, 'utf-8') . '<br/><img src="' . htmlentities($url, ENT_QUOTES, 'utf-8') . '"' . (($this->style) ? ' style="' . $this->style . '"' : '') . '/>';
|
2012-10-09 13:25:46 -04:00
|
|
|
break;
|
2012-11-14 13:42:31 -04:00
|
|
|
case 'dropdown':
|
|
|
|
|
$html = '';
|
|
|
|
|
if (isset($this->owner->values['PRO_UID'])) {
|
2017-08-04 16:21:06 -04:00
|
|
|
$criteria = ProcessMap::getDynaformsCriteria($this->owner->values['PRO_UID']);
|
2012-11-14 13:42:31 -04:00
|
|
|
$dataset = DynaformPeer::doSelectRS($criteria);
|
|
|
|
|
if ($dataset->getRecordCount() > 0) {
|
2012-12-20 12:05:05 -04:00
|
|
|
$html .= '<span style="display:inline-block; font-size: 8pt;margin-left: 5px;margin-bottom: 3px;">' . G::LoadTranslation('ID_DYNAFORM');
|
2012-12-04 12:09:14 -04:00
|
|
|
$html .= ': <select id="_dynaformsList_" onchange="window.location = \'dynaforms_Editor?PRO_UID=' . $this->owner->values['PRO_UID'];
|
2014-03-13 17:02:58 -04:00
|
|
|
$html .= '&DYN_UID=\' + this.value + \'' . (isset($_REQUEST['processMap3']) ? '&processMap3=1' : '') . '\';" class="module_app_input___gray">';
|
2012-11-14 13:42:31 -04:00
|
|
|
$dataset->setFetchmode(ResultSet::FETCHMODE_ASSOC);
|
|
|
|
|
$dataset->next();
|
|
|
|
|
while ($row = $dataset->getRow()) {
|
|
|
|
|
$html .= '<option value="' . $row['DYN_UID'] . '"';
|
|
|
|
|
$html .= ($this->owner->values['DYN_UID'] == $row['DYN_UID'] ? ' selected="selected"' : '') . '>';
|
|
|
|
|
$html .= htmlentities($row['DYN_TITLE'], ENT_QUOTES, 'utf-8') . '</option>';
|
|
|
|
|
$dataset->next();
|
|
|
|
|
}
|
|
|
|
|
$html .= '</select></span>';
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
return $html;
|
|
|
|
|
break;
|
2012-10-09 13:25:46 -04:00
|
|
|
case 'class':
|
2012-12-20 12:05:05 -04:00
|
|
|
$html = '<a href="#" onclick="' . $this->onclick . '" onmouseover="backImage(this, \'url(/images/dynamicForm/hover.gif) no-repeat\')" onmouseout="backImage(this, \'\')" style="height:25px;margin-bottom:3px">
|
2013-03-05 14:11:12 -04:00
|
|
|
<div class="' . $this->class . '" title="' . strip_tags($this->label) . '" style="height:25px;margin-bottom:3px"></div>
|
2011-06-02 15:48:17 -04:00
|
|
|
</a>';
|
2012-10-09 13:25:46 -04:00
|
|
|
return $html;
|
|
|
|
|
}
|
2013-03-05 14:11:12 -04:00
|
|
|
return '<a class="toolButton" ' . (($this->buttonStyle) ? ' style="' . $this->buttonStyle . '"' : '') . (($this->onclick) ? ' onclick="' . htmlentities($this->onclick, ENT_QUOTES, 'utf-8') . '"' : '') . '>' . $html . '</a>';
|
2010-12-02 23:34:41 +00:00
|
|
|
}
|
|
|
|
|
}
|