Страница 23 из 26

Добавлено: 26.08.2005 15:10
Coagulant
MAzZY
Не торопитесь и загляните в папку templates в поставке мода.

Добавлено спустя 57 секунд:

А заодно вдумчиво прочтите тему про вторую версию мода в разделе бета-версий, хотябы пролистайте :wink:

Добавлено: 26.08.2005 15:30
MAzZY
Не торопитесь и загляните в папку templates в поставке мода
Несколько раз смотрел :D

Добавлено: 26.08.2005 15:39
Coagulant
Изображение

Добавлено: 26.08.2005 15:57
MAzZY
Круто. У меня 2.2.5 :?

Добавлено: 26.08.2005 15:59
VVVas
MAzZY писал(а):Coagulant, спешу вас "обрадовать" - там нет этого файла(quick_reply.js)
Coagulant писал(а):Если у вас этого файла нет (более ранние версии), то всё равно мои инструкции в силе кроме function checkForm() вынести из quick_reply.js в quick_reply.tpl

Добавлено: 26.08.2005 16:02
Coagulant
У меня 2.2.4 установлен. Для него тоже работает предлагаемый код :!:
Помочь вам ничем не могу, раз вы не хотите сами разбираться.

Добавлено: 27.08.2005 14:41
MAzZY
Coagulant, ваши методы не помогли. Совершенно.
Вот рецепт лечения

Код: Выделить всё

# 
#-----[ OPEN ]------------------------------------------ 
# 
quick_reply.php 

# 
#-----[ FIND ]------------------------------------------ 
# 
'L_USERNAME' => $lang['Username'], 

# 
#-----[ AFTER, ADD ]------------------------------------------ 
# 
'L_ENTER_YOUR_NAME' => $lang['Enter_your_name'], 

# 
#-----[ OPEN ]------------------------------------------ 
# 
templates/quick_reply.js

# 
#-----[ FIND ]------------------------------------------ 
# 
if (formErrors) { 
alert(formErrors); 
return false; 

# 
#-----[ BEFORE, ADD ]------------------------------------------ 
# 
   <!-- BEGIN user_logged_out --> 
   if (document.post.username.value == '' && !(formErrors)) { 
   formErrors = l_enter_your_name; 
   } 
   <!-- END user_logged_out --> 

# 
#-----[ OPEN ]------------------------------------------ 
# 
templates/subSilver/quick_reply.tpl 

# 
#-----[ FIND ]------------------------------------------ 
# 

l_no_text_selected = "{L_NO_TEXT_SELECTED}";

# 
#-----[ AFTER, ADD ]------------------------------------------ 
# 

l_enter_your_name = "{L_ENTER_YOUR_NAME}"; 

Вот так

Добавлено спустя 3 минуты 47 секунд:

Сегодня-завтра попытаюсь прикрутить еще транслит(здесь он как-то странно работает) и обращение вида:
User, текст

Добавлено спустя 56 секунд:

Важно! Чуть не забыл
MOD Version: 2.3.0

Добавлено: 07.09.2005 17:32
Diver
В правом верхнем углу каждого сообщения есть кнопка Цитировать. Так вот после установки мода и при нажимании на кнопку Цитирование (все сообщение а не часть). выдает
Сообщение отсутствует. Вернитесь и попробуйте ещё раз.
Еще установлены
post_is_sending.zip
adv_posts_merging_2.1.2.zip + no_msg_at_certain_forums.txt
версия 2.0.17
В чем проблемка?

Добавлено: 07.09.2005 18:40
Xpert
Поставьте мод версии 2.2.6, лежит в форуме Бета-версии

Добавлено: 07.09.2005 22:11
macar
блин, запутали всЁ, 23 листа, где начало где конец, что где лежит и что ставить, хер разберешь, в бета вместо 2.2.6 лежит кстати 2.2.5, если искать где то в теме то мне кажется это не есть правильно.

Добавлено: 09.09.2005 13:29
Diver
а быстрая цитата с именем типа
macar писал(а):блин, запутали
вместо
блин, запутали
это в этом моде или надо дополнительно ставить? что то нету у меня

Добавлено: 09.09.2005 22:34
macar
Diver
в этом, обнови версию.

Добавлено: 18.09.2005 19:32
MAzZY
Сегодня-завтра попытаюсь прикрутить еще транслит
Транслит прикрутил, но с небольшой задержкой :)
Итак, открываем quick_reply.js

Код: Выделить всё

# 
#-----[ FIND ]------------------------------------------ 
# 

function quoteSelection(name)
{
	if (selection)
	{ 
		emoticon_wospaces('[quote="'+name+'"]' + selection + '[/quote]\n'); 
		selection = '';
		document.post.message.focus(); 
		return; 
	}
	else
	{ 
		alert(l_no_text_selected);
		return; 
	} 
}
# 
#-----[ AFTER, ADD ]------------------------------------------ 
#

