/** * @param int $uid * @param id $zone */ public function getUserLevelOnZone($uid, $zone) { $key = 'getUserLevelOnZone_' . $uid . '_' . $zone; if (!$this->isInCache($key)) { $zid = $this->sanitizeIdZone($zone); $uid = Db::quote($uid); $zid = Db::quote($zid); $req = "SELECT gz.permission, gz.zid FROM\n\t\t\t\t{$this->table_GroupUser} as gu\n\t\t\t\tINNER JOIN {$this->table_GroupZone} as gz ON gu.gid=gz.gid\n\t\t\t\tWHERE gu.uid={$uid} AND gz.zid={$zid} ORDER BY gz.permission DESC LIMIT 1"; $r = Db::query($req)->fetchColumn(); $this->setCache($key, $r); } return $this->getCache($key); }