reasoncms / reasoncms

Reason Content Management System
http://reasoncms.org
GNU General Public License v2.0
31 stars 39 forks source link

Subscribe to Reason calendar in Google calendar #218

Open tabitagreen opened 8 years ago

tabitagreen commented 8 years ago

As a user, I want to be able to subscribe to an events calendar in Reason and add it to Google Calendar. The link would say "Subscribe (Google Calendar)"

Here is a sample link for Luther: https://calendar.google.com/calendar/render?cid=webcal://www.luther.edu/events/?start_date%3D2016-06-27%26format%3Dical&pli=1#main_7

mryand commented 8 years ago

http://stackoverflow.com/questions/1479067/google-calendar-ical-feed

mryand commented 8 years ago

Also we should add a link to a reasoncms.org version of this page: https://apps.carleton.edu/campus/webgroup/articles/calendar_subscribe/

mischler commented 8 years ago

Added: https://github.com/carleton/reason_package/pull/229

mischler commented 8 years ago

Looking into adding Yahoo with work in #166, hit a little snag with trying to get subscriptions. Put simply, when Yahoo is given a multi-parameter URL to lookup, the ampersands have to be converted to %26 so the browser doesn't read them as part of the main URL. However, once converted and given to Yahoo, they convert the %26 into & rather than the desired &.

Screenshot: screen shot 2016-07-05 at 1 06 04 pm

Yahoo fails to successfully read this URL with & unless the user then changes the & to &, which won't work for our aim to make this easy, obviously. As such, it seems that for Yahoo we are limited to a single parameter.

Thus, I have a workaround wherein rather than using the Events module's construct_link function, I simply append ?format=ical (question marks are alright). However, doing so means that no other forms of filtering can be used, such as limiting the subscription to views based on category, audience, etc.

Do I include the Yahoo link, limiting its availability only to non-view subscriptions using the above workaround, or do I let it be for now until there is a substantial demand?

tabitagreen commented 8 years ago

Let's add when there's demand.