def __get_friendship__(self, username): m = self.app.get_friendship(self.username, username) v = view.JSONView(200) v.bind(m) return v
def __get_favorites__(self): m = self.app.get_favorites(self.username) v = view.JSONView(200) v.bind(m) return v
def __get__(self, env, tag, page=0, page_size=10): m = self.app.get_tagged_objects(tag, int(page), int(page_size)) v = view.JSONView(200) v.bind(m) return v
def __get__(self, env, query): m = self.app.find_user(self.username, query) v = view.JSONView(200) v.bind(m) return v
def __get__(self, env, page=0, page_size=10): m = self.app.get_popular_objects(int(page), int(page_size)) v = view.JSONView(200) v.bind(m) return v
def __get__(self, env): m = self.app.get_tag_cloud() v = view.JSONView(200) v.bind(m) return v
def __get__(self, env, guid): m = self.app.get_object(guid) v = view.JSONView(200) v.bind(m) return v
def __get_comments__(self, guid, page=0, page_size=50): m = self.app.get_comments(guid, self.username, page, page_size) v = view.JSONView(200) v.bind(m) return v
def __get__(self, env, page_size=10): m = self.app.get_random_objects(int(page_size)) v = view.JSONView(200) v.bind(m) return v
def __get__(self, env, limit=50, after=None): m = self.app.get_public_messages(self.username, int(limit), after) v = view.JSONView(200) v.bind(m) return v
def __post__(self, env, filename, file): name = self.app.update_avatar(self.username, filename, file) v = view.JSONView(200) m = {"filename": name} v.bind(m) return v
def __get__(self, env, page=0, page_size=10): m = self.app.get_recommendations(self.username, int(page), int(page_size)) v = view.JSONView(200) v.bind(m) return v
def __get_tags__(self, guid): obj = self.app.get_object(guid) m = obj["tags"] v = view.JSONView(200) v.bind(m) return v
def __get__(self, env, id): self.__test_required_parameters__(id) m = self.app.get_comment(int(id), self.username) v = view.JSONView(200) v.bind(m) return v
def __get_voting__(self, guid): up = self.app.get_voting(self.username, guid) m = {"up": up} v = view.JSONView(200) v.bind(m) return v
def __post__(self, env, old_password, new_password1, new_password2): self.app.change_password(self.username, old_password, new_password1, new_password2) v = view.JSONView(200) m = {"password": new_password1} v.bind(m) return v
def __post__(self, env, email, firstname, lastname, gender, language, protected): self.app.update_user_details(self.username, email, firstname, lastname, gender, language, util.to_bool(protected)) v = view.JSONView(200) m = self.app.get_full_user_details(self.username) v.bind(m) return v
def __get__(self, env, username): if username.lower() == self.username.lower(): m = self.app.get_full_user_details(username) else: m = self.app.get_user_details(self.username, username) v = view.JSONView(200) v.bind(m) return v
def __put__(self, env, guid): self.__test_required_parameters__(guid) self.app.report_abuse(guid) m = {"guid": guid, "reported": True} v = view.JSONView(200) v.bind(m) return v
def __post__(self, env, username, email): id, code = self.app.request_account(username, email) url = util.build_url("/html/registration/%s", config.WEBSITE_URL, id) v = view.JSONView(201) v.headers["Location"] = url v.headers["ETag"] = util.hash(url) m = {"Location": url} v.bind(m) return v
def __post__(self, env, username, email): id, code = self.app.request_new_password(username, email) url = util.build_url("/html/user/%s/password/reset/%s", config.WEBSITE_URL, username, id) v = view.JSONView(201) v.headers["Location"] = url v.headers["ETag"] = util.hash(url) m = {"Location": url} v.bind(m) return v
def __put__(self, env, guid, receivers): receivers = list(util.split_strip_set(receivers, ",")) if len(receivers) == 0: raise exception.HTTPException(400, "receiver list cannot be empty.") self.app.recommend(self.username, receivers, guid) m = {"guid": guid, "receivers": receivers} v = view.JSONView(200) v.bind(m) return v
def exception_to_json_view(e): if not isinstance(e, exception.BaseException): e = exception.InternalFailureException(str(e)) m = {} m["message"] = e.message if isinstance(e, exception.InvalidParameterException) or isinstance( e, exception.MissingParameterException): m["field"] = e.parameter v = view.JSONView(e.http_status) v.bind(m) if e.http_status == 401: v.headers["WWW-Authenticate"] = "Basic realm=\"%s\"" % (b64encode( config.REALM)) return v