public function indexAction()
 {
     $orderBy = array("1" => "price asc", "2" => "price desc", "3" => "discount asc", "4" => "discount desc");
     $numberPage = 1;
     $query = Products::query();
     //            -> where("is_available=1");
     if ($this->request->isPost()) {
         // SEARCH
         $name = $this->request->getPost("name");
         $status = $this->request->getPost("status");
         $category = $this->request->getPost("category");
         $subcat = $this->request->getPost("subcat");
         $order = $this->request->getPost("order");
         if ($name != "") {
             $query->andWhere("name like '%{$name}%'");
         }
         if ($category != "") {
             $query->andWhere("category_id={$category}");
         }
         if ($subcat != "") {
             $query->andWhere("sub_category_id={$subcat}");
         }
         if ($order != "") {
             $query->order($orderBy[$order]);
         }
     }
     if (!$status || $status == "") {
         $status = 'New';
     }
     if ($status != "All") {
         $query->andWhere("status='{$status}'");
     }
     $numberPage = $this->request->getQuery("page", "int");
     $productList = $query->execute();
     $products = new Paginator(array("data" => $productList, "limit" => 10, "page" => $numberPage));
     $categories = Categories::find();
     $statusTypies = ["New", "Confirmed", "Enabled", "Disabled", "Approved"];
     $postData = $this->request->getPost();
     $subcats = SubCategories::find();
     $this->view->page = $products->getPaginate();
     $this->view->categories = $categories;
     $this->view->subcats = $subcats;
     $this->view->statusTypies = $statusTypies;
     $this->view->postData = $postData;
     $this->view->orderBy = $orderBy;
     $this->view->status = $status;
     $this->view->categoriesJson = json_encode(Categories::find()->toArray());
     $this->view->subCatsJson = json_encode($subcats->toArray());
 }
Example #2
0
 /**
  * Deletes a categorie
  *
  * @param string $id
  */
 public function deleteAction($id)
 {
     $categorie = SubCategories::findFirstByid($id);
     if (!$categorie) {
         $this->flash->error("categorie was not found");
         return $this->dispatcher->forward(array("controller" => "subcat", "action" => "index"));
     }
     if (!$categorie->delete()) {
         foreach ($categorie->getMessages() as $message) {
             $this->flash->error($message);
         }
         return $this->dispatcher->forward(array("controller" => "subcat", "action" => "search"));
     }
     $this->flash->success("Subcat was deleted successfully");
     return $this->dispatcher->forward(array("controller" => "subcat", "action" => "index"));
 }