Ignore rrule errors

This commit is contained in:
Tom Wardill 2018-11-07 18:44:32 +00:00
parent cec1f12918
commit 78daa65d28
2 changed files with 8 additions and 2 deletions

View File

@ -171,7 +171,7 @@ var CalendarFetcher = function(url, reloadInterval, excludedEvents, maximumEntri
var geo = event.geo || false; var geo = event.geo || false;
var description = event.description || false; var description = event.description || false;
if (typeof event.rrule != "undefined" && !isFacebookBirthday) { if (typeof event.rrule != "undefined" && event.rrule != null && !isFacebookBirthday) {
var rule = event.rrule; var rule = event.rrule;
// can cause problems with e.g. birthdays before 1900 // can cause problems with e.g. birthdays before 1900

View File

@ -44,7 +44,13 @@ ical.objectHandlers['END'] = function(val, params, curr, stack){
rule += ' EXDATE:' + curr.exdates[i].toISOString().replace(/[-:]/g, ''); rule += ' EXDATE:' + curr.exdates[i].toISOString().replace(/[-:]/g, '');
rule = rule.replace(/\.[0-9]{3}/, ''); rule = rule.replace(/\.[0-9]{3}/, '');
} }
curr.rrule = rrulestr(rule); try {
curr.rrule = rrulestr(rule);
}
catch(err) {
console.log("Unrecognised element in calendar feed, ignoring: " + rule);
curr.rrule = null;
}
} }
return originalEnd.call(this, val, params, curr, stack); return originalEnd.call(this, val, params, curr, stack);
} }