Вход Регистрация
Файл: signup.php
Строк: 734
<?php
define
('_VALID'true);
require 
'include/config.php';
require 
'include/function_global.php';
require 
'classes/filter.class.php';
require 
'classes/validation.class.php';
require 
'include/function_smarty.php';
require 
'classes/email.class.php';
require 
'classes/curl.class.php';
require 
'classes/image.class.php';

if ( 
$config['user_registration'] == '0' ) {
    
VRedirect::go($config['BASE_URL']. '/notfound/registration_disabled');
}

if ( isset(
$_POST['fb-signup-submit-new']) ) {
    
    
//FB new user
    
$filter             = new VFilter();
    
$valid              = new VValidation();
    
$id                 $filter->get('fb-signup-id');    
    
$username           $filter->get('fb-signup-username');
    
$password_clear     generateRandomString();
    
$password           md5($password_clear);
    
$email              $filter->get('fb-signup-email');
    
$fname              $filter->get('fb-signup-first-name');
    
$lname              $filter->get('fb-signup-last-name');
    
$age_min            $filter->get('fb-signup-age-min''INTEGER');
    
$gender             ucfirst($filter->get('fb-signup-gender'));
    
$use_pp             $filter->get('fb-signup-usepp');
    
    if (
$use_pp != '') {
        
$picture $_POST['fb-signup-picture'];
    }
    if (
$email != $_SESSION['fb_signup_email']) {
        
$errors[] = $lang['signup.email_invalid'];
    }    
    if ( 
$username == '' ) {
        
$errors[] = $lang['socialsignup.user_format_error'];
    } elseif ( 
strlen($username) > 15 or strlen($username) < 2) {
        
$errors[] = $lang['socialsignup.user_format_error'];
    } elseif ( !
$valid->username($username) ) {
        
$errors[] = $lang['socialsignup.user_format_error'];
    } elseif ( 
$valid->usernameExists($username) ) {
        
$errors[] = $lang['socialsignup.user_existing_error'];
    }    
    
/*
    if ($age_min < 18) {
        $errors[] = $lang['signup.age_err'];
    }
    */
    
if ($gender != 'Female') {
        
$gender 'Male';
    }
    if (!
$errors) {

        
$sql "INSERT INTO signup SET 
                email = " 
.$conn->qStr($email). ", 
                username = " 
.$conn->qStr($username). ",
                fname = " 
.$conn->qStr($fname). ", 
                lname = " 
.$conn->qStr($lname). ",                 
                pwd = " 
.$conn->qStr($password). ", 
                gender = " 
.$conn->qStr($gender). ", 
                addtime = '" 
.time(). "', 
                logintime = '" 
.time(). "', 
                emailverified = 'yes', 
                FBID = " 
.$conn->qStr($id). 
                "

        
        
$conn->execute($sql);
        
$uid            $conn->insert_Id();
        
$sql            "INSERT INTO users_prefs (UID) VALUES (" .$uid")";
        
$conn->execute($sql);
        
$sql            "INSERT INTO users_online (UID, online) VALUES (" .$uid", " .time(). ")";
        
$conn->execute($sql);

        if (
$picture) {
            
$curl = new VCurl();
            
$local $config['BASE_DIR']. '/media/users/orig/' .$uid'.jpg';
            if (
$curl->saveToFile$picture$local)) {
                
$src    $config['BASE_DIR']. '/media/users/orig/' .$uid'.jpg';
                
$dst    $config['BASE_DIR']. '/media/users/' .$uid'.jpg';
                if(
copy($src$dst)) {
                    
process_thumb($dst300300);
                    if ( 
file_exists($dst) && filesize($dst) > 100 ) {
                        
$_SESSION['photo'] = $uid.'.jpg';
                        
$sql    "UPDATE signup SET photo = '" .$uid".jpg' WHERE UID = " .$uid" LIMIT 1";
                        
$conn->execute($sql);
                    }
                }
            }
        }


        
$sql            "SELECT email_subject, email_path FROM emailinfo
                           WHERE email_id = 'welcome' LIMIT 1"
;
        
$rs             $conn->execute($sql);        
        
$mail           = new VMail();
        
$mail->ClearAddresses();
        
$smarty->assign('username'$username);
        
$smarty->assign('password'$password_clear);        
        
$email_subject  str_replace('{$site_title}'$config['site_title'], $rs->fields['email_subject']);
        
$email_path     $rs->fields['email_path'];
        
$body           $smarty->fetch($config['BASE_DIR'].'/templates/'.$email_path);
        
$mail->setNoReply();
        
$mail->Subject  $email_subject;
        
$mail->AltBody  $body;
        
$mail->Body     nl2br($body);
        
$mail->AddAddress($email);
        
$mail->CharSet="UTF-8"
        
$mail->Send();
                        
        
$_SESSION['message']   = $lang['socialsignup.welcome'].$fname"! " .$lang['socialsignup.signup_successfully'];

        
//Login User:
        
$sql    "SELECT * FROM signup WHERE UID = " .$conn->qStr($uid). " LIMIT 1";
        
$rs     $conn->execute($sql);
        if ( 
$conn->Affected_Rows() == ) {
            
$user   $rs->getrows();

            
$_SESSION['uid']            = $user['0']['UID'];
            if (
$user['0']['premium'] == '1') {
                
$_SESSION['uid_premium'] = 1;
            }
            
$_SESSION['username']       = $username;
            
$_SESSION['email']          = $user['0']['email'];
            
$_SESSION['emailverified']  = $user['0']['emailverified'];
            
$_SESSION['photo']          = $user['0']['photo'];
            
$_SESSION['fname']          = $user['0']['fname'];
            
$_SESSION['gender']         = $user['0']['gender'];

            
$_URL                       $config['BASE_URL'];
            
VRedirect::go($_URL);

        } else {
            
$errors[] = $lang['login.invalid'];
        }        
    }
} elseif (isset(
$_POST['fb-signup-submit-existing'])) {
    
    
//FB link account
    
$filter             = new VFilter();
    
$valid              = new VValidation();
    
$id                 $filter->get('fb-signup-id');    
    
$email              $filter->get('fb-signup-email');
    
$fname              $filter->get('fb-signup-first-name');
    
$lname              $filter->get('fb-signup-last-name');
    
$use_pp             $filter->get('fb-signup-usepp');
    if (
$use_pp != '') {
        
$picture $_POST['fb-signup-picture'];
    }    
    
$username           $filter->get('fb-signup-existing-username-locked');
    
    if (
$username != '') {
        
//link to existing account //same email
        
$username $filter->get('fb-signup-existing-username-locked');
        
$password $filter->get('fb-signup-existing-password-locked');    
    } else {
        
//link to existing account //different email
        
$username $filter->get('fb-signup-existing-username');
        
$password $filter->get('fb-signup-existing-password');        
    }    
    if (
$email != $_SESSION['fb_signup_email']) {
        
$errors[] = $lang['signup.email_invalid'];
    }
    if (!
$errors) {
        
$sql    "SELECT * FROM signup WHERE username = " .$conn->qStr($username). " LIMIT 1";
        
$rs     $conn->execute($sql);
        if ( 
$conn->Affected_Rows() == ) {        
            
$user $rs->getrows();    
            
$uid  $user['0']['UID'];        
            
$password md5($password);
            if ( 
$password == $user['0']['pwd'] ) {
                
$sql "UPDATE signup SET 
                        fname = " 
.$conn->qStr($fname). ", 
                        lname = " 
.$conn->qStr($lname). ", 
                        logintime = '" 
.time(). "',    
                        emailverified = 'yes', 
                        FBID = " 
.$conn->qStr($id). 
                        WHERE UID = " 
.$conn->qStr($uid). " LIMIT 1";
                
$conn->execute($sql);

                
//Update Picture
                
if ($picture) {
                    
$curl = new VCurl();
                    
$local $config['BASE_DIR']. '/media/users/orig/' .$uid'.jpg';
                    if (
$curl->saveToFile$picture$local)) {
                        
$src    $config['BASE_DIR']. '/media/users/orig/' .$uid'.jpg';
                        
$dst    $config['BASE_DIR']. '/media/users/' .$uid'.jpg';
                        if(
copy($src$dst)) {
                            
process_thumb($dst300300);
                            if ( 
file_exists($dst) && filesize($dst) > 100 ) {
                                
$_SESSION['photo'] = $uid.'.jpg';
                                
$sql    "UPDATE signup SET photo = '" .$uid".jpg' WHERE UID = " .$uid" LIMIT 1";
                                
$conn->execute($sql);
                            }
                        }
                    }
                }
                
                
//Login User
                
$sql    "SELECT * FROM signup WHERE UID = " .$conn->qStr($uid). " LIMIT 1";
                
$rs     $conn->execute($sql);                
                
$user   $rs->getrows();
                
$yesterday  time() - 86400;
                if ( 
intval($user['0']['logintime']) < $yesterday ) {
                    
$sql_add ", points = points+5";
                }
                
$_SESSION['uid']            = $user['0']['UID'];
                if (
$user['0']['premium'] == '1') {
                    
$_SESSION['uid_premium'] = 1;
                }
                
$_SESSION['username']       = $user['0']['username'];
                
$_SESSION['email']          = $user['0']['email'];
                
$_SESSION['emailverified']  = $user['0']['emailverified'];
                
$_SESSION['photo']          = $user['0']['photo'];
                
$_SESSION['fname']          = $user['0']['fname'];
                
$_SESSION['gender']         = $user['0']['gender'];
                if (
$user['0']['fname']) {
                    
$_SESSION['message']    = $lang['socialsignup.welcome'].$user['0']['fname']. "! " .$lang['socialsignup.link_fb_successfully'];
                } else {
                    
$_SESSION['message']    = $lang['socialsignup.welcome'].$user['0']['username']. "! " .$lang['socialsignup.link_fb_successfully'];
                }
                
$_URL                       $config['BASE_URL'];
                
VRedirect::go($_URL);
            } else {
                
$errors[] = $lang['login.invalid'];
            }
        } else {
            
$errors[] = $lang['login.invalid'];
        }
    }
} elseif ( isset(
$_POST['g-signup-submit-new']) ) {

    
//G new user
    
$filter             = new VFilter();
    
$valid              = new VValidation();
    
$id                 $filter->get('g-signup-id');    
    
$username           $filter->get('g-signup-username');
    
$password_clear     generateRandomString();
    
$password           md5($password_clear);
    
$email              $filter->get('g-signup-email');
    
$fname              $filter->get('g-signup-first-name');
    
$lname              $filter->get('g-signup-last-name');
    
$age_min            $filter->get('g-signup-age-min''INTEGER');
    
$gender             ucfirst($filter->get('g-signup-gender'));
    
$use_pp             $filter->get('g-signup-usepp');
    
    if (
$use_pp != '') {
        
$picture $_POST['g-signup-picture'];
    }
    if (
$email != $_SESSION['g_signup_email']) {
        
$errors[] = $lang['signup.email_invalid'];
    }    
    if ( 
$username == '' ) {
        
$errors[] = $lang['socialsignup.user_format_error'];
    } elseif ( 
strlen($username) > 15 or strlen($username) < 2) {
        
$errors[] = $lang['socialsignup.user_format_error'];
    } elseif ( !
$valid->username($username) ) {
        
$errors[] = $lang['socialsignup.user_format_error'];
    } elseif ( 
$valid->usernameExists($username) ) {
        
$errors[] = $lang['socialsignup.user_existing_error'];
    }    
    
/*
    if ($age_min < 18) {
        $errors[] = $lang['signup.age_err'];
    }
    */
    
if ($gender != 'Female') {
        
$gender 'Male';
    }
    if (!
$errors) {

        
$sql "INSERT INTO signup SET 
                email = " 
.$conn->qStr($email). ", 
                username = " 
.$conn->qStr($username). ",
                fname = " 
.$conn->qStr($fname). ", 
                lname = " 
.$conn->qStr($lname). ",                 
                pwd = " 
.$conn->qStr($password). ", 
                gender = " 
.$conn->qStr($gender). ", 
                addtime = '" 
.time(). "', 
                logintime = '" 
.time(). "', 
                emailverified = 'yes', 
                GID = " 
.$conn->qStr($id). 
                "

        
        
$conn->execute($sql);
        
$uid            $conn->insert_Id();
        
$sql            "INSERT INTO users_prefs (UID) VALUES (" .$uid")";
        
$conn->execute($sql);
        
$sql            "INSERT INTO users_online (UID, online) VALUES (" .$uid", " .time(). ")";
        
$conn->execute($sql);

        if (
$picture) {
            
$curl = new VCurl();
            
$local $config['BASE_DIR']. '/media/users/orig/' .$uid'.jpg';
            if (
$curl->saveToFile$picture$local)) {
                
$src    $config['BASE_DIR']. '/media/users/orig/' .$uid'.jpg';
                
$dst    $config['BASE_DIR']. '/media/users/' .$uid'.jpg';
                if(
copy($src$dst)) {
                    
process_thumb($dst300300);
                    if ( 
file_exists($dst) && filesize($dst) > 100 ) {
                        
$_SESSION['photo'] = $uid.'.jpg';
                        
$sql    "UPDATE signup SET photo = '" .$uid".jpg' WHERE UID = " .$uid" LIMIT 1";
                        
$conn->execute($sql);
                    }
                }
            }
        }

        
$sql            "SELECT email_subject, email_path FROM emailinfo
                           WHERE email_id = 'welcome' LIMIT 1"
;
        
$rs             $conn->execute($sql);        
        
$mail           = new VMail();
        
$smarty->assign('username'$username);
        
$smarty->assign('password'$password_clear);        
        
$email_subject  str_replace('{$site_title}'$config['site_title'], $rs->fields['email_subject']);
        
$email_path     $rs->fields['email_path'];
        
$body           $smarty->fetch($config['BASE_DIR'].'/templates/'.$email_path);
        
$mail->setNoReply();
        
$mail->Subject  $email_subject;
        
$mail->AltBody  $body;
        
$mail->Body     nl2br($body);
        
$mail->AddAddress($email);
        
$mail->CharSet="UTF-8"
        
$mail->Send();

        if (
strlen($fname) > 1) {
            
$_SESSION['message']   = $lang['socialsignup.welcome'].$fname"! " .$lang['socialsignup.signup_successfully'];
        } else {
            
$_SESSION['message']   = $lang['socialsignup.welcome'].$username"! " .$lang['socialsignup.signup_successfully'];            
        }

        
//Login User:
        
$sql    "SELECT * FROM signup WHERE UID = " .$conn->qStr($uid). " LIMIT 1";
        
$rs     $conn->execute($sql);
        if ( 
$conn->Affected_Rows() == ) {
            
$user   $rs->getrows();

            
$_SESSION['uid']            = $user['0']['UID'];
            if (
$user['0']['premium'] == '1') {
                
$_SESSION['uid_premium'] = 1;
            }
            
$_SESSION['username']       = $username;
            
$_SESSION['email']          = $user['0']['email'];
            
$_SESSION['emailverified']  = $user['0']['emailverified'];
            
$_SESSION['photo']          = $user['0']['photo'];
            
$_SESSION['fname']          = $user['0']['fname'];
            
$_SESSION['gender']         = $user['0']['gender'];

            
$_URL                       $config['BASE_URL'];
            
VRedirect::go($_URL);

        } else {
            
$errors[] = $lang['login.invalid'];
        }        
    }
} elseif (isset(
$_POST['g-signup-submit-existing'])) {
    
    
//G link account
    
$filter             = new VFilter();
    
$valid              = new VValidation();
    
$id                 $filter->get('g-signup-id');    
    
$email              $filter->get('g-signup-email');
    
$fname              $filter->get('g-signup-first-name');
    
$lname              $filter->get('g-signup-last-name');
    
$use_pp             $filter->get('g-signup-usepp');
    if (
$use_pp != '') {
        
$picture $_POST['g-signup-picture'];
    }    
    
$username           $filter->get('g-signup-existing-username-locked');
    
    if (
$username != '') {
        
//link to existing account //same email
        
$username $filter->get('g-signup-existing-username-locked');
        
$password $filter->get('g-signup-existing-password-locked');    
    } else {
        
//link to existing account //different email
        
$username $filter->get('g-signup-existing-username');
        
$password $filter->get('g-signup-existing-password');        
    }    
    if (
$email != $_SESSION['g_signup_email']) {
        
$errors[] = $lang['signup.email_invalid'];
    }
    if (!
$errors) {
        
$sql    "SELECT * FROM signup WHERE username = " .$conn->qStr($username). " LIMIT 1";
        
$rs     $conn->execute($sql);
        if ( 
$conn->Affected_Rows() == ) {        
            
$user $rs->getrows();    
            
$uid  $user['0']['UID'];        
            
$password md5($password);
            if ( 
$password == $user['0']['pwd'] ) {
                
$sql "UPDATE signup SET 
                        fname = " 
.$conn->qStr($fname). ", 
                        lname = " 
.$conn->qStr($lname). ", 
                        logintime = '" 
.time(). "',    
                        emailverified = 'yes', 
                        GID = " 
.$conn->qStr($id). 
                        WHERE UID = " 
.$conn->qStr($uid). " LIMIT 1";
                
$conn->execute($sql);

                
//Update Picture
                
if ($picture) {
                    
$curl = new VCurl();
                    
$local $config['BASE_DIR']. '/media/users/orig/' .$uid'.jpg';
                    if (
$curl->saveToFile$picture$local)) {
                        
$src    $config['BASE_DIR']. '/media/users/orig/' .$uid'.jpg';
                        
$dst    $config['BASE_DIR']. '/media/users/' .$uid'.jpg';
                        if(
copy($src$dst)) {
                            
process_thumb($dst300300);
                            if ( 
file_exists($dst) && filesize($dst) > 100 ) {
                                
$_SESSION['photo'] = $uid.'.jpg';
                                
$sql    "UPDATE signup SET photo = '" .$uid".jpg' WHERE UID = " .$uid" LIMIT 1";
                                
$conn->execute($sql);
                            }
                        }
                    }
                }
                
                
//Login User
                
$sql    "SELECT * FROM signup WHERE UID = " .$conn->qStr($uid). " LIMIT 1";
                
$rs     $conn->execute($sql);                
                
$user   $rs->getrows();
                
$yesterday  time() - 86400;
                if ( 
intval($user['0']['logintime']) < $yesterday ) {
                    
$sql_add ", points = points+5";
                }
                
$_SESSION['uid']            = $user['0']['UID'];
                if (
$user['0']['premium'] == '1') {
                    
$_SESSION['uid_premium'] = 1;
                }
                
$_SESSION['username']       = $user['0']['username'];
                
$_SESSION['email']          = $user['0']['email'];
                
$_SESSION['emailverified']  = $user['0']['emailverified'];
                
$_SESSION['photo']          = $user['0']['photo'];
                
$_SESSION['fname']          = $user['0']['fname'];
                
$_SESSION['gender']         = $user['0']['gender'];
                if (
strlen($user['0']['fname']) > 0) {
                    
$_SESSION['message']    = $lang['socialsignup.welcome'].$user['0']['fname']. "! " .$lang['socialsignup.link_g_successfully'];
                } else {
                    
$_SESSION['message']    = $lang['socialsignup.welcome'].$user['0']['username']. "! ".$lang['socialsignup.link_g_successfully'];
                }
                
$_URL                       $config['BASE_URL'];
                
VRedirect::go($_URL);
            } else {
                
$errors[] = $lang['login.invalid'];
            }
        } else {
            
$errors[] = $lang['login.invalid'];
        }
    }    
} else {
    
$signup     = array('username' => '''email' => '''age' => '''terms' => '''gender' => '');
    if ( isset(
$_POST['submit_signup']) ) {
        
        
$filter             = new VFilter();
        
$valid              = new VValidation();
        
$username           $filter->get('username');
        
$password           $filter->get('password');
        
$password_confirm   $filter->get('password_confirm');
        
$email              $filter->get('email');
        
$vcode              $filter->get('verification');
        
$age                $filter->get('age');
        
$terms              $filter->get('terms');
        
$gender             $filter->get('gender');

        if ( 
$username == '' ) {
            
$errors[]               = $lang['signup.username_empty'];
            
$err['username']        =  1;
        } elseif ( 
strlen($username) > 15 ) {
            
$errors[]               = $lang['signup.username_length'];
            
$err['username']        = 1;
        } elseif ( !
$valid->username($username) ) {
            
$errors[]               = $lang['signup.username_invalid'];
            
$err['username']        = 1;
        } elseif ( 
$valid->usernameExists($username) ) {
            
$errors[]               = $lang['signup.username_exists'];
            
$err['username']        = 1;
        }
        
$signup['username']     = $username;

        
        if ( 
$email == '' ) {
            
$errors[]               = $lang['signup.email_empty'];
            
$err['email']            = 1;
        } elseif ( !
$valid->email($email) ) {
            
$errors[]               = $lang['signup.email_invalid'];
            
$err['email']            = 1;
        } elseif ( 
$valid->emailExists($email) ) {
            
$errors[]               = $lang['signup.email_exists'];
            
$err['email']            = 1;
        }
        
$signup['email']        = $email;

        
        if ( 
$password == '' ) {
            
$errors[]               = $lang['signup.password_empty'];
            
$err['password']        = 1;
            
$err['password_confirm']= 1;
        } elseif ( 
$password_confirm == '' ) {
            
$errors[]               = $lang['signup.passwordc_empty'];
            
$err['password']        = 1;
            
$err['password_confirm']= 1;
        } elseif ( 
$password != $password_confirm ) {
            
$errors[]               = $lang['signup.password_mismatch'];
            
$err['password']        = 1;
            
$err['password_confirm']= 1;
        }
        
        
/*
        if ( $age == '' ) {
            $errors[]               = $lang['signup.age_err'];
            $err['age']                = 1;
        } else {
            $signup['age']          = 'on';
        }
        
        if ( $terms == '' ) {
            $errors[]               = $lang['signup.terms_err'];
            $err['terms']            = 1;
        } else {
            $signup['terms']        = 'on';
        }
        */
        
        
if ( $gender == '' ) {
            
$errors[]               = $lang['signup.gender_err'];
            
$err['gender']            = 1;
        } else {
            
$gender                 = ( $gender == 'Male' ) ? 'Male' 'Female';
            
$signup['gender']       = $gender;
        }    
        
        if ( 
$config['captcha'] == '1' ) {

            
$secret $config['recaptcha_secret_key'];
            require(
'modules/captcha/recaptchalib.php');
            
$response null;
            
$reCaptcha = new ReCaptcha($secret);    
            
$response $reCaptcha->verifyResponse(
                            
$_SERVER["REMOTE_ADDR"],
                            
$_POST["g-recaptcha-response"]
                        );
            if (
$response != null && $response->success) {
                
// verified!
            
} else {
                
$errors[] = $lang['signup.captcha'];
            }        
        }
        
        if ( !
$errors ) {
            require 
'classes/random.class.php';
            
$password_clear $password;
            
$password       md5($password);
            
$sql            "INSERT INTO signup SET email = " .$conn->qStr($email). ", username = " .$conn->qStr($username). ",
                              pwd = " 
.$conn->qStr($password). ", gender = '" .$gender"',
                              addtime = '" 
.time(). "', logintime = '" .time(). "'";  
            
$conn->execute($sql);
            
$uid            $conn->insert_Id();
            
$sql            "INSERT INTO users_prefs (UID) VALUES (" .$uid")";
            
$conn->execute($sql);
            
$sql            "INSERT INTO users_online (UID, online) VALUES (" .$uid", " .time(). ")";
            
$conn->execute($sql);
            
$code           VRandom::generate(10'confirmation');
            
$sql            "INSERT INTO confirm (UID, code) VALUES (" .$uid"," .$conn->qStr($code). ")";
            
$conn->execute($sql);
            
$sql            "SELECT email_subject, email_path FROM emailinfo
                               WHERE email_id = 'verify_email' LIMIT 1"
;
            
$rs             $conn->execute($sql);
            
$email_subject  str_replace('{$site_name}'$config['site_name'], $rs->fields['email_subject']);
            
$email_path     $config['BASE_DIR'].'/templates/'.$rs->fields['email_path'];
            
$smarty->assign('username'$username);
            
$smarty->assign('password'$password_clear);
            
$smarty->assign('uid'$uid);
            
$smarty->assign('code'$code);
            
$body           $smarty->fetch($email_path);
            
$mail           = new VMail();
            
$mail->setNoReply();
            
$mail->Subject  $email_subject;
            
$mail->AltBody  $body;
            
$mail->Body     nl2br($body);
            
$mail->AddAddress($email);
            
$mail->CharSet="UTF-8"
            
$mail->Send();
            
            
$mail->ClearAddresses();
            
$sql            "SELECT email_subject, email_path FROM emailinfo
                               WHERE email_id = 'welcome' LIMIT 1"
;
            
$rs             $conn->execute($sql);
            
$email_subject  str_replace('{$site_title}'$config['site_title'], $rs->fields['email_subject']);
            
$email_path     $rs->fields['email_path'];
            
$body           $smarty->fetch($config['BASE_DIR'].'/templates/'.$email_path);
            
$mail->Subject  $email_subject;
            
$mail->AltBody  $body;
            
$mail->Body     nl2br($body);
            
$mail->AddAddress($email);
            
$mail->CharSet="UTF-8"
            
$mail->Send();
                            
            
$_SESSION['message']   = $lang['signup.msg'];
            
VRedirect::go($config['BASE_URL']);
        }
    }
}

function 
generateRandomString($length 10) {
    
$characters '0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ';
    
$charactersLength strlen($characters);
    
$randomString '';
    for (
$i 0$i $length$i++) {
        
$randomString .= $characters[rand(0$charactersLength 1)];
    }
    return 
$randomString;
}

function 
process_thumb($src$dst_w$dst_h$keep_ar true) {

    
$image      = new VImageConv();
    list (
$width$height) = getimagesize($src);
    
    if(
$keep_ar) {
        
$aspect_src $width/$height;
        
$aspect_dst $dst_w/$dst_h;
        
        if (
$aspect_src $aspect_dst) {
            
$crop_w $width;        
            
$crop_h floor(($dst_h*$width)/$dst_w);
            
$crop_x 0;
            
$crop_y floor (($height $crop_h)/2);
        }
        else {
            
$crop_w floor(($dst_w*$height)/$dst_h);
            
$crop_h $height;
            
$crop_x floor (($width $crop_w)/2);
            
$crop_y 0;        
        }
        
$image->process($src$src'EXACT'$crop_w$crop_h);
        
$image->crop($crop_x$crop_y$crop_w$crop_htrue);
    }
    
$image->process($src$src'EXACT'$dst_w$dst_h);
    
$image->resize(truetrue);

}

$captcha_language substr($_SESSION['language'], 02);

switch (
$_SESSION['language']) {
    case 
'sa_SA':
        
$captcha_language 'ar';
        break;
    case 
'he_IL':
        
$captcha_language 'iw';
        break;
    case 
'jp_JP':
        
$captcha_language 'ja';
        break;
    case 
'cn_CS':
        
$captcha_language 'zh-CN';
        break;
    case 
'cn_CT':
        
$captcha_language 'zh-TW';
        break;
    case 
'dk_DK':
        
$captcha_language 'da';
        break;
    case 
'cz_CZ':
        
$captcha_language 'cs';
        break;
    case 
'rs_RS':
        
$captcha_language 'sr';
        break;
    case 
'si_SI':
        
$captcha_language 'sl';
        break;
    case 
'ba_BA':
        
$captcha_language 'sl';
        break;            
}

unset(
$_SESSION['fb_signup_email']);
$smarty->assign('errors',$errors);
$smarty->assign('err',$err);
$smarty->assign('messages',$messages);
$smarty->assign('captcha_language',$captcha_language);
$smarty->assign('menu''home');
$smarty->assign('signup'$signup);
$smarty->assign('self_title'$seo['signup_title']);
$smarty->assign('self_description'$seo['signup_desc']);
$smarty->assign('self_keywords'$seo['signup_keywords']);
$smarty->loadFilter('output''trimwhitespace');
$smarty->display('header.tpl');
$smarty->display('signup.tpl');
$smarty->display('footer.tpl');
?>
Онлайн: 2
Реклама