Войти
Введите цифры и буквы
var ls = ls || {}; /** * Различные настройки */ ls.skinsettings = (function ($) { this.getTinymce = function() { return { mode : "specific_textareas", editor_selector : "mce-editor", theme : "advanced", content_css : DIR_STATIC_SKIN + "/css/reset.css" + "," + DIR_STATIC_SKIN + "/css/tinymce.css?" + new Date().getTime(), theme_advanced_toolbar_location : "top", theme_advanced_toolbar_align : "left", theme_advanced_buttons1 : "fontselect,fontsizeselect,|,lshselect,bold,italic,underline,strikethrough,|bullist,numlist,|,undo,redo,|,lslink,unlink,lsvideo,lsimage,pagebreak,code", theme_advanced_buttons2 : "justifyleft,justifycenter,justifyright,justifyfull,|,tablecontrols,|,forecolor,backcolor", theme_advanced_buttons3 : "", theme_advanced_statusbar_location : "bottom", theme_advanced_resizing : true, theme_advanced_resize_horizontal : 0, theme_advanced_resizing_use_cookie : 0, theme_advanced_path : false, object_resizing : true, force_br_newlines : true, forced_root_block : '', // Needed for 3.x /* force_p_newlines : false, */ //plugins : "lseditor,safari,inlinepopups,media,pagebreak,autoresize", plugins: "lseditor,safari,autolink,lists,spellchecker,pagebreak,style,layer,table,save,advhr,advimage,advlink,emotions,iespell,inlinepopups,insertdatetime,preview,media,searchreplace,print,contextmenu,paste,directionality,fullscreen,noneditable,visualchars,nonbreaking,xhtmlxtras,template", convert_urls : false, extended_valid_elements : "embed[src|type|allowscriptaccess|allowfullscreen|width|height]", pagebreak_separator : "<cut>", media_strict : false, language : TINYMCE_LANG, inline_styles: false, formats : { underline : {inline : 'u', exact : true}, strikethrough : {inline : 's', exact : true} } } }; return this; }).call(ls.skinsettings || {},jQuery);
<?php return array( 'default' => array( // Разрешённые теги 'cfgAllowTags' => array( // вызов метода с параметрами array( array('ls','cut','a', 'img', 'i', 'b', 'u', 's', 'video', 'em', 'strong', 'nobr', 'li', 'ol', 'ul', 'sup', 'abbr', 'sub', 'acronym', 'h4', 'h5', 'h6', 'br', 'hr', 'pre', 'code', 'object', 'param', 'embed', 'blockquote', 'iframe','table','th','tr','td','p','span'), ), ), // Коротие теги типа 'cfgSetTagShort' => array( array( array('br','img', 'hr', 'cut','ls') ), ), // Преформатированные теги 'cfgSetTagPreformatted' => array( array( array('pre','code','video') ), ), // Разрешённые параметры тегов 'cfgAllowTagParams' => array( // вызов метода array( 'img', array('src', 'alt' => '#text', 'title', 'align' => array('right', 'left', 'center', 'middle'), 'width' => '#int', 'height' => '#int', 'hspace' => '#int', 'vspace' => '#int', 'class'=> array('image-center')) ), // следующий вызов метода array( 'a', array('title', 'href', 'rel' => '#text', 'name' => '#text', 'target' => array('_blank')) ), // и т.д. array( 'cut', array('name') ), array( 'object', array('width' => '#int', 'height' => '#int', 'data' => array('#domain'=>array('youtube.com','rutube.ru','vimeo.com')), 'type' => '#text') ), array( 'param', array('name' => '#text', 'value' => '#text') ), array( 'embed', array('src' => array('#domain'=>array('youtube.com','rutube.ru','vimeo.com')), 'type' => '#text','allowscriptaccess' => '#text', 'allowfullscreen' => '#text','width' => '#int', 'height' => '#int', 'flashvars'=> '#text', 'wmode'=> '#text') ), array( 'acronym', array('title') ), array( 'abbr', array('title') ), array( 'iframe', array('width' => '#int', 'height' => '#int', 'src' => array('#domain'=>array('youtube.com','rutube.ru','vimeo.com','1tv.ru'))) ), array( 'ls', array('user'=>'#text') ), array( 'td', array('colspan'=>'#int','rowspan'=>'#int','align'=>array('right', 'left', 'center', 'justify'),'height'=>'#int','width'=>'#int') ), array( 'table', array('style'=>'#text','border'=>'#int','cellpadding'=>'#int','cellspacing'=>'#int','align'=>array('right', 'left', 'center'),'height'=>'#int','width'=>'#int') ), array( 'p', array('style'=>'#text') ), array( 'span', array('style'=>'#text') ), ), // допустимые комбинации значений у параметров 'cfgSetTagParamCombination' => array( array( 'param', 'name', array( 'allowScriptAccess' => array( 'value'=>array('sameDomain'), ), 'movie' => array( 'value'=>array('#domain'=>array('youtube.com','rutube.ru','vimeo.com')), ), 'align' => array( 'value'=>array('bottom','middle','top','left','right'), ), 'base' => array( 'value'=>true, ), 'bgcolor' => array( 'value'=>true, ), 'border' => array( 'value'=>true, ), 'devicefont' => array( 'value'=>true, ), 'flashVars' => array( 'value'=>true, ), 'hspace' => array( 'value'=>true, ), 'quality' => array( 'value'=>array('low','medium','high','autolow','autohigh','best'), ), 'salign' => array( 'value'=>array('L','T','R','B','TL','TR','BL','BR'), ), 'scale' => array( 'value'=>array('scale','showall','noborder','exactfit'), ), 'tabindex' => array( 'value'=>true, ), 'title' => array( 'value'=>true, ), 'type' => array( 'value'=>true, ), 'vspace' => array( 'value'=>true, ), 'wmode' => array( 'value'=>array('window','opaque','transparent'), ), ), true, // Удалять тег, если нет основного значения параметра в списке комбинаций ), ), // Параметры тегов являющиеся обязательными 'cfgSetTagParamsRequired' => array( array( 'img', 'src' ), ), // Теги которые необходимо вырезать из текста вместе с контентом 'cfgSetTagCutWithContent' => array( array( array('script', 'style') ), ), // Вложенные теги 'cfgSetTagChilds' => array( array( 'ul', array('li'), false, true ), array( 'ol', array('li'), false, true ), array( 'object', 'param', false, true ), array( 'object', 'embed', false, false ), array( 'table', array('tr'), false, //true sersar 02.07.2015 false ), array( 'tr', array('td','th'), false, true ), ), // Если нужно оставлять пустые не короткие теги 'cfgSetTagIsEmpty' => array( array( array('param','embed','a','iframe') ), ), // Не нужна авто-расстановка 'cfgSetTagNoAutoBr' => array( array( array('ul','ol','object','table','tr') ) ), // Теги с обязательными параметрами 'cfgSetTagParamDefault' => array( array( 'embed', 'wmode', 'opaque', true ), ), // Отключение авто-добавления 'cfgSetAutoBrMode' => array( array( //true false // sersar 02.07.2015 ) ), // Автозамена 'cfgSetAutoReplace' => array( array( array('±', '©', '©', '®', '©', '©', '®'), array('±', '©', '©', '®', '©', '©', '®') ) ), // Список допустимых протоколов для ссылок 'cfgSetLinkProtocolAllow' => array( array( array('http','https','ftp') ) ), 'cfgSetTagNoTypography' => array( array( array('code','video','object') ), ), // Теги, после которых необходимо пропускать одну пробельную строку 'cfgSetTagBlockType' => array( array( array('h4','h5','h6','ol','ul','blockquote','pre','table','iframe') ) ), 'cfgSetTagCallbackFull' => array( array( 'ls', array('_this_','CallbackTagLs'), ), ), ), // настройки для обработки текста в результатах поиска 'search' => array( // Разрешённые теги 'cfgAllowTags' => array( // вызов метода с параметрами array( array('span'), ), ), // Разрешённые параметры тегов 'cfgAllowTagParams' => array( array( 'span', array('class' => '#text') ), ), ), );
{assign var="sSettingsTinymce" value="ls.skinsettings.getTinymce()"}
$aTags=explode(',',$oTopic->getTags());
$aTags=preg_split("/[#,]/",$oTopic->getTags()); $aTags=array_filter($aTags);
public function getTagsArray() { if ($this->getTags()) { $aTags=preg_split("/[#,]/",$this->getTags()); return array_filter($aTags); } return array(); }
settings.js
jevix.php
В файле шаблона editor.tpl изменить:
заменяем два раза на
/classes/modules/topic/entity/Topic.entity.class.php
Должно работать