Страница 1 из 1

Кнопка транслит

Добавлено: 13 дек 2009, 22:45
vikweb
У меня есть скрипт "кнопка транслит рус" может кому пригодитса

добовляем в самый конец POSTING_BUTTONS.HTML

Код: Выделить всё
<script language="Javascript">
// One character letters
var t_table1 = "ABVGDEZIJKLMNOPRSTUFHXCYabvgdezijklmnoprstufhxcy'";
var w_table1 = "АБВГДЕЗИЙКЛМНОПРСТУФХХЦЫабвгдезийклмнопрстуфххцыь";

// Two character letters
var t_table2 = "'EYOJOZHCHSHYUJUYAJA'eyojozhchshyujuyaja'EYoYoZhChShYuJuYaJa";
var w_table2 = "ЭЁЁЖЧШЮЮЯЯэёёжчшююяяЭЁЁЖЧШЮЮЯЯ";
function translit2win(str)
{
  var quoteOpen = 0;
  var engOpen = 0;
  var codeOpen = 0;
  var phpOpen = 0;
  var len = str.length;
  var new_str="";

  for(i=0; i<len; i++)
   {
    // [QUOTE] Tags
    if(i<=len-7 && str.substr(i,7).toUpperCase()=="[QUOTE]")
      {
        quoteOpen++;
        new_str += str.substr(i,7);
        i+=6;   
         continue;
      }
    if(i<=len-8 && str.substr(i,8).toUpperCase()=="[/QUOTE]")
      {
        quoteOpen--;
        new_str += str.substr(i,8);
        i+=7;   
         continue;
      }
    // [code] Tags
    if(i<=len-6 && str.substr(i,6).toUpperCase()=="[CODE]")
      {
        codeOpen++;
        new_str += str.substr(i,6);
        i+=5;   
         continue;
      }
    if(i<=len-7 && str.substr(i,7).toUpperCase()=="[/CODE]")
      {
        codeOpen--;
        new_str += str.substr(i,7);
        i+=6;   
         continue;
      }
    // [PHP] Tags
    if(i<=len-5 && str.substr(i,5).toUpperCase()=="[URL]")
      {
        phpOpen++;
        new_str += str.substr(i,5);
        i+=4;   
         continue;
      }
    if(i<=len-6 && str.substr(i,6).toUpperCase()=="[/URL]")
      {
        phpOpen--;
        new_str += str.substr(i,6);
        i+=5;   
         continue;
      }

      // [ENG] Tags
    if(i<=len-5 && str.substr(i,5).toUpperCase()=="[IMG]")
      {
        engOpen++;
        i+=4;   
         continue;
      }
    if(i<=len-6 && str.substr(i,6).toUpperCase()=="[/IMG]")
      {
        engOpen--;
        i+=5;   
         continue;
      }
    // vB [b],[i] and [u] tags
    if(i<=len-3 && (str.substr(i,3).toUpperCase()=="[B]" || str.substr(i,3).toUpperCase()=="[I]" || str.substr(i,3).toUpperCase()=="[U]"))
      {
        new_str += str.substr(i,3);
        i+=2;   
         continue;
      }
    if(i<=len-4 && (str.substr(i,4).toUpperCase()=="[/B]" || str.substr(i,4).toUpperCase()=="[/I]" || str.substr(i,4).toUpperCase()=="[/U]"))
      {
        new_str += str.substr(i,4);
        i+=3;   
         continue;
      }
    // Check for 2-character letters
     if(!quoteOpen && !engOpen)
      {
      is2char = false;
      if(i<len-1)
         {
        for(j=0; j<w_table2.length; j++)
         {
          if(str.substr(i,2)==t_table2.substr(j*2,2))
              {
            new_str+= w_table2.charAt(j);
            i++;
            is2char=true;
            break;
           }
         }
       }

      if(!is2char)
        {
       // Convert one-character letter
        var c = str.substr(i,1);
        var pos = t_table1.indexOf(c);
        if(pos<0)
         new_str += c;
        else
         new_str += w_table1.charAt(pos);
       }
     }
    else
     new_str += str.charAt(i);
   }
  //alert(new_str);
  return new_str;
}
</script>
<input type="button" onClick="with(document.postform.message) { value=translit2win(value); focus(); } return false;" value="translit>rus" title="Преобразовать транслит в win-кодировку (Alt + t)" accesskey="t" style="font-weight:bold; width: 100px;">

Re: Кнопка транслит

Добавлено: 13 дек 2009, 23:07
Shans
:shock: Эмм... :scratch:

Re: Кнопка транслит

Добавлено: 11 фев 2011, 23:54
Karola
У меня кнопка добавилась, но ПЕРЕД всеми остальными кнопками (1 на рисунке). Как сделать так, чтоб она добавилась ПОСЛЕ них, т.е. после кнопки "hide" (2 на рисунке)?
Изображение

Re: Кнопка транслит

Добавлено: 12 фев 2011, 00:12
Shans
Поскольку этот мод сделан отдельным скриптом, то его в общую структурированную форму остальных BBCod'ов поставить не получится.
Для этого придётся серьёзно разбирать скрипт и пытаться интегрировать в шаблоны.

Re: Кнопка транслит

Добавлено: 12 фев 2011, 00:30
vikweb
Karola писал(а): после кнопки "hide"


в шаблоне posting_buttons.html найдите такие строки
Код: Выделить всё
      <!-- BEGIN custom_tags -->
         <input type="button" class="btnbbcode" name="addbbcode{custom_tags.BBCODE_ID}" value="{custom_tags.BBCODE_TAG}" onclick="bbstyle({custom_tags.BBCODE_ID})" title="{custom_tags.BBCODE_HELPLINE}" <!-- IF custom_tags.BBCODE_HELPLINE !== '' --> onmouseover="helpline('cb_{custom_tags.BBCODE_ID}')" onmouseout="helpline('tip')"<!-- ENDIF --> />
      <!-- END custom_tags -->


и сразу под ними, с новой строки поставьте данный скрипт

Re: Кнопка транслит

Добавлено: 12 фев 2011, 15:38
Karola
vikweb, получилось! :Yahoo!: Спасибо. :Rose: