Any OOTB timeout component | Community
Skip to main content
nchandra
August 8, 2018
Solved

Any OOTB timeout component

  • August 8, 2018
  • 2 replies
  • 1821 views

I am wondering is there any OOTB timeout component for Adaptive forms (AEM 6.3 forms)?

our ask is if adaptive form is open with out any activity for 13 mins then we should open time out popup , after two mins we should redirect to home page.  Am looking if there is any OOTB component which  can be extended or reused ?

Thanks,

Chandra

This post is no longer active and is closed to new replies. Need help? Start a new post to ask your question.
Best answer by Mayank_Gandhi

No OOTB component available for such use case, but should be easily achievable via JS.

One example can be handling events on form initialize and adding to the Timer based on the Events :

var timeoutID;

function setup() {

    this.addEventListener("mousemove", resetTimer, false);

    this.addEventListener("mousedown", resetTimer, false);

    this.addEventListener("keypress", resetTimer, false);

    this.addEventListener("DOMMouseScroll", resetTimer, false);

    this.addEventListener("touchmove", resetTimer, false);

    this.addEventListener("MSPointerMove", resetTimer, false);

    startTimer();

}

setup();

function startTimer() {

    // wait 10 seconds before calling goInactive

    timeoutID = window.setTimeout(goInactive, 10000);

}

function resetTimer(e) {

    window.clearTimeout(timeoutID);

    goActive();

}

function goInactive() {

    alert("you will be taken to home page");

//do something again

window.location.href = "http://localhost:4502/content/forms/af/test.html";

}

function goActive() {

       // do something

       

    startTimer();

}

2 replies

smacdonald2008
August 8, 2018

I do not believe there is for AEM forms. For this use case - you would need to build a custom component. For example, such a component could be implemented using JQUERY - jQuery setTimeout() Function Examples — SitePoint

Mayank_Gandhi
Adobe Employee
Mayank_GandhiAdobe EmployeeAccepted solution
Adobe Employee
August 8, 2018

No OOTB component available for such use case, but should be easily achievable via JS.

One example can be handling events on form initialize and adding to the Timer based on the Events :

var timeoutID;

function setup() {

    this.addEventListener("mousemove", resetTimer, false);

    this.addEventListener("mousedown", resetTimer, false);

    this.addEventListener("keypress", resetTimer, false);

    this.addEventListener("DOMMouseScroll", resetTimer, false);

    this.addEventListener("touchmove", resetTimer, false);

    this.addEventListener("MSPointerMove", resetTimer, false);

    startTimer();

}

setup();

function startTimer() {

    // wait 10 seconds before calling goInactive

    timeoutID = window.setTimeout(goInactive, 10000);

}

function resetTimer(e) {

    window.clearTimeout(timeoutID);

    goActive();

}

function goInactive() {

    alert("you will be taken to home page");

//do something again

window.location.href = "http://localhost:4502/content/forms/af/test.html";

}

function goActive() {

       // do something

       

    startTimer();

}