public function actionProductItems() { $this->layout = false; $cate_id = Yii::$app->request->post('cate_id'); if ($cate = ProductCategory::findOne(['id' => $cate_id, 'is_active' => 1])) { $offset = Yii::$app->session->get("controllers.product-category.{$cate->id}.detail.offset"); $offset += static::PRODUCTS_LIMIT; Yii::$app->session->set("controllers.product-category.{$cate->id}.detail.offset", $offset); $products = $cate->getProducts(['orderBy' => Yii::$app->request->post('orderBy'), 'limit' => static::PRODUCTS_LIMIT, 'offset' => $offset]); $productsHtml = $this->render('//product/items', ['products' => $products, 'offset' => $offset]); $nextProductsNumber = $cate->countProducts(['limit' => static::PRODUCTS_LIMIT, 'offset' => $offset + static::PRODUCTS_LIMIT]); return json_encode(['productsHtml' => $productsHtml, 'nextProductsNumber' => $nextProductsNumber]); } else { throw new NotFoundHttpException(); } }
/** * @return \yii\db\ActiveQuery */ public function getProductCategory() { return $this->hasOne(ProductCategory::className(), ['id' => 'product_category_id']); }
/** * @return ActiveQuery */ public function getProductCategories() { return $this->hasMany(ProductCategory::className(), ['parent_id' => 'id']); }
" title="<?php echo I18n::t('View cart'); ?> "><?php echo I18n::t('View cart'); ?> </a> <!--<div class="clr"></div>--> </div> </div> </div> <div id="headMenu" style="display:none"> <div id="hmenu"> <?php $i = 0; foreach (ProductCategory::getParents() as $p) { ?> <div class="clr"></div> <h4><?php echo $p->t('name'); ?> </h4> <ul style="display:none" id="hm<?php echo ++$i; ?> "> <?php $j = 0; foreach ($p->getChildren() as $item) { $j++; ?>
public function findAllCategory() { $category = ProductCategory::find()->all(); return $category; }
public function getCategory_name_with_cat_id() { return $this->hasOne(ProductCategory::className(), ['id' => 'cat_id']); }