Example #1
0
function tlxAccountLogout()
{
    global $C, $DB, $L, $t;
    if (isset($_COOKIE['toplistxaccount'])) {
        parse_str($_COOKIE['toplistxaccount'], $cookie);
        $DB->Update('DELETE FROM `tlx_account_logins` WHERE `username`=? AND `session`=?', array($cookie['username'], $cookie['session']));
    }
    setcookie('toplistxaccount', '', time() - 3600, '/', $C['cookie_domain']);
    $t->assign('logged_out', TRUE);
    tlxShAccountLogin();
}
Example #2
0
function ValidAccountLogin()
{
    global $DB, $C, $L;
    $error = $L['INVALID_LOGIN'];
    if (isset($_REQUEST['login_username']) && isset($_REQUEST['login_password'])) {
        $account = $DB->Row('SELECT * FROM `tlx_accounts` WHERE `username`=? AND `password`=?', array($_REQUEST['login_username'], sha1($_REQUEST['login_password'])));
        if ($account) {
            // Only allow active accounts to login
            if ($account['status'] == STATUS_ACTIVE) {
                // Setup the session
                $session = sha1(uniqid(rand(), true) . $_REQUEST['login_password']);
                setcookie('toplistxaccount', 'username='******'login_username']) . '&session=' . $session, time() + 86400, '/', $C['cookie_domain']);
                $DB->Update('DELETE FROM `tlx_account_logins` WHERE `username`=?', array($account['username']));
                $DB->Update('INSERT INTO `tlx_account_logins` VALUES (?,?,?)', array($account['username'], $session, time()));
                // Get user defined fields and merge with default partner data
                $user_fields = $DB->Row('SELECT * FROM `tlx_account_fields` WHERE `username`=?', array($account['username']));
                $account = array_merge($account, $user_fields);
                return $account;
            } else {
                $error = $account['suspended'] ? $L['ACCOUNT_SUSPENDED'] : $L['ACCOUNT_PENDING'];
            }
        }
    } else {
        if (isset($_COOKIE['toplistxaccount'])) {
            parse_str($_COOKIE['toplistxaccount'], $cookie);
            $session = $DB->Row('SELECT * FROM `tlx_account_logins` WHERE `username`=? AND `session`=?', array($cookie['username'], $cookie['session']));
            if ($session) {
                $account = $DB->Row('SELECT * FROM `tlx_accounts` WHERE `username`=?', array($session['username']));
                if ($account['status'] == STATUS_ACTIVE) {
                    // Get user defined fields and merge with default partner data
                    $user_fields = $DB->Row('SELECT * FROM `tlx_account_fields` WHERE `username`=?', array($account['username']));
                    $account = array_merge($account, $user_fields);
                    return $account;
                } else {
                    $error = $account['suspended'] ? $L['ACCOUNT_SUSPENDED'] : $L['ACCOUNT_PENDING'];
                }
            } else {
                $error = $L['EXPIRED_LOGIN'];
            }
        }
    }
    tlxShAccountLogin(array($error));
    return FALSE;
}