I'm working with teleriks verified LocalNotification plugin to send local notifications to the devices that run my app. I allow them to choose an interval of their liking between the notifications (1-2-3 or 4 hours), but I would like for these notifications to only fire during waking hours (so they don't wake up the user in the middle of the nigth - is there a setting for this? So far, the notification code is:
app.notify({
id : 4,
title : 'Remember',
message : '.. until you cancel all notifications',
repeat : 60*this.get('notification_interval'),
autoCancel : true,
date : new Date(new Date().getTime() + 60*60*1000*this.get('notification_interval'))
},function(){alert('you will recieve a message every '+this.get('notification_interval')+'. hour');});
EDIT
Based on the excellent comment by AtanuCSE, I edited the code, so it now looks like:
app.setupnotificationinterval(interval)
{
//set hour to 10 for starting hour
var hour = 10;
//set a notificationDate time.
var notificationDate = new Date().getTime();
//manipulate the dateobject to fit, 10:00:00
notificationDate.setMinutes(0);notificationDate.setSeconds(0);
//loop as long as the notification hour interval doesnt exceed 12 hours (from 10-22).
while(hour < 22)
{
notificationDate.setHours(hour);
this.notify({
id : hour,
title : 'Husk at registrere energi',
message : 'Det er tid til at du skal registrere din energi',
repeat : 'daily',
autoCancel : true,
date : notificationDate
},function(){alert('alarm sat til kl. ' + notificationDate.getHour());});
hour = hour + interval;
}
}