* @author Slawkens * @copyright 2017 MyAAC * @link http://my-aac.org */ defined('MYAAC') or die('Direct access not allowed!'); $title = 'Account Management'; if($config['account_country']) require(SYSTEM . 'countries.conf.php'); $groups = new OTS_Groups_List(); $show_form = true; $config_salt_enabled = fieldExist('salt', 'accounts'); if(!$logged) { if($action == "logout") { echo $twig->render('account.logout.html.twig'); } else { if($action == 'confirm_email') { require(PAGES . 'account/' . $action . '.php'); return; } if(!empty($errors)) echo $twig->render('error_box.html.twig', array('errors' => $errors)); echo $twig->render('account.login.html.twig', array( 'redirect' => isset($_REQUEST['redirect']) ? $_REQUEST['redirect'] : null, 'account' => USE_ACCOUNT_NAME ? 'Name' : 'Number', 'error' => isset($errors[0]) ? $errors[0] : null )); } return; } $errors = array(); if(isset($_REQUEST['redirect'])) { $redirect = urldecode($_REQUEST['redirect']); echo $twig->render('account.redirect.html.twig', array( 'redirect' => $redirect )); return; } if($action == '') { $freePremium = isset($config['lua']['freePremium']) && getBoolean($config['lua']['freePremium']); $recovery_key = $account_logged->getCustomField('key'); if(!$account_logged->isPremium()) $account_status = 'Free Account'; else $account_status = 'Premium Account, ' . ($freePremium ? 'Unlimited' : $account_logged->getPremDays() . ' days left') . ''; if(empty($recovery_key)) $account_registered = 'No'; else { if($config['generate_new_reckey'] && $config['mail_enabled']) $account_registered = 'Yes ( Buy new Recovery Key )'; else $account_registered = 'Yes'; } $account_created = $account_logged->getCustomField("created"); $account_email = $account_logged->getEMail(); $email_new_time = $account_logged->getCustomField("email_new_time"); if($email_new_time > 1) $email_new = $account_logged->getCustomField("email_new"); $account_rlname = $account_logged->getRLName(); $account_location = $account_logged->getLocation(); if($account_logged->isBanned()) if($account_logged->getBanTime() > 0) $welcome_message = 'Your account is banished until '.date("j F Y, G:i:s", $account_logged->getBanTime()).'!'; else $welcome_message = 'Your account is banished FOREVER!'; else $welcome_message = 'Welcome to your account!'; $email_change = ''; $email_request = false; if($email_new_time > 1) { if($email_new_time < time()) $email_change = '
(You can accept '.$email_new.' as a new email.)'; else { $email_change = '
You can accept new e-mail after '.date("j F Y", $email_new_time)."."; $email_request = true; } } $actions = array(); foreach($account_logged->getActionsLog(0, 1000) as $action) { $actions[] = array('action' => $action['action'], 'date' => $action['date'], 'ip' => $action['ip'] != 0 ? long2ip($action['ip']) : inet_ntop($action['ipv6'])); } $players = array(); $account_players = $account_logged->getPlayersList(); $account_players->orderBy('id'); echo $twig->render('account.management.html.twig', array( 'welcome_message' => $welcome_message, 'recovery_key' => $recovery_key, 'email_change' => $email_change, 'email_request' => $email_request, 'email_new_time' => $email_new_time, 'email_new' => isset($email_new) ? $email_new : '', 'account' => USE_ACCOUNT_NAME ? $account_logged->getName() : $account_logged->getId(), 'account_email' => $account_email, 'account_created' => $account_created, 'account_status' => $account_status, 'account_registered' => $account_registered, 'account_rlname' => $account_rlname, 'account_location' => $account_location, 'actions' => $actions, 'players' => $account_players )); } else { if(!ctype_alnum(str_replace(array('-', '_'), '', $action))) { error('Error: Action contains illegal characters.'); } else if(file_exists(PAGES . 'account/' . $action . '.php')) { require(PAGES . 'account/' . $action . '.php'); } else { error('This page does not exists.'); } } ?>