@@ -160,23 +160,35 @@ function addStepToTourButton(tour, stepObj, buttons) {
160160 if ( target . tagName . toLowerCase ( ) === 'iframe' ) {
161161 // Give blur to the content of the iframe, as iframes don't have blur events
162162 target . contentWindow . document . body . addEventListener ( 'blur' , ( event ) => {
163+ if ( ! sessionStorage . getItem ( 'tourId' ) ) {
164+ return ;
165+ }
163166 setTimeout ( ( ) => {
164167 setFocus ( primaryButton , secondaryButton , cancelButton ) ;
165168 } , 1 ) ;
166169 event . preventDefault ( ) ;
167170 } ) ;
168171 } else if ( target . tagName . toLowerCase ( ) === 'joomla-field-fancy-select' ) {
169172 target . querySelector ( '.choices input' ) . addEventListener ( 'blur' , ( event ) => {
173+ if ( ! sessionStorage . getItem ( 'tourId' ) ) {
174+ return ;
175+ }
170176 setFocus ( primaryButton , secondaryButton , cancelButton ) ;
171177 event . preventDefault ( ) ;
172178 } ) ;
173179 } else if ( target . parentElement . tagName . toLowerCase ( ) === 'joomla-field-fancy-select' ) {
174180 target . querySelector ( 'input' ) . addEventListener ( 'blur' , ( event ) => {
181+ if ( ! sessionStorage . getItem ( 'tourId' ) ) {
182+ return ;
183+ }
175184 setFocus ( primaryButton , secondaryButton , cancelButton ) ;
176185 event . preventDefault ( ) ;
177186 } ) ;
178187 } else {
179188 target . addEventListener ( 'blur' , ( event ) => {
189+ if ( ! sessionStorage . getItem ( 'tourId' ) ) {
190+ return ;
191+ }
180192 setFocus ( primaryButton , secondaryButton , cancelButton ) ;
181193 event . preventDefault ( ) ;
182194 } ) ;
@@ -356,6 +368,9 @@ function startTour(obj) {
356368 switch ( obj . steps [ index ] . interactive_type ) {
357369 case 'submit' :
358370 ele . addEventListener ( 'click' , ( ) => {
371+ if ( ! sessionStorage . getItem ( 'tourId' ) ) {
372+ return ;
373+ }
359374 sessionStorage . setItem ( 'currentStepId' , obj . steps [ index ] . id + 1 ) ;
360375 } ) ;
361376 break ;
@@ -364,6 +379,9 @@ function startTour(obj) {
364379 ele . step_id = index ;
365380 if ( ele . hasAttribute ( 'required' ) && [ 'email' , 'password' , 'search' , 'tel' , 'text' , 'url' ] . includes ( ele . type ) ) {
366381 [ 'input' , 'focus' ] . forEach ( ( eventName ) => ele . addEventListener ( eventName , ( event ) => {
382+ if ( ! sessionStorage . getItem ( 'tourId' ) ) {
383+ return ;
384+ }
367385 if ( event . target . value . trim ( ) . length ) {
368386 enableButton ( event ) ;
369387 } else {
0 commit comments