{% block admin_login_form %} {{ oViewConf.getHiddenSid()|raw }}

{{ translate({ ident: "TOTP_INPUT" }) }}

{% if not empty(Errors.default) %} {% include "inc_error.html.twig" with {Errorlist: Errors.default} %} {% endif %} {{ oView.getBackupCodeCountMessage()|raw }}
{% set d3js %} function clickEvent(previous, next){ const digitKeys = ['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']; const deleteKeys = ['Backspace', 'Delete']; if(next && digitKeys.includes(event.key)){ document.getElementById(next).focus(); } else if(previous && deleteKeys.includes(event.key)){ document.getElementById(previous).focus(); } } document.addEventListener("paste", function(e) { if (e.target.type === "text") { var data = e.clipboardData.getData('Text'); data = data.split(''); [].forEach.call(document.querySelectorAll("#login input[type=text]"), (node, index) => { node.value = data[index]; }); } }); {% endset %} {{ script({ add: d3js.__toString(), dynamic: __oxid_include_dynamic }) }}
{{ translate({ ident: "TOTP_INPUT_HELP" }) }}

{{ style({ include: oViewConf.getModuleUrl('d3totp', 'out/admin/src/css/d3totplogin.css') }) }} {{ style() }} {% endblock %}
{{ script({ dynamic: __oxid_include_dynamic }) }}