Не нравятся результаты поиска? Попробуйте другой поиск!
DLE FAQ » Все вопросы » Общие вопросы по вёрстке » Как запретить некоторые функции BB редактора при комментировании?

Как запретить некоторые функции BB редактора при комментировании?


     17.01.2015    Общие вопросы по вёрстке, Шаблоны (TPL)    2573

вопрос
Как запретить некоторые функции стандартного BB редактора определённой группе пользователей при комментировании новости?

Ответил: MasterEd


В engine/modules/bbcode.php, и engine/ajax/bbcode.php.

в блоках:


$code = <<<HTML
<HTML код редктора>
HTML;


те кнопки и которые нужно скрыть от остальных закрыть примерно так:


$code = <<<HTML
<HTML код редктора, который должны видеть все>
HTML;

if( $user_group[1] OR $user_group[2]){
$code = <<<HTML
<HTML код редктора, который должны видеть админ и главред>
HTML;
}

if( !$user_group[4]){
$code = <<<HTML
<HTML код редктора, который должны видеть все кроме 4-й группы>
HTML;
}

$code = <<<HTML
<HTML код редктора, который должны видеть все>
HTML;

// и так далее...


Но, те пользователи, которые знают BB теги, смогут их забивать вручную. Чтобы блокировать это, нужно создать несколько версий файла engine/classes/js/bbcodes.js, а в файлах engine/modules/bbcode.php, и engine/ajax/bbcode.php. строчками "$js_array[] = "engine/classes/js/bbcodes.js";" выдавать также для каждой группы свою версию скрипта (опять через if( $user_group[1] ). Конечно, самые умные смогут и это ограничение обойти, заменив локальные (кешированные) версии этих джава скриптов на оригинальные, но таких умников мало. Если стоит задача защиты и от таких продвинутых пользователей, то нужно копать глубже. )))

4 комментария

FastFud
Юзер

FastFud - 17 января 2015 19:13 -

1. Вывести все bbcode в addcomments.tpl, и тогда вы сможете сделать с ними что угодно.
2. Открыть /engine/modules/bbcode.php и запретить некоторые bbcode для определенных групп.

follor
Юзер

follor - 17 января 2015 19:35 -

В данном примере не отображается поле для вода, только панель bb редактора

FastFud
Юзер

FastFud - 17 января 2015 19:40 -

Пример:
<script>
var bb_t_col = "Цвет:";
var selField = "comments";
var fombj    = document.getElementById( 'dle-comments-form' );
</script>
[group=1]<b id="b_color" class="bb-btn" onclick="ins_color(this)" title="Выбор цвета">Выбор цвета</b>[/group]
<textarea name="comments" id="comments" cols="70" rows="10" onfocus="setNewField(this.name, document.getElementById( 'dle-comments-form' ))"></textarea>

follor
Юзер

follor - 17 января 2015 19:52 -

Цитата: FastFud
Открыть /engine/modules/bbcode.php и запретить некоторые bbcode для определенных групп.

так если таким образом запретить, то в этом же редакторе в личных сообщениях они тоже будут отключены, а нужно запретить только в комментариях

Чтобы комментировать - войдите или зарегистрируйтесь на сайте

Похожие вопросы

наверх