[ Index ]

PHP Cross Reference of Joomla 4.2.2 documentation

title

Body

[close]

/media/plg_multifactorauth_webauthn/js/ -> webauthn-es5.min.js (source)

   1  !function(){"use strict";!function(e,t){var n=null,r=function(e){return btoa(String.fromCharCode.apply(String,e))},a=function(e){var t=e.replace(/-/g,"+").replace(/_/g,"/"),n=t.length%4;if(n){if(1===n)throw new Error("InvalidLengthError: Input base64url string is the wrong length to determine padding");t+=new Array(5-n).join("=")}return t},i=function(t){try{e.renderMessages({error:t})}catch(e){alert(t)}},o=function(e){try{t.getElementById("plg_multifactorauth_webauthn_validate_button").style.disabled="null"}catch(e){}i(e)},l=function(n){if(n.preventDefault(),!("credentials"in navigator))return i(e.Text._("PLG_MULTIFACTORAUTH_WEBAUTHN_ERR_NOTAVAILABLE_HEAD")),!1;var l=t.forms["com-users-method-edit"].querySelectorAll('input[name="pkRequest"]')[0].value,s=JSON.parse(atob(l));return s.challenge=Uint8Array.from(window.atob(a(s.challenge)),(function(e){return e.charCodeAt(0)})),s.user.id=Uint8Array.from(window.atob(s.user.id),(function(e){return e.charCodeAt(0)})),s.excludeCredentials&&(s.excludeCredentials=s.excludeCredentials.map((function(e){return e.id=Uint8Array.from(window.atob(a(e.id)),(function(e){return e.charCodeAt(0)})),e}))),navigator.credentials.create({publicKey:s}).then((function(e){var n={id:e.id,type:e.type,rawId:r(new Uint8Array(e.rawId)),response:{clientDataJSON:r(new Uint8Array(e.response.clientDataJSON)),attestationObject:r(new Uint8Array(e.response.attestationObject))}};t.getElementById("com-users-method-code").value=btoa(JSON.stringify(n)),t.forms["com-users-method-edit"].submit()}),(function(e){o(e)})),!1},s=function(l){return l.preventDefault(),n=JSON.parse(window.atob(e.getOptions("com_users.authData"))),t.getElementById("users-mfa-captive-button-submit").style.disabled="disabled",function(){if("credentials"in navigator){var l=n;l.challenge?(l.challenge=Uint8Array.from(window.atob(a(l.challenge)),(function(e){return e.charCodeAt(0)})),l.allowCredentials&&(l.allowCredentials=l.allowCredentials.map((function(e){return e.id=Uint8Array.from(window.atob(a(e.id)),(function(e){return e.charCodeAt(0)})),e}))),navigator.credentials.get({publicKey:l}).then((function(e){var n={id:e.id,type:e.type,rawId:r(new Uint8Array(e.rawId)),response:{authenticatorData:r(new Uint8Array(e.response.authenticatorData)),clientDataJSON:r(new Uint8Array(e.response.clientDataJSON)),signature:r(new Uint8Array(e.response.signature)),userHandle:e.response.userHandle?r(new Uint8Array(e.response.userHandle)):null}};t.getElementById("users-mfa-code").value=btoa(JSON.stringify(n)),t.getElementById("users-mfa-captive-form").submit()}),(function(e){o(e)}))):o(e.Text._("PLG_MULTIFACTORAUTH_WEBAUTHN_ERR_NO_STORED_CREDENTIAL"))}else i(e.Text._("PLG_MULTIFACTORAUTH_WEBAUTHN_ERR_NOTAVAILABLE_HEAD"))}(),!1};t.getElementById("multifactorauth-webauthn-missing").style.display="none",void 0===navigator.credentials&&(t.getElementById("multifactorauth-webauthn-missing").style.display="block",t.getElementById("multifactorauth-webauthn-controls").style.display="none"),window.addEventListener("DOMContentLoaded",(function(){"validate"===e.getOptions("com_users.pagetype")?t.getElementById("users-mfa-captive-button-submit").addEventListener("click",s):t.querySelectorAll(".multifactorauth_webauthn_setup").forEach((function(e){e.addEventListener("click",l)}))}))}(Joomla,document)}();


Generated: Wed Sep 7 05:41:13 2022 Chilli.vc Blog - For Webmaster,Blog-Writer,System Admin and Domainer