diff --git a/public/admin/controller/catalog/product.php b/public/admin/controller/catalog/product.php index cd2dffe..dacbc5e 100644 --- a/public/admin/controller/catalog/product.php +++ b/public/admin/controller/catalog/product.php @@ -64,7 +64,11 @@ class ControllerCatalogProduct extends Controller { if (isset($this->request->get['filter_status'])) { $url .= '&filter_status=' . $this->request->get['filter_status']; } - + + if (isset($this->request->get['filter_store_id'])) { + $url .= '&filter_store_id=' . $this->request->get['filter_store_id']; + } + if (isset($this->request->get['filter_category'])) { $url .= '&filter_category=' . $this->request->get['filter_category']; if (isset($this->request->get['filter_sub_category'])) { @@ -155,7 +159,11 @@ class ControllerCatalogProduct extends Controller { if (isset($this->request->get['filter_status'])) { $url .= '&filter_status=' . $this->request->get['filter_status']; } - + + if (isset($this->request->get['filter_store_id'])) { + $url .= '&filter_store_id=' . $this->request->get['filter_store_id']; + } + if (isset($this->request->get['filter_category'])) { $url .= '&filter_category=' . $this->request->get['filter_category']; if (isset($this->request->get['filter_sub_category'])) { @@ -240,7 +248,11 @@ class ControllerCatalogProduct extends Controller { if (isset($this->request->get['filter_status'])) { $url .= '&filter_status=' . $this->request->get['filter_status']; } - + + if (isset($this->request->get['filter_store_id'])) { + $url .= '&filter_store_id=' . $this->request->get['filter_store_id']; + } + if (isset($this->request->get['filter_category'])) { $url .= '&filter_category=' . $this->request->get['filter_category']; if (isset($this->request->get['filter_sub_category'])) { @@ -325,7 +337,11 @@ class ControllerCatalogProduct extends Controller { if (isset($this->request->get['filter_status'])) { $url .= '&filter_status=' . $this->request->get['filter_status']; } - + + if (isset($this->request->get['filter_store_id'])) { + $url .= '&filter_store_id=' . $this->request->get['filter_store_id']; + } + if (isset($this->request->get['filter_category'])) { $url .= '&filter_category=' . $this->request->get['filter_category']; if (isset($this->request->get['filter_sub_category'])) { @@ -413,6 +429,12 @@ class ControllerCatalogProduct extends Controller { } else { $filter_status = ''; } + + if (isset($this->request->get['filter_store_id'])) { + $filter_store_id = $this->request->get['filter_store_id']; + } else { + $filter_store_id = ''; + } $filter_sub_category = null; if (isset($this->request->get['filter_category'])) { @@ -550,6 +572,10 @@ class ControllerCatalogProduct extends Controller { if (isset($this->request->get['filter_status'])) { $url .= '&filter_status=' . $this->request->get['filter_status']; } + + if (isset($this->request->get['filter_store_id'])) { + $url .= '&filter_store_id=' . $this->request->get['filter_store_id']; + } if (isset($this->request->get['filter_category'])) { $url .= '&filter_category=' . $this->request->get['filter_category']; @@ -605,6 +631,7 @@ class ControllerCatalogProduct extends Controller { 'filter_quantity_min' => $filter_quantity_min, 'filter_quantity_max' => $filter_quantity_max, 'filter_status' => $filter_status, + 'filter_store_id' => $filter_store_id, 'filter_category' => $filter_category, 'filter_sub_category' => $filter_sub_category, 'filter_manufacturer_id'=> $filter_manufacturer_id, @@ -754,6 +781,10 @@ class ControllerCatalogProduct extends Controller { if (isset($this->request->get['filter_status'])) { $url .= '&filter_status=' . $this->request->get['filter_status']; } + + if (isset($this->request->get['filter_store_id'])) { + $url .= '&filter_store_id=' . $this->request->get['filter_store_id']; + } if (isset($this->request->get['filter_category'])) { $url .= '&filter_category=' . $this->request->get['filter_category']; @@ -824,6 +855,10 @@ class ControllerCatalogProduct extends Controller { if (isset($this->request->get['filter_status'])) { $url .= '&filter_status=' . $this->request->get['filter_status']; } + + if (isset($this->request->get['filter_store_id'])) { + $url .= '&filter_store_id=' . $this->request->get['filter_store_id']; + } if (isset($this->request->get['filter_category'])) { $url .= '&filter_category=' . $this->request->get['filter_category']; @@ -867,6 +902,7 @@ class ControllerCatalogProduct extends Controller { $data['filter_quantity_min'] = $filter_quantity_min; $data['filter_quantity_max'] = $filter_quantity_max; $data['filter_status'] = $filter_status; + $data['filter_store_id'] = $filter_store_id; $data['filter_category_name'] = $filter_category_name; $data['filter_category'] = $filter_category; $data['filter_sub_category'] = $filter_sub_category; @@ -964,7 +1000,11 @@ class ControllerCatalogProduct extends Controller { if (isset($this->request->get['filter_status'])) { $url .= '&filter_status=' . $this->request->get['filter_status']; } - + + if (isset($this->request->get['filter_store_id'])) { + $url .= '&filter_store_id=' . $this->request->get['filter_store_id']; + } + if (isset($this->request->get['filter_category'])) { $url .= '&filter_category=' . $this->request->get['filter_category']; if (isset($this->request->get['filter_sub_category'])) { @@ -1803,6 +1843,9 @@ if (isset($this->request->post['price_3'])) { } $this->session->data['success'] = $this->language->get('text_success'); $url = ''; + if (isset($this->request->get['filter_store_id'])) { + $url .= '&filter_store_id=' . $this->request->get['filter_store_id']; + } if (isset($this->request->get['page'])) { $url .= '&page=' . $this->request->get['page']; } @@ -1826,6 +1869,9 @@ if (isset($this->request->post['price_3'])) { } $this->session->data['success'] = $this->language->get('text_success'); $url = ''; + if (isset($this->request->get['filter_store_id'])) { + $url .= '&filter_store_id=' . $this->request->get['filter_store_id']; + } if (isset($this->request->get['page'])) { $url .= '&page=' . $this->request->get['page']; } diff --git a/public/admin/model/catalog/product.php b/public/admin/model/catalog/product.php index 1b3e6c9..8a7605c 100644 --- a/public/admin/model/catalog/product.php +++ b/public/admin/model/catalog/product.php @@ -503,6 +503,10 @@ class ModelCatalogProduct extends Model { if (isset($data['filter_status']) && $data['filter_status'] !== '') { $sql .= " AND p.status = '" . (int)$data['filter_status'] . "'"; } + + if (isset($data['filter_store_id']) && $data['filter_store_id'] !== '') { + $sql .= " AND EXISTS (SELECT 1 FROM " . DB_PREFIX . "product_to_store p2s WHERE p2s.product_id = p.product_id AND p2s.store_id = '" . (int)$data['filter_store_id'] . "')"; + } if (isset($data['filter_noindex']) && $data['filter_noindex'] !== '') { $sql .= " AND p.noindex = '" . (int)$data['filter_noindex'] . "'"; @@ -860,6 +864,10 @@ class ModelCatalogProduct extends Model { if (isset($data['filter_status']) && $data['filter_status'] !== '') { $sql .= " AND p.status = '" . (int)$data['filter_status'] . "'"; } + + if (isset($data['filter_store_id']) && $data['filter_store_id'] !== '') { + $sql .= " AND EXISTS (SELECT 1 FROM " . DB_PREFIX . "product_to_store p2s WHERE p2s.product_id = p.product_id AND p2s.store_id = '" . (int)$data['filter_store_id'] . "')"; + } if (isset($data['filter_noindex']) && $data['filter_noindex'] !== '') { $sql .= " AND p.noindex = '" . (int)$data['filter_noindex'] . "'"; diff --git a/public/admin/view/template/catalog/product_list.twig b/public/admin/view/template/catalog/product_list.twig index cd24d8b..1f4ec90 100644 --- a/public/admin/view/template/catalog/product_list.twig +++ b/public/admin/view/template/catalog/product_list.twig @@ -136,6 +136,19 @@