UMIhelp

Разработка сайта на UMI.CMS => Макросы UMI.CMS => Тема начата: korogan от 24 Мая 2012, 16:31:57

Название: Сортировка выпадающего списка в фильтре
Отправлено: korogan от 24 Мая 2012, 16:31:57
Здравствуйте!

Есть статья _http://umi-tips.livejournal.com/22959.html
В ней говорится как сделать сортировку по id в форме обратной связи.

Пытался сделать то же самое в фильтре каталога, не получается.
Подскажите как в фильтре сделать подобную сортировку.

Спасибо.
Название: Re:Сортировка выпадающего списка в фильтре
Отправлено: admin от 27 Мая 2012, 00:12:31
Во-первых, спасибо за обнаружение нерабочей статьи на сайте umihelp.ru

Во-вторых код писался для версии 2.7 так что явно в нем что-то не так при использовании версии 2.8.5, но для быстроты решения вашего вопроса, попробуйте воспользоваться второй частью  решения (то что начинается с заголовка "Небольшой пример по сортировке выпадающего списка"), то есть просто для всех выпадающих списков сделать одинаковую сортировку используя usel запросы
Название: Re:Сортировка выпадающего списка в фильтре
Отправлено: korogan от 27 Мая 2012, 12:40:18
Я пробовал. Проблема в следующем.
Если я делаю это в шаблонах модуля обратная связь - все работает замечательно.
А в шаблонах фильтра нет.
При добавление макроса data doSelection по попросту ничего в список из справочника не добавляется.

В чем то должно как я понимаю быть отличие при использование в обратной связи и той же сортировке только в фильтре. В чем только не пойму.
Название: Re:Сортировка выпадающего списка в фильтре
Отправлено: admin от 27 Мая 2012, 15:37:08
1. в какой  шаблон вставляешь вызов doSelection?
2. проверь это вообще тот шаблон что используется в фильтре?
3. проверь отдельно вызвав doSelection с id справочника, сам вывод справочника работает?
Название: Re:Сортировка выпадающего списка в фильтре
Отправлено: korogan от 07 Июля 2012, 13:28:53
Вызов фильтра производится так
%catalog search('%category_id%', 'filtr_po_tovaram cenovye_svojstva', 'proizvoditel_search)%

В шаблон /templates/pro-busy/tpls/catalog/proizvoditel_search.tpl
$FORMS['search_block_line_relation'] = <<<END
 
<dl class="selectContainer">
<dt><label for="itemType">%title%:</label></dt>
<dd>
<select name="fields_filter[%name%]" size="1" class="selectbox" id="itemType">
<option value="">Все</option>            
%data doSelection('search_filter_data_usel', 'search_filter_usel', %type-id%,id,asc)%
</select>
</dd>
</dl>

              
<!-- <label>%title%:</label>
<select name="fields_filter[%name%]" class="textinputs" onchange="this.form.submit()">
<option value="">Все</option>
%data doSelection('search_filter_data_usel', 'search_filter_usel', %type-id%,id,asc)%
</select> -->

END;

Вставил %data doSelection('search_filter_data_usel', 'search_filter_usel', %type-id%,id,asc)%

И вот что получаю
<udata generation-time="0.0"><error>You don't have permissions to call protocol "usel://" via HTTP</error></udata>