/** * Display a listing of the resource. * * @return \Illuminate\Http\Response */ public function index() { $data = Product::with('category')->get(); $data = DB::table('products')->leftJoin('categories', 'products.category_id', '=', 'categories.id')->leftJoin('photos', 'products.id', '=', 'photos.product_id')->select('products.*', 'categories.name as cname', 'photos.path as photo')->orderBy('cname')->paginate(self::perPage); //dd($data); return view('admin.product.index', compact('data')); }
/** * Display a listing of the resource. * * @return Response */ public function index() { $pro = new Product(); $adSlotObj = new Adslot(); $catObj = new Category(); $brandObj = new Brand(); /*getting all products for all slots(currently we have 7 slots)*/ $adSlot_data = $adSlotObj->with(['products'])->get(); /*t1-t7*/ // dd($adSlot_data[4]['products'][0]); $category_temp_data = $catObj->orderBy('created_at')->take(10)->get(); /*f1-f10*/ $brand_data = $brandObj->with(['products'])->get(); $category_data = []; foreach ($category_temp_data as $cat_id) { $cat_latest_product = $pro->where('category_id', '=', $cat_id['id'])->orderBy('created_at')->take(1)->pluck('photo_1'); $cat_latest_product_id = $pro->where('category_id', '=', $cat_id['id'])->orderBy('created_at')->take(1)->pluck('id'); $cat_random_product = $pro->where('category_id', '=', $cat_id['id'])->orderBy(DB::raw('RAND()'))->take(6)->get(); $cat_brands = $pro->with(['brand'])->where('category_id', '=', $cat_id['id'])->take(5)->get(); $cat_products_random_photos = []; foreach ($cat_random_product as $photo) { $cat_products_random_photos[] = $photo; } $category_data[] = ['color' => $cat_id['color'], 'floor' => $cat_id['floor'], 'name' => $cat_id['name'], 'desc' => $cat_id['description'], 'logo' => $cat_id['logo'], 'latest_photo_id' => $cat_latest_product_id, 'latest_photo' => $cat_latest_product, 'random_photos' => $cat_products_random_photos, 'brands' => $cat_brands]; } return view('landing_page', compact(['adSlot_data', 'category_data'])); }
public function add($id, $quantity, $color = false, $config = false) { $product = Product::with(['color', 'category'])->find($id); $this->items[$id]['product'] = $product; $this->items[$id]['quantity'] = $quantity; $this->items[$id]['color'] = $color; $this->items[$id]['configuration'] = $config; }
public function index(Request $request) { $q = $request->get('q'); if ($q) { } $products = Product::with('brand')->with('stock')->with('unit')->where('name', 'LIKE', '%' . $q . '%')->orderBy('id', 'desc')->paginate(6); return $products; }
public function all() { $products = Product::with('category')->get(); if ($products->isEmpty()) { return $this->responseNotFound(['Products is empty']); } // Parse Result $result = $this->parseProducts($products); return $this->responseOk($result); }
/** * Display a listing of the resource. * * @return \Illuminate\Http\Response */ public function index() { $idxs = $this->getParameters()->getFilteringParameters()['ids']; $idxs ?: null; // avoid 'unused' warning /*echo "<pre>"; print_r(Product::with('pricelists')->get()); echo "</pre>"; exit();*/ return $this->getResponse(Product::with('pricelists')->get()); }
/** * @param $product_id * @return Product|Product[]|Collection|null */ public function byIDWithBiddingDetails($item_id) { $base_relationships = array("bids"); $relationships = $base_relationships; /** @var Collection $products */ $products = Cache::remember('product' . implode("_", $product_id), CATALOG_CACHE_TIMEOUT, function () use($item_id, $base_relationships) { return Product::with($base_relationships)->whereIn('product_id', $item_id)->get(); }); foreach ($products as $product) { $product->prepare(); } return $return_first ? $products->first() : $products; }
public function index() { $categories = Input::get('cat'); $per_page = 1000; //!IMPORTANT if ($categories != "") { if (Input::get("page") != "") { $page = (int) Input::get("page"); } else { $page = 1; } if ($page == 1) { $page_calc = 0; } else { $page_calc = $page; } $cat_array = explode(",", $categories); $all_products = Product::join('product_cat', 'products.id', '=', 'product_cat.product_id')->whereIn('product_cat.cat_id', $cat_array)->get(); $all_products_count = count($all_products); $last_page = ($all_products_count - $per_page) / $per_page + 1; $products_pivot = Product::join('product_cat', 'products.id', '=', 'product_cat.product_id')->whereIn('product_cat.cat_id', $cat_array)->skip($page_calc * $per_page - 1)->take($per_page)->get(); $unique_products = []; foreach ($products_pivot as $item) { $found = false; foreach ($unique_products as $compare_item) { if ($item->product_id == $compare_item->product_id) { $found = true; break; } } if (!$found) { $unique_products[] = $item; } } $products = []; foreach ($unique_products as $product) { $new_product = Product::find($product->product_id); $new_product->product_photos = $new_product->product_photos()->where("is_preview", "=", 1)->get(); $products[] = $new_product; } $products = $this->buildPaginationResponse($products, $all_products_count, $per_page, $page, $last_page, $categories); } else { // $products = Product::paginate($per_page); $products = Product::with("product_photos")->with(array('product_photos' => function ($query) { $query->where('is_preview', '=', 1); })); $products = $products->paginate($per_page); } return $products; }
public function detail($id) { $page = 'catalog'; $title = Menu::where('key', $page)->value('name'); $menuHtml = $this->menuHtml($page); $menuItems = Menu::all(); $bottomMenuHtml = view('bottom', ['menuItems' => $menuItems])->render(); $pageInfo = Page::where('key', $page)->first(); $categories = Category::orderBy('sort', 'asc')->get(); $product = Product::with(['category', 'color'])->find($id); $product->increment('views'); $recommended = Product::with('category')->take(4)->get(); $smallCart = $this->smallCart(); $cartItem = $this->cartItem($product->id); $page = $product; $page->title = $product->name; return view('site.product', ['menuHtml' => $menuHtml, 'menuBottomHtml' => $bottomMenuHtml, 'title' => $title, 'page' => $page, 'product' => $product, 'categories' => $categories, 'recommended' => $recommended, 'count' => $smallCart['count'], 'sum' => $smallCart['sum'], 'currentItem' => $cartItem, 'currentProductCategory' => $product->category]); }
/** * Define your route model bindings, pattern filters, etc. * * @param \Illuminate\Routing\Router $router * @return void */ public function boot(Router $router) { parent::boot($router); $router->bind('book', function ($barcode) { return Product::where('barcode', $barcode)->firstOrFail(); }); $router->bind('unpublished', function ($barcode) { $product = Product::with(['organizations' => function ($query) { $query->find(Auth::user()->organization->id); }, 'is'])->where('barcode', $barcode)->firstOrFail(); if ($product->organizations->first()->pivot->published == 0) { return $product; } return false; }); $router->bind('user', function ($hash) { return User::where('hash', $hash)->first(); }); }
public function index($page = '') { // $title = Menu::where('key', $page)->value('name'); $categories = Category::orderBy('sort', 'asc')->get(); $menuHtml = $this->menuHtml($page); if (session()->has('cart')) { $cartItems = session()->get('cart'); $sum = $cartItems->sum(); $count = count($cartItems->all()); } else { $sum = 0; $count = 0; } $menuItems = Menu::all(); $products = Product::with('category')->orderBy('views', 'desc')->take(8)->get(); $bottomMenuHtml = view('bottom', ['menuItems' => $menuItems])->render(); $page = Page::where('key', 'index')->first(); return view('index', ['menuHtml' => $menuHtml, 'menuBottomHtml' => $bottomMenuHtml, 'categories' => $categories, 'count' => $count, 'sum' => $sum, 'products' => $products, 'indexFlag' => true, 'page' => $page]); }
/** * Show the form for editing the specified resource. * * @param int $id * @return Response */ public function edit($id) { $data['checkbox'] = Size::all(); $data['product'] = Product::with('brands', 'size', 'category')->find($id); return view('product.edit', $data); }
public function showTrainCarProduct($id, $depoId, ProductRepositoryInterface $productFromRepository, ProductCart $cart) { try { $product = Product::with(['price', 'price.stantion'])->where('id', $id)->first(); } catch (ModelNotFoundException $e) { abort(404); } if (!$product) { abort(404); } if ($product->category_id) { $productParams = $productFromRepository->getProductProperties($id, true); } else { $productParams = $productFromRepository->getProductProperties($id, false); } $prices = $product->price; $pricesArr = []; foreach ($prices as $price) { if ($price->price > 0 && $price->amount > 0) { $pricesArr[$price->stantion[0]->train_road->tr_name][] = ['stantion_name' => $price->stantion[0]->stantion_name, 'stantion_id' => $price->stantion[0]->id, 'price_id' => $price->id, 'product_id' => $product->id, 'price' => $price->price, 'amount' => $price->amount]; } } unset($prices); if (Auth::guest()) { $userID = 0; } else { $userID = Auth::user()->id; } $sumAndCount = $this->getGeneralViewOfCart($cart); return view('purchases.showTrainCarProduct', ['p' => 'purchases', 'depoId' => $depoId, 'productParams' => $productParams, 'prices' => $pricesArr, 'product' => $product, 'userID' => $userID, 'productsCount' => $sumAndCount['productsCount'], 'productsSum' => $sumAndCount['productsSum']]); }
public function getDetail($id) { $mark = Mark::find($id); $products = Product::with('mark')->where('mark_id', '=', $id)->get(); return view("products.detail")->with(array('mark' => $mark, 'products' => $products)); }
/** * Remove the specified resource from storage. * * @param int $id * @return Response */ public function destroy($id) { $product = Product::with(['price'])->where('id', $id)->first(); DB::transaction(function () use($product) { $product->price()->detach(); foreach ($product->price as $price) { $price->delete(); } $product->delete(); }); return back()->with('alert-success', 'Товар ' . $product->name . ' удален'); }
/** * Display the specified product. * * @param Product $p * * @return Response * */ public function show(Product $p) { $product = $p->with('category', 'subcategory', 'brand', 'reviews.user')->whereId($p->id)->first(); return view('frontend.products.single', compact('product')); }
/** * Show the form for editing the specified resource. * * @param int $id * @return \Illuminate\Http\Response */ public function edit($id) { $item = Product::with(['color', 'category'])->find($id); $images = $item->images; $categories = Category::orderBy('sort', 'asc')->get(); $formCategories = []; foreach ($categories as $category) { $formCategories[$category->id] = $category->name; } $colors = Color::all(); $formColors = []; foreach ($colors as $color) { $formColors[$color->id] = $color->name; } $data = ['title' => Product::$tableName, 'item' => $item, 'images' => $images, 'categories' => $formCategories, 'colors' => $formColors]; return view("admin.{$this->key}.edit", $data); }
/** * Display a listing of the resource. * * @return \Illuminate\Http\Response */ public function index() { $products = Product::with('productTypes', 'materials')->paginate(Config::get('common.pagination')); return view('products/index')->with('products', $products); }