Не нравятся результаты поиска? Попробуйте другой поиск!
dle-faq.ru FAQ (все вопросы) Общие вопросы по вёрстке Как запретить некоторые функции BB редактора при комментировании?

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


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

вопрос
Как запретить некоторые функции стандартного 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
50

1599 | 588

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

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

follor
1

243 | 10

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

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

FastFud
50

1599 | 588

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
1

243 | 10

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

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

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

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

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