diff --git a/frontend/controllers/SearchController.php b/frontend/controllers/SearchController.php index cc52f38..f3cd224 100755 --- a/frontend/controllers/SearchController.php +++ b/frontend/controllers/SearchController.php @@ -54,7 +54,7 @@ class SearchController extends \yii\web\Controller } $productModel = new ProductFrontendSearch(); - $productProvider = $productModel->search(null, $params); + $productProvider = $productModel->search(null, $params, false); return $this->render( diff --git a/frontend/models/ProductFrontendSearch.php b/frontend/models/ProductFrontendSearch.php index 2ca90a3..8655497 100755 --- a/frontend/models/ProductFrontendSearch.php +++ b/frontend/models/ProductFrontendSearch.php @@ -48,10 +48,10 @@ class ProductFrontendSearch extends Product { * * @return ActiveDataProvider */ - public function search($category = null, $params = []) { + public function search($category = null, $params = [], $in_stock = true) { $dataProvider = new ActiveDataProvider([ - 'query' => $this->getSearchQuery($category, $params), + 'query' => $this->getSearchQuery($category, $params, $in_stock), 'pagination' => [ 'pageSize' => 15, ], @@ -82,7 +82,7 @@ class ProductFrontendSearch extends Product { return $dataProvider; } - public function getSearchQuery($category = null, $params = []) { + public function getSearchQuery($category = null, $params = [], $in_stock = true) { if (!empty($category)) { /** @var ActiveQuery $query */ // $query = $category->getRelations('product_categories'); @@ -96,8 +96,10 @@ class ProductFrontendSearch extends Product { $query->groupBy(['product.product_id', 'product_variant.price']); ProductHelper::_setQueryParams($query, $params); + if($in_stock){ + $query->andWhere(['!=', ProductVariant::tableName() .'.status', 1]); + } - $query->andWhere(['!=', ProductVariant::tableName() .'.status', 1]); return $query; } -- libgit2 0.21.4