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

Сортировка по дополнительному значению списка

25.10.2012, 20:03
Гость
Гость

Как вывести в префиксе списка объектов сортировку по дополнительному значению Списка. И как к дополнительному значению списка прикрутить еще иконку.
Спасибо.
26.10.2012, 11:15
Гость
Гость

Как вывести в префиксе списка объектов компонента сортировку по дополнительному значению Списка. И как к дополнительному значению списка прикрутить еще иконку.
Спасибо.
26.10.2012, 14:27
Руслан Густокашин
Студия Вэлпис

Зарегистрирован:
2012-02-06
Сообщений: 962

Здравствуйте!
Вы имеете в виду, сделать над списком объектов ссылку, при нажатии которой будет сортировка по доп.значению списка?
Тогда пропишите например такую ссылку в префиксе:
<a href='?sortbyadval=1'>Сортировать</a>

А в системных настройках компонента так сделать:
if($sortbyadval) {
$query_join .= " left join Classificator_Spisok as s on (a.Spisok=s.Spisok_ID)";
$query_order = "s.Value ASC";
}
(переменная query_join, конечно, должна быть объявлена выше этого кода, если нужно, а если не нужно, то точку надо убрать).

Иконку к доп.значению списка просто так не прикрутить. Для этого вам нужно создать отдельный компонент - Иконки списков, и картинки грузить туда.
А потом так же с помощью join'ов сопоставлять элементы списка с картинками в том компоненте.
26.10.2012, 17:50
Гость
Гость

Не совсем.. Нужно чтобы при нажатии сортировки по списку выводились объекты из этого списка, а над ними выводился доп значение списка
Те выбираем какого-то производителя и выводятся объекты по нему, а над ними небольшой текст о нем, который берется из дополнонительного значения списка
30.10.2012, 10:31
Руслан Густокашин
Студия Вэлпис

Зарегистрирован:
2012-02-06
Сообщений: 962

Тогда по-другому:

В префиксе:
<form method='get' action=''>
Выберите производителя: <select name='sManuf'><option value=0> --- Все --- </option>
".listQuery("SELECT Manuf_ID, Manuf_Name FROM Classificator_Manuf order by Manuf_Name",
"<option value=\$data[Manuf_ID]\".
(\$data['Manuf_ID']=='$sManuf' ?
' selected':'').\">\$data[Manuf_Name]")."
</select>
</form>

".($sManuf?"Немного об этом производителе: ".$db->get_var("select Value from Classificator_Manuf where Manuf_ID=".abs(intval($sManuf))." limit 1"):NULL)."


Ну и в системных настройках компонента сделать выборку:
if($sManuf) {
$query_where = " a.Manuf=".abs(intval($sManuf));
}

Скрипт не проверял, но должно работать.
198 196 2012-10-30 10:31:00 12698
Описание проекта