Платформа для создания хостинга блогов LifeType - теперь с русской поддержкой!

vadimaster
На сайте с 04.05.2008
Offline
48
#101

Однако у меня по каким-то причинам модуль транслитерации не работает. Ни на локалхосте, ни на сервере. Ни в одной из скаченных версий (1.2.6, 1.2.7, 1.2.8). Может быть его нужно установить отдельно? Ваше демо я посмотрел, то, что нужно мне! А на счёт поддоменов, Вы неправы! Я сразу настроил так, чтобы пользователи после регистрации получали адрес имя_пользователя.sait.ru. По моим постам видно, что я хочу сделать, чтобы имя блога было после /blog/..., но ни как не в доменном имени! ;)

Партнёрская программа в Анализаторе Собачьих Бегов (http://dogstats.ru/?action=pp). Четыре уровня, процент партнёра до 35%, выплаты несколько раз в неделю!
vadimaster
На сайте с 04.05.2008
Offline
48
#102

Ууууу... Ё-моё... нет слов. А как же будет проводиться транслитерация, если нет выбора русских символов? Смотрите сами: файл /class/linkparser.class.php содержит:

var $urlRewriteTags = array(

'{blogname}' => '([_0-9a-zA-Z-]+)?',

'{blogid}' => '([0-9]+)?',

'{blogowner}' => '([_0-9a-zA-Z-]+)?',

'{blogdomain}' => '([0-9a-zA-Z.-]+)?',

'{op}' => '([_0-9a-z-]+)?',

'{year}' => '([0-9]{4})?',

'{month}' => '([0-9]{2})?',

'{day}' => '([0-9]{2})?',

'{hours}' => '([0-9]{2})?',

'{minutes}' => '([0-9]{2})?',

'{postname}' => '([_0-9a-zA-Z.-]+)?',

'{postid}' => '([0-9]+)?',

'{catname}' => '([_0-9a-zA-Z.-]+)?',

'{catid}' => '([0-9]+)?',

'{username}' => '([_0-9a-zA-Z-]+)?',

'{userid}' => '([0-9]+)?',

'{templatename}' => '([_0-9a-zA-Z.-]+)?',

'{resourceid}' => '([0-9]+)?',

'{resourcename}' => '([^/*\n\r]+)?',

'{albumid}' => '([0-9]+)?',

'{albumname}' => '([_0-9a-zA-Z -]*)?'

);

Как видите, выборка идёт по цифрам и символам латинского алфавита. Теперь всё понятно. Я у себя попробовал создать название блога латиницей и всё заработало. Ну что, кто будет патч писать? ;) Могу я сделать. P.S. Как же тестеры столько времени не могли обнаружить такую грубую ошибку?

vadimaster добавил 06.05.2008 в 15:04

Ууууу... Ё-моё... нет слов. А как же будет проводиться транслитерация, если нет выбора русских символов? Смотрите сами: файл /class/linkparser.class.php содержит:

var $urlRewriteTags = array(

`{blogname}` => `([_0-9a-zA-Z-]+)?`,

`{blogid}` => `([0-9]+)?`,

`{blogowner}` => `([_0-9a-zA-Z-]+)?`,

`{blogdomain}` => `([0-9a-zA-Z.-]+)?`,

`{op}` => `([_0-9a-z-]+)?`,

`{year}` => `([0-9]{4})?`,

`{month}` => `([0-9]{2})?`,

`{day}` => `([0-9]{2})?`,

`{hours}` => `([0-9]{2})?`,

`{minutes}` => `([0-9]{2})?`,

`{postname}` => `([_0-9a-zA-Z.-]+)?`,

`{postid}` => `([0-9]+)?`,

`{catname}` => `([_0-9a-zA-Z.-]+)?`,

`{catid}` => `([0-9]+)?`,

`{username}` => `([_0-9a-zA-Z-]+)?`,

`{userid}` => `([0-9]+)?`,

`{templatename}` => `([_0-9a-zA-Z.-]+)?`,

`{resourceid}` => `([0-9]+)?`,

`{resourcename}` => `([^/*\n\r]+)?`,

`{albumid}` => `([0-9]+)?`,

`{albumname}` => `([_0-9a-zA-Z -]*)?`

);

