/**
  * @param UpdateProfileRequest $request
  * @param $id
  * @return \Illuminate\Http\RedirectResponse
  */
 public function update(UpdateProfileRequest $request, $id)
 {
     $user = $this->user->find($id);
     $user->update($request->all());
     $username = str_replace(' ', '-', $user->username);
     Session::flash('message', 'You have successfully updated your profile!');
     if ($request->file('image')) {
         try {
             $img = ImageLib::addImage($request->file('image'), $username, $user->id);
         } catch (QueryException $e) {
             Session::flash('message', 'There were some problems with your image.');
         }
     }
     return redirect()->route('profile.show', $username);
 }
 /**
  * Update the specified resource in storage.
  *
  * @param  \Illuminate\Http\Request $request
  * @param  int                      $id
  *
  * @return \Illuminate\Http\Response
  */
 public function update(Requests\UpdateProfileRequest $request, User $user)
 {
     $this->authorize('edit-profile');
     if ($request->hasFile('file')) {
         $profilePic = $request->file('file');
         $id = md5($profilePic);
         $profilePic->move(public_path('/img/pp/'), $id);
         if (file_exists(public_path('img/pp/' . $user->picture_id))) {
             unlink(public_path('img/pp/' . $user->picture_id));
         }
         $user->picture_id = $id;
     }
     foreach ($request->only(['name', 'email']) as $key => $value) {
         $user->{$key} = $value;
     }
     $user->save();
     return redirect()->back();
 }