Subversion Repositories eFlore/Applications.cel

Rev

Go to most recent revision | Blame | Last modification | View Log | RSS feed

/*
 * Ext JS Library 0.20
 * Copyright(c) 2006-2008, Ext JS, LLC.
 * licensing@extjs.com
 * 
 * http://extjs.com/license
 */

tx.ReminderManager = function(){
        var table;
        
        var run = function(){
                var rs = table.selectBy('where completed = 0 AND reminder <> \'\' AND reminder <= ?', [new Date()]);
                for(var i = 0, len = rs.length; i < len; i++){
                        showReminder.defer(10, window, [rs[i]]);
                }       
        };
        
        var showReminder = function(task){
                var o;
                if (o = tx.data.tasks.getById(task.taskId)) { // if currently loaded
                        o.set('reminder', '');
                }
                else {   // else update db directly
                        table.update({
                                taskId: task.taskId,
                                reminder: ''
                        });
                }
                Ext.air.NativeWindowManager.getReminderWindow(task.taskId);
        }
        
        return {
                init : function(){
                        table = tx.data.conn.getTable('task', 'taskId');
                        setInterval(run, 10000);
                }
        }       
}();