/**
  * Update the specified resource in storage.
  *
  * @param  \Illuminate\Http\Request  $request
  * @param  int  $id
  * @return \Illuminate\Http\Response
  */
 public function update(Request $request, $id)
 {
     $this->validate($request, ['name' => 'required', 'price' => 'required|numeric', 'quantity' => 'required|numeric', 'published_at' => 'date_format:d/m/Y', 'thumbnail' => 'image|max:3000', 'tags' => 'max:4']);
     $product = Product::find($id);
     if (!empty($request->input('tags'))) {
         $product->tags()->sync($request->input('tags'));
     } else {
         $product->tags()->detach();
     }
     if ($request->input('delete') == 'true') {
         if (!is_null($product->picture->uri)) {
             Storage::delete($product->picture->uri);
             $product->picture->delete();
         }
     }
     if (!is_null($request->file('thumbnail'))) {
         Storage::delete($product->picture->uri);
         $product->picture->delete();
         Picture::createpicture($request, $product->id);
     }
     $product->update($request->all());
     return redirect('product')->with(['message' => 'Product Updated', 'alert' => 'success']);
 }