Exemplo n.º 1
0
 public function productAction(\clarus\request\Request $request)
 {
     if ($request->getHttpMethod() == 'post') {
         $response = new JsonOk();
         $productProvider = new \shop\core\admin\model\provider\Product($this->db);
         $response->fill($productProvider->save($request->json));
         return $response;
     } else {
         $response = new JsonOk();
         $qb = new QueryBuilder();
         if (isset($_GET['filter'])) {
             foreach ($_GET['filter'] as $k => $v) {
                 $qb->addWhere($k, $v);
             }
         }
         if (isset($_GET['paging']) && is_array($_GET['paging'])) {
             $qb->setPaging($_GET['paging'][0], $_GET['paging'][1]);
         }
         $stm = $this->db->prepare('SELECT * FROM t_product p WHERE ' . $qb->getWhere() . ' ' . $qb->getLimitOffset());
         $stm->execute($qb->getBinds());
         $response->fill($stm->fetchAll());
         return $response;
     }
 }