Jump to content


Photo
- - - - -

Чекбоксы в фильтре JBZoo Price - Advance


  • This topic is locked This topic is locked
2 replies to this topic

#1 thank267

thank267
  • JBZoo User (rus)
  • User rate: 0
  • posts: 23
  • topics: 7

Posted 17 July 2014 - 09:02

Как сделать, чтобы по умолчанию чекбоксы в фильтре цены (есть на складе, новинка и т.д.) были выбраны. На сколько я понял, это прописывается в jbuniversal/framework/render/filter/element.jbpriceadvance.php. Но сделать это не получилось.


  • 0

#2 Cheren-dow

Cheren-dow
  • JBZoo User (rus)
  • User rate: 95.7
  • posts: 5060
  • topics: 31

Posted 17 July 2014 - 11:57

thank267, попробуйте в этом файле  после условия 

if ((int)$this->_params->get('jbzoo_filter_sku', 1)) {}

Заменить 4 следующих на

if ((int)$this->_params->get('jbzoo_filter_balance', 1)) {
    $options = array('1' => JText::_('JBZOO_FILTER_JBPRICE_BALANCE_CHECKBOX'));
    $values['balance'] = (empty($values['balance'])) ? 1 : $values['balance'];
    $html[]  = $this->_jbhtml->checkbox($options, $this->_getName('balance'), '', $values['balance'], $this->_getId('balance'));
}

if ((int)$this->_params->get('jbzoo_filter_sale', 1)) {
    $options = array('1' => JText::_('JBZOO_FILTER_JBPRICE_SALE_CHECKBOX'));
    $values['sale'] = (empty($values['balance'])) ? 1 : $values['sale'];
    $html[]  = $this->_jbhtml->checkbox($options, $this->_getName('sale'), '', $values['sale'], $this->_getId('sale'));
}

if ((int)$this->_params->get('jbzoo_filter_new', 1)) {
    $options = array('1' => JText::_('JBZOO_FILTER_JBPRICE_NEW_CHECKBOX'));
    $values['new'] = (empty($values['balance'])) ? 1 : $values['new'];
    $html[]  = $this->_jbhtml->checkbox($options, $this->_getName('new'), '', $values['new'], $this->_getId('new'));
}

if ((int)$this->_params->get('jbzoo_filter_hit', 1)) {
    $options = array('1' => JText::_('JBZOO_FILTER_JBPRICE_HIT_CHECKBOX'));
    $values['hit'] = (empty($values['balance'])) ? 1 : $values['hit'];
    $html[]  = $this->_jbhtml->checkbox($options, $this->_getName('hit'), '', $values['hit'], $this->_getId('hit'));
}

  • 0
Изображение
 

#3 thank267

thank267
  • Topic Starter
  • JBZoo User (rus)
  • User rate: 0
  • posts: 23
  • topics: 7

Posted 17 July 2014 - 16:50

Вариант выглядит логично. Но в данном случае чекбоксы будут выбраны всегда, т.к. при снятии галочки empty($values['balance'])==true. А надо только при первой загрузке. А потом в зависимости от выбора пользователя.


  • 0




Click to return to top of page in style!