Example #1
0
File: User.php Project: hqd276/bigs
 static function lock4Ever($kick_out = false, $user_id = false)
 {
     EClassApi::my_setcookie('lock_4ever', 1);
     User::LogOut();
     if ($kick_out && $user_id) {
         DB::delete(_SESS_TABLE, 'user_id=' . $user_id, __LINE__ . __FILE__);
     } else {
         $_SESSION['lock_4ever'] = 1;
     }
 }
Example #2
0
 function __construct()
 {
     if (User::is_login()) {
         User::LogOut();
     }
     $href = Url::get('href');
     /*if(!$href){
     			$href = './';
     		}*/
     if ($href) {
         $href = base64_decode($href);
         Url::redirect_url($href);
     } else {
         //Url::access_denied();
         if (!isset($_SERVER['HTTP_REFERER']) || strpos($_SERVER['HTTP_REFERER'], WEB_ROOT) !== 0) {
             $request_refer = WEB_ROOT;
         } else {
             $request_refer = $_SERVER['HTTP_REFERER'];
         }
         Url::redirect_url($request_refer);
     }
 }
Example #3
0
 function card_payment_item()
 {
     $json['error'] = "";
     $json['errorShow'] = "";
     $json['arrReturn'] = "";
     $json['up_number'] = 0;
     $json['title'] = 0;
     if (!User::is_login()) {
         $json['error'] = "not_login";
         echo json_encode($json);
         exit;
     }
     if (User::is_block()) {
         $json['error'] = "no_permission";
         echo json_encode($json);
         exit;
     }
     $user = User::$current->data;
     $card_type = Url::get('card_type');
     $card_code = Url::get('card_code');
     $pay_full_name = Url::get('pay_full_name');
     $pay_mobile = Url::get('pay_mobile');
     $item_id = (int) Url::get('item_id', 0);
     $transaction_info = "Mua lượt up bằng thẻ cào ({$card_type}) cho tin co ID: {$item_id}, của {$pay_full_name} ({$user['user_name']}), SDT: {$pay_mobile}, Email: {$user['email']}";
     //insert vao payment_cards
     $aryCard = array('user_id' => $user['id'], 'user_name' => $user['user_name'], 'email' => $user['email'], 'phone' => $pay_mobile, 'card_code' => $card_code, 'card_type' => $card_type, 'time_add' => TIME_NOW, 'order_info' => $transaction_info, 'error_text' => '', 'payment_status' => 0, 'order_code' => '', 'price' => 0, 'type' => 2);
     $cardId = DB::insert('payment_cards', $aryCard);
     if ($cardId) {
         $order_code = "card_{$cardId}";
         DB::update('payment_cards', array('order_code' => $order_code), "id={$cardId}");
         $arrReturn = SohaPay::doChargeCard($card_code, $card_type, $transaction_info, $order_code, $user['email'], $pay_mobile, CARD_MERCHANT_SITE_CODE, CARD_SECURE_CODE);
         if (!empty($arrReturn)) {
             //tao key cho memcache
             $key = 'errCard' . $user['id'];
             $error_text = SohaPay::getResponseDescriptionMobileCard($arrReturn['response_code']);
             $json['errorShow'] = SohaPay::showResponseMobileCard($arrReturn['response_code']);
             if ($arrReturn['response_code'] == 1) {
                 //lấy giá trị thẻ nạp và số lượt up
                 $price = $arrReturn['price'];
                 $up_number = SohaPay::$card[$price]['value'];
                 $json['up_number'] = $up_number;
                 $sms_item_up_auto = array('item_id' => (int) $item_id, 'up_total' => $up_number, 'up_number' => $up_number, 'sms_number' => $this->check_mobile($pay_mobile), 'time' => TIME_NOW, 'status' => 1, 'note' => $transaction_info, 'type' => 3);
                 //insert
                 $sms_item_up_auto_id = DB::insert("sms_item_up_auto", $sms_item_up_auto);
                 if ($sms_item_up_auto_id) {
                     //lấy số lần nhập của user
                     $numErr = AZMemcache::do_get("card:{$key}");
                     $numErr = $numErr ? $numErr : 1;
                     //update trang thai thanh cong cho bang payment_card
                     DB::update('payment_cards', array("sms_item_up_auto_id" => $sms_item_up_auto_id, "time_payment" => strtotime($arrReturn['payment_time']), "up_number" => $up_number, 'error_text' => $error_text, 'payment_status' => 1, 'order_code' => $order_code, 'price' => $price, 'num_err' => $numErr), "id={$cardId}");
                     //xoa cache
                     if (MEMCACHE_ON) {
                         AZMemcache::do_remove("card:{$key}");
                     }
                     $json['arrReturn'] = $arrReturn;
                     echo json_encode($json);
                     exit;
                 }
             } else {
                 // Lỗi
                 if (MEMCACHE_ON) {
                     $numErr = AZMemcache::do_get("card:{$key}");
                     $numErr = $numErr ? $numErr : 1;
                     AZMemcache::do_put("card:{$key}", $numErr + 1, 86400);
                 }
                 if ($numErr > 2 && $numErr < 5) {
                     $json['errorShow'] .= '<br/>Bạn đã nhập sai ' . $numErr . ' lần liên tiếp. Nếu bạn nhập sai mã số 5 lần liên tiếp tài khoản của bạn sẽ bị khoá.<br><br>';
                 }
                 if ($numErr >= 5 && !User::is_admin() && !User::is_root()) {
                     $day_block = 1;
                     $time_start = mktime(24, 0, 0, date('m'), date('d'), date('Y'));
                     $time_expire = $time_start + $day_block * 24 * 3600;
                     $reason_block = "Nhập sai mã thẻ điện thoại 5 lần liên tiếp";
                     if (DB::query("UPDATE user SET block_time={$time_expire} WHERE id = {$user['id']}")) {
                         DB::insert('user_lock', array('time' => TIME_NOW, 'time_expire' => $time_expire, 'user_id' => $user['id'], 'user_name' => $user['user_name'], 'type' => 0, 'note' => $reason_block, 'admin_id' => 4, 'admin_name' => 'admin'));
                         // Kiem duyet tin khi khoa thanh vien
                         $arr_data = array('user_id' => $user['id'], 'reason_invalid' => 'Khóa thành viên nên khóa tất cả Topic, ' . $reason_block);
                         $this->lockItemWhenLockAccount($arr_data, 1);
                         // end kiem duyet tin khi khoa thanh vien
                     }
                     $json['errorShow'] .= '<br/>Bạn đã bị khoá tài khoản 1 ngày do nhập sai mã số 5 lần liên tiếp.<br><br>';
                     //xoa cache
                     if (MEMCACHE_ON) {
                         AZMemcache::do_remove("card:{$key}");
                     }
                     User::LogOut();
                 }
                 DB::update('payment_cards', array('error_text' => $error_text, 'payment_status' => 2, 'order_code' => $order_code, 'num_err' => $numErr), "id={$cardId}");
                 $json['error'] = 'error';
                 echo json_encode($json);
                 exit;
             }
         }
         //if(!empty($arrReturn))
         $json['error'] = 'error';
         $json['errorShow'] = "Có lỗi hệ thống nạp card";
         echo json_encode($json);
         exit;
     }
     //if($cardId)
     $json['error'] = 'error';
     $json['errorShow'] = "Có lỗi kết nối với cơ sở dữ liệu";
     echo json_encode($json);
     exit;
 }
