${_('Authentication Tokens')}

${_('Available roles')}:

    % for role in h.UserApiKeys.ROLES:
  • ${h.UserApiKeys._get_role_name(role)} ${h.UserApiKeys._get_role_description(role) |n}
  • % endfor

%if c.user_auth_tokens: %for auth_token in c.user_auth_tokens: %endfor %else: %endif
${_('Token')} ${_('Description')} ${_('Role')} ${_('Repository Scope')} ${_('Expiration')} ${_('Action')}
${auth_token.token_obfuscated}
${auth_token.description} ${auth_token.role_humanized} ${auth_token.scope_humanized} %if auth_token.expires == -1: ${_('never')} %else: %if auth_token.expired: ${h.age_component(h.time_to_utcdatetime(auth_token.expires))} %else: ${h.age_component(h.time_to_utcdatetime(auth_token.expires))} %endif %endif ${h.secure_form(h.route_path('my_account_auth_tokens_delete'), request=request)} ${h.end_form()}
${_('No additional auth tokens specified')}
${h.secure_form(h.route_path('my_account_auth_tokens_add'), request=request)}
${h.text('description', class_='medium', placeholder=_('Description'))} ${h.hidden('lifetime')} ${h.select('role', request.GET.get('token_role', ''), c.role_options)} % if c.allow_scoped_tokens: ${h.hidden('scope_repo_id')} % else: ${h.select('scope_repo_id_disabled', '', ['Scopes available in EE edition'], disabled='disabled')} % endif

${_('Repository scope works only with tokens with VCS type.')}

${h.submit('save',_('Add'),class_="btn")} ${h.reset('reset',_('Reset'),class_="btn")}
${h.end_form()}