/**
  * Update the specified resource in storage.
  *
  * @param  \Illuminate\Http\Request  $request
  * @param  int  $id
  * @return \Illuminate\Http\Response
  */
 public function update(Request $request, $id, \App\Product $productModel, \App\Category $categoryModel)
 {
     $product = $productModel->findOrFail($id);
     if ($request->get('image')) {
         $image_name = $product->photo;
         $this->saveImage($request->get('image'), $image_name);
     }
     $product->update($request->all());
     $completeCategories = $categoryModel->getFullCategoryList($request->get('categories'));
     $product->categories()->sync($completeCategories);
     return redirect(route('products.index'));
 }