<?php require_once("res/x5engine.php"); ?>
<?php
$pa = Configuration::getPrivateArea();
if (isset($_GET['landing_page'])) {
$pa->savePage($_GET['landing_page']);
}
$fromCart = strncmp($pa->getSavedPage(), 'cart/index.html', 15) === 0;
$pa->admin_email = '[email protected].com';
$db = getDbData();
if ($db === false)
die("Cannot find a database");
$pa->setDBData(ImDb::from_db_data($db), 'w5_r7zd5g5a_access_management');
if (isset($_GET['waitingusers']) && ($headers = imRequestHeaders()) !== false) {
if (isset($_GET['wsx5callversion'])) {
$token = "";
foreach ($headers as $key => $value)
if (strtolower($key) == 'x-incomedia-wsx5-token')
$token = $value;
if ($token == '662hunx0t1ffj4s4vy0dgtqtzbr5bfjr0j59yuxkh3b47h3o5i3w8z0omehr')
echo $pa->getDbUsers($_GET['wsx5callversion']);
} else {
http_response_code(400);
}
exit();
}
if (isset($_GET['validate'])) {
if ($pa->validateWaitingUserByKey($_GET['validate'], true))
$pa->sessionSafeRedirect('imlogin.php?uservalidated');
else
header('Location: imlogin.php?err=-6');
exit();
}
if (isset($_GET['cngpwd']) || isset($_GET['cngpwdml'])) {
$token_status_code = $pa->get_token_status_code($_GET['cngpwdml'], $_GET['cngpwd']);
if($token_status_code < 0) {
if($token_status_code == -10) header('Location: imlogin.php');
if($token_status_code == -11) header('Location: imlogin.php?loginstatus=' . $token_status_code);
exit(); }}
if (isset($_POST['imCngPwdToken']) || isset($_POST['imCngPwdEmail'])) {
if (!isset($_POST['imCngPwdToken']) || !isset($_POST['imCngPwdEmail'])) {
header('Location: imlogin.php');
} else if (isset($_POST['imCngPwd']) && isset($_POST['imCngPwdConfirm']) && $_POST['imCngPwd'] == $_POST['imCngPwdConfirm']) {
$status_code = $pa->change_password($_POST['imCngPwdEmail'], $_POST['imCngPwdToken'], $_POST['imCngPwd']);
if($status_code == -10) {
header('Location: imlogin.php');
} else if ($status_code == -9) { header('Location: imlogin.php?cngpwd=' . $_POST['imCngPwdToken'] . '&cngpwdml=' . $_POST['imCngPwdEmail'] . '&loginstatus=' . $status_code);
} else if ($status_code < 0) { header('Location: imlogin.php?loginstatus=' . $status_code);
} else {
$page = $pa->getSavedPage() ? $pa->getSavedPage() : $pa->getLandingPage();
$pa->clearSavedPage();
$pa->sessionSafeRedirect($page);
}
} else {
header('Location: imlogin.php?cngpwd=' . $_POST['imCngPwdToken'] . '&cngpwdml=' . $_POST['imCngPwdEmail'] . '&loginstatus=-12');
} exit();
}
if (isset($_POST['lostdata'])) {
$res = $pa->sendLostPasswordEmail($_POST['lostdata']);
header('Location: imlogin.php?loginstatus=' . ($res ? '4' : '-7'));
}
if (isset($_GET['registernew']) && $_GET['registernew'] == 1 && checkJsAndSpam('4755FEF6A7E09F76541A429BFA1DFD8A')) {
$res = $pa->registerNewUser($_POST['imUnameReg'], $_POST['imRegPwd'], $_POST['imFirstname'], $_POST['imLastname'], 0);
if ($res > 0)
$pa->sendValidationEmail($res);
if ($res > 0)
$pa->sendNotificationEmail($res);
Configuration::getNotifier()->sendNotification('USERS_APPROVE', '{ "controlPanelQueryString": "users" }');
if ($res > 0 && ($_GET['redirect_after_registration'] == 'true' || $fromCart)) {
$page = $pa->getSavedPage() ? $pa->getSavedPage() : $pa->getLandingPage();
$pa->clearSavedPage();
$pa->sessionSafeRedirect($page);
} else {
header('Location: imlogin.php?registrationstatus=' . ($res <= 0 ? $res : '2'));
}
exit();
}
if (isset($_POST['imUname']) && isset($_POST['imPwd'])) {
$result = $pa->login($_POST['imUname'], $_POST['imPwd']);
if ($result < 0) {
header('Location: imlogin.php?loginstatus=' . $result);
exit();
}
$page = $pa->getSavedPage() ? $pa->getSavedPage() : $pa->getLandingPage();
if (!$page) {
if(isset($_SERVER["HTTP_REFERER"]) && strlen($_SERVER["HTTP_REFERER"]) && strpos($_SERVER["HTTP_REFERER"], 'imlogin.php') === false) {
$page = preg_replace('/\?.*/', '', $_SERVER["HTTP_REFERER"]) . '?loginstatus=1';
} else {
$page = 'imlogin.php?loginstatus=1';
}
}
$pa->clearSavedPage();
$pa->sessionSafeRedirect($page);
}