Commit 4a81b72a by Sebastián Katzer

Update example

parent 6618cb2d
......@@ -69,15 +69,21 @@
*/
- (void) add:(CDVInvokedUrlCommand*)command
{
NSArray* notifications = command.arguments;
[self.commandDelegate runInBackground:^{
for (NSDictionary* options in command.arguments) {
for (NSMutableDictionary* options in notifications) {
UILocalNotification* notification;
notification = [[UILocalNotification alloc]
initWithOptions:options];
[self scheduleLocalNotification:notification];
[self scheduleLocalNotification:[notification copy]];
[self fireEvent:@"add" localNotification:notification];
if (notifications.count > 1) {
[NSThread sleepForTimeInterval:0.01];
}
}
[self execCallback:command];
......@@ -267,13 +273,6 @@
{
[self cancelForerunnerLocalNotification:notification];
NSString* state = self.applicationState;
if ([state isEqualToString:@"background"]) {
[[UIApplication sharedApplication]
presentLocalNotificationNow:notification];
}
[[UIApplication sharedApplication]
scheduleLocalNotification:notification];
}
......
......@@ -35,5 +35,7 @@
// Encode the user info dict to JSON
- (NSString*) encodeToJSON;
// If it's a repeating notification
- (BOOL) isRepeating;
@end
......@@ -82,7 +82,7 @@
- (BOOL) autoCancel
{
if (IsAtLeastiOSVersion(@"8.0")){
return self.repeatInterval == NSCalendarUnitEra;
return ![self isRepeating];
} else {
return [[dict objectForKey:@"autoCancel"] boolValue];
}
......@@ -201,6 +201,9 @@
return NSCalendarUnitEra;
}
#pragma mark -
#pragma mark Methods
/**
* The notification's user info dict.
*/
......@@ -231,6 +234,16 @@
withString:@""];
}
/**
* If it's a repeating notification.
*/
- (BOOL) isRepeating
{
NSCalendarUnit interval = self.repeatInterval;
return !(interval == NSCalendarUnitEra || interval == 0);
}
#pragma mark -
#pragma mark Helpers
......
......@@ -33,5 +33,7 @@
- (BOOL) wasInThePast;
// If the notification was already triggered
- (BOOL) wasTriggered;
// If it's a repeating notification
- (BOOL) isRepeating;
@end
......@@ -61,6 +61,9 @@ static char optionsKey;
self.soundName = options.soundName;
}
#pragma mark -
#pragma mark Methods
/**
* The options provided by the plug-in.
*/
......@@ -128,7 +131,7 @@ static char optionsKey;
int timespan = [now timeIntervalSinceDate:fireDate];
if (self.repeatInterval != NSCalendarUnitEra) {
if ([self isRepeating]) {
timespan = timespan % [self repeatIntervalInSeconds];
}
......@@ -156,4 +159,12 @@ static char optionsKey;
return isLaterThanOrEqualTo;
}
/**
* If it's a repeating notification.
*/
- (BOOL) isRepeating
{
return [self.options isRepeating];
}
@end
......@@ -109,7 +109,7 @@
<script type="text/javascript" src="js/index.js"></script>
<script type="text/javascript">
var counter = 1, id = 12;
var counter = 0, id = 1;
var callback = function () {
alert('finished or canceled');
......@@ -138,15 +138,15 @@
scheduleMultiple = function () {
plugin.notification.local.add([{
id: id,
message: 'Test Message ' + (++counter),
message: 'Multi Message ' + (++counter),
json: { test: id }
},{
id: id+1,
message: 'Test Message ' + (++counter),
message: 'Multi Message ' + (++counter),
json: { test: id+1 }
},{
id: id+2,
message: 'Test Message ' + (++counter),
message: 'Multi Message ' + (++counter),
json: { test: id+2 }
}]);
};
......@@ -214,14 +214,14 @@
setDefaultTitle = function () {
plugin.notification.local.setDefaults({
title: 'Default Title',
title: 'New Default Title',
});
};
</script>
<!-- callbacks -->
<script type="text/javascript">
document.addEventListener('sdeviceready', function () {
document.addEventListener('deviceready', function () {
plugin.notification.local.onadd = function (id, state, json) {
alert('on add\n' + Array.apply(null, arguments).join("\n"));
};
......
......@@ -109,7 +109,7 @@
<script type="text/javascript" src="js/index.js"></script>
<script type="text/javascript">
var counter = 1, id = 12;
var counter = 0, id = 1;
var callback = function () {
alert('finished or canceled');
......@@ -138,15 +138,15 @@
scheduleMultiple = function () {
plugin.notification.local.add([{
id: id,
message: 'Test Message ' + (++counter),
message: 'Multi Message ' + (++counter),
json: { test: id }
},{
id: id+1,
message: 'Test Message ' + (++counter),
message: 'Multi Message ' + (++counter),
json: { test: id+1 }
},{
id: id+2,
message: 'Test Message ' + (++counter),
message: 'Multi Message ' + (++counter),
json: { test: id+2 }
}]);
};
......@@ -214,14 +214,14 @@
setDefaultTitle = function () {
plugin.notification.local.setDefaults({
title: 'Default Title',
title: 'New Default Title',
});
};
</script>
<!-- callbacks -->
<script type="text/javascript">
document.addEventListener('sdeviceready', function () {
document.addEventListener('deviceready', function () {
plugin.notification.local.onadd = function (id, state, json) {
alert('on add\n' + Array.apply(null, arguments).join("\n"));
};
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment