Forums / National / Russian / Тех. поддержка / Цитирование в личных сообщениях не работает

Uch
#1 2012-12-18 20:18

Ссылка "цитата" в личных сообщениях не работает.
Это у меня одного на этом сайте?

Macik
#2 2012-12-19 10:39

Не работает.

https://github.com/macik
правильный хостинг — https://goo.gl/fjCa1F
Uch
#3 2012-12-19 17:33

да. там надо хакать pm.message.php и вписывать строчку:

$onclick = "var txt = '<blockquote>' + $('#pm_text').text() + '</blockquote>'; CKEDITOR.instances.newpmtext.insertHtml(txt); return false;";

вместо
 

$onclick = "insertText(document, 'newpmtext', '[quote]'+$('#pm_text').text()+'[/quote]'); return false;";

что бы цитрование работало с CKEditor. А по хорошему, конечно, нужна возможность выбирать. И не только редактор, но и его вариант конфигурации, что бы с RC файлами не возиться.

Macik
#4 2012-12-19 20:01

На сколько я помню, `insertText` как раз задумываась как единая ф-я для вставки текста вне зависимости от редактора… Почему она здесь не отрабатывает?

https://github.com/macik
правильный хостинг — https://goo.gl/fjCa1F
Uch
#5 2012-12-19 20:43

Не знаю. В PFS для всавки в редактор используется именно CKEDITOR.instances.newpmtext.insertHtml, а не универсальная `insertText`.

esclkm
#6 2012-12-20 07:25

это особенность - что Каждый редактор имеет свое апи вставки текста - а вот универсального ничего нет

littledev.ru - мой маленький зарождающийся блог о котонти.
снижение стоимости программирования и снижение стоимости производства разные вещи. Первое можно скорее сравнить с раздачей работникам дешевых инструментов, чем со снижением зарплаты
Macik
#7 2012-12-21 00:18

К стати, интересная мысль… раз уж у движка есть возможность подключать плагины различных редакторов, то проработать для них единый формат/стандарт для описания функции вставки произвольного текста в «свое окно» редактирования.

Т.е. чтобы каждый редактор был обязан «предоставить» свою js функцию вставки текста insertText_{editor_name}(feild,text)

Тогда все, что нам нужно в любом месте движка сделать универсальный код (на примере PFS):

$onclick = "var txt = '<blockquote>' + $('#pm_text').text() + '</blockquote>'; insertText_".$editor_name."('newpmtext',txt); return false;";

 

Или еще универсальнее (а так же для красоты и правильности выполнения на случай, если все-таки плагин-редактор не предоставил «функцию вставки») сделать общую для движка обертку, типа (код примерный я в яваскрипте плохо понимаю):

function insertTextUni(editor,field,text){
  var func = 'insertText_'+editor;
  if (typeof(func) == 'function') {
    return func(field,text);
  } 
  else return false;
}

 

https://github.com/macik
правильный хостинг — https://goo.gl/fjCa1F