Esempio n. 1
0
def update_user_token_note(user_token: model.UserToken, note: str) -> None:
    assert user_token
    note = note.strip() if note is not None else ''
    note = None if len(note) == 0 else note
    if util.value_exceeds_column_size(note, model.UserToken.note):
        raise InvalidNoteError('Note is too long.')
    user_token.note = note
    update_user_token_edit_time(user_token)
Esempio n. 2
0
def update_user_token_expiration_time(user_token: model.UserToken,
                                      expiration_time_str: str) -> None:
    assert user_token
    try:
        expiration_time = rfc3339_parser.parse(expiration_time_str, utc=True)
        expiration_time = expiration_time.astimezone(pytz.UTC)
        if expiration_time < datetime.utcnow().replace(tzinfo=pytz.UTC):
            raise InvalidExpirationError(
                'Expiration cannot happen in the past')
        user_token.expiration_time = expiration_time
        update_user_token_edit_time(user_token)
    except ValueError:
        raise InvalidExpirationError(
            'Expiration is in an invalid format {}'.format(
                expiration_time_str))
Esempio n. 3
0
def update_user_token_enabled(user_token: model.UserToken,
                              enabled: bool) -> None:
    assert user_token
    user_token.enabled = enabled
    update_user_token_edit_time(user_token)
Esempio n. 4
0
def bump_usage_time(user_token: model.UserToken) -> None:
    assert user_token
    user_token.last_usage_time = datetime.utcnow()
Esempio n. 5
0
def update_user_token_edit_time(user_token: model.UserToken) -> None:
    assert user_token
    user_token.last_edit_time = datetime.utcnow()