Автор Тема: Вот если бы цитирование так работало  (Прочитано 6524 раз)

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

Оффлайн USE

  • Любитель
  • Ветеран
  • *****
  • Сообщений: 720
  • +0/-0
  • 2
    • Просмотр профиля
http://forums.webscript.ru/showthread.php?s=&postid=2656#post2656 очень хотелось бы так делать. ведь можно подправить тот скрипт. правда старые сообщения останутся в старой форме цитирования, а новые будут нормально...?
Не ходите, дети, без «Мозиллы» дальше localhost!

Оффлайн NAS

  • Неопытный юзер
  • Администратор
  • Ветеран
  • *****
  • Сообщений: 2951
  • +1/-0
  • 1
    • Просмотр профиля
    • http://nhouse.ru
Вот если бы цитирование так работало
« Ответ #1 : 06 Марта 2003, 14:20:49 »
Как так ?

Оффлайн USE

  • Любитель
  • Ветеран
  • *****
  • Сообщений: 720
  • +0/-0
  • 2
    • Просмотр профиля
Вот если бы цитирование так работало
« Ответ #2 : 06 Марта 2003, 14:28:44 »
чтобы в цитате подписывалось кто сказал (когда это уже по вкусу) там по ссылке посмотри...
Не ходите, дети, без «Мозиллы» дальше localhost!

Оффлайн NAS

  • Неопытный юзер
  • Администратор
  • Ветеран
  • *****
  • Сообщений: 2951
  • +1/-0
  • 1
    • Просмотр профиля
    • http://nhouse.ru
Вот если бы цитирование так работало
« Ответ #3 : 06 Марта 2003, 14:34:31 »
USE
Думал над этим, но не знаю как это реализовать в принципе.

Оффлайн USE

  • Любитель
  • Ветеран
  • *****
  • Сообщений: 720
  • +0/-0
  • 2
    • Просмотр профиля
Вот если бы цитирование так работало
« Ответ #4 : 06 Марта 2003, 14:45:06 »
можно сделать так: добавить еще один аргумент в функцию вставки которая вызывается при нажатии на кнопку "цитировать", а тем другим аргументом передавать имя, например.
Не ходите, дети, без «Мозиллы» дальше localhost!

Оффлайн NAS

  • Неопытный юзер
  • Администратор
  • Ветеран
  • *****
  • Сообщений: 2951
  • +1/-0
  • 1
    • Просмотр профиля
    • http://nhouse.ru
Вот если бы цитирование так работало
« Ответ #5 : 06 Марта 2003, 15:17:04 »
А как это имя попадет туда ? Откуда функция узнает, что текст конкретного пользователя ?

Оффлайн USE

  • Любитель
  • Ветеран
  • *****
  • Сообщений: 720
  • +0/-0
  • 2
    • Просмотр профиля
