def log_in(self, user, password, api_key=None): old_api_key = self.api_key() if api_key: # TODO: Sanitize? self.client.auth = auth.APIKey(api_key) else: # Do login. Propogate captured errors to caller # TODO: swap with new auth endpoint? # auth/v1/experimental/public/users/authenticate try: res = self.client.login(user, password) except (APIException, InvalidIdentity) as exc: raise LoginException from exc if 'user_id' in res: self.p_user = res self.client.auth = auth.APIKey(self.p_user['api_key']) # self.update_user_quota() else: raise LoginException() if old_api_key != self.api_key(): self.loginChanged.emit(self.has_api_key())
def log_out(self): old_api_key = self.api_key() # Do log out self.client.auth = auth.APIKey(API_KEY_DEFAULT) self.p_user = None if old_api_key != self.api_key(): self.loginChanged.emit(self.has_api_key())
def log_in(self, user, password, api_key=None): old_api_key = self.api_key() if api_key: self.auth = auth.APIKey(api_key) else: try: res = self.login(user, password) except (APIException, InvalidIdentity) as exc: raise LoginException from exc if "user_id" in res: self.p_user = res self.auth = auth.APIKey(self.p_user["api_key"]) self.update_user_quota() else: raise LoginException() if old_api_key != self.api_key(): self.loginChanged.emit(self.has_api_key())
def set_api_key(self, api_key): self.client.auth = auth.APIKey(api_key)