Вход Регистрация
Файл: pages/plugins/ulogin.php
Строк: 300
<?php
if (!defined('H')) {
    
define('H'$_SERVER['DOCUMENT_ROOT'] . '/');
}
// ???  недоделал, надоело))
include_once 'sys/inc/start.php';
include_once 
'sys/inc/compress.php';
include_once 
'sys/inc/sess.php';
include_once 
'sys/inc/settings.php';
include_once 
'sys/inc/db_connect.php';
include_once 
'sys/inc/ipua.php';
include_once 
'sys/inc/fnc.php';
$show_all true;
$input_page true;
$reg_set 2;
include_once 
'sys/inc/user.php';
include_once 
'sys/inc/shif.php';


/**
* @param string $first_name
* @param string $last_name
* @param string $nickname
* @param string $bdate (string in format: dd.mm.yyyy)
* @param array $delimiters
* @return string
*/


function userExist($nick null)
{
    
$nick_count count::query('user'"`nick` = '".  $nick ."'");
    if (
$nick_count == 1) {
        return 
true;
    } else {
        return 
null;
    }
}


function 
nick_gen($first_name$last_name=""$nickname=""$bdate=""$delimiters = array('.''_'))
{
    
$delim array_shift($delimiters);

    
$first_name retranslit($first_name);
    
$first_name_s substr($first_name01);

    
$variants = array();
    if (!empty(
$nickname)) {
        
$variants[] = $nickname;
    }
    
$variants[] = $first_name;
    if (!empty(
$last_name)) {
        
$last_name retranslit($last_name);
        
$variants[] = $first_name.$delim.$last_name;
        
$variants[] = $last_name.$delim.$first_name;
        
$variants[] = $first_name_s.$delim.$last_name;
        
$variants[] = $first_name_s.$last_name;
        
$variants[] = $last_name.$delim.$first_name_s;
        
$variants[] = $last_name.$first_name_s;
    }
    if (!empty(
$bdate)) {
        
$date explode('.'$bdate);
        
$variants[] = $first_name.$date[2];
        
$variants[] = $first_name.$delim.$date[2];
        
$variants[] = $first_name.$date[0].$date[1];
        
$variants[] = $first_name.$delim.$date[0].$date[1];
        
$variants[] = $first_name.$delim.$last_name.$date[2];
        
$variants[] = $first_name.$delim.$last_name.$delim.$date[2];
        
$variants[] = $first_name.$delim.$last_name.$date[0].$date[1];
        
$variants[] = $first_name.$delim.$last_name.$delim.$date[0].$date[1];
        
$variants[] = $last_name.$delim.$first_name.$date[2];
        
$variants[] = $last_name.$delim.$first_name.$delim.$date[2];
        
$variants[] = $last_name.$delim.$first_name.$date[0].$date[1];
        
$variants[] = $last_name.$delim.$first_name.$delim.$date[0].$date[1];
        
$variants[] = $first_name_s.$delim.$last_name.$date[2];
        
$variants[] = $first_name_s.$delim.$last_name.$delim.$date[2];
        
$variants[] = $first_name_s.$delim.$last_name.$date[0].$date[1];
        
$variants[] = $first_name_s.$delim.$last_name.$delim.$date[0].$date[1];
        
$variants[] = $last_name.$delim.$first_name_s.$date[2];
        
$variants[] = $last_name.$delim.$first_name_s.$delim.$date[2];
        
$variants[] = $last_name.$delim.$first_name_s.$date[0].$date[1];
        
$variants[] = $last_name.$delim.$first_name_s.$delim.$date[0].$date[1];
        
$variants[] = $first_name_s.$last_name.$date[2];
        
$variants[] = $first_name_s.$last_name.$delim.$date[2];
        
$variants[] = $first_name_s.$last_name.$date[0].$date[1];
        
$variants[] = $first_name_s.$last_name.$delim.$date[0].$date[1];
        
$variants[] = $last_name.$first_name_s.$date[2];
        
$variants[] = $last_name.$first_name_s.$delim.$date[2];
        
$variants[] = $last_name.$first_name_s.$date[0].$date[1];
        
$variants[] = $last_name.$first_name_s.$delim.$date[0].$date[1];
    }
    
$i=0;

    
$exist true;
    while (
true) {
        if (
$exist userExist($variants[$i])) {
            foreach (
$delimiters as $del) {
                
$replaced str_replace($delim$del$variants[$i]);
                if (
$replaced !== $variants[$i]) {
                    
$variants[$i] = $replaced;
                    if (!
$exist userExist($variants[$i])) {
                        break;
                    }
                }
            }
        }
        if (
$i >= count($variants)-|| !$exist) {
            break;
        }
        
$i++;
    }

    if (
$exist) {
        while (
$exist) {
            
$nickname $first_name.mt_rand(1999);
            
$exist userExist($nickname);
        }
        return 
$nickname;
    } else {
        return 
$variants[$i];
    }
}




if (isset(
$user)) {
    
$_SESSION['message'] = lang('Вы уже авторизованы');
    exit(
header("Location: /"));
}



