Вход Регистрация
Файл: core/modules/login.php
Строк: 60
<?php

if (!defined('CMS')) { die('Access Denied!'); }

if (
$is_logged) {

    
$inSes->addMessage('Ошибка! Вы уже авторизованы''info');

    
redirect(gen_users($uset['uid'], 'start'''RND));
}

if (!empty(
$_REQUEST['login'])) {

    
$row   = array();
    
$_user = !empty($_REQUEST['login']) ? check($_REQUEST['login']) : '';
    
$_pswd = !empty($_REQUEST['pass'])  ? check($_REQUEST['pass'])  : '';

    if (!empty(
$_user) && !empty($_pswd)) {

        if (@
count(explode('@'$_user)) != 2) {

            
$row $db->selectRow("SELECT * FROM ?_users WHERE `users_login` = ? AND `users_pass` = MD5(MD5(?)) LIMIT 1;"$_user$_pswd);
        }
        else {

            
$row $db->selectRow("SELECT * FROM ?_users WHERE `users_email` = ? AND `users_pass` = MD5(MD5(?)) LIMIT 1;"$_user$_pswd);
        }

        if (!empty(
$row) && is_array($row)) {

            
$_md5p md5($_pswd); /* !!! Не изменять !!! */

            
$_uip  substr(str_replace('.'''$_SERVER['REMOTE_ADDR']), 05);

            if (!empty(
$_POST['remember']) && $_POST['remember'] == 1) {

                
$inSes->setCookie('cooklog'$_user);
                
$inSes->setCookie('cookpar'$_md5p);
                
$inSes->setCookie('cookip'$_uip);
            }

            
$inSes->setCookie('cookname'$row['users_login']);

            
$_SESSION[SP]['log'] = $_user;
            
$_SESSION[SP]['par'] = $_md5p;
            
$_SESSION[SP]['uip'] = $_uip;

            
$db->query("UPDATE ?_users SET `users_visits` = (`users_visits` + 1), `users_timelastlogin` = ?
                        WHERE `users_id` = ? LIMIT 1"
SITE_TIME$row['users_id']);

            if (!empty(
$row['users_keypasswd']) || !empty($row['users_timepasswd'])) {

                
$db->query("UPDATE ?_users SET `users_keypasswd` = '', `users_timepasswd` = 0
                            WHERE `users_id` = ? LIMIT 1"
$row['users_id']);
            }

            
del_vars('users_visit'); // Удаление кеша

            
if (!empty($config['allow_save_logs'])) { // Запись авторизаций

                
$db->query("INSERT INTO ?_users_login (`login_user`, `login_ip`, `login_brow`, `login_time`) 
                            VALUES (?, ?, ?, ?);"
$_user$ip$browSITE_TIME);

                
$db->query("DELETE FROM ?_users_login WHERE `login_user` = ? AND `login_time` < (SELECT MIN(`login_time`) FROM (SELECT `login_time` FROM ?_users_login WHERE `login_user` = ? ORDER BY `login_time` DESC LIMIT 50) AS `del`);"$_user$_user);

                
$_SESSION[SP]['show_login'] = 1;
            }

            
$inSes->addMessage(WelCome($_user) . ' Вы успешно авторизованы!''ok');

            
redirect(gen_users($row['users_id'], 'start'''RND));
        }
        else {

            
// Save Log

            
$inSes->addMessage('Ошибка! Неправильный логин или пароль!');
            
gen_red('login'''RND);
        }
    }
    else {

        
$inSes->addMessage('Ошибка! Неправильный логин или пароль!');
        
gen_red('login'''RND);
    }
}

show_header('Авторизация');

$cookname = !empty($_COOKIE[CP]['cookname']) ? check($_COOKIE[CP]['cookname']) : '';

$form = new cmsForm(gen_uri('/login'''RND));
$form->addText('Логин:''login'$cookname);
$form->addPassword('Пароль:''pass''');
if (!empty(
$config['allow_cookies'])) $form->addCheckBox(array(''' Запомнить меня'), 'remember');
$form->addHidden('auth'1);
echo 
$form->Submit('Войти');
unset(
$form);

echo 
'<div class="bl text">Вы можете сделать закладку для быстрого входа, она будет иметь вид:<br />';
echo 
$config['site_url'] . '/' gen_uri('login') . '?login=ВАШ_ЛОГИН&amp;pass=ВАШ_ПАРОЛЬ</div>';

echo 
'<div class="link"><a href="' gen_uri('reg'''RND) . '">Регистрация</a></div>';
echo 
'<div class="link"><a href="' gen_uri('forgot'''RND) . '">Забыли пароль?</a></div>';

?>
Онлайн: 0
Реклама