Перейти к контенту

[2.3.x]Вставка имени и быстрая цитата с выделением


Рекомендуемые сообщения

Что непонятного в этом:

Только когда будешь вставлять переменнЫЕ в шаблон - переменную по вставке ника отбрось.

?

Ссылка на комментарий
Поделиться на других сайтах

  • 1 месяц спустя...
  • Ответы 220
  • Создана
  • Последний ответ

Лучшие авторы в этой теме

Лучшие авторы в этой теме

Загружено фотографий

Народ у меня стоит 2.3.3 и стоит вот такой мод: http://www.ibresource.ru/db/986/

Так что ни ник вставляться не хочет ни цитата! Подскажите как их соединить эти два мода?

Заранее благодарен!

Тоже стоит мод от Sannis (SnS) Расширенный(полноценный) быстрый ответ и все работает. Спасибо.

Ссылка на комментарий
Поделиться на других сайтах

  • 3 недели спустя...

После установки Member Group Color 2.1.2 модификация отказывается работать - при нажатии на вставить ник ничего не происходит, а при цитировании цитируется, но остается в виде кода после отправки сообщения.

Форум: faerunlands.info/forum/

test / test

Ссылка на комментарий
Поделиться на других сайтах

  • 2 недели спустя...
  • 4 недели спустя...
Товарищи! Все сделал по инструкции. Несколько раз проверил на неточности. topics.php и ipb_topic.js соответствуют инструкции. Однако на форуме это никакого эффекта не дало. Вероятно проблема в версии. У меня 2.3.1. Подскажите пожалуйста код для нее.
Ссылка на комментарий
Поделиться на других сайтах

У меня на всех этот мод работает,что на 2.3.1,что на 2.3.5

Разницы не заметил

Смотрите внимательно все шаблоны и коды которые прописываете

Ссылка на комментарий
Поделиться на других сайтах

Долгое время использовал модификацию и всё было отлично, но вот буквально на днях появился косяк, при добавлении русского ника в окошке ответа появляется что-то вроде:

[b]Душечка[/b]

Модификаций никаких не устанавливал в этот период, единственные изменения-это код сапы добавлен был.

При этом, цитата оформляется нормально.

Изменено пользователем Mantius
Ссылка на комментарий
Поделиться на других сайтах

Проблема актуальна!

 

Сейчас зашел на другой форум на булке, где похожая модификация и там тот же глюк. Оказалось, это глючная опера 9.5 чудит, НИ В КОЕМ СЛУЧАЕ НЕ СТАВЬТЕ ЕЕ! Убожеский браузер просто жуть!

Ссылка на комментарий
Поделиться на других сайтах

с транслитом еще в 9.23 такая же хня была

все лечится через добавку параметра charset к линкуемому файлу со скриптом

like

<script type="text/javascript" src="jscripts/ipb_topic.js" charset="windows-1251"></script>

Ссылка на комментарий
Поделиться на других сайтах

Воткнул не кнопкой, а в меню, выпадающее при нажатии на ник. По-моему, так будет лучше.
Ссылка на комментарий
Поделиться на других сайтах

с транслитом еще в 9.23 такая же хня была

все лечится через добавку параметра charset к линкуемому файлу со скриптом

а какую кодировку ставить для решения проблемы с оперой 9.5? Ни вин-1251, ни УТФ-8(с которой у нее вроде точно должны скрипты работать) не помогло.

Редактировал вызов скрипта в шаблоне topic_page_top

Ссылка на комментарий
Поделиться на других сайтах

вылечил

разберетесь куда?

