config redirects fix

This commit is contained in:
Astrologies 2021-12-06 02:08:20 -05:00
parent 5a982e292d
commit d0b2578586
1 changed files with 6 additions and 15 deletions

View File

@ -142,36 +142,27 @@ try
WebContextManager::ForceHttpsCloudflare(); WebContextManager::ForceHttpsCloudflare();
} }
//account status checks
$activated = Activation::IsUserActivated($GLOBALS['user']->id); $activated = Activation::IsUserActivated($GLOBALS['user']->id);
$twofactor = TwoFactor::IsSession2FAUnlocked(); $twofactor = TwoFactor::IsSession2FAUnlocked();
$banned = UserModerationManager::IsBanned($GLOBALS['user']->id); $banned = UserModerationManager::IsBanned($GLOBALS['user']->id);
$maintenance = WebContextManager::IsUnderMaintenance(); $maintenance = WebContextManager::IsUnderMaintenance();
//step 1, check if under maintenance if ($maintenance) { //check if under maintenance
if ($maintenance) { //maintenance redirect
if ($accesseddirectory != "/maintenance.php") { if ($accesseddirectory != "/maintenance.php") {
WebContextManager::Redirect($url . "/maintenance"); WebContextManager::Redirect($url . "/maintenance");
} }
} } else if ($GLOBALS['user']->logged_in && $banned) { //check if banned
//step 2, check if user is banned
if ($GLOBALS['user']->logged_in && $banned) { //ban redirect
if ($accesseddirectory != "/ban.php" && if ($accesseddirectory != "/ban.php" &&
$accesseddirectory != "/logout.php") { $accesseddirectory != "/logout.php") {
WebContextManager::Redirect($url . "/ban"); WebContextManager::Redirect($url . "/ban");
} }
} } else if ($GLOBALS['user']->logged_in && !$activated) { //check if activated
//step 3, check if user is activated
if ($GLOBALS['user']->logged_in && !$activated) { //activation redirect
if ($accesseddirectory != "/activate.php" && if ($accesseddirectory != "/activate.php" &&
$accesseddirectory != "/logout.php") { $accesseddirectory != "/logout.php") {
WebContextManager::Redirect($url . "/activate"); WebContextManager::Redirect($url . "/activate");
} }
} } else if ($GLOBALS['user']->logged_in && !$twofactor) { //check if 2fa is unlocked
//step 4, check if 2fa is authenticated
if ($GLOBALS['user']->logged_in && !$twofactor) { //2fa redirect
if ($accesseddirectory != "/2fa.php") { if ($accesseddirectory != "/2fa.php") {
WebContextManager::Redirect($url . "/2fa"); WebContextManager::Redirect($url . "/2fa");
} }
@ -179,7 +170,7 @@ try
//pages accessible to users who aren't logged in //pages accessible to users who aren't logged in
if (!$GLOBALS['user']->logged_in) { //not logged in if (!$GLOBALS['user']->logged_in) { //not logged in
if ($accesseddomain == "www.".$domain) { //www if ($accesseddomain == "www.".$domain) { //accessing www
if ($accesseddirectory != "/index.php" && if ($accesseddirectory != "/index.php" &&
$accesseddirectory != "/login/index.php" && $accesseddirectory != "/login/index.php" &&
$accesseddirectory != "/login/forgotpassword.php" && $accesseddirectory != "/login/forgotpassword.php" &&