canDoOperation('edit_php'); } return false; } /** * Determines if current user is admin. * * @param \CUser|Main\Engine\CurrentUser $checkUser User. * * @return bool */ public static function isAdmin($checkUser): bool { if (!($checkUser instanceof \CUser) && !($checkUser instanceof Main\Engine\CurrentUser)) { return false; } return $checkUser->isAdmin(); } /** * Return true if current user can view module pages. * * @param \CUser|Main\Engine\CurrentUser $checkUser User. * * @return bool */ public static function canView($checkUser): bool { if (!($checkUser instanceof \CUser) && !($checkUser instanceof Main\Engine\CurrentUser)) { return false; } if (self::isAdmin($checkUser)) { return true; } if ($checkUser instanceof Main\Engine\CurrentUser) { $userRights = \CMain::getUserRight('translate', $checkUser->getUserGroups()); } elseif ($checkUser instanceof \CUser) { $userRights = \CMain::getUserRight('translate', $checkUser->getUserGroupArray()); } return ($userRights >= self::READ); } /** * Return true if current user can edit on module pages. * * @param \CUser|Main\Engine\CurrentUser $checkUser User. * * @return bool */ public static function canEdit($checkUser): bool { if (!($checkUser instanceof \CUser) && !($checkUser instanceof Main\Engine\CurrentUser)) { return false; } if (self::isAdmin($checkUser)) { return true; } if ($checkUser instanceof Main\Engine\CurrentUser) { $userRights = \CMain::getUserRight('translate', $checkUser->getUserGroups()); } elseif ($checkUser instanceof \CUser) { $userRights = \CMain::getUserRight('translate', $checkUser->getUserGroupArray()); } return ($userRights >= self::WRITE); } }