Global Search и русские строки

Global Search и русские строки

от Gleb Zakhodyakin -
Количество ответов: 2
Недавно обновил Moodle до 1.9.3+ и получил возможность использовать такую замечательную вещь как Global Search. В целом, индексирование работает нормально, однако есть косяк с отображением русских символов на страницах с результатами поиска (см. приложенный скриншот).

Первая страница всегда отображается нормально, а все последующие работают только при условии, что строка запроса была набрана латиницей. Проблему по-видимому, вызывает неправильная перекодировка строк при формировании списка страниц для навигации. Весь сайт в utf-8, а судя по виду кракозябров, происходит лишнее перекодирование windows-1251>utf-8.

Вот фрагмент html со страницы с результатами (это блок навигации по страницам с результатами):
<div align='center' id='search_page_links'>&lt; Назад&nbsp;(1)&nbsp;<a href='query.php?query_string=&ETH;&raquo;&ETH;&frac34;&ETH;&sup3;&ETH;&cedil;&Ntilde;�&Ntilde;�&ETH;&cedil;&ETH;&ordm;&ETH;&deg;&page=2'>2</a>&nbsp;<a href='query.php?query_string=&ETH;&raquo;&ETH;&frac34;&ETH;&sup3;&ETH;&cedil;&Ntilde;�&Ntilde;�&ETH;&cedil;&ETH;&ordm;&ETH;&deg;&page=3'>3</a>&nbsp;<a href='query.php?query_string=&ETH;&raquo;&ETH;&frac34;&ETH;&sup3;&ETH;&cedil;&Ntilde;�&Ntilde;�&ETH;&cedil;&ETH;&ordm;&ETH;&deg;&page=4'>4</a>&nbsp;<a href='query.php?query_string=&ETH;&raquo;&ETH;&frac34;&ETH;&sup3;&ETH;&cedil;&Ntilde;�&Ntilde;�&ETH;&cedil;&ETH;&ordm;&ETH;&deg;&page=5'>5</a>&nbsp;<a href='query.php?query_string=&ETH;&raquo;&ETH;&frac34;&ETH;&sup3;&ETH;&cedil;&Ntilde;�&Ntilde;�&ETH;&cedil;&ETH;&ordm;&ETH;&deg;&page=2'>Дальше &gt;</a>&nbsp;</div></div>

То есть ссылки добавляются битые, причем русские символы заменяются на специальные - значит, неправильно работает сам модуль.

Можно ли починить, и где копать?

Что делает опция "UTF8 transcoding direction of results" в настройках глобального поиска?


Приложение error.png
В ответ на Gleb Zakhodyakin

Re: Global Search и русские строки

от Семен Буртовой -
Тоже столкнулись с этой проблемой.
Я решил эту проблему так:
файл search\querylib.php

в методе page_numbers() убрал функцию htmlentities:

..........
//$query = htmlentities($this->term);
$query = $this->term ;
.........