Добавление новых кнопок и вставка ника в Sceditor в SMF 2.1

Автор TXT, 05 марта 2019, 00:48:59

« назад - далее »

0 Пользователи и 1 гость просматривают эту тему.

TXT

Благодаря инструкции Dana Domirani доработал добавление новых кнопок в Sceditor и (на этой же основе и, увы, неполностью) вставку ника по клику.

В Display.template.php находим
if (\'XMLHttpRequest\' in window)

{
и сразу после него вставляем (спойлер для примера):
//Дополнительные кнопки
$(function () {
 
  $(\'<a class="sceditor-button sceditor-button-spoiler" unselectable="on" title="Спойлер"><div>Спойлер</div></a>\').appendTo(\'.sceditor-toolbar .sceditor-group:first\').click(function () {
    $(\'.editor\').sceditor(\'instance\').insert(\'[spoiler]\', \'[/spoiler]\');
  });
 
    $(\'<a class="sceditor-button sceditor-button-ДРУГОЙ_КЛАСС" unselectable="on" title="НАЗВАНИЕ"><div>НАЗВАНИЕ</div></a>\').appendTo(\'.sceditor-toolbar .sceditor-group:first\').click(function () {
    $(\'.editor\').sceditor(\'instance\').insert(\'BBCODE\');
  });
 
 
});


В ccs соответственно прописываем:

a.sceditor-button.sceditor-button-spoiler div {
background: transparent url(ПУТЬ/spoiler.gif) no-repeat center;
opacity:1 !important;
filter:alpha(opacity=100) !important;
}

a.sceditor-button.sceditor-button-ДРУГОЙ_КЛАСС div {
background: transparent url(ПУТЬ/КАРТИНКА) no-repeat center;
opacity:1 !important;
filter:alpha(opacity=100) !important;
}


Небольшая шероховатость осталась - знаю только про .sceditor-group:first и .sceditor-group:last. Кто знает, как вставить кнопку в средние группы - прошу высказаться в комментариях :)




Теперь про ник. Как все знают, в SMF 2.1 не работает мод Nickname to Reply. Даже не говорю про старое доброе<a href="javascript:void(0)" onClick="replaceText(\'[b]', $message['member']['name'], '[/b], \', document.postmodify.message);"   title="' . $txt['title_paste_member_name'] . '">', $message['member']['name'] , '</a>
Но на основе вышеприведенного решения придумал, как вставлять ник (и имя) и в редактор Sceditor.


В том же Display.template.php вместо echo '
', $message['member']['link'];

вставляем echo '

<script>
$(function () {

  $(\'<a><div>', $message['member']['name'], '</div></a>\').appendTo(\'.membername\').click(function () {
    $(\'.editor\').sceditor(\'instance\').insert(\'[b]', $message['member']['name'], '[/b], \');
  });
 
    $(\'<a><div>', $message['member']['title'], '</div></a>\').appendTo(\'.membertitle\').click(function () {
    $(\'.editor\').sceditor(\'instance\').insert(\'[b]', $message['member']['title'], '[/b], \');
  });
  });
</script> ';
echo '
<span class="membername"></span>';

И вместо ', $message['member']['title'], 'вставляем <span class="membertitle"></span>
Но применять пока не советую - на месте <div class="membername"></div> вставляются ники всех форумчан, сообщения которых присутствуют на странице :D
Зато в сообщение вставляются ники на ура :)

Здесь нужна помощь сообщества - как сделать так, чтобы в каждом сообщении находился только один ник :)

TXT

#1
Все же пришел к решению:

<a href="javascript:void(0)" onClick="$(function(){$(\'.editor\').sceditor(\'instance\').insert(\'', $message['member']['name'], ', \');});">', $message['member']['name'] , '</a>и
<a href="javascript:void(0)" onClick="$(function(){$(\'.editor\').sceditor(\'instance\').insert(\'', $message['member']['title'], ', \');});">', $message['member']['title'] , '</a>

Bugo

Цитата: TXT от 05 марта 2019, 00:48:59Теперь про ник. Как все знают, в SMF 2.1 не работает мод Nickname to Reply.
Спасибо за напоминание. Я уж думал, мод никому не нужен :) Обновил и для SMF 2.1 в том числе.

Serifa

А зачем вставлять ник по клику, если есть аутентичное решение силами самого форума? Я про @Bugo
«- Помощник капитана Бакстер, - заявил Лумис, - безбожно врет. Все отнюдь не под контролем, вернее, не под его контролем. Корабль захвачен представителями небелковой формы разумной жизни, которые маскируются под обслуживающих роботов, а некоторые даже не делают и этого...»
«То, что у тебя есть, лечится антибиотиками» (nowhere man, 1995)
В телеге срочно нужны читатели!

Yarik

Ну там как бы по клику вставляется,тут же набирать надо. Хотя уже объединил обе эти функции у себя

makuta_II

Здравствуйте!
Есть ли возможность мод Nickname to Reply обновить до SMF 2.1 RC2?

Upd. Разобрался. uglystupid

makuta_II

Цитата: Bugo от 05 марта 2019, 14:11:15Спасибо за напоминание. Я уж думал, мод никому не нужен :) Обновил и для SMF 2.1 в том числе.
@Bugo, ваш мод очень даже нужен, но после его установки перестают работать уведомления.