_oTemplate = $oTemplate;
else
$this->_oTemplate = BxDolTemplate::getInstance();
}
/**
* Attach editor to HTML element, in most cases - textarea.
* @param $sSelector - jQuery selector to attach editor to.
* @param $iViewMode - editor view mode: BX_EDITOR_STANDARD, BX_EDITOR_MINI, BX_EDITOR_FULL
* @param $bDynamicMode - is AJAX mode or not, the HTML with editor area is loaded synamically.
*/
public function attachEditor ($sSelector, $iViewMode = BX_EDITOR_STANDARD, $bDynamicMode = false) {
// set visual mode
switch ($iViewMode) {
case BX_EDITOR_MINI:
$sToolsItems = self::$CONF_MINI;
break;
case BX_EDITOR_FULL:
$sToolsItems = self::$CONF_FULL;
break;
case BX_EDITOR_STANDARD:
default:
$sToolsItems = self::$CONF_STANDARD;
}
// initialize editor
$sInitEditor = $this->_replaceMarkers(self::$CONF_COMMON, array(
'bx_var_custom_init' => $sToolsItems,
'bx_var_selector' => bx_js_string($sSelector, BX_ESCAPE_STR_APOS),
'bx_var_css_path' => bx_js_string($this->_oTemplate->getCssUrl('editor.css'), BX_ESCAPE_STR_APOS),
));
if ($bDynamicMode) {
$sScript = $this->_oTemplate->addCss(BX_DOL_URL_PLUGINS . 'cleditor/jquery.cleditor.css', true);
$sScript .= "";
} else {
$sScript = "";
}
return $this->_addJsCss($bDynamicMode) . $sScript;
}
/**
* Add css/js files which are needed for editor display and functionality.
*/
protected function _addJsCss($bDynamicMode = false, $sInitEditor = '') {
if ($bDynamicMode)
return '';
if ($this->_bJsCssAdded)
return '';
$this->_oTemplate->addCss(BX_DOL_URL_PLUGINS . 'cleditor/jquery.cleditor.css');
$this->_oTemplate->addJs(BX_DOL_URL_PLUGINS . 'cleditor/jquery.cleditor.min.js');
$this->_bJsCssAdded = true;
return '';
}
}
/** @} */