Опрос

Нравится ли вам новый шаблон сайта?
Да
Нет
Не привык еще
Голосовать Результаты опроса

Партнеры

  • Место свободно
  • Место свободно
  • Место свободно
  • Место свободно

Наш архив :)

Онлайн

    Всего на сайте: 12
    Гостей: 12
    Пользователи: - отсутствуют
    Роботы: - отсутствуют
    Администраторов: 1
    Редакторов: 0
    Журналистов: 1
    Модераторов: 0
    Дизайнеры: 0
    VIP: 0
    Пользователей: 32307 [+35]

Переходы

123

Реклама
На сайте
Динамическая транслитерация

Небольшой хак для Редактора категорий на сайте, смысл заключается в следующем: при вводе имени категории, автоматически заполняется поле 'Альтернативное имя' транслитом.
Также при редактировании поля альтернативного имени, при вводе русских символов происходит динамическая транслитерация.

Пробовал на версиях 7.5, 8.0, 8.2, 8.3

Приступаем:
Открываем файл engine\skins\default.js и в начало файла вставляем:
function AutoTranslit1()
    {        
        a=document.formText.alt_cat_name.value;
        document.formText.alt_cat_name.value=raytranslate(a);
    }
    
    function AutoTranslit2()
    {        
        a=document.formText.cat_name.value;
        document.formText.alt_cat_name.value=raytranslate(a);
    }
    
    var cyr=new Array("jo","zh","i","ch","sh","xh","je","ju","ja","a","b","v","g","d","e","z","i","k","l","m","n","o","p","r","s","t","u","f","x","c","b","y","b","j","h","-", "", "", "");
    var lat=new Array("ё","ж","й","ч","ш","щ","э","ю","я","а","б","в","г","д","е","з","и","к","л","м","н","о","п","р","с","т","у","ф","х","ц","ь","ы","ъ","ж","х", " ", "/", "|", "");
    var latcap=new Array("Ё","Ж","Й","Ч","Ш","Щ","Э","Ю","Я","А","Б","В","Г","Д","Е","З","И","К","Л","М","Н","О","П","Р","С","Т","У","Ф","Х","Ц","Ь","Ы","Ъ","Ж","Х", " ", "/", "|", "");

    function raytranslate(tex)
    {
    var buf=tex;
    var i;
    for (i=0;i<latcap.length;i++)
            {
            buf=trreplace(buf,latcap[i],cyr[i],1,0);
            }

    for (i=0;i<lat.length;i++)
            {
            buf=trreplace(buf,lat[i],cyr[i],1,0);
            }

    tex=buf;
    return tex;
    }

    function trreplace(target,oldTerm,newTerm,caseSens,wordOnly) {

            var work = target;
            var ind = 0;
            var next = 0;

            if (!caseSens) {
              oldTerm = oldTerm.toLowerCase();
              work = target.toLowerCase();
            }

            while ((ind = work.indexOf(oldTerm,next)) >= 0) {
              if (wordOnly) {
                var before = ind - 1;
                var after = ind + oldTerm.length;
                if (!(space(work.charAt(before)) && space(work.charAt(after)))) {
                  next = ind + oldTerm.length;
                  continue;
                }
              }
              target = target.substring(0,ind) + newTerm +
              target.substring(ind+oldTerm.length,target.length);
              work = work.substring(0,ind) + newTerm +
              work.substring(ind+oldTerm.length,work.length);
              next = ind + newTerm.length;
              if (next >= work.length) { break; }
            }

            return target;

    }

