User landingPages connect per role permission.

This commit is contained in:
Cüneyt Şentürk
2022-11-05 18:44:02 +03:00
parent 49920f0c46
commit 95bb91dcf5
6 changed files with 63 additions and 5 deletions

View File

@@ -119,6 +119,7 @@ class Users extends Controller
}
$u = new \stdClass();
$u->role = $user->roles()->first();
$u->landing_pages = [];
event(new LandingPageShowing($u));
@@ -354,4 +355,35 @@ class Users extends Controller
return response()->json($response);
}
/**
* Process request for reinviting the specified resource.
*
* @param Role $role
*
* @return Response
*/
public function landingPages(BaseRequest $request)
{
$role = false;
if ($request->has('role_id')) {
$role = Role::find($request->get('role_id'));
}
$u = new \stdClass();
$u->role = $role;
$u->landing_pages = [];
event(new LandingPageShowing($u));
$landing_pages = $u->landing_pages;
return response()->json([
'success' => true,
'error' => false,
'data' => $landing_pages,
'message' => 'Get role by landing pages..',
]);
}
}

View File

@@ -15,6 +15,8 @@ class AddLandingPages
public function handle(Event $event)
{
$user = user();
$role = ! empty($event->user->role) ? $event->user->role : false;
$routes = [
'dashboard' => [
'permission' => 'read-common-dashboards',
@@ -79,7 +81,9 @@ class AddLandingPages
];
foreach($routes as $key => $route) {
if (!$user->can($route['permission'])) {
if ($role && ! $role->hasPermission($route['permission'])) {
continue;
} else if (! $user->can($route['permission'])) {
continue;
}