provide installation instructions
[extjs.git] / air / samples / tasks / js / Reminder.js
1 /*\r
2  * Ext JS Library 0.30\r
3  * Copyright(c) 2006-2009, Ext JS, LLC.\r
4  * licensing@extjs.com\r
5  * \r
6  * http://extjs.com/license\r
7  */\r
8 \r
9 tx.ReminderManager = function(){\r
10         var table;\r
11         \r
12         var run = function(){\r
13                 var rs = table.selectBy('where completed = 0 AND reminder <> \'\' AND reminder <= ?', [new Date()]);\r
14                 for(var i = 0, len = rs.length; i < len; i++){\r
15                         showReminder.defer(10, window, [rs[i]]);\r
16                 }       \r
17         };\r
18         \r
19         var showReminder = function(task){\r
20                 var o;\r
21                 if (o = tx.data.tasks.getById(task.taskId)) { // if currently loaded\r
22                         o.set('reminder', '');\r
23                 }\r
24                 else {   // else update db directly\r
25                         table.update({\r
26                                 taskId: task.taskId,\r
27                                 reminder: ''\r
28                         });\r
29                 }\r
30                 Ext.air.NativeWindowManager.getReminderWindow(task.taskId);\r
31         }\r
32         \r
33         return {\r
34                 init : function(){\r
35                         table = tx.data.conn.getTable('task', 'taskId');\r
36                         setInterval(run, 10000);\r
37                 }\r
38         }       \r
39 }();\r