def _doPost(self, dataObject): if "email" in dataObject and "password" in dataObject: UM = UserMapper() ATM = ApitokenMapper() # Build user and token objects user = User() if not checkEmail(dataObject["email"]): raise BadRequest("The e-mail supplied was invalid.") user.setEmail(dataObject["email"]) user.setPreHash(dataObject["password"]) user.setRegistered(True) token = Apitoken() token.setUser(user) token.setToken(getKey()) # Save changes to user try: UM.insert(user) # handle the possibility the user already exists except mdb.IntegrityError, e: raise Conflict( "A user with that e-mail address exists already.") # handle all other DB errors except mdb.DatabaseError, e: raise ServerError( "Unable to create user in the database (%s)" % e.args[1])
def _doPost(self, dataObject): if "email" in dataObject and "password" in dataObject: UM = UserMapper() ATM = ApitokenMapper() # Build user and token objects user = User() if not checkEmail(dataObject["email"]): raise BadRequest("The e-mail supplied was invalid.") user.setEmail(dataObject["email"]) user.setPreHash(dataObject["password"]) user.setRegistered(True) token = Apitoken() token.setUser(user) token.setToken(getKey()) # Save changes to user try: UM.insert(user) # handle the possibility the user already exists except mdb.IntegrityError, e: raise Conflict("A user with that e-mail address exists already.") # handle all other DB errors except mdb.DatabaseError, e: raise ServerError("Unable to create user in the database (%s)" % e.args[1])
def _doPost(self, dataObject): print str(dataObject) if "email" in dataObject and "password" in dataObject: try: UserMapper = UM.UserMapper() ApitokenMapper = ATM.ApitokenMapper() # Get the user by E-mail acidtest = UserMapper.getUserByEmail(dataObject["email"]) if acidtest is None: user = User() if not checkEmail(dataObject["email"]): raise BadRequest("The e-mail supplied was invalid.") user.setEmail(dataObject["email"]) user.setPreHash(dataObject["password"]) token = Apitoken() token.setUser(user) token.setToken(getKey()) user.setToken(token) UserMapper.insert(user) # Retrieve user with ID this time user = UserMapper.getUserByEmail(dataObject["email"]) ApitokenMapper.insert(token) return self._response(token.dict(), CODE.CREATED) else: raise RequestError(CODE.CONFLICT, "A user with that e-mail address exists already.") except mdb.DatabaseError, e: import traceback, sys traceback.print_exc(file=sys.stdout) raise ServerError("Unable to search the user database (%s)" % e.args[1])