function makesymbol(a,b)
{
var r='';

if(a==1056 && b==1106){r='А';}if(a==1056 && b==8216){r='Б';}if(a==1056 && b==8217){r='В';}if(a==1056 && b==8220){r='Г';}if(a==1056 && b==8221){r='Д';}if(a==1056 && b==8226){r='Е';}if(a==1056 && b==1027){r='Ё';}if(a==1056 && b==8211){r='Ж';}if(a==1056 && b==8212){r='З';}if(a==1056 && b==65533){r='И';}if(a==1056 && b==8482){r='Й';}if(a==1056 && b==1113){r='К';}if(a==1056 && b==8250){r='Л';}if(a==1056 && b==1114){r='М';}if(a==1056 && b==1116){r='Н';}if(a==1056 && b==1115){r='О';}if(a==1056 && b==1119){r='П';}if(a==1056 && b==160){r='Р';}if(a==1056 && b==1038){r='С';}if(a==1056 && b==1118){r='Т';}if(a==1056 && b==1032){r='У';}if(a==1056 && b==164){r='Ф';}if(a==1056 && b==1168){r='Х';}if(a==1056 && b==166){r='Ц';}if(a==1056 && b==167){r='Ч';}if(a==1056 && b==1025){r='Ш';}if(a==1056 && b==169){r='Щ';}if(a==1056 && b==1028){r='Ъ';}if(a==1056 && b==171){r='Ы';}if(a==1056 && b==172){r='Ь';}if(a==1056 && b==173){r='Э';}if(a==1056 && b==174){r='Ю';}if(a==1056 && b==1031){r='Я';}
if(a==1056 && b==176){r='а';}if(a==1056 && b==177){r='б';}if(a==1056 && b==1030){r='в';}if(a==1056 && b==1110){r='г';}if(a==1056 && b==1169){r='д';}if(a==1056 && b==181){r='е';}if(a==1057 && b==8216){r='ё';}if(a==1056 && b==182){r='ж';}if(a==1056 && b==183){r='з';}if(a==1056 && b==1105){r='и';}if(a==1056 && b==8470){r='й';}if(a==1056 && b==1108){r='к';}if(a==1056 && b==187){r='л';}if(a==1056 && b==1112){r='м';}if(a==1056 && b==1029){r='н';}if(a==1056 && b==1109){r='о';}if(a==1056 && b==1111){r='п';}if(a==1057 && b==1026){r='р';}if(a==1057 && b==1027){r='с';}if(a==1057 && b==8218){r='т';}if(a==1057 && b==1107){r='у';}if(a==1057 && b==8222){r='ф';}if(a==1057 && b==8230){r='х';}if(a==1057 && b==8224){r='ц';}if(a==1057 && b==8225){r='ч';}if(a==1057 && b==8364){r='ш';}if(a==1057 && b==8240){r='щ';}if(a==1057 && b==1033){r='ъ';}if(a==1057 && b==8249){r='ы';}if(a==1057 && b==1034){r='ь';}if(a==1057 && b==1036){r='э';}if(a==1057 && b==1035){r='ю';}if(a==1057 && b==1039){r='я';}
if(a==1042 && b==160)
{
	r=' ';
}	

return r;
}

function utf8_decode(str)
{
if (str == null){ return null;}
var result = "";
for (var i=0; i < str.length; i++)
{
	c=str.charCodeAt(i);
	if(c<128)
	{
		result+=str[i];
	}
	else
	{
		c2=str.charCodeAt(i+1);
		r=makesymbol(c,c2);
		if(r)
		{
			result+=r;
		}
		else
		{
		result+=' '+c+' '+c2+' ';
		}
		i++;
	}

}

return result;
}


