Tizen 2.0 Release
[samples/web/ExercisePlanner.git] / js / app.alarms.js
1 /*jslint devel:true*/
2 /*global ExercisePlanner:false, tizen:false*/
3 /**
4  * Methods for add / remove alarms by API;
5  */
6 (function () {
7         "use strict";
8         /**
9          * Wrapper on remove all alarms joined with app
10          */
11         ExercisePlanner.prototype.removeAllAlarms = function () {
12                 tizen.alarm.removeAll();
13         };
14
15         ExercisePlanner.prototype.WORKDAYS = ["MO", "TU", "WE", "TH", "FR"];
16         ExercisePlanner.prototype.WEEKEND = ["SA", "SU"];
17
18         /**
19          * Add alarms from Array
20          *
21          * @param tabOfAlarm
22          * @param defOfPeriod
23          */
24         ExercisePlanner.prototype.addAlarmFromArray = function addAlarmFromArray(tabOfAlarm, defOfPeriod) {
25                 var i, len = tabOfAlarm.length, alarm;
26
27                 for (i = 0; i < len; i += 1) {
28                         alarm = new tizen.AlarmAbsolute(tabOfAlarm[i], defOfPeriod);
29                         try {
30                                 tizen.alarm.add(alarm, this.selfId);
31                         } catch (e) {
32                                 console.error(e.message);
33                         }
34                 }
35         };
36
37         /**
38          * Add alarms to API DataBase
39          *
40          * @param {object} alarms
41          */
42         ExercisePlanner.prototype.addAlarmsAllWeek = function addAlarmsAllWeek(alarms) {
43                 if (alarms.everyday.length > 0) {
44                         this.addAlarmFromArray(alarms.everyday, tizen.alarm.PERIOD_DAY);
45                 }
46                 if (alarms.workday.length > 0) {
47                         this.addAlarmFromArray(alarms.workday, this.WORKDAYS);
48                 }
49                 if (alarms.weekend.length > 0) {
50                         this.addAlarmFromArray(alarms.weekend, this.WEEKEND);
51                 }
52         };
53
54 }());
55