summaryrefslogtreecommitdiffstats
path: root/js/lib_timer.js
diff options
context:
space:
mode:
authorRobin <robin@Amaya.(none)>2010-04-04 16:50:04 +0200
committerRobin <robin@Amaya.(none)>2010-04-04 16:50:04 +0200
commit7657926a602a524cf651e7e2b95a3369261fbde1 (patch)
tree1462f20e771e417a17421b1f9d2f8b36ca1742d7 /js/lib_timer.js
parente658a0025895d5aecc2c067234c5120cc21a63a2 (diff)
downloadnextcloud-server-7657926a602a524cf651e7e2b95a3369261fbde1.tar.gz
nextcloud-server-7657926a602a524cf651e7e2b95a3369261fbde1.zip
some cleanup in ajax fronted, give error message before starting an upload that is to big
Diffstat (limited to 'js/lib_timer.js')
-rwxr-xr-xjs/lib_timer.js52
1 files changed, 52 insertions, 0 deletions
diff --git a/js/lib_timer.js b/js/lib_timer.js
new file mode 100755
index 00000000000..aadea90ba27
--- /dev/null
+++ b/js/lib_timer.js
@@ -0,0 +1,52 @@
+/**
+ * StarLight - A client side webpage framework
+ *
+ * @package StarLight
+ * @author Icewind <icewind (at) derideal (dot) com>
+ * @copyright 2009
+ * @license http://www.gnu.org/licenses/gpl.html GNU Public License
+ * @url http://blacklight.metalwarp.com/starlight
+ * @version 0.1
+ */
+OCTimer=function(callback,time,repeat,object){
+ this.object=(object)?object:false;
+ this.repeat=(!(repeat===undefined))?repeat:true;
+ this.callback=callback;
+ this.time=time;
+ this.timer=0;
+ this.number=OCTimer.count;
+ OCTimer.count++;
+ OCTimer.timers[this.number]=this;
+ if(this.time){
+ this.start();
+ }
+}
+
+OCTimer.count=0;
+OCTimer.timers=Array();
+
+OCTimer.prototype={
+ start:function(){
+ this.running=true;
+ eval('var func=function(){OCTimer.timers['+this.number+'].run();};');
+ if(this.repeat){
+ this.timer = setInterval(func, this.time);
+ }else{
+ this.timer = setTimeout(func, this.time);
+ }
+ },
+ run:function(){
+ if (!this.repeat){
+ this.stop();
+ }
+ if (this.object){
+ this.callback.call(this.object);
+ }else{
+ this.callback.call();
+ }
+ },
+ stop:function(){
+ clearInterval(this.timer);
+ this.running=false;
+ }
+} \ No newline at end of file