def get (self): tool_user, db_user = ADayThere.tool_user () if not tool_user or not ADayThere.admin_user (db_user): self.response.status = 401 self.response.write ("Unauthorized") return query = User.query () if 'name' in self.request.GET.keys (): name = self.request.GET['name'] if name != '': query = query.filter (User.name == name) if 'email' in self.request.GET.keys (): email = self.request.GET['email'] if email != '': query = query.filter (User.email == email) if 'user_id' in self.request.GET.keys (): uid = self.request.GET['user_id'] if uid != '': query = query.filter (User.user_id == uid) limit = self.request.get ('limit', None) if limit is None: limit = ProfilesHandler.max_limit cursor = ndb.Cursor (urlsafe=self.request.get ('cursor')) users, cursor, more = query.fetch_page (int (limit), start_cursor=cursor) users_arr = [] for each in users: u = self.__build_user (each) users_arr.append (u) safe_cursor = '' if cursor: safe_cursor = cursor.urlsafe () resp_obj = { "users": users_arr, "cursor": safe_cursor, "more": more } resp = json.dumps (resp_obj) self.response.write (resp)