VBsupport перешел с домена .ORG на родной .RU
Ура!
Пожалуйста, обновите свои закладки - VBsupport.ru
Блок РКН снят, форум доступен на всей территории России, включая новые терртории, без VPN
На форуме введена премодерация ВСЕХ новых пользователей
Почта с временных сервисов, типа mailinator.com, gawab.com и/или прочих, которые предоставляют временный почтовый ящик без регистрации и/или почтовый ящик для рассылки спама, отслеживается и блокируется, а так же заносится в спам-блок форума, аккаунты удаляются
Если вы хотите приобрести какой то скрипт/продукт/хак из каталогов перечисленных ниже: Каталог модулей/хаков
Ещё раз обращаем Ваше внимание: всё, что Вы скачиваете и устанавливаете на свой форум, Вы устанавливаете исключительно на свой страх и риск.
Сообщество vBSupport'а физически не в состоянии проверять все стили, хаки и нули, выкладываемые пользователями.
Помните: безопасность Вашего проекта - Ваша забота. Убедительная просьба: при обнаружении уязвимостей или сомнительных кодов обязательно отписывайтесь в теме хака/стиля
Спасибо за понимание
Описание:
---------------------------------------
Небольшой, привычный хак добавляющий в список пользователей дополнительный набор символов (Национаный алфавит).
Данный хак отличается от аналогов абсолютно другой (альтернативной) системой подачи ссылок в адресную строку.
А точнее,
запрос передается не в виде:
/forum/memberlist.php?ltr=J <- где J это искомая буква.
а в виде:
/forum/memberlist.php?ltr=74 <- где 74 это код буквы J.
почему так... потому что передавать в адресную стоку что либо кроме латиницы или цифр совсем не Комильфо.
Не все браузеры готовы это пережевать без ущерба для себя и/или пользователя. Ну и есть еще одна причина о которой будет сказано ниже.
Введены дополнительные настройки в Основных опциях позволяющие выбрать язык, символы которого и будут нужны в Списке пользователей.
(В текущей версии Хака (2.1.2) в массив введены два переченя символов - Русский, и Украинский)
Добавлена опция позволяющая выбрать тип передачи символов в строку запроса. Либо все символы будут переданы в виде их кодов.
Либо только дополнительные символы будут передаваться в виде кода, а латиница будет передана в оригинальном виде.
Кроме того данных хак совершенно коректно работает с "продуктом" VbSEO !!!
(Для того что бы все ссылки SEO формировались правильно нужно в файле \includes\functions_vbseo_url.php найти (значение внутри кавычек): "[a-z]|0|all" и заменить на "[a-z]|[0-9]+|all"
после чего зайдите в админку VbSEO и просто пересохраните ее что бы применились изменения).
Установка хака:
1) Импортировать "продукт" product-national_alph_in_memberlist_(***).xml прилагаемый в архиве.
2) Зайти в "Основные опции", выбрать Ваш язык символов.
UPDATED:
v. 2.1.2 (fixed by J.C.)
* исправлена небольшая ошибка в одном из модулей (по всей видимости была вызвана буквой "Ё" при экспорте продукта.)
* вернул пропавшую букву "Ш" в список.
v. 2.1.2 (modified by kerk)
* Исправлены некоторые косяки в постраничной навигации
* При установленной настройке "Все символы передавать в виде кода" в "Да" и при поиске пользователей по символу "#" в адресную строку передавалось целое число, соотв. поиск не выдавал узеров, у которых в нике есть спецсимволы
v. 2.1.1
+Добавлен файл продукта в кодировке cp1251.
v. 2.1.0
+Добавлен Украинский язык к списку выбора языков.
v. 2.0.0
- Из хака за ненадобностью удален файл memberlist.php
* Полностью переписан продукт, все изменения производимые хаком вынесены в модули. (Респект Yoskaldyr, за подсказки по коду модулей).
+ Добавлена опция выбора передачи кодов символов, латиница может передаваться как в виде кодов символов, так и в виде самих символов.
+ Добавлена опция указания альтернативных символов.
* Исправлен файл readme_ru.txt
Last edited by J. Corvin : 05-19-2011 at 02:54 PM.
@Alexxali
Продвинутый
Join Date: Jul 2008
Posts: 190
Версия vB: 3.8.7
Пол:
Reputation:
Опытный 34
Репутация в разделе: 43
0
a скрины можно?
@Yoskaldyr
Специалист
Join Date: Jan 2007
Posts: 543
Версия vB: 4.0.x
Reputation:
Professional 556
Репутация в разделе: 255
0
J. Corvin, Спасибо за оригинальное решение проблемы русских символов в урл-е.
Сегодня гляну этот код и постараюсь вынести в отдельный продукт без редактирования memberlist.php - т.к. редактирование оригинальных файлов очень усложняет обновление форума
@J. Corvin
Глумливый Специалист
Join Date: Aug 2005
Награды в конкурсах:
Posts: 774
Версия vB: 3.8.x
Reputation:
Professional 748
Репутация в разделе: 485
1
Alexxali,
Добавил Скриншоты.
Yoskaldyr,
Проблема в том что я не знаю как Заменить часть кода из файла memberlist.php на свою.
Используя "якоря" это не получается. Если у тебя есть варианты как то с этим помочь, буду премного благодарен.
@Yoskaldyr
Специалист
Join Date: Jan 2007
Posts: 543
Версия vB: 4.0.x
Reputation:
Professional 556
Репутация в разделе: 255
10
J. Corvin, Все можно. Решение во вложении. Продукт в UTF кодировке.
за основу брал хак zCarot-а, но реализовал твою идею замены.
И ничего править не надо. Там еще красоту навести надо для добавления различных языков из админки. Но в общем работает.
------
Еще немного обновил - теперь настройках можно указать список символов для добавления. (Для русского и укр. языка регулярное выражение одинаковое, поэтому его в отдельную настройку не выносил)
P.S. J. Corvin, Кстати на инит лишние функи вешать не резонно более логично ту функу на мемберлист_старт хук вешать. Хотя я вообще без функций обошелся.
Last edited by Yoskaldyr : 08-28-2009 at 06:21 PM.
Reason: Обновил вложение
@J. Corvin
Глумливый Специалист
Join Date: Aug 2005
Награды в конкурсах:
Posts: 774
Версия vB: 3.8.x
Reputation:
Professional 748
Репутация в разделе: 485
0
Вариант с опцией TextArea мне уже приходил в голову.
Но он на мой взгляд не слишком красивый.
Касателно функции, если ее повесить на мемберлист_старт то тогда она не будеет отрабатывать в админке.
Обдумывая этот хак хотелось сделать его более универсальным. но По сути вся универсальность закончиться на 1251. Т.е. Русский, Украинский, эммм.... болгарский и по моему сербский... для остальных языков кодировки уже другие.
Да, а почему ты не стал переводить на кода все символы ?
@Yoskaldyr
Специалист
Join Date: Jan 2007
Posts: 543
Версия vB: 4.0.x
Reputation:
Professional 556
Репутация в разделе: 255
0
Quote:
Originally Posted by J. Corvin
Да, а почему ты не стал переводить на кода все символы ?
Во первых поменются текущие проиндексированные страницы в поисковиках (если конечно мемберлист не закрыт от поисковых ботов и гостей) - для кого-то это может быть критично. Да и считаю зачем изменять текущий функционал, если он и так работает нормально, вот русские нормально не работали - их и надо изменять
Quote:
Originally Posted by J. Corvin
Но он на мой взгляд не слишком красивый.
Никто не мешает красиво оформить через HTML селектом - тогда тоже не нужна будет функа в админке, просто считаю лишним перегружать код хоть и небольшой но всегда выполняющейся функцией.
Сделал бы селектом, но проблема в том что вдруг кто-то захочет другой набор символов или другой порядок, поэтому textarea более универсально получается