var rus_lr2 = ('Е-е-О-о-Ё-Ё-Ё-Ё-Ж-Ж-Ч-Ч-Ш-Ш-Щ-Щ-Ъ-Ь-Э-Э-Ю-Ю-Я-Я-Я-Я-ё-ё-ж-ч-ш-щ-э-ю-я-я').split('-');
var lat_lr2 = ('/E-/e-/O-/o-ЫO-Ыo-ЙO-Йo-ЗH-Зh-ЦH-Цh-СH-Сh-ШH-Шh-ъ'+String.fromCharCode(35)+'-ь'+String.fromCharCode(39)+'-ЙE-Йe-ЙU-Йu-ЙA-Йa-ЫA-Ыa-ыo-йo-зh-цh-сh-шh-йe-йu-йa-ыa').split('-');
var rus_lr1 = ('А-Б-В-Г-Д-Е-З-И-Й-К-Л-М-Н-О-П-Р-С-Т-У-Ф-Х-Х-Ц-Щ-Ы-Я-а-б-в-г-д-е-з-и-й-к-л-м-н-о-п-р-с-т-у-ф-х-х-ц-щ-ъ-ы-ь-ь-я').split('-');
var lat_lr1 = ('A-B-V-G-D-E-Z-I-J-K-L-M-N-O-P-R-S-T-U-F-H-X-C-W-Y-Q-a-b-v-g-d-e-z-i-j-k-l-m-n-o-p-r-s-t-u-f-h-x-c-w-'+String.fromCharCode(35)+'-y-'+String.fromCharCode(39)+'-'+String.fromCharCode(96)+'-q').split('-');
var rus_rl = ('А-Б-В-Г-Д-Е-Ё-Ж-З-И-Й-К-Л-М-Н-О-П-Р-С-Т-У-Ф-Х-Ц-Ч-Ш-Щ-Ъ-Ы-Ь-Э-Ю-Я-а-б-в-г-д-е-ё-ж-з-и-й-к-л-м-н-о-п-р-с-т-у-ф-х-ц-ч-ш-щ-ъ-ы-ь-э-ю-я').split('-');
var lat_rl = ('A-B-V-G-D-E-JO-ZH-Z-I-J-K-L-M-N-O-P-R-S-T-U-F-H-C-CH-SH-SHH-'+String.fromCharCode(35)+String.fromCharCode(35)+'-Y-'+String.fromCharCode(39)+String.fromCharCode(39)+'-JE-JU-JA-a-b-v-g-d-e-jo-zh-z-i-j-k-l-m-n-o-p-r-s-t-u-f-h-c-ch-sh-shh-'+String.fromCharCode(35)+'-y-'+String.fromCharCode(39)+'-je-ju-ja').split('-');
var translitown=0;var language = 0;
if (document.images) {swrus_src = new Image; swrus_src = "pict/swrus.gif";swlat_src = new Image; swlat_src = "pict/swlat.gif";}
function setfoc(){document.post.message.focus();}
function compbelongs(isprivate)
{
	translitown = isprivate;
	if (translitown==1) {document.post.message.createTextRange().execCommand("Copy");}
	document.cookie = "trowncomputer=" + escape(isprivate);
	return true;
}
function upgradeclipboard()
{
	if (translitown==1) {document.post.message.createTextRange().execCommand("Copy");}
	return true;
}
function setlangpicture(){document.ruslat.src = swrus_src;}
function changelanguage(){if (language==1) {language=0;  document.images['ruslat'].src = swrus_src; document.post.message.focus();return;}if (language==0) {language=1;  document.images['ruslat'].src = swlat_src; document.post.message.focus();return;}}
function AkeyIsDown()
{
    if (event.ctrlKey && event.altKey) changelanguage();
    if (window.event.keyCode==27) event.returnValue=false;
    return false;
}
function translate_letter()
{	
        if (language==1) return; //no transliteration necessary
        //the entered character
        var code = event.keyCode;
	txt=String.fromCharCode(code);
        //make selection
        cursor_pos_selection = document.selection.createRange();
        //delete something is selected before
	cursor_pos_selection.text="";
	//get the previous character
        cursor_pos_selection.moveStart("character",-1);
	pretxt = cursor_pos_selection.text;
	if (pretxt.length>1) {pretxt="";}
	event.keyCode = 0;
	result = translatesymboltocyrillic(pretxt,txt)
	//delete the previous symbol if it is exists (if the entered symbol is not the first one)
	if (pretxt!="") { cursor_pos_selection.select(); cursor_pos_selection.collapse();}
	with(document.selection.createRange()) {text = result; collapse(); select()}
	return;
}
function translatesymboltocyrillic(pretxt,txt)
{
	var doubletxt = pretxt+txt;
	var code = txt.charCodeAt(0);
	if (!(((code>=65) && (code<=123))||(code==35)||(code==39))) return doubletxt;
	var ii;
	for (ii=0; ii<lat_lr2.length; ii++)
	{
		if (lat_lr2[ii]==doubletxt) return rus_lr2[ii];
	}
	for (ii=0; ii<lat_lr1.length; ii++)
	{
		if (lat_lr1[ii]==txt) return pretxt+rus_lr1[ii];
	}
	return doubletxt;
}
function translatesymboltolatin(symb)
{
	var ii;
	for (ii=0; ii<rus_rl.length; ii++)
	{
		if (rus_rl[ii]==symb)
		return lat_rl[ii];
	}
	return symb;
}
function translateAlltoCyrillic()
{
		var is_selection_flag = 1;
		var userselection = document.selection.createRange();
		var txt = userselection.text;
		if (userselection==null || userselection.text==null || userselection.parentElement==null || userselection.parentElement().type!="textarea") 
		{
			// no text selected, all the text in the textarea is to be processed
			is_selection_flag = 0;
			txt = document.post.message.value;
		}
		var txtnew = translatesymboltocyrillic("",txt.substr(0,1));
		var symb = "";
		for (kk=1;kk<txt.length;kk++)
		{
			symb = translatesymboltocyrillic(txtnew.substr(txtnew.length-1,1),txt.substr(kk,1));
			txtnew = txtnew.substr(0,txtnew.length-1) + symb;
		}
		if (is_selection_flag)
		{
			userselection.text = txtnew; userselection.collapse(); userselection.select();
		}
		else
		{
			document.post.message.value = txtnew;
			document.post.message.focus();
		}
	return;
}
function translateAlltoLatin()
{
		var is_selection_flag = 1;
		var userselection = document.selection.createRange();
		var txt = userselection.text;

		if (userselection==null || userselection.text==null || userselection.parentElement==null || userselection.parentElement().type!="textarea") 
		{
			// no text selected, all the text in the textarea is to be processed
			is_selection_flag = 0;
			txt = document.post.message.value;
		}
		txtnew="";
		var symb = "";
		for (kk=0;kk<txt.length;kk++)
		{
			symb = translatesymboltolatin(txt.substr(kk,1));
			txtnew = txtnew.substr(0,txtnew.length) + symb;
		}
		if (is_selection_flag)
		{
			userselection.text = txtnew; userselection.collapse(); userselection.select();
		}
		else
		{
			document.post.message.value = txtnew;
			document.post.message.focus();
		}
	return;
}
Открываем quick_reply.tpl

