/**
  * Show the form for editing the specified resource.
  *
  * @param  int $id
  * @return Response
  */
 public function edit($id)
 {
     $product = $this->productRepository->findById($id);
     if (auth()->user()->id != $product->user_id) {
         return redirect()->home();
     }
     $categories_list = $this->categoryRepository->getParentsAndChildrenList(true);
     //Category::lists('name', 'id')->all();
     $tags_list = Tag::select('name', 'price', 'id')->get();
     $options_list = Option::select('name', 'description', 'price', 'id')->get();
     $selected_categories = $product->categories()->select('categories.id AS id')->lists('id')->all();
     $selected_tags = $product->tags()->select('tags.id AS id')->lists('id')->all();
     return view('products.edit')->with(compact('product', 'categories_list', 'tags_list', 'options_list', 'selected_categories', 'selected_tags'));
 }