/**
  * Update the specified resource in storage.
  *
  * @param  \Illuminate\Http\Request  $request
  * @param  int  $id
  * @return \Illuminate\Http\Response
  */
 public function update(Requests\ProfileUpdateFormRequest $request, $id)
 {
     //validate the inputes
     //check if the user can update
     $profile = Profile::findOrFail($id);
     //Get all inputes
     $name = $profile->user->id . '_profile_pic';
     if (\Input::hasfile('profile_pic')) {
         $extention = \Input::file('profile_pic')->getClientOriginalExtension();
         $filename = $name . '.' . $extention;
         $destination_path = 'storage/users/' . $profile->user->id . '/profilepic';
         $profile_pic_path = '/' . $destination_path . '/' . $filename;
         $isuploaded = \Input::file('profile_pic')->move($destination_path, $filename);
     } else {
         $filename = $profile->profile_pic;
     }
     //update profile
     $profile->fill(['profile_pic' => $profile_pic_path, 'bio' => $request->bio, 'region' => $request->region, 'school' => $request->school, 'division' => $request->division, 'stream' => $request->stream])->save();
     //redirect user to profile show route
     $message = "You have successfully update your profile";
     return \Redirect::route('user.profile.show', \Auth::user()->id)->with('success', $message);
 }