<?php
$s = file_get_contents('http://ulogin.ru/token.php?token=' . $_POST['token'] . '&host=' . $_SERVER['HTTP_HOST']);
$user = json_decode($s, true);
if(!empty($user['error'])){
echo '<div class="alert alert-danger">Ошибка авторизации!</div>';
return;
}elseif(empty($user)){
echo '<div class="alert alert-danger">Ошибка авторизации!</div>';
return;
}
define('BASE_DIR', $_SERVER['DOCUMENT_ROOT']);
session_start();
function __autoload($name){ include(BASE_DIR."/classes/_class.".$name.".php");}
$config = new config;
$func = new func;
$db = new db($config->HostDB, $config->UserDB, $config->PassDB, $config->BaseDB);
$network = $db->RealEscape($user['network']);
$identity = $db->RealEscape($user['identity']);
$first_name = $db->RealEscape(strip_tags($user['first_name']));
$last_name = $db->RealEscape(strip_tags($user['last_name']));
$dob = date('Y-m-d',strtotime($user['bdate']));
$email = $db->RealEscape($user['email']);
if(!empty($_SESSION['user_id'])){
$db->Query("SELECT `user_id` FROM `db_social` WHERE `network` = '$network' AND `identity` = '$identity'");
if(empty($db->NumRows())){
$user_id = $_SESSION['user_id'];
$db->Query("SELECT * FROM `db_users_a` WHERE `id` = '$user_id'");
if(!empty($db->NumRows())){
$db->Query("INSERT INTO `db_social` (`network`,`identity`,`first_name`,`last_name`,`email`,`user_id`) VALUES ('$network','$identity','$first_name','$last_name','$email','$user_id')");
Header('Location: /account/settings');
return;
}else{
echo '<div class="alert alert-danger">Ошибка! Обратитесь к администратору</div>';
return;
}
}else{
$user_id = $db->FetchRow();
if($user_id != $_SESSION['user_id']){
echo '<div class="alert alert-danger">Этот аккаунт привязан к другой учетной записи!</div>';
return;
}else{
echo '<div class="alert alert-danger">Этот аккаунт уже привязан!</div>';
return;
}
}
}
$db->Query("SELECT `user_id` FROM `db_social` WHERE `network` = '$network' AND `identity` = '$identity'");
if(!empty($db->NumRows())){
$user_id = $db->FetchRow();
$db->Query("SELECT * FROM `db_users_a` WHERE `id` = '$user_id'");
if(!empty($db->NumRows())){
$user_data = $db->FetchArray();
if($user_data['banned'] == 0){
# Считаем рефералов
$db->Query("SELECT COUNT(*) FROM `db_users_a` WHERE `referer_id` = '". $user_data['id'] ."'");
$count_referals = $db->FetchRow();
$db->Query("UPDATE `db_users_a` SET `referals` = '$count_referals', `date_login` = '". time() ."', `ip` = INET_ATON('". $func->UserIP ."') WHERE `id` = '". $user_data['id'] ."'");
$_SESSION['user_id'] = $user_data['id'];
$_SESSION['user'] = $user_data['user'];
$_SESSION['referer_id'] = $user_data['referer_id'];
if($_SESSION['user_id'] == 1){
$_SESSION['admin'] = TRUE;
}else{
$_SESSION['admin'] = FALSE;
}
Header('Location: /account');
return;
}else{
echo '<div class="alert alert-danger">Аккаунт заблокирован</div>';
return;
}
}else{
echo '<div class="alert alert-danger">Ошибка! Обратитесь к администратору</div>';
return;
}
}
/*$db->Query("SELECT * FROM `db_users_a` WHERE `email` = '$email'");
if(!empty($db->NumRows())){
$user_data = $db->FetchArray();
if($user_data['banned'] == 0){
$user_id = $user_data['id'];
$db->Query("INSERT INTO `db_social` (`network`,`identity`,`first_name`,`last_name`,`email`,`user_id`) VALUES ('$network','$identity','$first_name','$last_name','$email','$user_id')");
# Считаем рефералов
$db->Query("SELECT COUNT(*) FROM `db_users_a` WHERE `referer_id` = '". $user_data['id'] ."'");
$count_referals = $db->FetchRow();
$db->Query("UPDATE `db_users_a` SET `referals` = '$count_referals', `date_login` = '". time() ."', `ip` = INET_ATON('". $func->UserIP ."') WHERE `id` = '". $user_data['id'] ."'");
$_SESSION['user_id'] = $user_data['id'];
$_SESSION['user'] = $user_data['user'];
$_SESSION['referer_id'] = $user_data['referer_id'];
if($_SESSION['user_id'] == 1){
$_SESSION['admin'] = TRUE;
}else{
$_SESSION['admin'] = FALSE;
}
Header('Location: /account');
return;
}else{
echo '<div class="alert alert-danger">Аккаунт заблокирован</div>';
return;
}
}
*/
$login = $first_name.' '.$last_name;
$password = $func->GenPassword();
$ip = $func->UserIP;
$time = time();
$referer_id = (isset($_COOKIE['referer']) AND intval($_COOKIE['referer']) > 0 AND intval($_COOKIE['referer']) < 1000000) ? intval($_COOKIE['referer']) : 1;
$referer_name = '';
$referer_site = '';
if(!empty($_COOKIE['referer_site'])){
$referer_site = $_COOKIE['referer_site'];
}
if($referer_id != 1){
$db->Query("SELECT `user` FROM `db_users_a` WHERE `id` = '$referer_id' LIMIT 1");
if($db->NumRows() > 0){
$referer_name = $db->FetchRow();
}else{
$referer_id = 1; $referer_name = "Admin";
}
}else{
$referer_id = 1;
$referer_name = 'Admin';
}
if($login !== false){
if($password !== false){
$db->Query("SELECT COUNT(*) FROM `db_users_a` WHERE `user` = '$login'");
if($db->FetchRow() == 0){
$db->Query("SELECT COUNT(*) FROM `db_users_a` WHERE `email` = '$email'");
if($db->FetchRow() == 0){
# Регаем пользователя
$hash = $func->md5Password($password);
$db->Query("INSERT INTO `db_users_a` (`refsite`,`user`, `email`, `pass`, `referer`, `referer_id`, `date_reg`, `ip`, `dob`)
VALUES ('$refsite','$login','$email','$hash','$referer_name','$referer_id','$time',INET_ATON('$ip'), '$dob')");
$lid = $db->LastInsert();
$db->Query("INSERT INTO `db_users_b` (`id`, `user`) VALUES ('$lid','$login')");
$db->Query("INSERT INTO `db_social` (`network`,`identity`,`first_name`,`last_name`,`email`,`user_id`) VALUES ('$network','$identity','$first_name','$last_name','$email','$lid')");
# Вставляем статистику
$db->Query("UPDATE `db_stats` SET `all_users` = `all_users` + '1' WHERE `id` = '1'");
$db->Query("SELECT `user`,`email` FROM `db_users_a` WHERE `id` = '$referer_id'");
$data_referer = $db->FetchArray();
# Отправляем на почту
$sender = new smtp($config);
$sender -> SendAfterReg($email,$password,$login);
$sender -> SendAfterRegReferal($data_referer['email'],$data_referer['user'],$login);
$_SESSION['user_id'] = $lid;
$_SESSION['user'] = $login;
$_SESSION['referer_id'] = $referer_id;
Header('Location: /account');
}else{
echo '<div class="alert alert-danger">Указанный E-mail уже используется</div>';
}
}else{
echo '<div class="alert alert-danger">Указанный логин уже используется</div>';
}
}else{
echo '<div class="alert alert-danger">Пароль заполнен неверно</div>';
}
}else{
echo '<div class="alert alert-danger">Логин заполнен неверно</div>';
}