if (isset(
$_POST['token'])) {
    
$arr api_Login::arr(@$_POST['token']);
}

if (
$arr == null) {
    
$_SESSION['message'] = lang('Ошибка сервер ulogin не доступен');
    exit(
header("Location: /"));
}


if (
$arr['error'] != null) {
    
$_SESSION['message'] = lang('При авторизации произошла ошибка');
    exit(
header("Location: /"));
}



$us_count $db->query('SELECT COUNT(*) FROM `ulogin` WHERE `identity` =?', [$arr['identity']])->el();


if (
$us_count == 1) {
    
$uid $db->query('SELECT `id_user` FROM `ulogin` WHERE `identity`=? AND `network`=? LIMIT ?i',
                      [
$arr['identity'], $arr['network'], 1])->row();

    
$user get_user($uid['id_user']);
    
$_SESSION['id_user'] = $user['id'];


    
//Загрузка дополнительных плагинов
    
$Search glob('sys/login/*.php');
    foreach (
$Search as $load_plugins) {
        include_once 
$load_plugins;
    }

    if (!
is_file('files/avatars/'.$user['id'].'.png') and $set['soc_ava_reset'] == 1) {
        
//загружаем класс для работы с изображениями
        
require_once  "sys/inc/ImgType.class.php";

        
//класс для работы с файлом изображения
       
$image = new ImgType();
       
//сам файл
       
$image->load($arr['photo_big']);
       
//размеры
       //  $image->resize($wPic,$hPic);
       
$image->resizeToWidth($set['avatar_s']);
       
//сохраняем под ...
       
$image->save('files/avatars/'$user['id'] . '.png');
    }

    
$db->query('INSERT INTO `user_log` (`id_user`, `time`, `ua`, `ip`, `method`) VALUES( ?i, ?i, ?, ?i, ?string)',
               [
$user['id'], time(), $user['ua'], $user['ip'], 3]);
    
cache_delete::user($user['id']);
    exit(
header("Location: /user/start"));
}


$nick nick_gen($arr['first_name'], $arr['last_name'], $arr['nickname'], $arr['bdate']);
$nick str_replace(array('.''-''—'' '), '_'trim($nick));
$nick_count $db->query('SELECT COUNT(*) FROM `user` WHERE `nick`=?', [$nick])->el();
if (
$nick_count == 1) {
    
$nick $nick '_' time();
}
$pass =  md5(passgen(9));

if (
$arr['sex'] == 2) {
    
$pol 1;
} else {
    
$pol 0;
}

$data = [$nick$passtime(), time(), $pol, (time() + 99999999999), $arr['first_name'], $arr['last_name'], $arr['email'], $arr['city'], $arr['country'], 1];
$db->query('INSERT INTO `user` (`nick`, `pass`, `date_reg`, `date_last`, `pol`,`pass_time`,`ank_name`,`ank_family`,`ank_mail`,`ank_city`,`ank_countr`,`soc_nick`)
VALUES ( ?, ?, ?i, ?i, ?string, ?i, ?, ?, ?, ?, ?, ?)'
$data);

$id $db->id();
$key $pass;
if (
$arr['manual'] == null) {
    
$arr['manual'] = null;
}
$db->query("
INSERT INTO `ulogin` (
`time` ,
`id_user` ,
`ip` ,
`ank_name` ,
`ank_family` ,
`key` ,
`network` ,
`identity` ,
`profile` ,
`uid`,`manual`)
VALUES
('"
.time()."',  '{$id}',  '{$ip}',  '{$arr['first_name']}',  '{$arr['last_name']}',  '{$key}',  '{$arr['network']}',  '{$arr['identity']}',  '{$arr['profile']}',  '{$arr['uid']}'
,'
{$arr['manual']}');");

$user get_user($id);
$_SESSION['id_user'] = $user['id'];

setcookie('id_user'$user['id'], time()+60*60*24*365);
setcookie('pass'cookie_encrypt($pass$user['id']), time()+60*60*24*365);



    
$db->query("UPDATE `user` SET
    `mylink` = 'id"
.$user['id']."' ,
    `browser` = '"
.($webbrowser == 'web' 'web':'wap')."'
    WHERE `id` = "
.$user['id']);

    
$_SESSION['message'] = lang('Регистрация прошла успешно,добро пожаловать на сайт');

    
$Search glob('sys/reg/*.php');
    foreach (
$Search as $load_plugins) {
        
sort($Search);
        include_once 
$load_plugins;
    }


    
//загружаем класс для работы с изображениями
    
require_once  H."sys/inc/ImgType.class.php";
    @
unlink(H."files/avatars/$user[id].png");

    
//класс для работы с файлом изображения
   
$image = new ImgType();
   
//сам файл
   
$image->load($arr['photo_big']);
   
//размеры
  //  $image->resize($wPic,$hPic);
   
$image->resizeToWidth($set['avatar_s']);
   
//сохраняем под ...
   
$image->save(H.'files/avatars/'$user['id'] . '.png');


    
cache_delete::user($user['id']);
    exit(
header("Location: /"));
Онлайн: 2
Реклама