Example #1
0
    def on_confirm_password(self):
        self.set_echo(True)
        if not validate_password(self.model.tokens,
                                 self.model.account.password):
            self.append_line("Passwords don't match.")
            return self.get_new_user_password

        return self.choose_ansi
Example #2
0
    def on_get_new_user_password(self):
        self.set_echo(True)
        password = validate_password(self.model.tokens)
        if not password:
            self.append_line("Illegal password.")
            return self.get_new_user_password

        self.model.account.password = password
        return self.confirm_password
Example #3
0
    def on_confirm_new_password(self):
        if not validate_password(self.model.tokens,
                                 self.model.account.new_password):
            self.set_echo(True)
            self.append_line("Passwords don't match.")
            return self.show_account_menu

        self.set_echo(True)
        self.model.account.password = self.model.account.new_password
        self.model.account.new_password = None
        self.model.account.save_to_db()
        self.model.account.update_redis()

        self.append_line("Password changed...")
        return self.show_account_menu
Example #4
0
    def on_get_password(self):
        self.set_echo(True)
        if not self.model.tokens:
            return self.disconnect

        if not validate_password(self.model.tokens,
                                 self.model.account.password):
            self.append_line("Wrong password.")
            logger.warning(
                AccountLogMessage(self.model.account,
                                  "Bad password from %s" %
                                  self.model.account.email,
                                  _global=True))
            return self.disconnect

        logger.info(
            AccountLogMessage(
                self.model.account,
                "%s has connected from %s (%s)" %
                (self.model.account.email, self.model.account.ip_address,
                 self.model.account.get_hostname()),
                _global=True))

        return self.show_account_menu