MDL-53149 mod_data: update backup and webservices for timemodified
Amended to add support for standard restore apply_date_offset().
This commit is contained in:
committed by
Eloy Lafuente (stronk7)
parent
b174e9efa6
commit
4539892cda
@@ -45,7 +45,7 @@ class backup_data_activity_structure_step extends backup_activity_structure_step
|
||||
'addtemplate', 'rsstemplate', 'rsstitletemplate', 'csstemplate',
|
||||
'jstemplate', 'asearchtemplate', 'approval', 'manageapproved', 'scale',
|
||||
'assessed', 'assesstimestart', 'assesstimefinish', 'defaultsort',
|
||||
'defaultsortdir', 'editany', 'notification'));
|
||||
'defaultsortdir', 'editany', 'notification', 'timemodified'));
|
||||
|
||||
$fields = new backup_nested_element('fields');
|
||||
|
||||
|
||||
@@ -61,6 +61,8 @@ class restore_data_activity_structure_step extends restore_activity_structure_st
|
||||
$data->timeviewto = $this->apply_date_offset($data->timeviewto);
|
||||
$data->assesstimestart = $this->apply_date_offset($data->assesstimestart);
|
||||
$data->assesstimefinish = $this->apply_date_offset($data->assesstimefinish);
|
||||
// Added in 3.1, hence conditional.
|
||||
$data->timemodified = isset($data->timemodified) ? $this->apply_date_offset($data->timemodified) : time();
|
||||
|
||||
if ($data->scale < 0) { // scale found, get mapping
|
||||
$data->scale = -($this->get_mappingid('scale', abs($data->scale)));
|
||||
|
||||
@@ -128,7 +128,7 @@ class mod_data_external extends external_api {
|
||||
$additionalfields = array('maxentries', 'rssarticles', 'singletemplate', 'listtemplate',
|
||||
'listtemplateheader', 'listtemplatefooter', 'addtemplate', 'rsstemplate', 'rsstitletemplate',
|
||||
'csstemplate', 'jstemplate', 'asearchtemplate', 'approval', 'manageapproved', 'scale', 'assessed', 'assesstimestart',
|
||||
'assesstimefinish', 'defaultsort', 'defaultsortdir', 'editany', 'notification');
|
||||
'assesstimefinish', 'defaultsort', 'defaultsortdir', 'editany', 'notification', 'timemodified');
|
||||
|
||||
// This is for avoid a long repetitive list.
|
||||
foreach ($additionalfields as $field) {
|
||||
@@ -195,7 +195,8 @@ class mod_data_external extends external_api {
|
||||
'defaultsort' => new external_value(PARAM_INT, 'defaultsort field', VALUE_OPTIONAL),
|
||||
'defaultsortdir' => new external_value(PARAM_INT, 'defaultsortdir field', VALUE_OPTIONAL),
|
||||
'editany' => new external_value(PARAM_BOOL, 'editany field', VALUE_OPTIONAL),
|
||||
'notification' => new external_value(PARAM_INT, 'notification field', VALUE_OPTIONAL)
|
||||
'notification' => new external_value(PARAM_INT, 'notification field', VALUE_OPTIONAL),
|
||||
'timemodified' => new external_value(PARAM_INT, 'Time modified', VALUE_OPTIONAL)
|
||||
), 'Database'
|
||||
)
|
||||
),
|
||||
|
||||
@@ -141,7 +141,7 @@ class mod_data_external_testcase extends externallib_advanced_testcase {
|
||||
// Now, try as a teacher for getting all the additional fields.
|
||||
self::setUser($teacher);
|
||||
|
||||
$additionalfields = array('maxentries', 'rssarticles', 'singletemplate', 'listtemplate',
|
||||
$additionalfields = array('maxentries', 'rssarticles', 'singletemplate', 'listtemplate', 'timemodified',
|
||||
'listtemplateheader', 'listtemplatefooter', 'addtemplate', 'rsstemplate', 'rsstitletemplate',
|
||||
'csstemplate', 'jstemplate', 'asearchtemplate', 'approval', 'scale', 'assessed', 'assesstimestart',
|
||||
'assesstimefinish', 'defaultsort', 'defaultsortdir', 'editany', 'notification', 'manageapproved');
|
||||
|
||||
Reference in New Issue
Block a user