Проблема с радиокнопкой в MsSearch2

Вообщем проблема в след.
У товара есть тв параметр amount, в котором хранится количество товара на складе

По инструкции добавлен свой класс фильтрации

<?php
class myCustomFilter extends mse2FiltersHandler {
	
	// За образец берем стандартный buildBooleanFilter и немного его меняем
	public function buildAmountFilter(array $values) {
		if (count($values) < 2 && empty($this->config['showEmptyFilters'])) {
			return array();
		}

		$results = array();
		foreach ($values as $value => $ids) {
			$title = ($value <= 0)
				? $this->modx->lexicon('mse2_filter_availability_no')
				: $this->modx->lexicon('mse2_filter_availability_yes');
				
			$value = $value <= 0 ? '0' : '1';
			
			if (!isset($results[$value])) {
				$results[$value] = array(
					'title' => $title
					,'value' => $value
					,'type' => 'number'
					,'resource' => array()
				);
			}

			foreach ($ids as $id) {
				$results[$value]['resources'][] = $id;
			}
		}
		
		ksort($results);
		return $results;
	}
	
	
	// Собственно фильтрация, берём за основу filterNumber
	public function filterAmount(array $requested, array $values, array $ids) {
		$matched = array();

		$value = $requested[0];
		$tmp = array_flip($ids);
		foreach ($values as $number => $resources) {
			if ($value && $number > 0) {
				foreach ($resources as $id) {
					if (isset($tmp[$id])) {
						$matched[] = $id;
					}
				}	
			}
			elseif (!$value && $number <= 0) {
				foreach ($resources as $id) {
					if (isset($tmp[$id])) {
						$matched[] = $id;
					}
				}	
			}
		}

		return $matched;
	}

}
На страницу вывода каталога добавляю след. код

[[!mFilter2?
	&paginator=`pdoPage`
	&limit=`5`
	&parents=`342`
	&hideContainers=`1`
	&element=`msProducts`
	&filters=`
		ms|price:number
		,parent:parents
		,msoption|tags
		,ms|vendor:vendors
		,tv|amount:amount
	`
	&suggestionsRadion=`tv|amount`
	&class=`msProduct`
	&sort=`product|pagetitle:asc`
	
	&tplFilter.outer.ms|price=`tpl.mFilter2.filter.slider`
	&tplFilter.row.tv|amount=`tpl.mFilter2.filter.radio`	
	&tplFilter.row.ms|price=`tpl.mFilter2.filter.number`
	&tpls=`tpl.msProducts.row,tpl.msProducts.row2`
	&showLog=`0`
	&fastMode=`0`
	&includeContent=`0`
]]
Ссылка на каталог:
www.eurosvet-nn.ru/%D0%BA%D0%B0%D1%82%D0%B0%D0%BB%D0%BE%D0%B3/

Значения для данной радиокнопки выводятся правильные, фильтр работает. Но вот только при выборе например пункта «В наличии», пункт «Нет в наличии» становится недоступным.
Алексей Милов
18 января 2014, 18:16
modx.pro
977
0

Комментарии: 1

Василий Наумкин
19 января 2014, 09:24
0
Надо менять родной javascript.
    Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.
    1