Как улучшить Ranges: Min/Max UI Slider ?

Главные вкладки

Аватар пользователя Evil0o Evil0o 8 сентября 2014 в 1:38

Фасетные фильтры проблема в работе в цены виджет Ranges: Min/Max UI Slider
Как избавится от того что друпал при выборе цены в N диапазоне начинает укорачивать диапазон выбора?
Побывал ставить свежую версию Search ranges 7.x-1.5+9-dev там вроде подправили работу слайдера(ползунка) все хорошо если какой нибудь словарь, диапазон не съедается а во с ценой все тоже.

Комментарии

Аватар пользователя Evil0o Evil0o 8 сентября 2014 в 2:23

Я имею ввиду что не знаю как сделать это с помощью search api или чего то другого что не будет нагружать сильно сервер.

Аватар пользователя DreamR1der DreamR1der 8 сентября 2014 в 23:03

Обсуждение данного косяка: https://drupal.org/node/1989776
патч: http://drupalcode.org/project/search_api_ranges.git/commitdiff/433bbcd?h...

--- a/search_api_ranges.module
+++ b/search_api_ranges.module
@@ -144,11 +144,8 @@ function search_api_ranges_minmax($variables, $order = 'ASC') {
   // otherwise our min/max would always equal user input.
   $filters = &$query->getFilter()->getFilters();
   foreach ($filters as $key => $filter) {
-
-    // Check for array: old style filters are objects which we can skip.
-    if (is_array($filter)) {
-      if ($filter[0] == $variables['range_field'] || ($filter[0] != $variables['range_field'] && $filter[2] == '<>')) {
-        $current_filter = $filters[$key];
+    if( isset($filter->tags) && is_array($filter->tags) ){
+      if( in_array('facet:'.$variables['range_field'], $filter->tags) ){
         unset($filters[$key]);
     }
}

применял для версии 7x-1.5

Аватар пользователя Evil0o Evil0o 9 сентября 2014 в 1:50

у меня стоит, последняя дев версия, и уже все пропатчено, патч помогает но не так как хочется. Рабочую версию тоже ставил, патчил, нифига.
Пример: фильтр от 1 до 100;
если фильтр ставим от 10 до 100 все ок, работает как надо можно уменьшить;
если фильтр ставим от 12 до 100 то фильтр режется, и уменьшить нельзя

Аватар пользователя Evil0o Evil0o 9 сентября 2014 в 2:04

Может я цену как то не так настраиваю?
Для примера можно поставить комерце кикстартер. Там так же

Аватар пользователя vermix1 vermix1 9 сентября 2014 в 16:09

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

Аватар пользователя Евгений_Маков Евгений_Маков 14 ноября 2016 в 10:17

Согласен. Но дело в том что не очень добросовестный человек импортировал 10000 товаров как попало и у некоторых цена 0 и год выпуска так же 0, пока правлю нужно исключить это значение из минимального для слайдера. Как быть?