add admin profile avatar

This commit is contained in:
raishvaria
2019-11-21 11:59:23 +05:30
parent 017577db42
commit 4ec34550ed
3 changed files with 43 additions and 1 deletions

View File

@ -227,4 +227,31 @@ class CompanyController extends Controller
'success' => true
]);
}
/**
* Upload the Admin Avatar to public storage.
*
* @param \Illuminate\Http\Request $request
* @return \Illuminate\Http\Response
*/
public function uploadAdminAvatar(Request $request)
{
$data = json_decode($request->admin_avatar);
if($data) {
$user = auth()->user();
if($user) {
$user->clearMediaCollection('admin_avatar');
$user->addMediaFromBase64($data->data)
->usingFileName($data->name)
->toMediaCollection('admin_avatar');
}
}
return response()->json([
'success' => true
]);
}
}

View File

@ -51,7 +51,8 @@ class User extends Authenticatable implements HasMedia
];
protected $appends = [
'formattedCreatedAt'
'formattedCreatedAt',
'avatar'
];
/**
@ -244,4 +245,13 @@ class User extends Authenticatable implements HasMedia
return true;
}
public function getAvatarAttribute()
{
$avatar = $this->getMedia('admin_avatar')->first();
if ($avatar) {
return asset($avatar->getUrl());
}
return ;
}
}

View File

@ -308,6 +308,11 @@ Route::group(['middleware' => 'api'], function () {
'uses' => 'CompanyController@updateAdminProfile'
]);
Route::post('/profile/upload-avatar', [
'as' => 'admin.profile.avatar',
'uses' => 'CompanyController@uploadAdminAvatar'
]);
Route::post('/company/upload-logo', [
'as' => 'upload.admin.company.logo',
'uses' => 'CompanyController@uploadCompanyLogo'