Download this file
| 1 | {{define "title"}}Confirm it is you · Oficina{{end}} |
| 2 | {{define "bodyattrs"}} data-rpid="{{.Data.RPID}}" data-legacyrpid="{{.Data.LegacyRPID}}"{{end}} |
| 3 | {{define "content"}} |
| 4 | <h1>Confirm it is you</h1> |
| 5 | |
| 6 | {{if .Data.RecoveryFailed}}<p role="alert" rst-callout rst-tone="negative"><span rst-callout-body>That code did not work.</span></p>{{end}} |
| 7 | |
| 8 | <button id="passkey-confirm" type="button" rst-btn="primary" data-passkey hidden>Use your passkey</button> |
| 9 | <p id="passkey-status" role="status"></p> |
| 10 | |
| 11 | <h2>Or use a recovery code</h2> |
| 12 | <p>Recovery is exactly the moment a passkey is not working, so this form |
| 13 | needs no script and no device.</p> |
| 14 | <form method="post" action="/passkey/signin/recovery" rst-form> |
| 15 | <div rst-field> |
| 16 | <label rst-field-label for="code">Recovery code</label> |
| 17 | <input id="code" name="code" type="text" autocomplete="one-time-code" required rst-input> |
| 18 | </div> |
| 19 | <div rst-form-foot> |
| 20 | <button type="submit" rst-btn="primary">Sign in</button> |
| 21 | </div> |
| 22 | </form> |
| 23 | {{end}} |
| 24 | {{define "scripts"}}<script type="module" src="/static/passkey.js"></script>{{end}} |
| 25 | |