Commit graph

128 commits

Author SHA1 Message Date
Cameron Ball
5ca71c2dc3 MDL-57442 core_calendar: Allow course modules to create actions for events
Course modules can now implement the function mod_{module}_core_calendar_provide_event_action
which allows them to return an action to attach to an event.

Part of MDL-55611 epic.
2017-04-03 11:36:07 +08:00
Cameron Ball
0efe462b12 MDL-57442 core_calendar: Fix incorrect copyright notice
Part of MDL-55611 epic.
2017-04-03 11:36:07 +08:00
Cameron Ball
c5478a5b6c MDL-57442 core_calendar: Update proxies to accept a 'base' class
The base class can contain information we would prefer not to
have to hit the database for.

Part of MDL-55611 epic.
2017-04-03 11:36:07 +08:00
Cameron Ball
33be1706e1 MDL-57442 core_calendar: Add missing return to event factory interface docs
Part of MDL-55611 epic.
2017-04-03 11:36:07 +08:00
Cameron Ball
4c19dc323a MDL-57442 core_calendar: Add missing method to times interface
Also adds a missing member to event_times implementation.

Part of MDL-55611 epic.
2017-04-03 11:36:07 +08:00
Mark Nelson
12cbce0aa3 MDL-57888 core_calendar: moved functions from calendar/lib.php
Part of MDL-55611 epic.
2017-04-03 11:35:38 +08:00
Cameron Ball
e46efe3a72 MDL-57599 core_calendar: Add action event class
This patch adds a "regular" calendar event class, and a simple extension
of it which we are calling an action event.

Part of MDL-55611 epic.
2017-04-03 11:35:38 +08:00
Simey Lameze
f7ce6eab7e MDL-57545 core_calendar: add missing record snapshots
This commit adds missing add_record_snapshot() calls everywhere calendar_event_updated is triggered.

Part of MDL-55611 epic.
2017-04-03 11:35:38 +08:00
Simey Lameze
a22fa7cb68 MDL-57545 core_calendar: remove visibility fields from calendar events
Part of MDL-55611 epic.
2017-04-03 11:35:38 +08:00
Mark Nelson
c45266d115 MDL-57545 core_calendar: trigger update event when toggling visibility
Part of MDL-55611 epic.
2017-04-03 11:35:38 +08:00
Mark Nelson
5019e69588 MDL-57578 core_calendar: removed the function calendar_event_hook()
Part of MDL-55611 epic.
2017-04-03 11:33:55 +08:00
Mark Nelson
e057f279e4 MDL-57497 core_calendar: added new calendar event class
Moved calendar_event class to new location using replaceclasses.php

Part of MDL-55611 epic.
2017-04-03 11:33:55 +08:00
Jun Pataleta
02edbe1e30 MDL-57658 calendar: Remove BYDAY filtering dependence on NumberFormatter 2017-03-15 14:18:27 +08:00
Jun Pataleta
8ddc656739 MDL-57658 calendar: Fix rrulemanager and unit tests
Issues fixed:
* Additional rule validations.
* Rewrote recurrence logic.
* Additional unit tests, especially from the examples in the RFC.
* The date format "YmdThis" results into an incorrect date for the
  "UNTIL" parameter. The literal "T" should be escaped, and a literal
  "Z" is also needed at the end of the format string to indicate UTC.
* Implemented handling of negative modifier values for BYxxx rules.
* Implemented handling of BYWEEKNO, BYYEARDAY, BYSETPOS, BYHOUR,
  BYMINUTE, BYSECOND rules.
2017-03-09 16:10:08 +08:00
Dan Poltawski
757aef2334 MDL-56766 calendar: improve calendar export labels 2016-11-09 17:00:05 +00:00
Alistair Spark
6552198130 MDL-51749 CALENDAR: Add ical export for user or group events 2016-04-16 23:43:23 +01:00
Petr Skoda
d6e7a63d9a MDL-49684 timezones: rewrite timezone support
This patch replaces all homegrown timezone
stuff with standard PHP date/time code.

The main change is the introduction of core_date
class that returns normalised user and server
timezones. From now on nobody should be using
$CFG->timezone or $user->timezone directly!

Other new features and fixes:
* admins are prompted for timezone during install
* editing of other users is finally fixed
* timezones are displayed in user profile
* new $this->setTimezone() in phpunit
* time locale is now automatically reset in phpunit
* timezone is now automatically reset in phpunit
* phpunit has Australia/Perth as default timezone
2015-04-06 13:53:51 +12:00
Brian Barnes
d592ccd7a6 MDL-46814 calendar: Export calendar uses moodle forms 2014-12-18 12:59:27 +13:00
Ankit Agarwal
76eef5b2eb MDL-42079 calendar: Add a rrule_manager class 2014-03-05 09:48:07 +08:00
Rajesh Taneja
d61d3e82d0 MDL-42537 calendar: locale charset on windows will come from calendartype
date_format_string() will now convert date on windows based on calendar type used
2013-11-04 15:54:19 +08:00
Mark Nelson
1d43da0220 MDL-41664 core_calendar: replaced class variables that stored minimum and maximum years with functions
Also made slight changes to the existing functions.
2013-10-30 12:42:12 +08:00
Adrian Greeve
73412d9680 MDL-41664 - Calendar: Add method for formating years in the new calendar plugin. 2013-10-30 11:53:16 +08:00
Mark Nelson
da3041379a MDL-41792 core_calendar: refactored the calendar to allow the use of multiple calendar types 2013-10-04 16:17:02 +08:00
Mark Nelson
6eafa4ddba MDL-18375 calendar: changed the name of the function factory to be more descriptive 2013-09-05 18:32:16 +08:00
Mark Nelson
2aefba53a5 MDL-18375 calendar: added condition to ensure calendar type exists before loading 2013-09-05 18:32:16 +08:00
Mark Nelson
df01e4c748 MDL-18375 calendar: PHPDoc tidy up as well as some other minor changes 2013-09-05 18:32:16 +08:00
Mark Nelson
f59ab4adc8 MDL-18375 calendar: renamed the userdate/usergetdate functions and changed them to abstract
Renamed the userdate/usergetdate functions in the calendar type to be more
descriptive and made them abstract to ensure developers implement this
functionality in their calendar type.

Also tidied up PHPDocs for these functions.
2013-09-05 18:32:16 +08:00
Mark Nelson
022745acd2 MDL-18375 calendar: implemented the usage of the recently introduced automatic class loading 2013-09-05 18:32:16 +08:00