1

(10 ответов, оставленных в Установка и настройка)

lexxa пишет:

очень интересно, а сделать тоже самое но чтоб и латинскте теги и русские работали? Было бы шикарно :)

Эта правка делалась несколько минут, большая часть времени ушла на понимание работы скрипта.

На нормальное решение вопроса нужно время, которого как обычно не хватает.

Честно - пока в моих проектах можно будет обойтись тегами в какой-то одной раскладке - я вряд ли буду заниматься этим скриптом.

2

(10 ответов, оставленных в Установка и настройка)

Здравствуйте.
Занимаюсь МТ первый месяц, кое-что не устраивает, но для определенных задач подходит больше других CMS-подобных инструментов.

Решил поднять тему двухлетней давности ввиду ее нерешенности, прошу не пинать ногами, если она таки решена или возможно никому не нужна.

Сначала о разных броузерах.
Подстановка тегов работает в ff3, ff2, ie7. Глючит в ie6. Не работает в opera10 и ниже, ff1. Хром не проверял.

Проблема возникла через некорректную обработку строк в javascript

Какой-то индус в МТ вместо обработки юникодовой строчки тега обрабатывает только коды нажатых клавиш клавиатуры - в результате наблюдаем ситуацию, когда набирая англ тег в кириличной раскладке, получаем всплывающие англ теги

Я, как и тот индус, решил не напрягаться, поэтому предлагаю свой небольшой хак, где также нет обработки строки с учетом раскладки, а есть только прямая замена латинской раскладки в кириличную

Итак, в файле mt-static\js\tc\tagcomplete.js находим функцию TC.TagComplete.prototype.updateWord и в ее начало добавляем эти строки

var inpStr="q|w|e|r|t|y|u|i|o|p|[|]|a|s|d|f|g|h|j|k|l|;|'|z|x|c|v|b|n|m|,|.".split('|');
var outStr='й|ц|у|к|е|н|г|ш|щ|з|х|ї|ф|і|в|а|п|р|о|л|д|ж|є|я|ч|с|м|и|т|ь|б|ю'.split('|');
for(i=0;i<inpStr.length;++i) while(c.indexOf(inpStr[i])>=0) c=c.replace(inpStr[i],outStr[i]);

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

! не забудьте сохранить файл tagcomplete.js в кодировке utf-8 !
! теги латиницей в этой модификации работать не будут !

В том же каталоге есть еще скрипт autocomplete.js - пока не нашел, где он используется, там есть аналогичная функциональность, можно этот код поставить и туда.