def post(self): json_str = self.request.body data = json.loads(json_str) login_validator = Schema({ Required('email'): unicode, Required('password'): unicode, 'org': unicode }) user = User.all().filter('email_account = ', data['email']).get() if not user: return self.json_resp(500, { 'message': 'Email/password is wrong.' }) if data['org'] != '': org = Org.get_by_id(int(data['org'])) if not org.email in data['email']: return self.json_resp(500, { 'message': 'Email/password is wrong.' }) if bcrypt.hashpw(data['password'], user.password) == user.password: self.session['user'] = user.key().id() # check_for_invite(self, user) return self.json_resp(200, { 'message': 'You have logged in.', 'redirect': self.login_redirect(user) }) else: return self.json_resp(500, { 'message': 'Email/password is wrong.' })
def post(self): json_str = self.request.body data = json.loads(json_str) login_validator = Schema({ Required('email'): unicode, Required('password'): unicode, 'org': unicode }) has_org = False if data['org'] != '': org = Org.get_by_id(int(data['org'])) if not org.email in data['email']: return self.json_resp(500, { 'message': 'Your email is not apart of this organization!' }) else: has_org = True hashed = bcrypt.hashpw(data['password'], bcrypt.gensalt()) user = User() user.email_account = data['email'] user.email = data['email'] user.name = data['name'] user.password = hashed user.put() if has_org: user.circles.append(org.circle.key()) user.put() self.session['user'] = user.key().id() # check_for_invite(self, user) return self.json_resp(200, { 'message': 'Account created', 'redirect': self.login_redirect(user) })