I'm building a simple scheduling application for a client. It allows teachers to create a calendar of assignments for their students. I'd like to offer the ability for a student to add ALL assignments to their calendar at one time. Say there were 20 assignments over a 4 week period. This functionality would allow the student to download a single file, or follow a certain feed, to add all 20 assignments to their calendar at one time.
In my head this would be a single iCal file, but I'm not sure if iCal works that way. Alternately, each course /course/basket-weaving-101_51/
would have an RSS feed /course/basket-weaving-101_51/cal/
that could be followed.
Does anyone have experience with this, or could offer guidance?
Yes, one feed program that accepts parameters via the url could be used to offer a subscribeable calendar feed at whatever level of detail you wish. I say subscribeable as that, at a student level ... /student_id_or_name?feed=ics would offer the students the most convenient solution. They could subscribe once and then all the courses assignments that they are signed up for all courses over time could automatically appear as their calendar app refreshes the feed.
A single assignment could also offer a feed of the one 'event'. But that should probably be imported into their main calendar, rather than subscribing!
Note subscribing is different to importing - your help instructions need to make that clear as it is up to the user what they do with the feed.
Import(or add to calendar) is a once-off and will not update with new events/assignments.
Subscribing as a separate calendar I find much preferable as most calendar apps will let one check and uncheck the calendars as you need them. I have mykids timetables subscribed (and public holidays etc) but that's a very busy view, so often I just untick them for a cleaner view.