mirror of
https://github.com/moodle/moodle.git
synced 2025-08-08 10:26:40 +02:00
MDL-31405 Assignment: Fixed date in reset to be called for every assignment
This commit is contained in:
parent
f8eff10319
commit
e63515ba93
5 changed files with 56 additions and 9 deletions
|
@ -5140,18 +5140,24 @@ function remove_course_contents($courseid, $showfeedback = true, array $options
|
|||
* @param array $fields array of date fields from mod table
|
||||
* @param int $timeshift time difference
|
||||
* @param int $courseid
|
||||
* @param int $modid (Optional) passed if specific mod instance in course needs to be updated.
|
||||
* @return bool success
|
||||
*/
|
||||
function shift_course_mod_dates($modname, $fields, $timeshift, $courseid) {
|
||||
function shift_course_mod_dates($modname, $fields, $timeshift, $courseid, $modid = 0) {
|
||||
global $CFG, $DB;
|
||||
include_once($CFG->dirroot.'/mod/'.$modname.'/lib.php');
|
||||
|
||||
$return = true;
|
||||
$params = array($timeshift, $courseid);
|
||||
foreach ($fields as $field) {
|
||||
$updatesql = "UPDATE {".$modname."}
|
||||
SET $field = $field + ?
|
||||
WHERE course=? AND $field<>0";
|
||||
$return = $DB->execute($updatesql, array($timeshift, $courseid)) && $return;
|
||||
if ($modid) {
|
||||
$updatesql .= ' AND id=?';
|
||||
$params[] = $modid;
|
||||
}
|
||||
$return = $DB->execute($updatesql, $params) && $return;
|
||||
}
|
||||
|
||||
$refreshfunction = $modname.'_refresh_events';
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue