Ejemplo n.º 1
0
 public function do_save()
 {
     requireadmin();
     $uid = $this->input->get("u");
     $query = $this->db->get_where("users", array("id" => $uid));
     if ($query->num_rows()) {
         $row = $query->row();
         $name = $row->display_name;
     }
     $action = (int) $this->input->get("action");
     $status = 0;
     $userlevel = 0;
     switch ($action) {
         case 0:
             $q = $this->db->get_where("users", array("userlevel" => 1));
             if ($q->num_rows() <= 1) {
                 generate_json(array('status' => 0, 'message' => 'Failed to demote this user no admin left.'));
                 exit;
             }
         case 1:
             $userlevel = $action;
             $this->mdb->update_user(array('id' => $uid), array('userlevel' => $userlevel));
             if ($userlevel == 0) {
                 audit_trail($this->session->userdata('display_name') . ' DEMOTED ' . $name . ' as user');
             } else {
                 audit_trail($this->session->userdata('display_name') . ' PROMOTED ' . $name . ' as admin');
             }
             break;
         case 2:
             $status = 2;
             $this->mdb->update_user(array('id' => $uid), array('status' => $status));
             audit_trail($this->session->userdata('display_name') . ' BANNED ' . $name . ' to this system');
             break;
         case 3:
             $status = 1;
             $this->mdb->update_user(array('id' => $uid), array('status' => $status));
             audit_trail($this->session->userdata('display_name') . ' UNBANNED ' . $name . ' to this system');
             break;
     }
     generate_json(array('status' => 1));
 }
Ejemplo n.º 2
0
 public function allow_ip_delete()
 {
     requireadmin();
     $ip = $this->input->get("ip");
     $blocked = unserialize($this->siteinfo->config('allowed_ips'));
     if ($blocked && is_array($blocked) && count($blocked) > 0) {
         if (in_array($ip, $blocked)) {
             $arr = array_diff($blocked, array($ip));
             $insert = serialize($arr);
             audit_trail($this->session->userdata('display_name') . ' removed ' . $ip . ' from whitelist.');
             $this->change_config(array('allowed_ips' => $insert));
         }
     }
     generate_json(array('status' => 1));
 }