Вход Регистрация
Файл: newstats.ru/newstats.ru/system/model/enter.class.php
Строк: 61
<?php 

// Автор проекта GEARBAKC
// Офф.сайт GEARNET.RU
// http://gearnet.ru/users/1
// Только эксклюзивные скрипты!

class enter_model{
    public function 
login_post(){
        if(isset(
$_POST['login']) && isset($_POST['pass'])){
            
$login = $_POST['login'];
            
$pass = md5(md5($_POST['pass']));
            
$hash = Protect::generate(32);
            
            if(
Core::count("SELECT * FROM `users` WHERE `login` = ? && `pass` != ?", array($login, $pass)) == true) $err = 'Пароль введен не верно';
            if(
Core::count("SELECT * FROM `users` WHERE `login` = ?", array($login)) == false) $err = 'Пользователя с таким логином не существует';
            
            if(!isset(
$err)){
                
$id_user = Core::query("SELECT `id` FROM `users` WHERE `login` = ? and `pass` = ?", array($login, $pass)) -> fetch();
                
Core::query("UPDATE  `users` SET `hash` = ?, `hash_pass_new`='' WHERE `id` = ?", array($hash, $id_user['id']));

                
setcookie('userlogin', $login, time()+86400*365, '/');
                
setcookie('userhash', $hash, time()+86400*365, '/');
                
Core::redirect('/', 'Авторизация успешна');
            }else{
                
Core::redirect('/enter/login', $err);
            }
        }
    }
    
    public function 
logout(){
        
$user = User::getUser();
        
Core::query("UPDATE `users` SET `hash` = '' WHERE `id` = ?", array($user['id']));
        
setcookie('userlogin', '', time() - 100, '/');
        
setcookie('userhash', '', time() - 100, '/');
        
Core::redirect('/');
    }
    
    
    
    

        public function 
them(){
        
$user = User::getUser(); 
    if(isset(
$_GET['get'])){
    if (isset(
$user))
{
        if(
$_GET['get']==1){
        
Core::query("UPDATE `users` SET `t` = '1' WHERE `id` = ?", array($user['id']));
$msg='PDA версия активирована!';
    }elseif(
$_GET['get']==0){
        
Core::query("UPDATE `users` SET `t` = '0' WHERE `id` = ?", array($user['id']));
$msg='WEB версия активирована!';
    }elseif(
$_GET['get']==2){
        
Core::query("UPDATE `users` SET `t` = '2' WHERE `id` = ?", array($user['id']));
$msg='WAP версия активирована!';
    }else{
$msg='Ошибка!';
    }
}else{
        if(
$_GET['get']==1){
        
setcookie('wap_t', 'wap', time() + 60*60, '/');
        
setcookie('web_t', '', time() - 100, '/');
        
setcookie('pda_t', '', time() - 100, '/');
$msg='PDA версия активирована!';
    }elseif(
$_GET['get']==0){
        
setcookie('wap_t', '', time() - 100, '/');
        
setcookie('web_t', 'web', time() + 60*60, '/');
        
setcookie('pda_t', '', time() - 100, '/');
$msg='WEB версия активирована!';
    }elseif(
$_GET['get']==2){
        
setcookie('wap_t', '', time() - 100, '/');
        
setcookie('web_t', '', time() - 100, '/');
        
setcookie('pda_t', 'pda', time() + 60*60, '/');
$msg='WAP версия активирована!';
    }else{
$msg='Ошибка!';
    }

}    
        
Core::redirect('/', $msg);
        }else{
        
Core::redirect('/');
        }
    }
    
    public function 
reg_post(){
        if(isset(
$_POST['login']) && isset($_POST['pass']) && isset($_POST['email'])){
            
$login = $_POST['login'];
            
$email = $_POST['email'];
            
$pass = $_POST['pass'];
            
$hash = Protect::generate(32);
            
            if(
preg_match("#(^ )|( $)#ui", $login))$err = 'Запрещено использовать пробел в начале и конце логина<br />';
            if(
Core::count("SELECT * FROM `users` WHERE `login` = ?", array($login)) == true) $err = 'Пользователь с таким логином уже зарегистрирован в системе<br />';
            if(!
preg_match("#^([A-z0-9-_])+$#ui", $login))$err = 'В логине присутствуют запрещенные символы. Разрешено использовать латинские буквы, цифры и знаки подчеркивания<br />';
            if(
Core::count("SELECT * FROM `users` WHERE `email` = ?", array($email)) == true) $err = 'Такой E-mail уже зарегистрирован в системе<br />';
            if(
strlen($login) < 2 or strlen($login) > 20) $err = 'Логин должен быть в пределах 2 - 20 символов';
            if(
strlen($pass) < 6 or strlen($pass) > 20) $err = 'Пароль должен быть в пределах 6 - 20 символов';
            if(!
preg_match('/[0-9a-z_-]+@[0-9a-z_-^.]+.[a-z]{2,6}/i', $email)) $err = 'E-mail введен неверно<br />';
            
            if(!isset(
$err)){
                
Core::query("INSERT INTO `users` SET `login` = ?, `pass` = ?, `hash` = ?, `email` = ?", array($login, md5(md5($pass)), $hash, $email));

                
setcookie('userlogin', $login, time()+86400*365, '/');
                
setcookie('userhash', $hash, time()+86400*365, '/');
$subject = "Регистрация :: NewStats";
$regmail = "Здравствуйте, ".$login.'!<br/><br />Вы успешно зарегистрированы на проекте http://newstats.ru<br /> Ваши данные для входа:<br/>Логин: '.$login.' <br/>Пароль: '.$pass."<br /><br /><br />С Уважением команда топа NewStats.Ru.";
$adds="From: "support@$_SERVER[HTTP_HOST]" <support@$_SERVER[HTTP_HOST]>n";
$adds .= "Content-Type: text/html; charset=utf-8n";
mail($email,'=?utf-8?B?'.base64_encode($subject).'?=',$regmail,$adds);
                
Core::redirect('/', 'Регистрация успешно пройдена. Войдите в кабинет и добавьте площадку');
            }else{
                
Core::redirect('/enter/registration', $err);
            }
        }
    }
}
?>
Онлайн: 2
Реклама