Verify activate and login user with sms and email code

This commit is contained in:
Adam Shimali
2016-01-20 15:13:15 +00:00
parent 5924500f3e
commit ca3d3240a6
19 changed files with 269 additions and 134 deletions

View File

@@ -24,6 +24,17 @@ class UserApiClient(BaseAPIClient):
user_data = self.post("/user", data)
return User(user_data['data'], max_failed_login_count=self.user_max_failed_login_count)
def get_user(self, id):
url = "{}/user/{}".format(self.base_url, id)
user_data = self.get(url)
return User(user_data['data'], max_failed_login_count=self.user_max_failed_login_count)
def update_user(self, user):
data = user.serialize()
url = "{}/user/{}".format(self.base_url, user.id)
user_data = self.put(url, data=data)
return User(user_data['data'], max_failed_login_count=self.user_max_failed_login_count)
class User(object):
@@ -51,24 +62,28 @@ class User(object):
def password_changed_at(self):
return self.fields.get('password_changed_at')
@property
def get_id(self):
return self.id
def is_authenticated(self):
return self.fields.get('is_authenticated')
return True
@property
def is_active(self):
if self.fields.get('state') != 'active':
return False
else:
return True
return self.state == 'active'
@property
def state(self):
return self.fields['state']
@state.setter
def state(self, state):
self.fields['state'] = state
def is_anonymous(self):
return False
@property
def is_locked(self):
if self.fields.get('failed_login_count') < self.max_failed_login_count:
return False
else:
return True
return self.fields.get('failed_login_count') > self.max_failed_login_count
def serialize(self):
return self.fields