Re: Decide if a page is expired or the user is inactive in AJAX settings?

2013-10-04 Thread Ernesto Reinaldo Barreiro
Use events to record user activity except for self AJAX updating events:
e.g create you own event that is generated for each user activity not
coming from self updating behaviors.


On Fri, Oct 4, 2013 at 8:51 PM, Behrooz Nobakht  wrote:

> Hello,
>
> Let's assume that I have a page that has a set of components. Many of the
> components use automatic AJAX update behavior to pull changes and refresh
> themselves in the page.
>
> Additionally, I use a custom version of AjaxSelfUpdatingBehavior in which
> if the page is not changed in a maximum timeout, it automatically displays
> a modal to the user and stops all the automatic AJAX updates of the
> components above.
>
> However, this approach has a bug: if the user continues to work on the same
> page and operates some AJAX actions, the expiration modal is displayed,
> however, logically, this should not happen because the user was active on
> the page but using the AJAX features. Notice, when the user works with one
> AJAX component, such activity is not visible to all the components and the
> behavior that controls expiration timeout.
>
> So, the general question is that how to detect if the user has been
> inactive on a page that uses components with AJAX self updating behavior?
> i.e. the page should be expired if *none* of the components and the page
> itself receive *no* activity from the user. Is there a standard Wicket way
> to do this?
>
> Thanks in advance for your discussions and ideas.
>
> Regards,
> Behrooz Nobakht
>



-- 
Regards - Ernesto Reinaldo Barreiro


Decide if a page is expired or the user is inactive in AJAX settings?

2013-10-04 Thread Behrooz Nobakht
Hello,

Let's assume that I have a page that has a set of components. Many of the
components use automatic AJAX update behavior to pull changes and refresh
themselves in the page.

Additionally, I use a custom version of AjaxSelfUpdatingBehavior in which
if the page is not changed in a maximum timeout, it automatically displays
a modal to the user and stops all the automatic AJAX updates of the
components above.

However, this approach has a bug: if the user continues to work on the same
page and operates some AJAX actions, the expiration modal is displayed,
however, logically, this should not happen because the user was active on
the page but using the AJAX features. Notice, when the user works with one
AJAX component, such activity is not visible to all the components and the
behavior that controls expiration timeout.

So, the general question is that how to detect if the user has been
inactive on a page that uses components with AJAX self updating behavior?
i.e. the page should be expired if *none* of the components and the page
itself receive *no* activity from the user. Is there a standard Wicket way
to do this?

Thanks in advance for your discussions and ideas.

Regards,
Behrooz Nobakht