Пример #1
0
 function send_pm()
 {
     if (User::is_login()) {
         $user_id = (int) Url::get('user_id');
         $title_pm = AZLib::getParam('title_pm');
         $content_pm = AZLib::cleanHtml(AZLib::getParam('content_pm'));
         if (!$user_id) {
             echo "false_send";
             exit;
         }
         if (AZLib::isBlackList(User::id(), $user_id)) {
             echo "blacklist";
             exit;
         }
         if (User::id() == $user_id) {
             echo "no_send_yourself";
             exit;
         }
         if ($title_pm == '' || $title_pm == 'Tiêu đề') {
             echo "no_title";
             exit;
         } elseif ($content_pm == '') {
             echo "no_content";
             exit;
         }
         $receiver_user = User::getUser($user_id);
         $id_mess = AZLib::Send_pm(User::id(), User::user_name(), $receiver_user, $title_pm, $content_pm);
         if ($id_mess) {
             echo "success";
             exit;
         } else {
             echo "false_send";
             exit;
         }
     } else {
         echo "not_login";
         exit;
     }
 }
Пример #2
0
    function fn_del_item()
    {
        $id = (int) Url::get('id', 0);
        if (!User::is_login()) {
            echo "not_login";
            exit;
        }
        if ($id > 0) {
            $item = Item::get_item($id);
            $item_memcache = $item;
            if (!User::have_permit(ADMIN_ITEM) && !User::have_cat_permit($item['category_id'])) {
                if ($item['user_id'] != User::id() || User::is_block()) {
                    echo "not_perm";
                    exit;
                }
            }
            $reason_del = AZLib::getParam("reason_del");
            Item::delete_item($id);
            DB::query("UPDATE user SET total_transaction = total_transaction-1 WHERE id=" . $item["user_id"]);
            if ((User::have_permit(ADMIN_ITEM) || User::have_cat_permit($item['category_id'])) && $reason_del) {
                $receiver_user = DB::select('user', 'id = ' . $item["user_id"]);
                $title_pm = 'Thông báo từ EnBac';
                $content_pm = 'Tin đăng \\"' . $item['name'] . '\\" của bạn đã bị xóa với lý do: ' . $reason_del . '
				
				Đề nghị bạn tham khảo [url=http://blog.enbac.com/2008/10/14/quy-che-dang-tin-tren-enbaccom.html]Quy định đăng tin[/url] hoặc [url=http://blog.enbac.com/2008/09/22/huong-dan-cac-chuc-nang-cua-enbac.html]hướng dẫn[/url] trên blog.enbac.com 
				
				Ban quản trị Én bạc.
				
				Vui lòng không trả lời tin nhắn này!';
                if (User::$current->data['signature']) {
                    $content_pm .= '<br /><hr /><br />Mọi thắc mắc vui lòng liên hệ theo số ĐT: 04.39743410 - Số máy lẻ: ' . User::$current->data['signature'];
                }
                AZLib::Send_pm(User::id(), User::user_name(), $receiver_user, $title_pm, $content_pm, true);
                $item_array = array('item_id' => $id, 'user_id' => User::id(), 'user_name' => User::user_name(), 'lock_time' => TIME_NOW, 'type' => 1, 'reason_lock' => $reason_del);
                DB::insert('item_lock', $item_array);
            }
            echo "success";
            exit;
        } else {
            echo "unsuccess";
            exit;
        }
    }
Пример #3
0
    function lockItemWhenLockAccount($value = array(), $is_lock = 1)
    {
        // $is_lock = 1: lock, $is_lock = 0: Unlock
        $user_id = $value["user_id"];
        $reason_invalid = isset($value["reason_invalid"]) ? $value["reason_invalid"] : "";
        if ($user_id) {
            $user = User::getUser($user_id);
        }
        if ($is_lock == 0 && User::have_permit(array(ADMIN_USER))) {
            $sql = 'SELECT id, admin_id, time FROM user_lock WHERE user_id = ' . $user_id . ' AND type = 0 ORDER BY id DESC LIMIT 1';
            $user_invalid = DB::fetch($sql);
            if (isset($user_invalid["id"])) {
                $sql = "SELECT * FROM item WHERE user_id = {$user_id} AND state = 1";
                $re = DB::query($sql);
                while ($item = mysql_fetch_assoc($re)) {
                    $sql = "SELECT user_id, lock_time FROM item_lock WHERE item_id = {$item['id']} ORDER BY id DESC LIMIT 1";
                    $re_lock = DB::query($sql);
                    $item_lock = mysql_fetch_assoc($re_lock);
                    if ($item_lock["lock_time"] == $user_invalid["time"] && $item_lock["user_id"] == $user_invalid["admin_id"]) {
                        if (MEMCACHE_ON) {
                            $item_memcache = AZMemcache::do_get("item:{$item['id']}");
                            $item_memcache['state'] = 0;
                            AZMemcache::do_put("item:" . $item_memcache['id'], $item_memcache);
                        }
                        DB::update('item', array('state' => 0), "id={$item['id']}");
                    }
                }
            }
        } elseif ($is_lock == 1) {
            // chi thuc hien voi khoa theo ngay
            $sql_item = 'SELECT id FROM item WHERE user_id = ' . $user_id . ' AND status = 1 AND state=0';
            $re_item = DB::query($sql_item);
            while ($item = mysql_fetch_assoc($re_item)) {
                $sql_insert = "INSERT INTO item_lock (item_id, user_id \t,user_name, lock_time, reason_lock) VALUES ({$item['id']}," . User::id() . ",'" . User::user_name() . "'," . TIME_NOW . ",'" . $reason_invalid . "')";
                DB::query($sql_insert);
            }
            if (MEMCACHE_ON) {
                $sql = "SELECT * FROM item WHERE user_id = {$user_id} AND status = 1";
                $re = DB::query($sql);
                while ($item_memcache = mysql_fetch_assoc($re)) {
                    $item_memcache['state'] = 1;
                    AZMemcache::do_put("item:" . $item_memcache['id'], $item_memcache);
                }
            }
            DB::update('item', array('state' => "1"), 'user_id = ' . $user_id . ' AND status = 1');
            $receiver_user = User::getUser($user_id);
            $link_help = 'http://help.enbac.com/index.php/Quy_%C4%91%E1%BB%8Bnh_%C4%91%C4%83ng_tin';
            $title_pm = 'Thông báo từ EnBac';
            $content_pm = 'Tất cả tin đăng của bạn đã bị khóa với lý do: ' . $reason_invalid . '

			Đề nghị bạn hãy thực hiện đúng các quy định của Én Bạc.

			Xin cảm ơn bạn.

			Vui lòng không trả lời tin nhắn này!';
            AZLib::Send_pm(User::id(), User::user_name(), $receiver_user, $title_pm, $content_pm, true);
        }
    }
Пример #4
0
    function fn_invalid_user()
    {
        if (!User::is_login() || !User::have_permit(array(ADMIN_USER, MOD_VALID_USER))) {
            echo "no_perm";
            exit;
        }
        $user_id = (int) Url::get('user_id', 0);
        $invalid_time = (int) Url::get('invalid_time', 0);
        $date_invalid = (int) Url::get('date_invalid', 0);
        $type_invalid = (int) Url::get('type_invalid', 0);
        $reason_invalid = AZLib::getParam('reason_invalid', '');
        $reason_invalid = $reason_invalid ? $reason_invalid : 'Không nhập lý do kiểm duyệt';
        $user = User::getUser($user_id);
        if ($user['invalid_time'] > 0 || $user['invalid_time'] == -1) {
            if (DB::update('user', array('invalid_time' => "0"), 'id =' . $user_id)) {
                $sql_select_reason = 'SELECT id,admin_name,time FROM user_lock WHERE user_id = ' . $user_id . ' AND type = 2 ORDER BY id DESC LIMIT 1';
                $user_invalid = DB::fetch($sql_select_reason);
                if (MEMCACHE_ON) {
                    $sql = "SELECT * FROM item\t\r\n\t\t\t\t\t\t\t   WHERE user_id = {$user_id} AND status = 2 AND valid_time = {$user_invalid['time']} AND modify_time_user = 0 AND valid_user ='******'admin_name']}'";
                    $re = DB::query($sql);
                    while ($item_memcache = mysql_fetch_assoc($re)) {
                        $item_memcache['status'] = 1;
                        $item_memcache['valid_time'] = TIME_NOW;
                        $item_memcache['valid_user'] = User::user_name();
                        AZMemcache::do_put("item:" . $item_memcache['id'], $item_memcache);
                    }
                }
                if (User::have_permit(array(ADMIN_USER))) {
                    // chi admin quyen User moi duoc mo kiem duyet thanh vien
                    DB::update('item', array('status' => 1, 'valid_time' => TIME_NOW, 'valid_user' => User::user_name()), 'user_id = ' . $user_id . ' AND status = 2 AND valid_time = ' . $user_invalid['time'] . ' AND modify_time_user = 0 AND valid_user ="******"');
                    DB::update('user_lock', array('unlock_time' => TIME_NOW, 'unlock_user' => User::user_name()), 'id = ' . $user_invalid['id']);
                }
                User::getUser($user_id, 1, 0);
                // update lai cache user
                echo $user['id'];
                exit;
            }
        } elseif ($user['invalid_time'] == 0) {
            if ($type_invalid == 1 && $date_invalid) {
                //$timeInvalid = TIME_NOW+($date_invalid*3600*24);
                $time_start = mktime(24, 0, 0, date('m'), date('d'), date('Y'));
                $timeInvalid = $time_start + $date_invalid * 24 * 3600;
            } elseif ($type_invalid == 2) {
                $timeInvalid = -1;
            } else {
                echo 'fail_valid';
                exit;
            }
            if (DB::update('user', array('invalid_time' => $timeInvalid), 'id =' . $user_id)) {
                $user = DB::fetch('SELECT id,user_name FROM user WHERE id  = ' . $user_id);
                if ($user) {
                    DB::insert('user_lock', array('time' => TIME_NOW, 'time_expire' => $timeInvalid, 'user_id' => $user['id'], 'user_name' => $user['user_name'], 'type' => 2, 'note' => $reason_invalid, 'admin_id' => User::id(), 'admin_name' => User::user_name()));
                }
                $sql_item = 'SELECT id FROM item where user_id = ' . $user_id . ' AND status = 1';
                $re_item = DB::query($sql_item);
                while ($item = mysql_fetch_assoc($re_item)) {
                    $reason = "KDTV : {$reason_invalid}";
                    $sql_insert = "INSERT INTO bad_content (`type`,`id_item`,`user_id`,`user_name`,`reason`,`time_post`) VALUES (2,{$item['id']}," . User::id() . ",'" . User::user_name() . "','" . $reason . "'," . TIME_NOW . ")";
                    DB::query($sql_insert);
                }
                if (MEMCACHE_ON) {
                    $sql = "SELECT * FROM item\t\r\n\t\t\t\t\t\t\t   WHERE user_id = {$user_id} AND status = 1";
                    $re = DB::query($sql);
                    while ($item_memcache = mysql_fetch_assoc($re)) {
                        $item_memcache['status'] = 2;
                        $item_memcache['valid_time'] = TIME_NOW;
                        $item_memcache['valid_user'] = User::user_name();
                        AZMemcache::do_put("item:" . $item_memcache['id'], $item_memcache);
                    }
                }
                $receiver_user = User::getUser($user_id);
                $title_pm = 'Thông báo kiểm duyệt thành viên từ EnBac';
                $content_pm = 'Bạn đã bị kiểm duyệt với lý do: ' . $reason . '
				
				Tất cả các tin đăng của bạn cũng sẽ bị kiểm duyệt.
				
				Đề nghị bạn hãy thực hiện đúng các quy định của Én Bạc.
				
				Xin cảm ơn bạn.
				
				Vui lòng không trả lời tin nhắn này!';
                AZLib::Send_pm(User::id(), User::user_name(), $receiver_user, $title_pm, $content_pm, true);
                DB::update('item', array('status' => "2", 'valid_time' => TIME_NOW, 'valid_user' => User::user_name()), 'user_id = ' . $user_id . ' AND status = 1');
                User::getUser($user_id, 1, 0);
                // update lai cache user
                echo $user['id'];
                exit;
            }
        } else {
            echo 'fail_valid';
            exit;
        }
    }
Пример #5
0
 function action_pm()
 {
     $act_ = Url::get('act_');
     $pm_id = (int) Url::get('pm_id', 0);
     $content = trim(AZLib::getParam('content'));
     $title_pm = '';
     $json = "";
     if (!User::is_login()) {
         $json = '({"msg":"no_login"})';
         echo $json;
         exit;
     }
     if (User::is_block()) {
         $json = '({"msg":"no_perm"})';
         echo $json;
         exit;
     }
     if ($pm_id) {
         $message_topic = DB::select('message_topics', "mt_id={$pm_id}");
         if ($message_topic && User::id() == $message_topic['mt_owner_id']) {
             $message_text = DB::select('message_text', "msg_id={$message_topic['mt_msg_id']}");
             if (!$message_text) {
                 DB::delete('message_topics', "mt_id={$pm_id}");
                 $json = '({"msg":"no_perm"})';
                 echo $json;
                 exit;
             }
         } else {
             $json = '({"msg":"no_perm"})';
             echo $json;
             exit;
         }
         if ($act_ == 'reply' && $content || $act_ == 'skip' || $act_ == 'delete') {
             $json = '({"msg":"success"';
             if ($act_ == 'reply' && $content) {
                 if (AZLib::checkBadWord($content)) {
                     $json = '({"msg":"bad_word"})';
                     echo $json;
                     exit;
                 }
                 $title_pm = $message_topic['mt_title'];
                 if ($message_topic['mt_ref_id']) {
                     $ref_id = $message_topic['mt_ref_id'];
                 } else {
                     $ref_id = $pm_id;
                 }
                 //if(strpos($title_pm,'Re:')!==0){
                 //	$title_pm="Re: $title_pm";
                 //}
                 if (AZLib::isBlackList(User::id(), $message_topic['mt_from_id'])) {
                     if ($message_topic['mt_read'] == 0) {
                         DB::query("UPDATE message_topics SET mt_read=1 WHERE mt_id={$pm_id}");
                     }
                     $json = '({"msg":"blacklist"})';
                     echo $json;
                     exit;
                 }
                 $user = User::getUser($message_topic['mt_from_id']);
                 if ($user) {
                     $id_mess = AZLib::Send_pm(User::id(), User::user_name(), $user, $title_pm, $content, 0, $ref_id);
                     if (!$id_mess) {
                         $json = '({"msg":"unsuccess"})';
                         echo $json;
                         exit;
                     }
                 }
                 if ($message_topic['mt_read'] == 0) {
                     DB::query("UPDATE message_topics SET mt_read=1 WHERE mt_id={$pm_id}");
                     //Cập nhật đã đọc - trả lời cho feed
                     DB::query("UPDATE feed SET status = 1 WHERE ref_id = {$pm_id} AND type=4");
                     DB::query('UPDATE user SET total_pm = total_pm-1 WHERE id=' . User::id() . ' AND total_pm>0');
                     User::getUser(User::id(), 0, 1);
                 }
             } elseif ($act_ == 'delete') {
                 AZLib::delete_messages($pm_id);
                 //Cập nhật đã đọc - trả lời cho feed
                 DB::query("DELETE FROM feed WHERE ref_id = {$pm_id} AND type=4");
             } else {
                 if ($message_topic['mt_read'] == 0) {
                     DB::query("UPDATE message_topics SET mt_read=1 WHERE mt_id={$pm_id}");
                     DB::query('UPDATE user SET total_pm = total_pm-1 WHERE id=' . User::id() . ' AND total_pm>0');
                     User::getUser(User::id(), 0, 1);
                 }
                 //Cập nhật đã đọc - trả lời cho feed
                 DB::query("UPDATE feed SET status = 1 WHERE ref_id = {$pm_id} AND type=4");
             }
             DB::query('UPDATE user SET total_pm = total_pm-1 WHERE id=' . User::id() . ' AND total_pm>0');
             User::getUser(User::id(), 0, 1);
             $json .= "})";
             echo $json;
             exit;
         } else {
             $json = '({"msg":"short_content"})';
             exit;
         }
     }
     $json = "({'msg':'no_perm'})";
     echo $json;
 }
Пример #6
0
 function send_mess()
 {
     if (!User::is_login()) {
         echo 'no_login';
         exit;
     }
     $is_save = (int) Url::get("is_save", 0);
     $user_name = trim(Url::get("user_name", ""));
     $ref_id = (int) Url::get('ref_id', 0);
     $title_pm = trim(Url::get("title_pm", ""));
     $content_pm = trim(Url::get("content_pm", ""));
     if ($user_name == User::user_name()) {
         echo "your_self";
         exit;
     }
     if ($title_pm == "" || $content_pm == "") {
         echo "unsuccess";
         exit;
     }
     if ($user_name && $title_pm && $content_pm) {
         $user_name = trim($user_name, ",");
         $user_name = preg_replace("/,,/", "", $user_name);
         $arr_user = explode(",", $user_name);
         if (User::have_permit(SEND_MORE_MESSAGE)) {
             $limit_user = 200;
         } else {
             $limit_user = 5;
         }
         if (count($arr_user) > $limit_user) {
             echo "over_limit";
             exit;
         }
         if (count($arr_user) == 0) {
             echo "unsuccess";
             exit;
         }
         $str_return = "";
         for ($i = 0; $i < count($arr_user) && $i < $limit_user; $i++) {
             $username_explode = trim($arr_user[$i]);
             $sql = "SELECT id FROM user WHERE user_name='{$username_explode}'";
             $result = DB::query($sql);
             $row = mysql_fetch_assoc($result);
             if ($row["id"] > 0) {
                 if ($row["id"] == User::id()) {
                     $str_return .= "<div>Tài khoản {$username_explode} là của bạn nên không gửi được</div>";
                 } else {
                     $user_receiver = User::getUser($row["id"]);
                     $id_pm = AZLib::Send_pm(User::id(), User::user_name(), $user_receiver, $title_pm, $content_pm, !$is_save, $ref_id);
                     if ($id_pm) {
                         User::getUser($row["id"], 1, 0);
                         $str_return .= "<div>Gửi tin nhắn tới {$username_explode} thành công</div>";
                     }
                 }
             } else {
                 $str_return .= "<div>Tài khoản {$username_explode} không tồn tại</div>";
             }
         }
         echo $str_return;
         exit;
     } else {
         echo "unsuccess";
         exit;
     }
 }