Example #4
0
 function login_user()
 {
     $user_name = trim(AZLib::getParam('user'));
     $pass = Url::get('pass');
     // check de ban IP
     $ip = AZLib::ip();
     $arr_badwords = AZLib::checkBadWord($ip, true);
     if ($arr_badwords["bad"] != "" && $arr_badwords["bad_key"] != "") {
         echo "unsuccess";
         exit;
     }
     // end check de ban IP
     if (strlen($user_name) < 3 || strlen($user_name) > 50 || preg_match('/[^A-Za-z0-9_]/', $user_name) || strlen($pass) < 6) {
         echo 'nodata';
         exit;
     }
     $user = str_replace(array('"', '\\'), '_', $user_name);
     $user_data = DB::fetch('SELECT id,password,is_active,block_time FROM user WHERE user_name="' . $user . '"');
     if (!USER_ACTIVE_ON && $user_data && $user_data['is_active']) {
         DB::query("UPDATE user SET is_active=0 WHERE id=" . $user_data['id']);
         DB::delete('user_active', 'user_id=' . $user_data['id']);
         User::getUser($user_data['id'], 0, 1);
     }
     if ($user_data['block_time'] == -1) {
         echo 'unsuccess';
         exit;
     } elseif ($user_data && $user_data['password'] == User::encode_password($pass)) {
         if (USER_ACTIVE_ON && $user_data['is_active']) {
             //Chưa kích hoạt
             echo 'un_active';
         } else {
             if ($user_data['block_time'] > TIME_NOW || $user_data['block_time'] == -1) {
                 //Bị khóa hoặc khóa vĩnh viễn
                 $alert = '';
                 $user_lock = DB::select('user_lock', 'user_id=' . $user_data['id'] . ' AND type IN(0,1,3) ORDER BY id DESC');
                 if ($user_lock) {
                     if ($user_lock['type'] == 1) {
                         //Khoá vĩnh viễn
                         User::LogOut();
                         DB::delete(_SESS_TABLE, 'user_id=' . $user_id, __LINE__ . __FILE__);
                         exit;
                     } elseif ($user_lock['type'] == 3) {
                         //Khoá vĩnh viễn + cookie
                         User::lock4Ever(true, $user_data['id']);
                         exit;
                     } else {
                         if ($user_lock['note']) {
                             $user_lock['note'] = "\n" . 'Lý do:"' . str_replace(array('"', "'"), '', $user_lock['note']) . '"';
                         }
                         $alert = 'Tài khoản của bạn đang tạm khoá tới ' . date('H:i, d/m/Y', $user_data['block_time']) . '!' . $user_lock['note'];
                     }
                 }
                 $_SESSION['user_lock'] = true;
             }
             if (Url::get('set_cookie') == 'on') {
                 $year = 60 * 60 * 24 * 365 + TIME_NOW;
                 AZLib::my_setcookie("az_id", $user_data['id'], $year);
                 AZLib::my_setcookie("password", $user_data['password'], $year);
             }
             $_SESSION['is_load_page_first'] = 1;
             // dung jQueryUI de load bang thong bao
             User::LogIn($user_data['id']);
             if (isset($_SESSION['user_lock']) && $_SESSION['user_lock']) {
                 echo $alert;
                 exit;
             } else {
                 echo 'success';
             }
         }
     } else {
         echo 'unsuccess';
         exit;
     }
     exit;
 }
