calendar: performance optimisations + behaviour fix (MDL-7416 MDL-9617)

With 2500 courses the calendar was causing around 15000 queries at login and 5000 on the home page.

- Replaced queries inside loops with single unlooped queries.
- Fixed calendar so that course events will show when the users role is assigned at a category level.
- Moved calendar_session_vars() function call out of calendar/lib.php (including a lib should not have side effects)

Author: Matt Clarkson - with some conflict resolution from MartinL
This commit is contained in:
martinlanghoff 2007-05-06 04:28:11 +00:00
parent f261e052f2
commit 37d87d11f9
8 changed files with 39 additions and 16 deletions

View file

@ -66,6 +66,9 @@
$strcalendar = get_string('calendar', 'calendar');
// Initialize the session variables
calendar_session_vars();
$now = usergetdate(time());
$nav = calendar_get_link_tag($strcalendar, CALENDAR_URL.'view.php?view=upcoming&', $now['mday'], $now['mon'], $now['year']);
$day = intval($now['mday']);