Added avatar upload method into resource controller

This commit is contained in:
Jose Miguel Bustos Espinoza
2018-04-30 22:23:51 -03:00
committed by Nabeel Shahzad
parent 41f4c76006
commit 31d0683592

View File

@@ -16,6 +16,8 @@ use Illuminate\Support\Facades\Auth;
use Jackiedo\Timezonelist\Facades\Timezonelist;
use Log;
use Validator;
use Intervention\Image\Facades\Image;
use Illuminate\Support\Facades\Storage;
/**
* Class ProfileController
@@ -121,7 +123,8 @@ class ProfileController extends Controller
'name' => 'required',
'email' => 'required|unique:users,email,'.$id,
'airline_id' => 'required',
'password' => 'confirmed'
'password' => 'confirmed',
'avatar' => 'present|mimes:jpeg,png,jpg',
]);
if ($validator->fails()) {
@@ -140,6 +143,17 @@ class ProfileController extends Controller
$req_data['password'] = Hash::make($req_data['password']);
}
if ($req_data['avatar'] !== null) {
Storage::delete($user->avatar);
}
if ($request->hasFile('avatar')) {
$avatar = $request->file('avatar');
$file_name = $user->pilot_id . '.' .$avatar->getClientOriginalExtension();
$path = "uploads/avatars/{$file_name}";
Image::make($avatar)->resize(config('phpvms.avatar.width'), config('phpvms.avatar.height'))->save(public_path('uploads/avatars/'.$file_name));
$req_data['avatar'] = $path;
}
$this->userRepo->update($req_data, $id);
Flash::success('Profile updated successfully!');