Как видите, выборка идёт по цифрам и символам латинского алфавита. Теперь всё понятно. Я у себя попробовал создать название блога латиницей и всё заработало. Ну что, кто будет патч писать? ;) Могу я сделать. P.S. Как же тестеры столько времени не могли обнаружить такую грубую ошибку?

Pavka
На сайте с 20.05.2005
Offline
82
#103

/class/linkparser.class.php - это совсе не то :)

Он парсит готовые урлы.. ну если тольо Вы не желаете видеть в них русские буквы.

Смотреть нужно в class/data/textfilter.class.php

Я выкладывал патчи этого файла и в этом форуме.

В ближайшее время планирую выложить дистрибутивы с интегрированными патчами, локализациями.

Ну если хотите внести свою лепту - стучите в аську (785066), там обсудим кому какие патчи делать 🚬

Без подписи
vadimaster
На сайте с 04.05.2008
Offline
48
#104

Pavka, точно. Я торопился и не досмотрел до конца. Конечно же textfilter.class.php. Так вот, в файле используется кодировка win-1251. У меня БД в utf-8. Т.е. следующие массивы будут актуальны только для кодировки win-1251, да и не совсем корректно будут обработаны строки.

// replace some characters to similar ones

$search = array(' ', 'д', 'ц', 'ь','й','и','а','з', 'а', 'и', 'м',

'т', 'щ', 'б', 'й', 'н', 'у', 'ъ', 'л', 'п' );

$replace = array( $separator, 'a','o','u','e','e','a','c', 'a', 'e', 'i',

'o', 'u', 'a', 'e', 'i', 'o', 'u', 'e', 'i' );

Кстати, в Вашем примере слово "Общий" трансформируется в "aue". Глядя на эти миссивы и на полученный результат, можно смело сказать, что в примере используется данный скрипт и Вы работаете с кодировкой win-1251. Если Вы выкладывали патч для utf-8, то можете дать ссылку на него?

vadimaster добавил 06.05.2008 в 16:37

Pavka, точно. Я торопился и не досмотрел до конца. Конечно же textfilter.class.php. Так вот, в файле используется кодировка win-1251. У меня БД в utf-8. Т.е. следующие массивы будут актуальны только для кодировки win-1251, да и не совсем корректно будут обработаны строки.

// replace some characters to similar ones

$search = array(` `, `д`, `ц`, `ь`,`й`,`и`,`а`,`з`, `а`, `и`, `м`,

`т`, `щ`, `б`, `й`, `н`, `у`, `ъ`, `л`, `п` );

$replace = array( $separator, `a`,`o`,`u`,`e`,`e`,`a`,`c`, `a`, `e`, `i`,

`o`, `u`, `a`, `e`, `i`, `o`, `u`, `e`, `i` );

Кстати, в Вашем примере слово "Общий" трасформируется в "aue". Глядя на эти миссивы и на полученный результат, можно смело сказать, что Вы используете кодировку win-1251, даже не заглядывая в просмотр кодировки страницы. Если Вы выкладывали патч для utf-8, то можете дать ссылку на него?

Pavka
На сайте с 20.05.2005
Offline
82
#105
vadimaster:
Pavka, точно. Я торопился и не досмотрел до конца. Конечно же textfilter.class.php. Так вот, в файле используется кодировка win-1251. У меня БД в utf-8. Т.е. следующие массивы будут актуальны только для кодировки win-1251, да и не совсем корректно будут обработаны строки.
// replace some characters to similar ones
$search = array(' ', 'д', 'ц', 'ь','й','и','а','з', 'а', 'и', 'м',
'т', 'щ', 'б', 'й', 'н', 'у', 'ъ', 'л', 'п' );
$replace = array( $separator, 'a','o','u','e','e','a','c', 'a', 'e', 'i',
'o', 'u', 'a', 'e', 'i', 'o', 'u', 'e', 'i' );
Кстати, в Вашем примере слово "Общий" трансформируется в "aue". Глядя на эти миссивы и на полученный результат, можно смело сказать, что в примере используется данный скрипт и Вы работаете с кодировкой win-1251. Если Вы выкладывали патч для utf-8, то можете дать ссылку на него?

Достаточно пересохранить сам файл в utf-8

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий