- $roles = $this->permissionsRepo->getAllRoles();
- return view('settings.roles.index', ['roles' => $roles]);
+
+ $listOptions = SimpleListOptions::fromRequest($request, 'roles')->withSortOptions([
+ 'display_name' => trans('common.sort_name'),
+ 'users_count' => trans('settings.roles_assigned_users'),
+ 'permissions_count' => trans('settings.roles_permissions_provided'),
+ 'created_at' => trans('common.sort_created_at'),
+ 'updated_at' => trans('common.sort_updated_at'),
+ ]);
+
+ $roles = (new RolesAllPaginatedAndSorted())->run(20, $listOptions);
+ $roles->appends($listOptions->getPaginationAppends());
+
+ $this->setPageTitle(trans('settings.roles'));
+
+ return view('settings.roles.index', [
+ 'roles' => $roles,
+ 'listOptions' => $listOptions,
+ ]);