private function _getProductBySlug($slug)
 {
     $slugAttribute = ProductAttribute::where('identifier', '=', 'slug')->get()->first();
     $productVarcharValue = ProductVarcharValue::where('product_attribute_id', '=', $slugAttribute->id)->where('value', '=', $slug)->where('website_id', '=', $this->websiteId)->get()->first();
     $product = Product::findorfail($productVarcharValue->product_id);
     return $product;
 }
Пример #2
0
 public function searchProduct(Request $request)
 {
     $query = $request->get('q');
     $titleAttribute = ProductAttribute::where('identifier', '=', 'title')->get()->first();
     $titleCollection = $titleAttribute->productVarcharValues()->where('value', 'like', '%' . $query . '%')->where('website_id', '=', $this->websiteId)->get();
     foreach ($titleCollection as $row) {
         $results[] = ['id' => $row->product_id, 'text' => $row->value];
     }
     return response()->json(['results' => $results]);
 }
Пример #3
0
 public function saveProductImages($product, ProductRequest $request)
 {
     $productAttribute = ProductAttribute::where('identifier', '=', 'image')->get()->first();
     $productAttribute->productVarcharValues()->where('product_id', '=', $product->id)->delete();
     if (count($request->get('image')) <= 0) {
         return true;
     }
     foreach ($request->get('image') as $image) {
         if (is_int($image)) {
             continue;
         }
         $productAttribute->productVarcharValues()->create(['product_id' => $product->id, 'website_id' => $this->websiteId, 'value' => $image]);
     }
 }
Пример #4
0
 public function getFeaturedProducts($paginate = 4)
 {
     $attribute = ProductAttribute::where('identifier', '=', 'is_featured')->get()->first();
     $products = Collection::make([]);
     $varcharValues = $attribute->productVarcharValues()->where('value', '=', 1)->get();
     foreach ($varcharValues as $varcharValue) {
         $products->push(self::findorfail($varcharValue->product_id));
     }
     return $products;
 }