function ins(name)
{
	if(is_opera && (uagent.indexOf("9.5") != -1))
	{
		name=utf8_decode(name);
	}

...

Ссылка на комментарий
Поделиться на других сайтах

находим

function ins(name)
{

ниже добавляем

		if(is_opera && (uagent.indexOf("9.5") != -1))
	{
		name=utf8_decode(name);
	}

находим конец файла, добавляем функции

function makesymbol(a,b)
{
var r='';

if(a==1056 && b==1106){r='А';}if(a==1056 && b==8216){r='Б';}if(a==1056 && b==8217){r='В';}if(a==1056 && b==8220){r='Г';}if(a==1056 && b==8221){r='Д';}if(a==1056 && b==8226){r='Е';}if(a==1056 && b==1027){r='Ё';}if(a==1056 && b==8211){r='Ж';}if(a==1056 && b==8212){r='З';}if(a==1056 && b==65533){r='И';}if(a==1056 && b==8482){r='Й';}if(a==1056 && b==1113){r='К';}if(a==1056 && b==8250){r='Л';}if(a==1056 && b==1114){r='М';}if(a==1056 && b==1116){r='Н';}if(a==1056 && b==1115){r='О';}if(a==1056 && b==1119){r='П';}if(a==1056 && b==160){r='Р';}if(a==1056 && b==1038){r='С';}if(a==1056 && b==1118){r='Т';}if(a==1056 && b==1032){r='У';}if(a==1056 && b==164){r='Ф';}if(a==1056 && b==1168){r='Х';}if(a==1056 && b==166){r='Ц';}if(a==1056 && b==167){r='Ч';}if(a==1056 && b==1025){r='Ш';}if(a==1056 && b==169){r='Щ';}if(a==1056 && b==1028){r='Ъ';}if(a==1056 && b==171){r='Ы';}if(a==1056 && b==172){r='Ь';}if(a==1056 && b==173){r='Э';}if(a==1056 && b==174){r='Ю';}if(a==1056 && b==1031){r='Я';}
if(a==1056 && b==176){r='а';}if(a==1056 && b==177){r='б';}if(a==1056 && b==1030){r='в';}if(a==1056 && b==1110){r='г';}if(a==1056 && b==1169){r='д';}if(a==1056 && b==181){r='е';}if(a==1057 && b==8216){r='ё';}if(a==1056 && b==182){r='ж';}if(a==1056 && b==183){r='з';}if(a==1056 && b==1105){r='и';}if(a==1056 && b==8470){r='й';}if(a==1056 && b==1108){r='к';}if(a==1056 && b==187){r='л';}if(a==1056 && b==1112){r='м';}if(a==1056 && b==1029){r='н';}if(a==1056 && b==1109){r='о';}if(a==1056 && b==1111){r='п';}if(a==1057 && b==1026){r='р';}if(a==1057 && b==1027){r='с';}if(a==1057 && b==8218){r='т';}if(a==1057 && b==1107){r='у';}if(a==1057 && b==8222){r='ф';}if(a==1057 && b==8230){r='х';}if(a==1057 && b==8224){r='ц';}if(a==1057 && b==8225){r='ч';}if(a==1057 && b==8364){r='ш';}if(a==1057 && b==8240){r='щ';}if(a==1057 && b==1033){r='ъ';}if(a==1057 && b==8249){r='ы';}if(a==1057 && b==1034){r='ь';}if(a==1057 && b==1036){r='э';}if(a==1057 && b==1035){r='ю';}if(a==1057 && b==1039){r='я';}
if(a==1042 && b==160)
{
	r=' ';
}	

return r;
}

function utf8_decode(str)
{
if (str == null){ return null;}
var result = "";
for (var i=0; i < str.length; i++)
{
	c=str.charCodeAt(i);
	if(c<128)
	{
		result+=str[i];
	}
	else
	{
		c2=str.charCodeAt(i+1);
		r=makesymbol(c,c2);
		if(r)
		{
			result+=r;
		}
		else
		{
		result+=' '+c+' '+c2+' ';
		}
		i++;
	}

}

return result;
}

 

//-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------//

 

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

Ссылка на комментарий
Поделиться на других сайтах

Перегнал в сжатую версию:

if(is_opera&&(uagent.indexOf("9.5")!=-1)){name=utf8_decode(name);}

function makesymbol(a,b){var r='';if(a==1056&&b==1106){r='А';}if(a==1056&&b==8216){r='Б';}if(a==1056&&b==8217){r='В';}if(a==1056&&b==8220){r='Г';}if(a==1056&&b==8221){r='Д';}if(a==1056&&b==8226){r='Е';}if(a==1056&&b==1027){r='Ё';}if(a==1056&&b==8211){r='Ж';}if(a==1056&&b==8212){r='З';}if(a==1056&&b==65533){r='И';}if(a==1056&&b==8482){r='Й';}if(a==1056&&b==1113){r='К';}if(a==1056&&b==8250){r='Л';}if(a==1056&&b==1114){r='М';}if(a==1056&&b==1116){r='Н';}if(a==1056&&b==1115){r='О';}if(a==1056&&b==1119){r='П';}if(a==1056&&b==160){r='Р';}if(a==1056&&b==1038){r='С';}if(a==1056&&b==1118){r='Т';}if(a==1056&&b==1032){r='У';}if(a==1056&&b==164){r='Ф';}if(a==1056&&b==1168){r='Х';}if(a==1056&&b==166){r='Ц';}if(a==1056&&b==167){r='Ч';}if(a==1056&&b==1025){r='Ш';}if(a==1056&&b==169){r='Щ';}if(a==1056&&b==1028){r='Ъ';}if(a==1056&&b==171){r='Ы';}if(a==1056&&b==172){r='Ь';}if(a==1056&&b==173){r='Э';}if(a==1056&&b==174){r='Ю';}if(a==1056&&b==1031){r='Я';}if(a==1056&&b==176){r='а';}if(a==1056&&b==177){r='б';}if(a==1056&&b==1030){r='в';}if(a==1056&&b==1110){r='г';}if(a==1056&&b==1169){r='д';}if(a==1056&&b==181){r='е';}if(a==1057&&b==8216){r='ё';}if(a==1056&&b==182){r='ж';}if(a==1056&&b==183){r='з';}if(a==1056&&b==1105){r='и';}if(a==1056&&b==8470){r='й';}if(a==1056&&b==1108){r='к';}if(a==1056&&b==187){r='л';}if(a==1056&&b==1112){r='м';}if(a==1056&&b==1029){r='н';}if(a==1056&&b==1109){r='о';}if(a==1056&&b==1111){r='п';}if(a==1057&&b==1026){r='р';}if(a==1057&&b==1027){r='с';}if(a==1057&&b==8218){r='т';}if(a==1057&&b==1107){r='у';}if(a==1057&&b==8222){r='ф';}if(a==1057&&b==8230){r='х';}if(a==1057&&b==8224){r='ц';}if(a==1057&&b==8225){r='ч';}if(a==1057&&b==8364){r='ш';}if(a==1057&&b==8240){r='щ';}if(a==1057&&b==1033){r='ъ';}if(a==1057&&b==8249){r='ы';}if(a==1057&&b==1034){r='ь';}if(a==1057&&b==1036){r='э';}if(a==1057&&b==1035){r='ю';}if(a==1057&&b==1039){r='я';}if(a==1042&&b==160){r=' ';}return r;}function utf8_decode(str){if(str==null){return null;}var result="";for(var i=0;i<str.length;i++){c=str.charCodeAt(i);if(c<128){result+=str[i];}else{c2=str.charCodeAt(i+1);r=makesymbol(c,c2);if(r){result+=r;}else{result+=' '+c+' '+c2+' ';}i++;}}return result;}

Установил, вроде работает.

Респект автору!

Ссылка на комментарий
Поделиться на других сайтах

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

 

function pasteQ()
{
if (!txt)
alert('Чтобы воспользоваться функцией быстрой цитаты, сперва выделите текст'); 

else if (document.REPLIER.Post)
my_show_div(my_getbyid('qr_open'));
document.REPLIER.Post.value += txt;
document.REPLIER.Post.focus()
}

Ссылка на комментарий
Поделиться на других сайтах

Ребята, так где можно взять самый конечный и самый рабочий релиз мода? У меня 2.3.5

Есле без всяких наворотов,то у меня этот работает на 2.3.5 и не каких проблем нет

Ставил его еще на 2.3.1 и по сей день не чего не изменял все работает отлично

Ссылка на комментарий
Поделиться на других сайтах

В приведённых выше кодах были некоторые ошибки. Например, после окна алерта "Нужно выделить текст" сбрасывало в форму ответа (не хватало фигурных скобок кое-где), а этого быть не должно. Или другая ошибка, после выделения текста мышью начинал ругать джава-скрипт, а там был лишний focus() в одном месте.

 

Вот итоговый код, который работает у меня на 2.3.5. (Вставляет имя с фокусом на форме ответа. Вставляет цитату с фокусом на форме ответа. Если текст не выделен, говорит об этом).

 

function ins(name){my_show_div(my_getbyid('qr_open'));if(document.getElementById('wysiwyg_used')){rtewindow.document.body.innerHTML+="[b]"+name+"[/b]"+", ";rtewindow.focus();}else if(document.getElementById('postcontent')){document.getElementById('postcontent').value+="[b]"+name+"[/b]"+", ";document.getElementById('postcontent').focus();}else if(document.getElementById('Post')){document.getElementById('Post').value+="[b]"+name+"[/b]"+", ";document.getElementById('Post').focus();}else if(document.getElementById('fastreplyarea')){document.getElementById('fastreplyarea').value+="[b]"+name+"[/b]"+", ";document.getElementById('fastreplyarea').focus();}else{alert('Редактор не найден');}}function copyQ(qinf,date,pid){txt='';if(document.getSelection){txt=document.getSelection()}else if(document.selection){txt=document.selection.createRange().text}if(txt.replace(" ","")!= ""){txt='[quote name=\''+qinf+'\' date=\''+date+'\' post='+pid+'] '+txt+' [/quote]\n\n';}}function pasteQ(){if(!txt)alert('Нужно выделить текст');else if(document.REPLIER.Post){my_show_div(my_getbyid('qr_open'));document.REPLIER.Post.value += txt;document.REPLIER.Post.focus()}}

 

Успехов!

Ссылка на комментарий
Поделиться на других сайтах

  • 3 недели спустя...
версия 2.3.3. поставил себе, все работает, но при вставке ника выдает непонятные иероглифы (это если ник на русском языке, с английскими буквами порядок)
Ссылка на комментарий
Поделиться на других сайтах

Opera 9.5? Уже обсуждалось, причём всего парой постов выше.
Ссылка на комментарий
Поделиться на других сайтах

  • 1 месяц спустя...

mbosoy, что-то у меня на лисе как-то странно ваш код себя ведет.

При нажатии на "Вставить ник" выдает сообщение "Редактор не найден".

А при цитировании фокус опускается не полностью, а остается на середине формы, и приходится докручивать вниз.

Версия форума - 2.3.4

В опере все нормально.

В IE с ником все ок, но есть проблема с фокусом, как и в случае с лисой.

Ссылка на комментарий
Поделиться на других сайтах


×
×
  • Создать...

Важная информация

Находясь на нашем сайте, вы соглашаетесь на использование файлов cookie, а также с нашим положением о конфиденциальности Политика конфиденциальности и пользовательским соглашением Условия использования.