Вот если бы цитирование так работало
« Ответ #6 : 06 Марта 2003, 16:00:43 »
есть две функции, одна для вставки имени: javascript:ins(\'NAS\'), а другая для вставки выделеного фрагмента: javascript:Insert(selection)
так почему же не переделать javascript:Insert(\'NAS\',selection) тогда и вставлятся будет так как надо..., правда тут придется править исходники форума немного.

function Insert(text){
if (text!="") paste("[quote!]"+text+"[/quote]\\n", 0);
}


сделать, что-то вроде:


function Insert(member, text){
if (text!="") paste("[quote!]"+member+"
"+text+"[/quote]\\n", 0);
}


эти функции в lib.js лежат. что-то в этом роде надо модифицировать. я в js не силен, может кто-то более компетентный сможет более продуктивное решение посоветовать.

правда вызов функций Insert(\'NAS\',selection)  надо будет переделать в пхп-шных скриптах, чтобы так прописывалось а не Insert(selection)

p.s. вместо NAS можно ставить имя соответствующего пользователя ;)
« Последнее редактирование: 06 Марта 2003, 16:51:26 от USE »
Не ходите, дети, без «Мозиллы» дальше localhost!

Оффлайн USE

  • Любитель
  • Ветеран
  • *****
  • Сообщений: 720
  • +0/-0
  • 2
    • Просмотр профиля
Вот если бы цитирование так работало
« Ответ #7 : 06 Марта 2003, 16:06:17 »
пхп исходников форума у меня нет. надо посмотреть функции вывода сообщений там где создаются ссылки править и цитировать. и также ссылка на имя и скомбинировать...
Не ходите, дети, без «Мозиллы» дальше localhost!

Оффлайн NAS

  • Неопытный юзер
  • Администратор
  • Ветеран
  • *****
  • Сообщений: 2951
  • +1/-0
  • 1
    • Просмотр профиля
    • http://nhouse.ru
Вот если бы цитирование так работало
« Ответ #8 : 06 Марта 2003, 16:07:34 »
А дело в том, что сейчас  можно выделить в одном посте, а нажать цитировать в другом, тогда имя подставится другое. И будет еще большая путаница.

А вообще попробовать мона. Завтра попробую.

Оффлайн NAS

  • Неопытный юзер
  • Администратор
  • Ветеран
  • *****
  • Сообщений: 2951
  • +1/-0
  • 1
    • Просмотр профиля
    • http://nhouse.ru
Вот если бы цитирование так работало
« Ответ #9 : 06 Марта 2003, 16:09:20 »
USE
ПХП не придется трогать. Попробую завтра.

Оффлайн USE

  • Любитель
  • Ветеран
  • *****
  • Сообщений: 720
  • +0/-0
  • 2
    • Просмотр профиля
Вот если бы цитирование так работало
« Ответ #10 : 06 Марта 2003, 16:10:27 »
а сделай так, чтобы процитировать какого-то пользователя нажимать слово "цитировать" под его сообщением, а сообщение "Для того, чтобы вставить цитату с этой страницы, выделите её и нажмите здесь" замени на "Для того чтобы процитировать пользователя - выделите его текст и нажмите кнопку цитировать под сообщением" :)
Не ходите, дети, без «Мозиллы» дальше localhost!

Оффлайн USE

  • Любитель
  • Ветеран
  • *****
  • Сообщений: 720
  • +0/-0
  • 2
    • Просмотр профиля
Вот если бы цитирование так работало
« Ответ #11 : 06 Марта 2003, 16:26:00 »
Цитировать
ПХП не придется трогать

вот я и говорю, что нету исходников форума ;)
Не ходите, дети, без «Мозиллы» дальше localhost!

Оффлайн NAS

  • Неопытный юзер
  • Администратор
  • Ветеран
  • *****
  • Сообщений: 2951
  • +1/-0
  • 1
    • Просмотр профиля
    • http://nhouse.ru
Вот если бы цитирование так работало
« Ответ #12 : 07 Марта 2003, 14:01:42 »
Что-то не получается. Вызов
Insert (NAS, selection)
Сами функции

function Insert(name, text){
if (text!="") paste("quote]"+name+":
"+text+"[/quote]\\n", 0);
}

function paste(text, flag){
if ((document.selection)&&(flag)) {
document.vbform.message.focus();
document.vbform.document.selection.createRange().text = text;
} else document.vbform.message.value += text;
}

function get_selection() {
   if (document.getSelection){
selection = document.getSelection();
selection = selection.replace(/\\r\\n\\r\\n/gi, "_doublecaret_");
selection = selection.replace(/\\r\\n/gi, " ");
       while (selection.indexOf("  ") !=-1) selection = selection.replace(/  /gi, "");
selection = selection.replace(/_doublecaret_/gi, "\\r\\n\\r\\n");
  } else
      selection = document.selection.createRange().text;
}

Оффлайн USE

  • Любитель
  • Ветеран
  • *****
  • Сообщений: 720
  • +0/-0
  • 2
    • Просмотр профиля
Вот если бы цитирование так работало
« Ответ #13 : 07 Марта 2003, 14:12:23 »
я для своего форума когда-то переделывал эти функции, у меня вот что получилось, правда я вставлял не имя пользователя, а его идентификатор, чтобы можно было менять имена пользователям, и соответственно обращения по имени менялись бы нормально, а не так как на других форумах, либо не меняй имя, либо говори всем как тебя раньше навали ;)

function ins(member_id){
var input=document.post.message;
input.value=input.value+"[name="+member_id+"]"+" ";
}

function Insert(text,member){
if (text!="") paste("[quote=""+member+""]"+text+"[/quote]\\n", 0);
}

function paste(text, flag){
if ((document.selection)&&(flag)) {
  document.post.message.focus();
  document.post.document.selection.createRange().text = text;
} else document.post.message.value += text;
}

function get_selection() {
   if (document.getSelection){
  selection = document.getSelection();
  selection = selection.replace(/\\r\\n\\r\\n/gi, "_doublecaret_");
  selection = selection.replace(/\\r\\n/gi, " ");
       while (selection.indexOf("  ") !=-1) selection = selection.replace(/  /gi, "");
  selection = selection.replace(/_doublecaret_/gi, "\\r\\n\\r\\n");
  } else
      selection = document.selection.createRange().text;
}

может быть имя надо брать в кавычки?
Не ходите, дети, без «Мозиллы» дальше localhost!

Оффлайн USE

  • Любитель
  • Ветеран
  • *****
  • Сообщений: 720
  • +0/-0
  • 2
    • Просмотр профиля
Вот если бы цитирование так работало
« Ответ #14 : 07 Марта 2003, 14:13:49 »
если не помогут кавычки, тогда может надо аргументы местами поменять :-/
Не ходите, дети, без «Мозиллы» дальше localhost!

 

Sitemap 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28