diff --git a/Build/Sources/TypeScript/backend/Resources/Public/TypeScript/Login.ts b/Build/Sources/TypeScript/backend/Resources/Public/TypeScript/Login.ts index bb8641c1e3b8115f3e5ca4db719b2dd28d716bb3..72e60ef4274db91c5f1cd14e05b0ca93421b8a93 100644 --- a/Build/Sources/TypeScript/backend/Resources/Public/TypeScript/Login.ts +++ b/Build/Sources/TypeScript/backend/Resources/Public/TypeScript/Login.ts @@ -114,7 +114,10 @@ class BackendLogin { const referrerRefresh = '#referrer-refresh'; const referrerRefreshed = document.location.hash === referrerRefresh; const loginUrlWrapper = document.getElementById(this.options.loginUrlWrapper) as HTMLAnchorElement; - if (typeof loginUrlWrapper.dataset.referrerCheckEnabled === 'undefined' || parseInt(loginUrlWrapper.dataset.referrerCheckEnabled, 10) !== 1) { + if (loginUrlWrapper === null + || typeof loginUrlWrapper.dataset.referrerCheckEnabled === 'undefined' + || loginUrlWrapper.dataset.referrerCheckEnabled !== '1' + ) { return; } diff --git a/typo3/sysext/backend/Resources/Public/JavaScript/Login.js b/typo3/sysext/backend/Resources/Public/JavaScript/Login.js index 339a070a7ac29da142c438a81e419283f76fb706..3c48ea98521e837a6fdf5ffd13d58d888e0264a7 100644 --- a/typo3/sysext/backend/Resources/Public/JavaScript/Login.js +++ b/typo3/sysext/backend/Resources/Public/JavaScript/Login.js @@ -10,4 +10,4 @@ * * The TYPO3 project - inspiring people to share! */ -define(["require","exports","jquery","bootstrap","TYPO3/CMS/Backend/Input/Clearable"],(function(e,o,t){"use strict";return new class{constructor(){this.ready=!0,this.options={error:".t3js-login-error",errorNoCookies:".t3js-login-error-nocookies",errorNoReferrer:".t3js-login-error-noreferrer",formFields:".t3js-login-formfields",interfaceField:".t3js-login-interface-field",loginForm:"#typo3-login-form",loginUrlWrapper:"t3js-login-url",submitButton:".t3js-login-submit",submitHandler:null,useridentField:".t3js-login-userident-field"},this.checkCookieSupport(),this.checkForInterfaceCookie(),this.checkDocumentReferrerSupport(),this.initializeEvents(),top.location.href!==location.href&&(this.ready=!1,top.location.href=location.href),this.ready&&document.body.setAttribute("data-typo3-login-ready","true")}showLoginProcess(){this.showLoadingIndicator(),t(this.options.error).addClass("hidden"),t(this.options.errorNoCookies).addClass("hidden")}showLoadingIndicator(){t(this.options.submitButton).button("loading")}handleSubmit(e){this.showLoginProcess(),"function"==typeof this.options.submitHandler&&this.options.submitHandler(e)}interfaceSelectorChanged(){const e=new Date,o=new Date(e.getTime()+31536e6);document.cookie="typo3-login-interface="+t(this.options.interfaceField).val()+"; expires="+o.toUTCString()+";"}checkForInterfaceCookie(){if(t(this.options.interfaceField).length){const e=document.cookie.indexOf("typo3-login-interface=");if(-1!==e){let o=document.cookie.substr(e+22);o=o.substr(0,o.indexOf(";")),t(this.options.interfaceField).val(o)}}}checkDocumentReferrerSupport(){const e="#referrer-refresh"===document.location.hash,o=document.getElementById(this.options.loginUrlWrapper);void 0!==o.dataset.referrerCheckEnabled&&1===parseInt(o.dataset.referrerCheckEnabled,10)&&("string"!=typeof document.referrer||""===document.referrer?e?document.querySelectorAll(this.options.errorNoReferrer).forEach(e=>e.classList.remove("hidden")):(this.ready=!1,o.href+="#referrer-refresh",o.click()):e&&(this.ready=!1,document.location.href=document.location.href.replace(/#[^#]*$/,"")))}showCookieWarning(){t(this.options.formFields).addClass("hidden"),t(this.options.errorNoCookies).removeClass("hidden")}hideCookieWarning(){t(this.options.formFields).removeClass("hidden"),t(this.options.errorNoCookies).addClass("hidden")}checkCookieSupport(){const e=navigator.cookieEnabled;!1===e?this.showCookieWarning():document.cookie||null!==e||(document.cookie="typo3-login-cookiecheck=1",document.cookie?document.cookie="typo3-login-cookiecheck=; expires="+new Date(0).toUTCString():this.showCookieWarning())}initializeEvents(){t(document).ajaxStart(this.showLoadingIndicator.bind(this)),t(this.options.loginForm).on("submit",this.handleSubmit.bind(this)),t(this.options.interfaceField).length>0&&t(document).on("change blur",this.options.interfaceField,this.interfaceSelectorChanged.bind(this)),document.querySelectorAll(".t3js-clearable").forEach(e=>e.clearable()),t(".t3js-login-news-carousel").on("slide.bs.carousel",e=>{const o=t(e.relatedTarget).height();t(e.target).find("div.active").parent().animate({height:o},500)})}}})); \ No newline at end of file +define(["require","exports","jquery","bootstrap","TYPO3/CMS/Backend/Input/Clearable"],(function(e,o,t){"use strict";return new class{constructor(){this.ready=!0,this.options={error:".t3js-login-error",errorNoCookies:".t3js-login-error-nocookies",errorNoReferrer:".t3js-login-error-noreferrer",formFields:".t3js-login-formfields",interfaceField:".t3js-login-interface-field",loginForm:"#typo3-login-form",loginUrlWrapper:"t3js-login-url",submitButton:".t3js-login-submit",submitHandler:null,useridentField:".t3js-login-userident-field"},this.checkCookieSupport(),this.checkForInterfaceCookie(),this.checkDocumentReferrerSupport(),this.initializeEvents(),top.location.href!==location.href&&(this.ready=!1,top.location.href=location.href),this.ready&&document.body.setAttribute("data-typo3-login-ready","true")}showLoginProcess(){this.showLoadingIndicator(),t(this.options.error).addClass("hidden"),t(this.options.errorNoCookies).addClass("hidden")}showLoadingIndicator(){t(this.options.submitButton).button("loading")}handleSubmit(e){this.showLoginProcess(),"function"==typeof this.options.submitHandler&&this.options.submitHandler(e)}interfaceSelectorChanged(){const e=new Date,o=new Date(e.getTime()+31536e6);document.cookie="typo3-login-interface="+t(this.options.interfaceField).val()+"; expires="+o.toUTCString()+";"}checkForInterfaceCookie(){if(t(this.options.interfaceField).length){const e=document.cookie.indexOf("typo3-login-interface=");if(-1!==e){let o=document.cookie.substr(e+22);o=o.substr(0,o.indexOf(";")),t(this.options.interfaceField).val(o)}}}checkDocumentReferrerSupport(){const e="#referrer-refresh"===document.location.hash,o=document.getElementById(this.options.loginUrlWrapper);null!==o&&void 0!==o.dataset.referrerCheckEnabled&&"1"===o.dataset.referrerCheckEnabled&&("string"!=typeof document.referrer||""===document.referrer?e?document.querySelectorAll(this.options.errorNoReferrer).forEach(e=>e.classList.remove("hidden")):(this.ready=!1,o.href+="#referrer-refresh",o.click()):e&&(this.ready=!1,document.location.href=document.location.href.replace(/#[^#]*$/,"")))}showCookieWarning(){t(this.options.formFields).addClass("hidden"),t(this.options.errorNoCookies).removeClass("hidden")}hideCookieWarning(){t(this.options.formFields).removeClass("hidden"),t(this.options.errorNoCookies).addClass("hidden")}checkCookieSupport(){const e=navigator.cookieEnabled;!1===e?this.showCookieWarning():document.cookie||null!==e||(document.cookie="typo3-login-cookiecheck=1",document.cookie?document.cookie="typo3-login-cookiecheck=; expires="+new Date(0).toUTCString():this.showCookieWarning())}initializeEvents(){t(document).ajaxStart(this.showLoadingIndicator.bind(this)),t(this.options.loginForm).on("submit",this.handleSubmit.bind(this)),t(this.options.interfaceField).length>0&&t(document).on("change blur",this.options.interfaceField,this.interfaceSelectorChanged.bind(this)),document.querySelectorAll(".t3js-clearable").forEach(e=>e.clearable()),t(".t3js-login-news-carousel").on("slide.bs.carousel",e=>{const o=t(e.relatedTarget).height();t(e.target).find("div.active").parent().animate({height:o},500)})}}})); \ No newline at end of file