Перейти к публикации
View in the app

A better way to browse. Learn more.

Дизайн и модификация Invision Community

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.
Опубликовано:

Необходимо установить функцию транслита чтобы юзеры не писали на латинице,так как она запрещена на форуме.Ни у кого нет скрипта для версии 2.3.6? Вообще расскажите о транслите кто что знает.Спасибо

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

Опубликовано:

+--------------------------------------------------------------------------
|   Кнопка "Транслит"
|   ========================================
|   Сотворено: d1 для своего форума :)
|   Проверялось на IPB2 (PF2)
|   Дата: 12 Aug 2004
|   Демо: http://rhh4room.ovl.ru
+---------------------------------------------------------------------------
|
|   Добавляет в формы ответа кнопку "TRANSLIT". При нажатии выделенный в 
|   форме текст преобразуется в кириллический с учетом правил транслитерации.
|   Игнорирует BBCode и html-тэги.
|
+---------------------------------------------------------------------------
|
|   Для транслитерации используется часть кода (2 функции с небольшой 
|   переделкой) с сайта translit.ru. Автор: Игорь Ильин 2002-2004.
|   Действительно удобная и качественная транслит-перекодировка 
|   на translit.ru!
|
+---------------------------------------------------------------------------

1. Редактирование файлов:

Отредактируйте следующим образом файл /lang/*/lang_post.php
!!!ВНИМАНИЕ!!! Если у вас установлено несолько языков, эти изменения нужно 
проделать для каждого!

Найдите:

$lang = array (

Добавьте ниже:

//translit
'hb_translit'=> "Convert selected text from translitiration to cyrillic (alt + t)",
//translit

Для русского языка можно добавить:

//translit
'hb_translit'=> "Преобразовать выделенный текст из транслитерации в кириллицу (alt + t)",
//translit

Отредактируйте следующим образом файл /jscripts/ipb_bbcode.js

Найдите:

var HTML_open = 0;

Добавьте ниже:

//translit
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('-');
//translit

В конце файла добавьте:

//==========================================
// TRANSLITIRATE (Main)
//==========================================

function translit()
{
var obj_ta = fombj.Post;

//----------------------------------------
// It's IE!
//----------------------------------------
if ( (ua_vers >= 4) && is_ie && is_win)
{
	if (obj_ta.isTextEdit)
	{
		obj_ta.focus();
		var sel = document.selection;
		var rng = sel.createRange();
		rng.colapse;
		if((sel.type == "Text" || sel.type == "None") && rng != null)
		{
			rng.text = dotranslate(rng.text);
		}
	}
	else
	{
		obj_ta.value = dotranslate(obj_ta.value);
	}
}
//----------------------------------------
// It's MOZZY!
//----------------------------------------

else if ( obj_ta.selectionEnd )
{
	var ss = obj_ta.selectionStart;
	var st = obj_ta.scrollTop;
	var es = obj_ta.selectionEnd;

	if (es <= 2)
	{
		es = obj_ta.textLength;
	}

	var start  = (obj_ta.value).substring(0, ss);
	var middle = (obj_ta.value).substring(ss, es);
	var end	= (obj_ta.value).substring(es, obj_ta.textLength);

	//-----------------------------------
	// text range?
	//-----------------------------------

	if (obj_ta.selectionEnd - obj_ta.selectionStart > 0)
	{
		middle = dotranslate(middle);
	}

	obj_ta.value = start + middle + end;

	var cpos = ss + (middle.length);

	obj_ta.selectionStart = cpos;
	obj_ta.selectionEnd   = cpos;
	obj_ta.scrollTop	  = st;


}
//----------------------------------------
// It's CRAPPY!
//----------------------------------------
else
{
	obj_ta.value = dotranslate(obj_ta.value);
}

obj_ta.focus();

return;
}

//==========================================
// TRANSLITIRATE (String convertion)
//------------------------------------------
// Original code from translit.ru
// by Igor Ilyin (2002-2004)
//==========================================


function dotranslate(text)
{
var txtnew = "";
var symb = 0;
var subsymb = "";
var trans = 1;
for (kk=0;kk<text.length;kk++)
{
	subsymb = text.substr(kk,1);
	if ((subsymb=="[") || (subsymb=="<"))
	{
		trans = 0;
	}
	if ((subsymb=="]") || (subsymb==">"))
	{
		trans = 1;
	}
	if (trans)
	{
		symb = transsymbtocyr(txtnew.substr(txtnew.length-1,1), subsymb);
	}
	else
	{
		symb = txtnew.substr(txtnew.length-1,1) + subsymb;
	}
	txtnew = txtnew.substr(0,txtnew.length-1) + symb;
}
return txtnew;
}

//==========================================
// TRANSLITIRATE (Symbol convertion)
//------------------------------------------
// Original code from translit.ru
// by Igor Ilyin (2002-2004)
//==========================================

function transsymbtocyr(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;
}

2. Редактирование скинов:
!!!ВНИМАНИЕ!!! Если у вас установлено несолько скинов, эти изменения нужно 
проделать для каждого!

Действия выполняются в Admin CP > Skins & Templates 
> Skin Manager > Edit Skin Template HTML > Post Screen

Шаблон get_java script:

Найдите:

var list_prompt		 = "{ipb.lang['js_tag_list']}";

Добавьте ниже:

var help_translit		   = "{ipb.lang['hb_translit']}";

Шаблоны postbox_buttons и pm_postbox_buttons:

Найдите:
   <input type='button' accesskey='l' value=' LIST '	 onclick='tag_list()'		  class='codebuttons' name="LIST" onmouseover="hstat('list')" />

Добавьте ниже:

   <input type='button' accesskey='t' value=' TRANSLIT ' onclick='translit()' class='codebuttons' name='TRANSLIT' onmouseover="hstat('translit')" />

Все готово!

Надеюсь то.

 

По идее должно подойти.

Сделайте бэкап!!!

 

-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-

Так же нашел это.

Изменено пользователем ARMAgeddoN

Опубликовано:

если вы не автор мода, то запрещается выкладывать чужие моды.

Это кстати любых модов касается.

Лично мои моды запрещено выкладывать без разрешения

Опубликовано:
  • Автор

скачаный кривой.пробовал ставить,то ли сам ошибся...этот попробую отпишусь

  • 1 год спустя...
Опубликовано:

А есть что-то подобное для 3.1.2.?

Опубликовано:

Плиизз, помогите с транслитом, работает только в опере, в мозиле вообще не работает, а в эксплоере видно с кодировкой что-то не так, переводит, но непонятными символами, ставила вот этот мод http://ipbskins.ru/forum/topic1205.html/page__view__findpost__p__6258

Создайте аккаунт или войдите в него для комментирования

Сейчас на странице 0

  • Нет пользователей, просматривающих эту страницу.

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.