Код: Выделить всё

# 
#-----[ FIND ]------------------------------------------ 
#
<td rowspan="2" class="row2" valign="middle" align="center">
			<table width="100" border="0" cellspacing="0" cellpadding="5">
				<tr align="center"> 
					<td colspan="{S_SMILIES_COLSPAN}" class="gensmall"><b>{L_EMOTICONS}</b></td>
				</tr>
# 
#-----[ REPLACE WITH ]------------------------------------------ 
#

<td rowspan="3" class="row2" valign="middle" align="center">
			<table width="100" border="0" cellspacing="0" cellpadding="5">
				<tr align="center"> 
					<td colspan="{S_SMILIES_COLSPAN}" class="gensmall"><b>{L_EMOTICONS}</b></td>
				</tr>

# 
#-----[ FIND ]------------------------------------------ 
#
<tr>
		<td class="row2">
			<textarea rows="14" cols="35" name="message" style="width:450px"></textarea>
		</td>
	</tr>

# 
#-----[ AFTER, ADD ]------------------------------------------ 
# 
<tr>
		<td class="row2">
	<INPUT type="button" class="button" onclick=translateAlltoCyrillic();upgradeclipboard(); type=button value="в кириллицу">&nbsp;&nbsp;&nbsp;
	<INPUT type="button" class="button" onclick=translateAlltoLatin();upgradeclipboard(); type=button value="в латиницу">&nbsp;&nbsp;
		</td>
	</tr>

Код беззастенчиво сворован из мода

Код: Выделить всё

## Mod Title: Advanced Quick Reply Mod
## Mod Author: RustyDragon <dev@RustyDragon.com>  http://www.phpbbhacks.com
## Mod Version: 1.1.1

Настройки транслита легко меняются изменением массивов.

обращение вида:
User, текст
Вот с этим не разобрался. Подскажите, как поставить запятую :?

Добавлено: 20.09.2005 23:03
severnet
Кстати, как интегрировать проверку сообщения Message too short для Extended Quick Reply Form?

Добавлено спустя 41 минуту 14 секунд:

Также интересует будут ли очередные фиксы для этой версии Extended Quick Reply Form? Знаю, что появилась BETA, но это уже отдельный мод.

Добавлено: 10.10.2005 9:55
severnet
Молчание - знак согласия?! :D