PageSourceSearch

https://cdn0070.qrcodechimp.com/view/common/js/mfa.js?v=1789022947a_k6

js qrcodechimp.com collected 2026-09-24 08:43:11 UTC 17,045 bytes, 151 lines download raw bytes

1const MFA={enabled:!1,_ssoType:"",_token:"",showEnable2FAPopup:()=>{Swal.fire({html:`
2            <div class="modal-header text-center">
3                <h5 class="modal-title">Two-factor Authentication</h5>
4                
5            </div>
6            <div class="p-4">
7                <img src="https://neurotags.s3.amazonaws.com/client/PROD/fm/5dc2a913fcfabf534365a492/two-factor-authentication.png" class="mb-3" />
8                    <div style="display: flex;  border: solid 1px var(--light-color); gap:40px;border-radius: 8px;"
9                        class="p-3">
10                        <div class="text-left pr-5">
11                            To enable app-based 2FA using an authentication app like <a
12                                href="https://play.google.com/store/apps/details?id=com.google.android.apps.authenticator2&hl=en&gl=US"
13                                target="_bank">Google Authenticator</a> or
14                            <a href="https://authy.com/download/" target="_blank">Auty</a>, click enable
15                            and
16                            scan the QR code with the app on your phone
17                        </div>
18                        <div style="position: relative;">
19                            <label class="mfa_switch switch" style="position:absolute; right:0;">
20                                <input type="checkbox" name="enable_two_factor" id="enable_two_factor" >
21                                <span class="slider round"></span>
22                            </label>
23                        </div>
24                    </div>
25                </div>`,showConfirmButton:!1,showCloseButton:!0,customClass:{popup:"swal_popup_with_no_padding",content:"swal_popup_with_no_padding",close:"swal_popup_close"},allowOutsideClick:!1,onOpen:()=>{$(".mfa_switch input").change(e=>{e.target.checked&&MFA.getActivationLink()})}})},getActivationLink:(email="",passwd="",token="")=>{let data={cmd:"getActivationURL",auth_token_str:token};isLandingPage()&&(data.qr_img_required=!0),$.post("//"+__api_domain+"/user/services/mfa",data,function(response){extractDataFromArray(response,["data"],"")!=""?isLandingPage()?MFA.showConfirm2FAPopupWithQR(extractDataFromArray(response,["data","url"],""),email,passwd,token,extractDataFromArray(response,["data","qr_img"],"")):MFA.showConfirm2FAPopup(extractDataFromArray(response,["data","url"],""),email,passwd,token):showAlertMessage("E",extractDataFromArray(response,["errorMsg"],"Error Occured"))})},showConfirm2FAPopup:(link,email,passwd,token)=>{const previosQR={..._qrOptions};reset_qrOptions(),resetSVGDefs(""),_qrOptions={QR_OPTS:{padding:1,width:512,height:512,color:"#333333",background:"#ffffff00",paddingColor:"rgba(255, 255, 255, 0.625)",mergeRowData:!0,mergeColData:!0,fillWhiteSpace:!1,backgroundRounded:!1,backgroundRoundedRadius:.12,qrShape:{shapeId:"none"},filter3d:!1,content:link},SVG_OPTS:{container:"svg",data:{l:"#square",lr:"#square",lt:"#square",ltr:"#square",ltrb:"#square",s:"#square",z:"#square",scale:.79,strokeWidth:0,fill:"#333333",stroke:"#fffdd090"},finderPatternOuterbox:"https://cdn0030.qrcodechimp.com/sysconf/eye-11.svg",finderPatternInnerbox:"https://cdn0030.qrcodechimp.com/sysconf/2089-Square.svg",finderPatternTransform:"flip",alignmentPatternOuterbox:"https://cdn0030.qrcodechimp.com/sysconf/eye-11.svg",alignmentPatternInnerbox:"https://cdn0030.qrcodechimp.com/sysconf/2089-Square.svg",timingPattern:"#square",logoImg:"",logoSize:4,logoBgImg:"",logoBgSize:5,scale:1,fill:"#333333",strokeWidth:0,stroke:"#ffcccc"}},resetQROptions(),Swal.fire({html:`
26            <div class="modal-header text-center">
27                <h5 class="modal-title">Two-factor Authentication</h5>
28                
29            </div>
30            <div class="p-4" id="mfa_setup_box">
31                🔐🔢
32                <h6>Set up two-factor authentication</h6>
33                <p>
34                    To be able to login you need to scan this QR code with any Authentication app
35                    and enter verification code below
36                </p>
37                <div class="mb-4"
38                    style="border: solid 1px var(--light-color); max-width: 200px; padding: 20px; border-radius: 8px;     margin: auto;">
39                    <img src="https://neurotags.s3.amazonaws.com/client/PROD/fm/5dc2a913fcfabf534365a492/qrcode-app.png"
40                        class="img-fluid" id="mfa_qr"/>
41                </div>
42                <form>
43                    <div class="form-group">
44                        <label class="mb-2">Enter the 6-digit authentication code
45                            generated by your app:</label>
46                        <input type="text" pattern="d*" class="form-control m-auto" id="mfa_otp"
47                            placeholder="- - - - - -"
48                            maxlength="6"
49                            style="max-width: 160px; letter-spacing: 10px; text-align: left;">
50                            <div class="m-auto text-danger font-12 pt-1 d-none" id="invalid-otp-msg">Invalid OTP</div>
51                    </div>
52                </form>
53            </div>`,showConfirmButton:!1,allowOutsideClick:!1,showCloseButton:!0,allowEnterKey:!0,customClass:{popup:"swal_popup_with_no_padding",content:"swal_popup_with_no_padding",close:"swal_popup_close"},onOpen:()=>{createQRCode(["#mfa_qr"],()=>{},0,1),setTimeout(function(){$("#mfa_otp").focus()},500),$("#mfa_otp").on("input",e=>{e.preventDefault(),e.stopPropagation(),$("#mfa_otp").removeClass("invalid-otp"),$("#invali
53d-otp-msg").addClass("d-none");let otp=e.target.value.toString().replace(/[^0-9]/g,"");$("#mfa_otp").val(otp),otp.length==6&&MFA.verifyOTP(otp,token)})},onClose:()=>{reset_qrOptions(),resetSVGDefs(""),_qrOptions=previosQR,resetQROptions(),$("#enable_two_factor_main").length>0&&MFA.enabled===!1&&$("#enable_two_factor_main").prop("checked",!1),MFA.enabled=!1}})},showVerify2FAPopup:(email="",passwd="")=>{Swal.fire({html:`
54            <div class="modal-header text-center">
55                <h5 class="modal-title">Two-factor Authentication</h5>
56                
57            </div>
58            <div class="p-4" id="mfa_verify_box">
59                <form>
60                    <input type="hidden" id="mfa_email" name="email" value="`+email+`" >
61                    <input type="hidden" id="mfa_passwd" name="passwd" value="`+passwd+`" >
62                    <div class="form-group">
63                        <label class="mb-2">Open the two-factor authentication app on your device and enter the 6 digit code below to verify</label>
64                        <input type="text" pattern="d*[\r
65]*" class="form-control m-auto" id="mfa_otp" placeholder="- - - - - -" maxlength="6" style="max-width: 160px;letter-spacing: 10px; text-align: left;">
66                        <div class="m-auto text-danger font-12 pt-1 d-none" id="invalid-otp-msg">Invalid OTP</div>
67                    </div>
68                </form>
69                <div class="d-flex justify-content-between">
70                    <button class="btn btn-secondary" type="button" id="btn_verify_close">Cancel</button>
71                    <button class="btn btn-primary" type="button" id="btn_verify">Verify</button>
72                </div>
73            </div>`,showConfirmButton:!1,allowEnterKey:!0,allowOutsideClick:!1,showCloseButton:!0,customClass:{popup:"swal_popup_with_no_padding",content:"swal_popup_with_no_padding",close:"swal_popup_close"},onOpen:()=>{setTimeout(function(){$("#mfa_otp").focus()},500),$("#btn_verify_close").on("click",e=>{Swal.close()}),$("#btn_verify").on("click",e=>{$("#mfa_otp").removeClass("invalid-otp"),$("#invalid-otp-msg").addClass("d-none");let otp=$("#mfa_otp").val();otp.length==6&&(empty(MFA._ssoType)?MFA.signInWithOTP($("#mfa_verify_box input[name=email]").val(),$("#mfa_verify_box input[name=passwd]").val(),otp):MFA.signInSSOWithOTP(otp))}),$("#mfa_otp").on("input",e=>{e.preventDefault(),e.stopPropagation(),$("#mfa_otp").removeClass("invalid-otp"),$("#invalid-otp-msg").addClass("d-none");let otp=e.target.value.toString().replace(/[^0-9]/g,"");$("#mfa_otp").val(otp),otp.length==6&&(empty(MFA._ssoType)?MFA.signInWithOTP($("#mfa_verify_box input[name=email]").val(),$("#mfa_verify_box input[name=passwd]").val(),otp):MFA.signInSSOWithOTP(otp))})}})},verifyOTP:(totp,token)=>{$.post("//"+__api_domain+"/user/services/mfa",{cmd:"verifyTOTP",totp,auth_token_str:token},function(response){empty(extractDataFromArray(response,["data"],""))?($("#mfa_otp").addClass("invalid-otp"),$("#invalid-otp-msg").removeClass("d-none"),isLandingPage()&&$("#invalid-otp-msg").removeClass("ui-hidden")):(empty(token)||signInCallback({cmd:"signIn"},response),MFA.enabled=!0,MFA.showActivated2FAPopup())})},signInWithOTP:(email,passwd,totp)=>{let data={cmd:"signIn",email,pass:passwd,totp};isLandingPage()&&(data.getAuthToken=!0),$.post("//"+__api_domain+"/user/services/openapi",data,function(response){extractDataFromArray(response,["data","login_error_code"],"")!="TOTP_INVALID"?(signInCallback(data,response),Swal.close()):($("#mfa_otp").addClass("invalid-otp"),$("#invalid-otp-msg").removeClass("d-none"),isLandingPage()&&$("#invalid-otp-msg").removeClass("ui-hidden"))})},signInSSOWithOTP:totp=>{let data={cmd:MFA._ssoType=="google"?"verifyGoogleToken":"verifyMSToken",token:MFA._token,sub_account:page=="subAccountSso"?1:0,account_id:extractDataFromArray(location.pathname.split("/"),[1],""),totp};$.post("//"+__api_domain+"/user/services/openapi",data,function(response){extractDataFromArray(response,["data","login_error_code"],"")!="TOTP_INVALID"?(signInCallback(data,response),Swal.close()):($("#mfa_otp").addClass("invalid-otp"),$("#invali
73d-otp-msg").removeClass("d-none"))})},disable2FA:()=>{$.post("//"+__api_domain+"/user/services/mfa",{cmd:"disable2FA"},function(response){SwalPopup.showSingleButtonPopup({title:"Two-factor Authentication",text:"Successfully Disabled",icon:"success",confirmButtonText:"Close"})})},disable2FASubaccounts:()=>{$.post("//"+__api_domain+"/user/services/mfa",{cmd:"disable2FASubaccounts"},function(response){SwalPopup.showSingleButtonPopup({title:"Two-factor Authentication",text:"Successfully Disabled",icon:"success",confirmButtonText:"Close"})})},enable2FASubaccounts:()=>{$.post("//"+__api_domain+"/user/services/mfa",{cmd:"enable2FASubaccounts"},function(response){SwalPopup.showSingleButtonPopup({title:"Two-factor Authentication",text:"Successfully Enabled",icon:"success",confirmButtonText:"Close"})})},showDisable2FAPopup:()=>{showDeleteConfirmation("Disable Two-factor Authentication","Are you sure to disable Two-factor Authentication?","Disable",()=>{MFA.disable2FA()},()=>{$("#enable_two_factor_main").prop("checked",!0)})},showActivated2FAPopup:()=>{SwalPopup.showSingleButtonPopup({title:"Two-factor Authentication",text:"Successfully Activated",icon:"success",confirmButtonText:"Close"})},showEnable2FAforSubAccounts:()=>{Swal.fire({title:"Enable Two-factor Authentication",text:"Are you sure to enable Two-factor Authentication for sub-accounts?",showCancelButton:!0,reverseButtons:!0,confirmButtonClass:"btn btn-primary mr-auto",cancelButtonColor:"#d33",confirmButtonText:"Enable",allowEnterKey:!1}).then(result=>{console.log(result),result.isConfirmed?MFA.enable2FASubaccounts():result.isDismissed&&$("#enable_two_factor_sub").prop("checked",!1)})},showDisable2FASubAccountPopup:()=>{showDeleteConfirmation("Disable Two-factor Authentication","Are you sure to disable Two-factor Authentication for sub-accounts?","Disable",()=>{MFA.disable2FASubaccounts()},()=>{$("#enable_two_factor_sub").prop("checked",!0)})},setProfilePageListeners:()=>{$("#enable_two_factor_main").on("change",e=>{e.target.checked?MFA.getActivationLink():MFA.showDisable2FAPopup()}),$("#enable_two_factor_sub").on("change",e=>{e.target.checked?MFA.showEnable2FAforSubAccounts():MFA.showDisable2FASubAccountPopup()})},showNewVerify2FAPopup:(email="",passwd="")=>{Swal.fire({html:`
74            <div class="ui-modal-header ui-text-center">
75                <h5 class="ui-modal-title">Two-factor Authentication</h5>
76            </div>
77
78            <div class="ui-padding-4" id="mfa_verify_box">
79                <form>
80                    <input type="hidden" id="mfa_email" name="email" value="${email}">
81                    <input type="hidden" id="mfa_passwd" name="passwd" value="${passwd}">
82
83                    <div class="ui-form-group">
84                        <label class="ui-label ui-mb-2">
85                            Open the two-factor authentication app on your device and enter the 6 digit code below to verify
86                        </label>
87
88                        <input
89                            type="text"
90                            pattern="\\d*"
91                            class="ui-input ui-input-center"
92                            id="mfa_otp"
93                            placeholder="- - - - - -"
94                            maxlength="6"
95                            style="max-width:160px; letter-spacing:10px; text-align:left;"
96                        >
97
98                        <div class="ui-text-danger ui-font-12 ui-pt-1 ui-hidden" id="invalid-otp-msg">
99                            Invalid OTP
100                        </div>
101                    </div>
102                </form>
103
104                <div class="ui-flex ui-justify-between">
105                    <button class="ui-btn ui-btn-secondary" type="button" id="btn_verify_close">
106                        Cancel
107                    </button>
108                    <button class="ui-btn ui-btn-primary" type="button" id="btn_verify">
109                        Verify
110                    </button>
111                </div>
112            </div>`,showConfirmButton:!1,allowEnterKey:!0,allowOutsideClick:!1,showCloseButton:!0,customClass:{popup:"swal_popup_with_no_padding",content:"swal_popup_with_no_padding",close:"swal_popup_close"},onOpen:()=>{setTimeout(function(){$("#mfa_otp").focus()},500),$("#btn_verify_close").on("click",e=>{Swal.close()}),$("#btn_verify").on("click",e=>
112{$("#mfa_otp").removeClass("invalid-otp"),$("#invalid-otp-msg").addClass("ui-hidden");let otp=$("#mfa_otp").val();otp.length==6&&(empty(MFA._ssoType)?MFA.signInWithOTP($("#mfa_verify_box input[name=email]").val(),$("#mfa_verify_box input[name=passwd]").val(),otp):MFA.signInSSOWithOTP(otp))}),$("#mfa_otp").on("input",e=>{e.preventDefault(),e.stopPropagation(),$("#mfa_otp").removeClass("invalid-otp"),$("#invalid-otp-msg").addClass("ui-hidden");let otp=e.target.value.toString().replace(/[^0-9]/g,"");$("#mfa_otp").val(otp),otp.length==6&&(empty(MFA._ssoType)?MFA.signInWithOTP($("#mfa_verify_box input[name=email]").val(),$("#mfa_verify_box input[name=passwd]").val(),otp):MFA.signInSSOWithOTP(otp))})}})},showConfirm2FAPopupWithQR:(link,email,passwd,token,qrImg="")=>{Swal.fire({html:`
113            <div class="ui-modal-header ui-text-center">
114                <h5 class="ui-modal-title">Two-factor Authentication</h5>
115            </div>
116
117            <div class="ui-padding-4" id="mfa_setup_box">
118                🔐🔢
119                <h6 class="ui-mb-2">Set up two-factor authentication</h6>
120
121                <p class="ui-text-muted">
122                    To be able to login you need to scan this QR code with any Authentication app
123                    and enter verification code below
124                </p>
125
126                <div class="ui-qr-wrapper">
127                    <img src="${qrImg}" class="ui-img-fluid" id="mfa_qr" />
128                </div>
129
130                <form>
131                    <div class="ui-form-group">
132                        <label class="ui-label ui-mb-2">
133                            Enter the 6-digit authentication code generated by your app:
134                        </label>
135
136                        <input
137                            type="text"
138                            pattern="\\d*"
139                            class="ui-input ui-input-center"
140                            id="mfa_otp"
141                            placeholder="- - - - - -"
142                            maxlength="6"
143                            style="max-width:160px; letter-spacing:10px; text-align:left;"
144                        />
145
146                        <div class="ui-text-danger ui-font-12 ui-pt-1 ui-hidden" id="invalid-otp-msg">
147                            Invalid OTP
148                        </div>
149                    </div>
150                </form>
151            </div>`,showConfirmButton:!1,allowOutsideClick:!1,showCloseButton:!0,allowEnterKey:!0,customClass:{popup:"swal_popup_with_no_padding",content:"swal_popup_with_no_padding",close:"swal_popup_close"},onOpen:()=>{setTimeout(function(){$("#mfa_otp").focus()},500),$("#mfa_otp").on("input",e=>{e.preventDefault(),e.stopPropagation(),$("#mfa_otp").removeClass("invalid-otp"),$("#invalid-otp-msg").addClass("ui-hidden");let otp=e.target.value.toString().replace(/[^0-9]/g,"");$("#mfa_otp").val(otp),otp.length==6&&MFA.verifyOTP(otp,token)})},onClose:()=>{$("#enable_two_factor_main").length>0&&MFA.enabled===!1&&$("#enable_two_factor_main").prop("checked",!1),MFA.enabled=!1}})}};

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.