Показать товар в наличии

Тема в разделе "Simplacms", создана пользователем bssat, 2 апр 2014.

  1. bssat

    bssat Создатель

    Регистр.:
    11 мар 2013
    Сообщения:
    18
    Симпатии:
    1
    Никто не реализовывал такую тему? На первой странице находится Чекбокс, при нажатии на который выводятся только товары в наличии.
     
  2. svma3x

    svma3x Создатель

    Регистр.:
    24 ноя 2013
    Сообщения:
    33
    Симпатии:
    3
    На форуме simpla есть решение бесплатное почти аналог)
     
  3. Yar0slav

    Yar0slav Создатель

    Регистр.:
    13 май 2014
    Сообщения:
    29
    Симпатии:
    6
    Чтобы не искать.
    В файле шаблона в необходимом месте пишем:

    <div>В наличии
    <inputtype="checkbox"name="count_only" {if $smarty.session.only_count=='1'} checked="checked"{/if} {if $smarty.session.only_count=='1'}onchange="document.location='{url only_count=2}'"{else}onchange="document.location='{url only_count=1}'"{/if}/></div>
    Файл /index.php
    после session_start(); пишем:
    if(isset($_REQUEST['only_count'])){
    $_SESSION['only_count']=$_REQUEST['only_count'];
    header("location:".$_SERVER['REDIRECT_URL']);}

    файл /api/Products.php
    после
    if(!empty($filter['in_stock']))
    $in_stock_filter = $this->db->placehold('AND (SELECT 1 FROM __variants pv WHERE pv.product_id=p.id AND pv.price>0 AND (pv.stock IS NULL OR pv.stock>0) LIMIT 1) = ?', intval($filter['in_stock']));
    Пишем:
    if((isset($_SESSION['only_count'])&& $_SESSION['only_count']=='1'))
    $in_stock_filter = $this->db->placehold('AND (SELECT 1 FROM __variants pv WHERE pv.product_id=p.id AND (pv.stock IS NULL OR pv.stock>0) LIMIT 1)');
     
    dev87 нравится это.
  4. acidpepper

    acidpepper Писатель

    Регистр.:
    27 апр 2014
    Сообщения:
    8
    Симпатии:
    0
    в ProductsView.php после
    $filter['visible']=1;
    добавить
    $filter['in_stock']=1;