Esempio n. 1
0
 /**
  * 关闭用户
  *
  * 必须是管理员的token
  *
  * @param string token , 必填
  * @param string uid  , 必填
  * @return user array
  * @author EasyChen
  */
 function user_close()
 {
     $uid = intval(v('uid'));
     if ($uid < 1) {
         return self::send_error(LR_API_ARGS_ERROR, __('INPUT_CHECK_BAD_ARGS', 'UID'));
     }
     if (!($user = get_user_info_by_id($uid))) {
         return self::send_error(LR_API_ARGS_ERROR, __('API_MESSAGE_USER_NOT_EXISTS'));
     }
     if ($_SESSION['level'] != '9') {
         return self::send_error(LR_API_FORBIDDEN, __('API_MESSAGE_ONLY_ADMIN'));
     }
     if ($user['is_closed'] == '1') {
         return self::send_error(LR_API_USER_CLOSED, __('API_MESSAGE_USER_CLOSED_BY_ADMIN'));
     }
     if ($_SESSION['level'] == '9' && $uid == uid()) {
         $admin_num = get_var("SELECT COUNT(*) FROM `user` WHERE `is_closed` = 0 AND `level` = 9 ");
         if ($admin_num < 2) {
             return self::send_error(LR_API_FORBIDDEN, __('API_MESSAGE_CANNOT_CLOSE_ONLY_ADMIN'));
         }
     }
     close_user_by_id($uid);
     if (db_errno() != 0) {
         return self::send_error(LR_API_DB_ERROR, __('API_MESSAGE_DATABASE_ERROR') . db_error());
     } else {
         publish_feed(__('API_MESSAGE_ACCOUNT_CLOSED', array(uname(), $user['name'])), uid(), 1);
         return self::send_result($user);
     }
 }
Esempio n. 2
0
 /**
  * 关闭用户
  *
  * 必须是管理员的token
  *
  * @param string token , 必填
  * @param string uid  , 必填
  * @return user array
  * @author EasyChen
  */
 function user_close()
 {
     $uid = intval(v('uid'));
     if ($uid < 1) {
         return $this->send_error(LR_API_ARGS_ERROR, 'UID CAN\'T BE EMPTY');
     }
     if (!($user = get_user_info_by_id($uid))) {
         return $this->send_error(LR_API_ARGS_ERROR, 'UID NOT EXISTS');
     }
     if ($_SESSION['level'] != '9') {
         return $this->send_error(LR_API_FORBIDDEN, 'ONLY ADMIN CAN DO THIS');
     }
     if ($user['is_closed'] == '1') {
         return $this->send_error(LR_API_USER_CLOSED, 'USER CLOSED BY ADMIN');
     }
     if ($_SESSION['level'] == '9' && $uid == uid()) {
         $admin_num = get_var("SELECT COUNT(*) FROM `user` WHERE `is_closed` = 0 AND `level` = 9 ");
         if ($admin_num < 2) {
             return $this->send_error(LR_API_FORBIDDEN, 'CANNOT CLOSE THE ONLY ADMIN');
         }
     }
     close_user_by_id($uid);
     if (db_errno() != 0) {
         return $this->send_error(LR_API_DB_ERROR, 'DATABASE ERROR ' . db_error());
     } else {
         publish_feed(uname() . '关闭了账号【' . $user['name'] . '】', uid(), 1);
         return $this->send_result($user);
     }
 }