2022-12-16 11:50:25 +00:00
|
|
|
<div>
|
2023-08-15 10:22:18 +00:00
|
|
|
<%= if Flash.get(@flash, :info) do %>
|
|
|
|
<p class="alert alert-info" role="alert"><%= Flash.get(@flash, :info) %></p>
|
2022-12-16 11:50:25 +00:00
|
|
|
<% end %>
|
2023-08-15 10:22:18 +00:00
|
|
|
<%= if Flash.get(@flash, :error) do %>
|
|
|
|
<p class="alert alert-danger" role="alert"><%= Flash.get(@flash, :error) %></p>
|
2022-12-16 11:50:25 +00:00
|
|
|
<% end %>
|
|
|
|
<div class="panel-heading">
|
|
|
|
<%= Gettext.dpgettext("static_pages", "mfa recover page title", "Two-factor recovery") %>
|
|
|
|
</div>
|
|
|
|
<div class="panel-content">
|
2023-08-15 10:22:18 +00:00
|
|
|
<%= form_for @conn, ~p"/oauth/mfa/verify", [as: "mfa"], fn f -> %>
|
2022-12-16 11:50:25 +00:00
|
|
|
<div class="input">
|
|
|
|
<%= label f, :code, Gettext.dpgettext("static_pages", "mfa recover recovery code prompt", "Recovery code") %>
|
|
|
|
<%= text_input f, :code, [autocomplete: false, autocorrect: "off", autocapitalize: "off", autofocus: true, spellcheck: false] %>
|
|
|
|
<%= hidden_input f, :mfa_token, value: @mfa_token %>
|
|
|
|
<%= hidden_input f, :state, value: @state %>
|
|
|
|
<%= hidden_input f, :redirect_uri, value: @redirect_uri %>
|
|
|
|
<%= hidden_input f, :challenge_type, value: "recovery" %>
|
|
|
|
</div>
|
2020-05-07 08:14:54 +00:00
|
|
|
|
2022-12-16 11:50:25 +00:00
|
|
|
<%= submit Gettext.dpgettext("static_pages", "mfa recover verify recovery code button", "Verify") %>
|
|
|
|
<% end %>
|
2023-08-15 10:22:18 +00:00
|
|
|
<a href="<%= ~p"/oauth/mfa?#{[challenge_type: "totp", mfa_token: @mfa_token, state: @state, redirect_uri: @redirect_uri]}" %>">
|
2022-12-16 11:50:25 +00:00
|
|
|
<%= Gettext.dpgettext("static_pages", "mfa recover use 2fa code link", "Enter a two-factor code") %>
|
|
|
|
</a>
|
2020-05-07 08:14:54 +00:00
|
|
|
|
2022-12-16 11:50:25 +00:00
|
|
|
</div>
|
2020-05-07 08:14:54 +00:00
|
|
|
</div>
|