Example #1
0
function template_pricecore_product_hook($obj, $category, $rout)
{
    if ($rout == 'START') {
        $dis = null;
        // 404
        if (!PHPShopSecurity::true_num($category)) {
            return $obj->setError404();
        }
        // Выборка данных
        $PHPShopOrm = new PHPShopOrm($GLOBALS['SysValue']['base']['products']);
        $PHPShopOrm->debug = $obj->debug;
        $data = $PHPShopOrm->select(array('*'), array('category' => '=' . $category, 'enabled' => "='1'", 'parent_enabled' => "='0'"), array('order' => 'num'), array('limit' => 500));
        if (!empty($obj->category_name)) {
            $dis = $obj->tr(false, $obj->category_name);
        }
        if ($obj->PHPShopSystem->getSerilizeParam('admoption.user_price_activate') == 1 and empty($_SESSION['UsersId'])) {
            $user_price_activate = true;
        }
        // Добавляем в дизайн ячейки с товарами
        if (is_array($data)) {
            foreach ($data as $row) {
                $name = '<a href="' . $obj->seourl($row) . '" class="list-group-item">' . $row['name'];
                if (empty($row['sklad']) and empty($user_price_activate)) {
                    $cart = PHPShopText::a('javascript:AddToCart(' . $row['id'] . ')', PHPShopText::img('images/shop/basket_put.gif', false, 'absMiddle'), $obj->lang('product_sale'));
                } else {
                    $cart = PHPShopText::a('../users/notice.html?productId=' . $row['id'], PHPShopText::img('images/shop/date.gif', false, 'absMiddle'), $obj->lang('product_notice'));
                }
                if (empty($user_price_activate)) {
                    $price = $obj->price($row) . ' ' . $obj->currency();
                } else {
                    $price = PHPShopText::a('../users/register.html', PHPShopText::img('images/shop/icon_user.gif', false, 'absMiddle'), $obj->lang('user_register_title'));
                }
                $dis .= $name . '<b class="pull-right">' . $price . '</b></a>';
            }
        }
        $block = $dis . '</div>';
        $obj->add($block, true);
        return true;
    }
}
Example #2
0
    /**
     * Вывод подкаталогов
     * @param int $n ИД каталога
     * @param boolean $flag Выводить подкаталоги след. уровня или нет. TRUE - по умолчанию, выводить.
     * @return string
     */
    function subcatalogNt($n, $flag = true) {

        $dis = null;

        $PHPShopOrm = new PHPShopOrm($this->objBase);
        $PHPShopOrm->cache_format = $this->cache_format;
        $PHPShopOrm->cache = $this->cache;
        $PHPShopOrm->debug = $this->debug;

        $where['parent_to'] = '=' . $n;

        // Не выводить скрытые каталоги
        $where['skin_enabled'] = "!='1'";

        // Мультибаза
        if ($this->PHPShopSystem->ifSerilizeParam('admoption.base_enabled')) {
            $where['servers'] = " REGEXP 'i" . $this->PHPShopSystem->getSerilizeParam('admoption.base_id') . "i'";
        }

        $data = $PHPShopOrm->select(array('*'), $where, array('order' => 'num, name'), array('limit' => 100), __CLASS__, __FUNCTION__);


        if (is_array($data))
            foreach ($data as $row) {

                //выводим подкаталоги 3 уровня.
                if ($flag) {
                    $this->set('catalogPodcatalog3level', '');
                    $this->set('catalogPodcatalog3level', $this->subcatalogNt($row['id'], false));
                }

                // Определяем переменные
                $this->set('catalogName', $row['name']);
                $this->set('catalogUid', $row['id']);

                $PHPShopCategory = new PHPShopCategory($n);
                $this->set('catalogTitle', $PHPShopCategory->getName());

                // Перехват модуля
                $this->setHook(__CLASS__, __FUNCTION__, $row);

                // Подключаем шаблон
                if ($flag AND $this->get('catalogPodcatalog3level'))
                    $dis.=ParseTemplateReturn('catalog/podcatalog_forma_nt_2.tpl');
                elseif ($flag)
                    $dis.=ParseTemplateReturn('catalog/podcatalog_forma_nt.tpl');
                else
                    $dis.=ParseTemplateReturn('catalog/podcatalog_forma_3level_nt.tpl');
            }
        return $dis;
    }