source: Dev/trunk/src/client/dojox/analytics/plugins/idle.js @ 536

Last change on this file since 536 was 483, checked in by hendrikvanantwerpen, 11 years ago

Added Dojo 1.9.3 release.

File size: 991 bytes
Line 
1define(["dojo/_base/lang", "../_base", "dojo/_base/config", "dojo/ready",
2                "dojo/aspect", "dojo/_base/window"
3], function(lang, dxa, config, ready, aspect, window){
4
5        // window startup data
6        return (dxa.plugins.idle = new (function(){
7                this.addData = lang.hitch(dxa, "addData", "idle");
8                this.idleTime = config["idleTime"] || 60000;
9                this.idle = true;
10
11                this.setIdle = function(){
12                        this.addData("isIdle");
13                        this.idle = true;
14
15                }
16
17                ready(lang.hitch(this, function(){
18                        var idleResets = ["onmousemove","onkeydown","onclick","onscroll"];
19                        for(var i = 0;i < idleResets.length;i++){
20                                aspect.after(window.doc,idleResets[i],lang.hitch(this, function(e){
21                                        if(this.idle){
22                                                this.idle = false;
23                                                this.addData("isActive");
24                                                this.idleTimer = setTimeout(lang.hitch(this,"setIdle"), this.idleTime);
25                                        }else{
26                                                clearTimeout(this.idleTimer);
27                                                this.idleTimer = setTimeout(lang.hitch(this,"setIdle"), this.idleTime);
28                                        }
29                                }),true);
30                        }
31                }));
32        })());
33});
Note: See TracBrowser for help on using the repository browser.