From 9cb35f2bf2127cc8ac077aae17514a57e576217d Mon Sep 17 00:00:00 2001 From: George Halkiadakis Date: Wed, 26 Apr 2023 04:43:12 +0300 Subject: alfa.2 version; seceral optimizations; added support for mail-relay --- public/app/controllers/Auth.php | 10 ++++++++-- public/app/controllers/cms/Course.php | 4 ++-- 2 files changed, 10 insertions(+), 4 deletions(-) (limited to 'public/app/controllers') diff --git a/public/app/controllers/Auth.php b/public/app/controllers/Auth.php index 8af7513..32ff07a 100644 --- a/public/app/controllers/Auth.php +++ b/public/app/controllers/Auth.php @@ -52,8 +52,9 @@ class Auth { // get user's security attributes $attributes = User_Model::getUser($record['id']); + $roles = json_decode($attributes['Roles_json']); $user - ->setRoles(json_decode($attributes['Roles_json'])) + ->setRoles($roles) ->setPrivileges( array_merge( json_decode($attributes['RootPrivileges_json']), @@ -73,10 +74,15 @@ class Auth { '/' ); + // check if admin (and redirect differently) + $is_admin = (!empty(array_intersect([1,2,3], $roles))); // login OK, set Token in session $userManager->createUserToken($user); - return true; + return [ + 'success' => true, + 'goto' => $is_admin ? '/admin/lessons' : '/user/profile', + ]; } else { return false; diff --git a/public/app/controllers/cms/Course.php b/public/app/controllers/cms/Course.php index 0edc832..a1de9c1 100644 --- a/public/app/controllers/cms/Course.php +++ b/public/app/controllers/cms/Course.php @@ -31,7 +31,7 @@ class Course { * * @return true|false */ - private static function is_admin_or_permited( $privilege_id) + private static function is_admin_or_permited( $privilege_id ) { return ( Auth::in_admin_group() @@ -56,7 +56,7 @@ class Course { $file = self::get_file_attributes($file_path); // if user is authorized - if (is_admin_or_permited($file['privilege_id'])) { + if (self::is_admin_or_permited($file['privilege_id'])) { $media_type = Registry::get('REQUEST')->GET['type']; // get media-type $real_path = MEDIA_STORAGE_ROOT . $file_path; // construct real path -- cgit v1.2.3