/** * Loads the language file and checks to see if there are any upgrades. If * there aren't any upgrades, then it redirects the user back to the admin * index. * * @return UpgradNx */ public function __construct() { // if there are no upgrades, then we can't upgrade if (!IEM::isCompletingUpgrade() && !IEM::hasUpgrade()) { header('Location: index.php'); exit; } $this->LoadLanguageFile(); }
// If the user have not logged in yet, we need to check for "IEM_CookieLogin" // and "IEM_LoginPreference" cookie. This cookie is used in "remember me" feature. // // TODO refactor this to IEM::login() function // -------------------------------------------------------------------------------- if (!IEM::getCurrentUser()) { $tempValid = false; $tempCookie = false; $tempUser = false; // This is not a loop, rather a way to "return early" to avoid nested if // * Comment from a later developer: If you have to do this, there is // * probably a better way to code it. Programming doesn't necessarily // * mean "hacking". while (true) { // if we are installing or upgrading then we need to bypass this if (!IEM::isInstalled() && IEM::isInstalling() || IEM::hasUpgrade() && IEM::isUpgrading() || IEM::isCompletingUpgrade()) { $tempValid = true; break; } // Get cookie $tempCookie = IEM::requestGetCookie('IEM_CookieLogin', array()); if (empty($tempCookie)) { break; } // Check if cookie contains user information if (!is_array($tempCookie) || !isset($tempCookie['user'])) { break; } // Get user $tempUser = new User_API(); $tempUser->Load(intval($tempCookie['user']));