Moodle
  1. Moodle
  2. MDL-16660

Calendar: IMPORT or Subscribe to iCal feed into Moodle calendar

    Details

    • Type: New Feature New Feature
    • Status: Closed
    • Priority: Blocker Blocker
    • Resolution: Fixed
    • Affects Version/s: 1.9.2, 2.1.8, 2.2, 2.2.5, 2.3.2
    • Fix Version/s: 2.4
    • Component/s: Calendar
    • Environment:
      Moodle 1.9.2
    • Testing Instructions:
      Hide

      NOTE TO TESTER: This feature really needs full QA testing, in the absence of detailed QA tests, please do exploitory testing on this feature. Particularly paying attention to editing, updating, deleting. Invalid files etc.

      Import form in calendar view

      The import subscription form should only appear for those users who already have the capability to add calendar events to that course calendar.

      Subscriptions list

      The import calendar form should show you a list of existing subscriptions, if any. This list allows you to

      • Update the poll interval. This can be never, hourly, daily, weekly, monthly, or annually. Choose one from the list and click the Update button for that subscription.
      • Remove the subscription. This will also remove any events added by the subscription from the calendar. Click the Remove button.

      Import Calendar form

      This form will let you add a subscription from a calendar URL, or import events from an uploaded calendar file.

      • Calendar name: this should be mandatory and should not accept blank values.
      • Import from: choose either a URL or a file
      • Calendar URL: a URL to an external ics calendar file
        • this field should be disabled if Import from is set to import from a file
      • Calendar file: lets you choose or upload a calendar file using the standard Moodle file browser
        • this field should be disabled if Import from is set to import from a URL
      • Poll interval. This can be never, hourly, daily, weekly, monthly, or annually.
        • this field has no effect when adding events from a calendar file.
      • Type of event. This allows you to select which calendar the events should be added to - the same as when adding a single event normally.
        • The list should display only those calendars you have permission to add events to - at either a user, group, course or site level.
      • Group: this lets you select which group to add events to.
        • this field should only be visible if you can add events to one or more groups.
        • this field should only show groups that you have permission to add events to.
      • Click Add to import the events from the calendar file, or add the calendar subscription.

      Poll interval

      The cron task should update calendar subscriptions as recorded in the mdl_event_subscriptions table, and as controlled by the poll interval. In the database, pollinterval is stored as a number of seconds, and calculated in cron using the current timestamp and the lastupdated field. In this way, monthly is actually anually divided by 12, rather than a strict calendar month.

      Show
      NOTE TO TESTER: This feature really needs full QA testing, in the absence of detailed QA tests, please do exploitory testing on this feature. Particularly paying attention to editing, updating, deleting. Invalid files etc. Import form in calendar view The import subscription form should only appear for those users who already have the capability to add calendar events to that course calendar. Subscriptions list The import calendar form should show you a list of existing subscriptions, if any. This list allows you to Update the poll interval. This can be never, hourly, daily, weekly, monthly, or annually. Choose one from the list and click the Update button for that subscription. Remove the subscription. This will also remove any events added by the subscription from the calendar. Click the Remove button. Import Calendar form This form will let you add a subscription from a calendar URL, or import events from an uploaded calendar file. Calendar name: this should be mandatory and should not accept blank values. Import from: choose either a URL or a file Calendar URL: a URL to an external ics calendar file this field should be disabled if Import from is set to import from a file Calendar file: lets you choose or upload a calendar file using the standard Moodle file browser this field should be disabled if Import from is set to import from a URL Poll interval. This can be never, hourly, daily, weekly, monthly, or annually. this field has no effect when adding events from a calendar file. Type of event. This allows you to select which calendar the events should be added to - the same as when adding a single event normally. The list should display only those calendars you have permission to add events to - at either a user, group, course or site level. Group: this lets you select which group to add events to. this field should only be visible if you can add events to one or more groups. this field should only show groups that you have permission to add events to. Click Add to import the events from the calendar file, or add the calendar subscription. Poll interval The cron task should update calendar subscriptions as recorded in the mdl_event_subscriptions table, and as controlled by the poll interval. In the database, pollinterval is stored as a number of seconds, and calculated in cron using the current timestamp and the lastupdated field. In this way, monthly is actually anually divided by 12, rather than a strict calendar month.
    • Affected Branches:
      MOODLE_19_STABLE, MOODLE_21_STABLE, MOODLE_22_STABLE, MOODLE_23_STABLE
    • Fixed Branches:
      MOODLE_24_STABLE
    • Pull from Repository:
    • Pull Master Branch:
      wip-MDL-16660-m24

      Description

      Would be great if one could, either at the site, course or user level in the Moodle calendar:

      1) SUBSCRIBE to an external iCal calendar feed (such as to a Google Calendar ical feed) to auto-update the site events INTO MOODLE (not export out of Moodle, which already exists.) This way, if a school has a calendar already published with an ical feed (such as a Google calendar), an admin in Moodle could subscribe to that external ical feed and have all the school's events posted automatically in the Moodle calendar. By the same token, perhaps an instructor could subscribe to an ical feed for his or her course to feed in course level entries, or an individual with ical feeds could subscribe to them to sync them into their Moodle calendar.

      2) IMPORT an iCal calendar flatfile into Moodle's calendar

        Gliffy Diagrams

        1. bennu.tar.gz
          31 kB
          Mark Johnson
        2. calendar_test.patch
          62 kB
          Mark Johnson
        3. calendar_test2.patch
          8 kB
          Mark Johnson
        4. calendar_test3_fixed.patch
          23 kB
          Barry Oosthuizen
        5. calendar_test3.patch
          23 kB
          Mark Johnson
        6. calendar_test3.patch
          23 kB
          Mark Johnson
        7. ical2moodle.bmml
          5 kB
          Kirill Gordeenko
        8. ical2moodle.bmml
          5 kB
          Kirill Gordeenko
        9. ical2moodle.bmml
          5 kB
          Kirill Gordeenko
        10. ical2moodle.bmml
          5 kB
          Kirill Gordeenko
        11. ical2moodle.bmml
          5 kB
          Kirill Gordeenko
        12. ical2moodle.bmml
          5 kB
          Kirill Gordeenko
        13. ical2moodle.bmml
          5 kB
          Kirill Gordeenko
        14. ical2moodle.bmml
          5 kB
          Kirill Gordeenko
        15. ical2moodle.bmml
          5 kB
          Kirill Gordeenko
        16. ical2moodle.bmml
          5 kB
          Kirill Gordeenko
        17. ical2moodle.bmml
          5 kB
          Kirill Gordeenko
        18. ical2moodle.bmml
          5 kB
          Kirill Gordeenko
        19. ical2moodle.bmml
          5 kB
          Kirill Gordeenko
        20. ical2moodle.bmml
          4 kB
          Kirill Gordeenko
        21. ical2moodle.bmml
          4 kB
          Kirill Gordeenko
        22. ical2moodle.bmml
          4 kB
          Kirill Gordeenko
        23. ical2moodle.bmml
          4 kB
          Kirill Gordeenko
        24. ical2moodle.bmml
          4 kB
          Kirill Gordeenko
        25. MDL-16660_proof_of_concept.patch
          7 kB
          Mark Johnson
        26. Ringmer_Community_College_Term_Dates_2010-2011_Calendar.ics
          33 kB
          Frosty
        27. t.ics
          0.6 kB
          Jim Crumley
        1. ical2moodle.png
          68 kB
        2. Missing Repeat Events.jpg
          361 kB
        3. screenshot-1.jpg
          186 kB

          Issue Links

            Activity