def data_type_format(self, value): """ Use the data_type to cast the value appropriately. """ try: if self.data_type in ["i", "m"]: return int(value) if self.data_type == ["f", "p"]: return float(value) if self.data_type == "dt": return DateTimeParser().parse(value) if self.data_type == "du": label, amount = value.split("\t", 1) return {"label": label, "amount": float(amount)} except ValueError: pass return value
_create_user_attrs = ('username', 'password', 'password_must_change', 'display_name', 'first_name', 'middle_name', 'last_name', \ 'email', 'is_locked', 'sign_up_status', 'is_rate_limit_active', 'rate_limit_def', 'is_totp_enabled', 'totp_label', 'totp_key') _date_time_attrs = ('approv_rej_time', 'locked_time', 'password_expiry', 'password_last_set', 'sign_up_time', 'approval_status_mod_time') # ################################################################################################################################ # A marker that indicates a value that will never exist _invalid = '_invalid.{}'.format(uuid4().hex) # ################################################################################################################################ dt_parser = DateTimeParser() # ################################################################################################################################ # ################################################################################################################################ class Login(BaseService): """ Logs an SSO user in. """ class SimpleIO(BaseSIO): input_required = ('username', 'password', 'current_app') input_optional = ('totp_code', 'new_password', 'remote_addr', 'user_agent') output_required = ('status', ) output_optional = BaseSIO.output_optional + ('ust', )