2. Далее открываем файл engine\inc\categories.php
Ищем строку (по умолчанию строка #298):
<input class="edit" value="{$row['name']}" type="text" name="cat_name">


Заменяем на:
<input class="edit" value="{$row['name']}" type="text" name="cat_name" id="cat_name" onchange="AutoTranslit2();" onkeypress="AutoTranslit2();" onkeyup="AutoTranslit2();">


Ищем строку (по умолчанию строка #302):
<input class="edit" value="{$row['alt_name']}" type="text" name="alt_cat_name">



Заменяем на:
<input class="edit" value="{$row['alt_name']}" type="text" name="alt_cat_name" id="alt_cat_name" onchange="AutoTranslit1();" onkeypress="AutoTranslit1();" onkeyup="AutoTranslit1();">


Ищем строку (по умолчанию строка #472):
<input class="edit" type="text" name="cat_name">



Заменяем на:
<input class="edit" type="text" name="cat_name" id="cat_name" onchange="AutoTranslit2();" onkeypress="AutoTranslit2();" onkeyup="AutoTranslit2();">



Ищем строку (по умолчанию строка #476):
<input class="edit" type="text" name="alt_cat_name">



Заменяем на:
<input class="edit" type="text" name="alt_cat_name" id="alt_cat_name" onchange="AutoTranslit1();" onkeypress="AutoTranslit1();" onkeyup="AutoTranslit1();">


Своё Спасибо, еще не выражали.
Рейтинг:
 (голосов: 0)
Комментариев: 0 | Просмотров: 889
Уважаемый посетитель, Вы зашли на сайт как незарегистрированный пользователь.
Мы рекомендуем Вам зарегистрироваться либо войти на сайт под своим именем.
Зарегестрировавшись,вы сможете скачивайть файлы с нашего сервера.Общатся в чате просматривать и вести жизнь на нашем форуме,и многое другое)xD
Рекомендуем также:
Информация
Посетители, находящиеся в группе Гости, не могут оставлять комментарии к данной публикации.
Яндекс Апдейт
Данные временно не доступны.
Календарь
«    Апрель 2024    »
ПнВтСрЧтПтСбВс
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
29
30
 
Чат
НаписалФилипп
26 августа 2017
Добрый день. Презентация http://jersiker.ru/
Ответить
НаписалАнтон
29 июня 2017
Добрый день. Наша презентация http://omelesu.ru/
Ответить
НаписалВиталий
14 июня 2017
Здравствуйте. Не дозвонились до вас, презентация http://majuster.ru/
Ответить
НаписалЕвгений
12 мая 2017
Добрый день. Это презентация, не дозвонились до Вас, посмотрите http://merternas.ru/?activation=9
f8dd061
Ответить
НаписалАнатолий
4 марта 2017
Не дозвонились до Вас, посмотрите презентацию http://advertuper.ru/video?activa
tion=af8e1257
Ответить
НаписалКирилл
11 января 2017
Здравствуйте! Я звонил вам перед праздниками, вы не перезвонили, результат нашей презентации тут http://patrongiis.ru/
Ответить
НаписалСемён
29 ноября 2016
Добрый день! Вам стоит это увидеть, это касается вашей компании! Смотрите в видео http://customerbass.ru/video
Ответить
НаписалВалерий
22 ноября 2016
Добрый день. Вчера договаривались созвонится с Вами в 14:00, но я до Вас не дозвонился, нужно ваше решение по нашему предложению http://comenst.ru/offer293
Ответить
НаписалДанила
24 октября 2016
Это ссылка на презентацию, о которой я говорил http://prescom.ru/
Ответить
НаписалЕгор
6 октября 2016
Добрый день! Я обещал вам прислать ссылку http://plazametrix.ru/
Ответить

   
Популярное
Коментарии
Автор → Babyn1N
в новости → Поисковая подсказка
Автор → IraFriene
в новости → "Страница ошибки 404 на DLE"
© RIPs.SU DOG
Последние комментарии 2.4
Проследить за всеми новостями мы не можем, так как новости берутся из открытых источников. Если вы считаете, что новость нарушает ваши права на авторство или дизайн, то обратитесь к администрации данного ресурса.
© artsss-web.ru 2010 - 2012 Яндекс.Метрика

{dotcat}