public function __construct()
 {
     $this->cookie = AuthUser::COOKIE_KEY;
     $this->session = AuthUser::SESSION_KEY;
     $this->fields = new pawUserFields();
     $this->blacklist = new pawBlacklist();
     $this->permissions = new pawPermissions();
     $config = Plugin::getAllSettings("paw_users");
     $this->config = paw_unserializer($config, true);
 }
 function paw_unserializer($data, $depth = false)
 {
     if ($depth === true && is_array($data)) {
         foreach ($data as $k => $d) {
             $data[$k] = paw_unserializer($d, false);
         }
     } else {
         $copy = trim($data);
         if (is_string($copy)) {
             if ($copy == "b:1;" || $copy == "b:1") {
                 return true;
             }
             if ($copy == "b:0;" || $copy == "b:0") {
                 return false;
             }
             if (($serial = @unserialize($copy)) !== false) {
                 return $serial;
             }
         }
     }
     return $data;
 }
 public function getMeta($data, $key, $single = false, $default = false)
 {
     global $pawUsers;
     $data = paw_xss_cleaner($data);
     $key = paw_xss_cleaner($key);
     // GET USER
     if (($user = $pawUsers->getUser($data)) === false) {
         return $default;
     }
     // CHECK IF EXISTS
     $query = "SELECT * FROM " . TABLE_PREFIX . "user_meta WHERE user_id=" . $user->id . " AND meta_key=:key";
     $query = Record::query($query, array(":key" => $key));
     if (empty($query)) {
         return $default;
     }
     // RETURN RESULT
     $return = array();
     foreach ($query as $line) {
         $line->meta_value = paw_unserializer($line->meta_value);
         if ($line->meta_unique == 1) {
             if ($single === true) {
                 return $line->meta_value;
             } else {
                 return $line;
             }
         }
         if ($single === true) {
             return $line->meta_value;
         } else {
             $return[] = $line;
         }
     }
     return $return;
 }
 public function getData($id)
 {
     global $pawUsers;
     // VALIDATE
     if (!is_integer($id)) {
         return false;
     }
     // SELECT AND RETURN
     $query = "SELECT * FROM " . TABLE_PREFIX . "blacklist WHERE id=:id";
     $query = Record::query($query, array(":id" => $id));
     if (!empty($query)) {
         foreach ($query as $q) {
             $user = $pawUsers->getUser($q->author, "id");
             $q->author = $user->name;
             $q->settings = paw_unserializer($q->settings);
             return (array) $q;
         }
     }
     return false;
 }