Would it be possible to add an availability
property to CalendarEvent
?
(the equivalent of var availability: EKEventAvailability { get set }
in Swift)
Possible values (as in EKEventAvailability
):
notSupported
busy
free
tentative
unavailable
Would it be possible to add an availability
property to CalendarEvent
?
(the equivalent of var availability: EKEventAvailability { get set }
in Swift)
Possible values (as in EKEventAvailability
):
notSupported
busy
free
tentative
unavailable
That’s a good idea. I’ll add it to the backlog.
Thank you for adding this!
I’m using this to find “all day” events that are marked “busy” (but should be “free”):
function busy(event) {
return event.isAllDay && event.availability == "busy" && !event.calendar.isSubscribed
}
let start = new Date()
let end = new Date(2018, 11, 31)
let events = await CalendarEvent.between(start, end)
let busyEvents = events.filter(busy)
for (event of busyEvents) {
console.log(event.startDate + ": " + event.title + " (" + event.calendar.title + ")")
}
However there’s (/I do) something wrong: event.calendar
seems to be empty ({}
)?
(as a result the title
is undefined
and the subscription check is failing)
@rob Thanks for reporting the issue. I’ve found and fixed the issue. It should work in the next build. Sorry for the inconvenience.
Solved!
Different issue: calendars that I subscribed to in the FastMail web interface return false
for isSubscribed
.
Maybe a FastMail/iOS issue?
EDIT: Drafts correctly returns false
for allowsContentModifications
, so maybe you can do something about this?
@rob The isSubscribed
and allowsContentModifications
properties are two different things. allowsContentModifications
isn’t currently exposed by Scriptable but I’ll squeeze it in for the 1.1.0 release.
Thank you for adding allowsContentModifications
.
Using this property (instead of isSubscribed
- and without the negation) my script now works exactly as I want it to!
It immediately reported a calendar entry that I added with the wrong availability yesterday…