Browse files

MDL-32630 workshop_calendar_update() does not check for calendar perm…

…issions

As discussed in MDL-32631, calendar_event::update() should not do
capability checks at all. Until that issue is fixed, we just explicitly
declare that no capability checks should be done.

The function workshop_calendar_update() is executed when adding or
updating a workshop instance (where permissions to modify the instance
were already checked and are sufficient) and in the upgrade code (where
no check should be performed anyway).
  • Loading branch information...
1 parent bd44a3b commit 8683c24f737c95db5b034df51228cee1b4efcb4e @mudrd8mz mudrd8mz committed Apr 25, 2012
Showing with 12 additions and 8 deletions.
  1. +12 −8 mod/workshop/lib.php
View
20 mod/workshop/lib.php
@@ -1440,8 +1440,9 @@ function workshop_calendar_update(stdClass $workshop, $cmid) {
// should not be set but just in case
unset($event->id);
}
- // calendar_event::create will reuse a db record if the id field is set
- calendar_event::create($event);
+ // update() will reuse a db record if the id field is set
+ $eventobj = new calendar_event($event);
+ $eventobj->update($event, false);
}
if ($workshop->submissionend) {
@@ -1454,8 +1455,9 @@ function workshop_calendar_update(stdClass $workshop, $cmid) {
// should not be set but just in case
unset($event->id);
}
- // calendar_event::create will reuse a db record if the id field is set
- calendar_event::create($event);
+ // update() will reuse a db record if the id field is set
+ $eventobj = new calendar_event($event);
+ $eventobj->update($event, false);
}
if ($workshop->assessmentstart) {
@@ -1468,8 +1470,9 @@ function workshop_calendar_update(stdClass $workshop, $cmid) {
// should not be set but just in case
unset($event->id);
}
- // calendar_event::create will reuse a db record if the id field is set
- calendar_event::create($event);
+ // update() will reuse a db record if the id field is set
+ $eventobj = new calendar_event($event);
+ $eventobj->update($event, false);
}
if ($workshop->assessmentend) {
@@ -1482,8 +1485,9 @@ function workshop_calendar_update(stdClass $workshop, $cmid) {
// should not be set but just in case
unset($event->id);
}
- // calendar_event::create will reuse a db record if the id field is set
- calendar_event::create($event);
+ // update() will reuse a db record if the id field is set
+ $eventobj = new calendar_event($event);
+ $eventobj->update($event, false);
}
// delete any leftover events

0 comments on commit 8683c24

Please sign in to comment.