def PUT(self): j = self.req.json if "personw" not in self.req.auth.perms: self.status_code = 403 return {"e":1, "msg":"You don't have permission to do that."} p = Person() self.dbs.add(p) if not ("name" in j and j["name"]): self.status_code = 400 return {"e":1, "msg":"Name required."} if not ("namefull" in j and j["namefull"]): self.status_code = 400 return {"e":1, "msg":"Full name required."} if not ("emails" in j and j["emails"]): self.status_code = 400 return {"e":1, "msg":"At least one email is required."} p.name = j["name"] p.namefull = j["namefull"] if "number" in j: p.number = j["number"] if "emails" in j: p.emails = [Email(email=e) for e in j["emails"]] self.dbs.commit() return {"e":0, "id": p.id, }
def person(id, name, full, pw, perms): p = Person(number=id, name=name, namefull=full, perms=perms) p.password_set(pw) sess.add(p) return p