Example #5
0
<?php

require_once '../../../core/config.php';
//System Config...
require_once '../../../core/Init.php';
//System Init...
require_once '../../../core/DB.php';
//System Api...
$token = Url::get('t', '');
$user = eb_memcache::do_get($token);
if (!$user) {
    Util::requestToMobile(false, 19);
}
$user = eb_memcache::do_remove($token);
// $_SESSION['token']='';
User::LogOut();
Util::requestToMobile(true, 35);
Example #6
0
    function on_submit()
    {
        if (User::checkLock4Ever(1)) {
            Url::redirect_current();
        }
        $user_name = AZLib::getParam('user_name_this');
        $password = AZLib::getParam('password_this');
        $this->checkFormInput('Tên truy cập', 'user_name', $user_name, 'uname', true, '', 4, 50);
        $this->checkFormInput('Mật khẩu truy cập', 'password', $password, 'str', true, '', 6, 50);
        // check de ban IP
        $ip = AZLib::ip();
        $arr_badwords = AZLib::checkBadWord($ip, true);
        if ($arr_badwords["bad"] != "" && $arr_badwords["bad_key"] != "") {
            $this->setFormError('ban_ip', "Có lỗi xẩy ra. Hãy kiểm tra lại");
        }
        // end check de ban IP
        if (!$this->errNum) {
            $user_data = DB::fetch('SELECT id, user_name, password, is_active, block_time FROM user WHERE user_name="' . $user_name . '"');
            if (!USER_ACTIVE_ON && $user_data && $user_data['is_active']) {
                DB::query("UPDATE user SET is_active=0 WHERE id=" . $user_data['id']);
                DB::delete('user_active', 'user_id=' . $user_data['id']);
                User::getUser($user_data['id'], 0, 1);
            }
            if ($user_data && $user_data['password'] == User::encode_password($password)) {
                if (USER_ACTIVE_ON && $user_data['is_active']) {
                    //Chưa kích hoạt
                    $this->setFormError('user_name', "Bạn chưa kích hoạt tài khoản!<br /><br />Bạn hãy check lại mail để kích hoạt lại tài khoản<br />\r\n\t\t\t\t\thoặc <a href=''>click vào đây</a> để hệ thống gửi lại email kích hoạt!");
                } else {
                    $alert = '';
                    $href = base64_decode(Url::get('href'));
                    if (!$href) {
                        $href = Url::build('home');
                    }
                    if ($user_data['block_time'] == -1) {
                        $this->setFormError('user_name', "Tài khoản hoặc mật khẩu không đúng!");
                    } elseif ($user_data['block_time'] > TIME_NOW) {
                        $user_lock = DB::select('user_lock', 'user_id=' . $user_data['id']);
                        if ($user_lock) {
                            if ($user_lock['type'] == 1) {
                                //Khoá vĩnh viễn
                                User::LogOut();
                                DB::delete(_SESS_TABLE, 'user_id=' . $user_id, __LINE__ . __FILE__);
                                Url::access_denied();
                            } elseif ($user_lock['type'] == 3) {
                                //Khoá vĩnh viễn + cookie
                                User::lock4Ever(true, $user_data['id']);
                                Url::access_denied();
                            } else {
                                if ($user_lock['note']) {
                                    $user_lock['note'] = '\\nLý do: ' . str_replace(array('"', "'"), '', $user_lock['note']);
                                }
                                $alert = '<script>
											alert("Tài khoản của bạn đang tạm khoá tới ' . date('h:i, d/m/Y', $user_data['block_time']) . '!' . $user_lock['note'] . '");
											window.location="' . $href . '";
										</script>';
                                //$this->setFormError('user_name',"Tài khoản của bạn đang tạm khoá tới ".date('d/m/Y H:i',$user_data['block_time'])."!".$user_lock['note']);
                            }
                        }
                        $_SESSION['user_lock'] = true;
                    }
                    if (Url::get('set_cookie') == 'on') {
                        $year = 60 * 60 * 24 * 365 + TIME_NOW;
                        AZLib::my_setcookie("az_id", $user_data['id'], $year);
                        AZLib::my_setcookie("password", $user_data['password'], $year);
                    }
                    $_SESSION['is_load_page_first'] = 1;
                    // dung jQueryUI de load bang thong bao
                    User::LogIn($user_data['id']);
                    if (isset($_SESSION['user_lock']) && $_SESSION['user_lock']) {
                        echo $alert;
                        exit;
                    } else {
                        Url::redirect_url($href);
                    }
                }
            } else {
                $this->setFormError('user_name', "Tài khoản hoặc mật khẩu không đúng!");
            }
        }
    }