product = $product; $this->brand = $brand; $this->category = $category; $this->productmodel = $productmodel; } /** * Returns count of product. * * @param array $filter * * @return int */ public function count() { return 0; } /** * Make gadget View * * @param string $view * * @param int $count * * @return View */ public function gadget($view = 'admin.product.gadget', $count = 10) { if (User::hasRole('user')) { $this->product->pushCriteria(new \Litepie\Litepie\Repositories\Criteria\ProductUserCriteria()); } $product = $this->product->scopeQuery(function ($query) use ($count) { return $query->orderBy('id', 'DESC')->take($count); })->all(); return view('product::' . $view, compact('product'))->render(); } /** * Make gadget View * * @param string $view * * @param int $count * * @return View */ public function gadget($view = 'admin.brand.gadget', $count = 10) { if (User::hasRole('user')) { $this->brand->pushCriteria(new \Litepie\Litepie\Repositories\Criteria\BrandUserCriteria()); } $brand = $this->brand->scopeQuery(function ($query) use ($count) { return $query->orderBy('id', 'DESC')->take($count); })->all(); return view('product::' . $view, compact('brand'))->render(); } /** * Make gadget View * * @param string $view * * @param int $count * * @return View */ public function gadget($view = 'admin.category.gadget', $count = 10) { if (User::hasRole('user')) { $this->category->pushCriteria(new \Litepie\Litepie\Repositories\Criteria\CategoryUserCriteria()); } $category = $this->category->scopeQuery(function ($query) use ($count) { return $query->orderBy('id', 'DESC')->take($count); })->all(); return view('product::' . $view, compact('category'))->render(); } /** * Make gadget View * * @param string $view * * @param int $count * * @return View */ public function gadget($view = 'admin.productmodel.gadget', $count = 10) { if (User::hasRole('user')) { $this->productmodel->pushCriteria(new \Litepie\Litepie\Repositories\Criteria\ProductmodelUserCriteria()); } $productmodel = $this->productmodel->scopeQuery(function ($query) use ($count) { return $query->orderBy('id', 'DESC')->take($count); })->all(); return view('product::' . $view, compact('productmodel'))->render(); } }