public function ProductOfCate($slug)
 {
     $cate_id = Category::where('slug', '=', $slug)->first();
     $categories = Category::all();
     $productOfcate = Product::where('category_id', $cate_id->id)->orderBy('created_at', 'DESC')->get();
     $featured_products = FeaturedProduct::orderBy('rank', 'ASC')->get();
     foreach ($featured_products as $i) {
         $id[] = $i->product_id;
     }
     $featured_photo = Photo::whereIn('product_id', $id)->get();
     $lastest_product = Product::orderBy('created_at', 'DESC')->limit(8)->get();
     return view('pages.category', compact('productOfcate', 'cate_id', 'categories', 'featured_products', 'featured_photo', 'lastest_product'));
 }
예제 #2
0
 /**
  * Product store
  *
  * @param ShopProductStoreRequest $request
  * @return \Illuminate\Http\RedirectResponse
  */
 public function store(ShopProductStoreRequest $request)
 {
     $product = Product::create($request->only('name', 'content', 'price', 'active'));
     if ($request->has('photos')) {
         $photos = Photo::whereIn('id', $request->get('photos'))->get();
         $product->photos()->saveMany($photos);
     }
     if ($request->has('category_id')) {
         $product->categories()->attach($request->get('category_id'));
     }
     //@Todo check field before save
     $product->fields()->attach(array_keys($request->field));
     foreach ($request->get('field') as $fieldId => $value) {
         if (!empty($value)) {
             $field = Field::findOrFail($fieldId);
             FieldValue::create([$field->type => $value[$field->type], 'product_id' => $product->id, 'field_id' => $field->id]);
         }
     }
     if ($request->has('fields')) {
         $product->fields()->attach($request->get('fields'));
     }
     Session::flash('message', 'Товар добавлен');
     return redirect()->route('manager.shop.product.edit', $product->id);
 }
 /**
  * Update Category
  *
  * @param ShopCategoryUpdateRequest $request
  * @param $category
  * @return \Illuminate\Http\RedirectResponse
  */
 public function update(ShopCategoryUpdateRequest $request, Category $category)
 {
     $category->update(['name' => $request->get('name'), 'content' => $request->get('content')]);
     if ($request->has('parent_id')) {
         $parent = Category::find($request->get('parent_id'));
         $parent->children()->save($category);
     } else {
         $category->parent_id = null;
         $category->save();
     }
     if ($request->has('fields')) {
         $category->fields()->sync($request->get('fields'));
     }
     if ($request->has('photos')) {
         $photos = Photo::whereIn('id', $request->get('photos'))->get();
         $category->photos()->saveMany($photos);
     }
     Session::flash('message', 'Категория изменено');
     return redirect()->route('manager.shop.category.index');
 }