Id = (isset($arParams['id']) && $arParams['id'] <> '') ? $arParams['id'] : 'bxlhe'.mb_substr(uniqid(mt_rand(), true), 0, 4); $this->Id = preg_replace("/[^a-zA-Z0-9_:\.]/is", "", $this->Id); $this->cssPath = $basePath."light_editor.css"; $APPLICATION->SetAdditionalCSS($this->cssPath); $this->arJSPath = array( $basePath.'le_dialogs.js', $basePath.'le_controls.js', $basePath.'le_toolbarbuttons.js', $basePath.'le_core.js' ); $this->bBBCode = $arParams['BBCode'] === true; $this->bRecreate = $arParams['bRecreate'] === true; $arJS = Array(); $arCSS = Array(); foreach(GetModuleEvents("fileman", "OnBeforeLightEditorScriptsGet", true) as $arEvent) { $tmp = ExecuteModuleEventEx($arEvent, array($this->Id, $arParams)); if (!is_array($tmp)) continue; if (is_array($tmp['JS'])) { for($i = 0, $c = count($tmp['JS']); $i < $c; $i++) { if(file_exists($_SERVER['DOCUMENT_ROOT'].$tmp['JS'][$i])) $this->arJSPath[] = $tmp['JS'][$i]; } } } foreach($this->arJSPath as $path) { $APPLICATION->AddHeadScript($path); } //Messages $langPath = $_SERVER['DOCUMENT_ROOT'].'/bitrix/modules/fileman/lang/'.LANGUAGE_ID.'/classes/general/light_editor_js.php'; if(!file_exists($langPath)) $langPath = $_SERVER['DOCUMENT_ROOT'].'/bitrix/modules/fileman/lang/en/classes/general/light_editor_js.php'; $this->mess = __IncludeLang($langPath, true, true); $this->messOld = array(); if (!empty($this->mess)) { $this->messOld = array('Image' => $this->mess['Image'], 'Video' => $this->mess['Video'],'ImageSizing' => $this->mess['ImageSizing']); $jsMsg = ""; $APPLICATION->AddLangJS($jsMsg); } $this->bAutorized = is_object($USER) && $USER->IsAuthorized(); $this->bUseFileDialogs = $arParams['bUseFileDialogs'] !== false && $this->bAutorized; $this->bUseMedialib = $arParams['bUseMedialib'] !== false && COption::GetOptionString('fileman', "use_medialib", "Y") == "Y" && CMedialib::CanDoOperation('medialib_view_collection', 0); $this->bResizable = $arParams['bResizable'] === true; $this->bManualResize = $this->bResizable && $arParams['bManualResize'] !== false; $this->bAutoResize = $arParams['bAutoResize'] !== false; $this->bInitByJS = $arParams['bInitByJS'] === true; $this->bSaveOnBlur = $arParams['bSaveOnBlur'] !== false; $this->content = $arParams['content']; $this->inputName = isset($arParams['inputName']) ? $arParams['inputName'] : 'lha_content'; $this->inputId = isset($arParams['inputId']) ? $arParams['inputId'] : 'lha_content_id'; $this->videoSettings = is_array($arParams['videoSettings']) ? $arParams['videoSettings'] : array( 'maxWidth' => 640, 'maxHeight' => 480, 'WMode' => 'transparent', 'windowless' => true, 'bufferLength' => 20, 'skin' => '/bitrix/components/bitrix/player/mediaplayer/skins/bitrix.swf', 'logo' => '' ); if (!is_array($arParams['arFonts']) || count($arParams['arFonts']) <= 0) $arParams['arFonts'] = array('Arial', 'Verdana', 'Times New Roman', 'Courier', 'Tahoma', 'Georgia', 'Optima', 'Impact', 'Geneva', 'Helvetica'); if (!is_array($arParams['arFontSizes']) || count($arParams['arFontSizes']) <= 0) $arParams['arFontSizes'] = array('1' => 'xx-small', '2' => 'x-small', '3' => 'small', '4' => 'medium', '5' => 'large', '6' => 'x-large', '7' => 'xx-large'); // Tables //$this->arJSPath[] = $this->GetActualPath($basePath.'le_table.js'); $this->jsObjName = (isset($arParams['jsObjName']) && $arParams['jsObjName'] <> '') ? $arParams['jsObjName'] : 'LightHTMLEditor'.$this->Id; $this->jsObjName = preg_replace("/[^a-zA-Z0-9_:\.]/is", "", $this->jsObjName); if ($this->bResizable) { // Get height user settings $userOpt = CUserOptions::GetOption( 'fileman', 'LHESize_'.$this->Id, array('height' => $arParams['height']) ); $arParams['height'] = intval($userOpt['height']) > 0 ? $userOpt['height'] : $arParams['height']; } $this->JSConfig = array( 'id' => $this->Id, 'content' => $this->content, 'bBBCode' => $this->bBBCode, 'bUseFileDialogs' => $this->bUseFileDialogs, 'bUseMedialib' => $this->bUseMedialib, 'arSmiles' => $arParams['arSmiles'], 'arFonts' => $arParams['arFonts'], 'arFontSizes' => $arParams['arFontSizes'], 'inputName' => $this->inputName, 'inputId' => $this->inputId, 'videoSettings' => $this->videoSettings, 'bSaveOnBlur' => $this->bSaveOnBlur, 'bResizable' => $this->bResizable, 'autoResizeSaveSize' => $arParams['autoResizeSaveSize'] !== false, 'bManualResize' => $this->bManualResize, 'bAutoResize' => $this->bAutoResize, 'bReplaceTabToNbsp' => true, 'bSetDefaultCodeView' => isset($arParams['bSetDefaultCodeView']) && $arParams['bSetDefaultCodeView'], 'bBBParseImageSize' => isset($arParams['bBBParseImageSize']) && $arParams['bBBParseImageSize'], 'smileCountInToolbar' => intval($arParams['smileCountInToolbar']), 'bQuoteFromSelection' => isset($arParams['bQuoteFromSelection']) && $arParams['bQuoteFromSelection'], 'bConvertContentFromBBCodes' => isset($arParams['bConvertContentFromBBCodes']) && $arParams['bConvertContentFromBBCodes'], 'oneGif' => '/bitrix/images/1.gif', 'imagePath' => '/bitrix/images/fileman/light_htmledit/' ); // Set editor from visual mode to textarea for mobile devices if (!isset($this->JSConfig['bSetDefaultCodeView']) && CLightHTMLEditor::IsMobileDevice()) $this->JSConfig['bSetDefaultCodeView'] = true; if (isset($arParams['width']) && intval($arParams['width']) > 0) $this->JSConfig['width'] = $arParams['width']; if (isset($arParams['height']) && intval($arParams['height']) > 0) $this->JSConfig['height'] = $arParams['height']; if (isset($arParams['toolbarConfig'])) $this->JSConfig['toolbarConfig'] = $arParams['toolbarConfig']; if (isset($arParams['documentCSS'])) $this->JSConfig['documentCSS'] = $arParams['documentCSS']; if (isset($arParams['fontFamily'])) $this->JSConfig['fontFamily'] = $arParams['fontFamily']; if (isset($arParams['fontSize'])) $this->JSConfig['fontSize'] = $arParams['fontSize']; if (isset($arParams['lineHeight'])) $this->JSConfig['lineHeight'] = $arParams['lineHeight']; if (isset($arParams['bHandleOnPaste'])) $this->JSConfig['bHandleOnPaste'] = $arParams['bHandleOnPaste']; if (isset($arParams['autoResizeOffset'])) $this->JSConfig['autoResizeOffset'] = $arParams['autoResizeOffset']; if (isset($arParams['autoResizeMaxHeight'])) $this->JSConfig['autoResizeMaxHeight'] = $arParams['autoResizeMaxHeight']; if (isset($arParams['controlButtonsHeight'])) $this->JSConfig['controlButtonsHeight'] = $arParams['controlButtonsHeight']; if ($this->bBBCode) { $this->JSConfig['bParceBBImageSize'] = true; } if (isset($arParams['ctrlEnterHandler'])) $this->JSConfig['ctrlEnterHandler'] = $arParams['ctrlEnterHandler']; } function GetActualPath($path) { return $path.'?'.@filemtime($_SERVER['DOCUMENT_ROOT'].$path); } function Show($arParams) { CUtil::InitJSCore(array('window', 'ajax')); $this->Init($arParams); $this->BuildSceleton(); $this->InitScripts(); if ($this->bUseFileDialogs) $this->InitFileDialogs(); if ($this->bUseMedialib) $this->InitMedialibDialogs(); } function BuildSceleton() { $width = isset($this->JSConfig['width']) && intval($this->JSConfig['width']) > 0 ? $this->JSConfig['width'] : "100%"; $height = isset($this->JSConfig['height']) && intval($this->JSConfig['height']) > 0 ? $this->JSConfig['height'] : "100%"; $widthUnit = mb_strpos($width, "%") === false ? "px" : "%"; $heightUnit = mb_strpos($height, "%") === false ? "px" : "%"; $width = intval($width); $height = intval($height); $editorCellHeight = ($heightUnit == "px" && $height > 50 ? "height:".($height - 27 - ($this->bResizable ? 3 : 0))."px" : ""); ?> Fatal error: Uncaught Error: Using $this when not in object context in D:\ktt\ttepla.com\public_html\bitrix\modules\fileman\classes\general\light_editor.php:202 Stack trace: #0 {main} thrown in D:\ktt\ttepla.com\public_html\bitrix\modules\fileman\classes\general\light_editor.php on line 202