mirror of
https://github.com/moodle/moodle.git
synced 2025-01-18 22:08:20 +01:00
Merge branch 'MDL-63167-master' of git://github.com/peterRd/moodle
This commit is contained in:
commit
2cde5c5267
@ -53,48 +53,4 @@ trait gradingform_legacy_polyfill {
|
||||
public static function delete_gradingform_for_instances(array $instanceids) {
|
||||
static::_delete_gradingform_for_instances($instanceids);
|
||||
}
|
||||
|
||||
/**
|
||||
* This method is used to export any user data this sub-plugin has using the object to get the context and userid.
|
||||
*
|
||||
* @deprecated Since Moodle 3.6 MDL-62535 Please use the methods in the gradingform_provider_v2 interface.
|
||||
* @todo MDL-63167 remove this method.
|
||||
*
|
||||
* @param context $context Context owner of the data.
|
||||
* @param stdClass $definition Grading definition entry to export.
|
||||
* @param int $userid The user whose information is to be exported.
|
||||
*
|
||||
* @return stdClass The data to export.
|
||||
*/
|
||||
public static function get_gradingform_export_data(\context $context, $definition, int $userid) {
|
||||
debugging('This method is deprecated. Please use the gradingform_provider_v2 interface', DEBUG_DEVELOPER);
|
||||
return static::_get_gradingform_export_data($context, $definition, $userid);
|
||||
}
|
||||
|
||||
/**
|
||||
* Any call to this method should delete all user data for the context defined.
|
||||
*
|
||||
* @deprecated Since Moodle 3.6 MDL-62535 Please use the methods in the gradingform_provider_v2 interface.
|
||||
* @todo MDL-63167 remove this method.
|
||||
*
|
||||
* @param context $context Context owner of the data.
|
||||
*/
|
||||
public static function delete_gradingform_for_context(\context $context) {
|
||||
debugging('This method is deprecated. Please use the gradingform_provider_v2 interface', DEBUG_DEVELOPER);
|
||||
static::_delete_gradingform_for_context($context);
|
||||
}
|
||||
|
||||
/**
|
||||
* A call to this method should delete user data (where practicle) from the userid and context.
|
||||
*
|
||||
* @deprecated Since Moodle 3.6 MDL-62535 Please use the methods in the gradingform_provider_v2 interface.
|
||||
* @todo MDL-63167 remove this method.
|
||||
*
|
||||
* @param int $userid The user whose information is to be deleted.
|
||||
* @param context $context Context owner of the data.
|
||||
*/
|
||||
public static function delete_gradingform_for_userid(int $userid, \context $context) {
|
||||
debugging('This method is deprecated. Please use the gradingform_provider_v2 interface', DEBUG_DEVELOPER);
|
||||
static::_delete_gradingform_for_userid($userid, $context);
|
||||
}
|
||||
}
|
||||
|
@ -1,74 +0,0 @@
|
||||
<?php
|
||||
// This file is part of Moodle - http://moodle.org/
|
||||
//
|
||||
// Moodle is free software: you can redistribute it and/or modify
|
||||
// it under the terms of the GNU General Public License as published by
|
||||
// the Free Software Foundation, either version 3 of the License, or
|
||||
// (at your option) any later version.
|
||||
//
|
||||
// Moodle is distributed in the hope that it will be useful,
|
||||
// but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
// GNU General Public License for more details.
|
||||
//
|
||||
// You should have received a copy of the GNU General Public License
|
||||
// along with Moodle. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
/**
|
||||
* This file contains the grading method interface.
|
||||
*
|
||||
* Grading method plugins should implement this if they store personal information.
|
||||
*
|
||||
* @deprecated since Moodle 3.6 MDL-62535 Please use the gradingform_provider_v2 interface
|
||||
* @todo MDL-63167 Remove this file.
|
||||
*
|
||||
* @package core_grading
|
||||
* @copyright 2018 Sara Arjona <sara@moodle.com>
|
||||
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
|
||||
*/
|
||||
|
||||
namespace core_grading\privacy;
|
||||
|
||||
defined('MOODLE_INTERNAL') || die();
|
||||
|
||||
use core_privacy\local\request\approved_contextlist;
|
||||
|
||||
interface gradingform_provider extends
|
||||
\core_privacy\local\request\plugin\subsystem_provider,
|
||||
\core_privacy\local\deprecated {
|
||||
|
||||
/**
|
||||
* This method is used to export any user data this sub-plugin has using the object to get the context and userid.
|
||||
*
|
||||
* @deprecated since Moodle 3.6 MDL-62535 Please use the methods in the gradingform_provider_v2 interface
|
||||
* @todo MDL-63167 Remove this file.
|
||||
*
|
||||
* @param \context $context Context owner of the data.
|
||||
* @param \stdClass $definition Grading definition entry to export.
|
||||
* @param int $userid The user whose information is to be exported.
|
||||
*
|
||||
* @return \stdClass The data to export.
|
||||
*/
|
||||
public static function get_gradingform_export_data(\context $context, $definition, int $userid);
|
||||
|
||||
/**
|
||||
* Any call to this method should delete all user data for the context defined.
|
||||
*
|
||||
* @deprecated since Moodle 3.6 MDL-62535 Please use the methods in the gradingform_provider_v2 interface
|
||||
* @todo MDL-63167 Remove this file.
|
||||
*
|
||||
* @param \context $context Context owner of the data.
|
||||
*/
|
||||
public static function delete_gradingform_for_context(\context $context);
|
||||
|
||||
/**
|
||||
* A call to this method should delete user data (where practicle) from the userid and context.
|
||||
*
|
||||
* @deprecated since Moodle 3.6 MDL-62535 Please use the methods in the gradingform_provider_v2 interface
|
||||
* @todo MDL-63167 Remove this file.
|
||||
*
|
||||
* @param int $userid The user to delete.
|
||||
* @param \context $context the context to refine the deletion.
|
||||
*/
|
||||
public static function delete_gradingform_for_userid(int $userid, \context $context);
|
||||
}
|
@ -304,19 +304,6 @@ class provider implements
|
||||
$tmpdata['timecopied'] = transform::datetime($definition->timecopied);
|
||||
}
|
||||
|
||||
// MDL-63167 - This section is to be removed with the final deprecation of the gradingform_provider interface.
|
||||
// Export gradingform information (if needed).
|
||||
$instancedata = manager::component_class_callback(
|
||||
"gradingform_{$definition->method}",
|
||||
gradingform_provider::class,
|
||||
'get_gradingform_export_data',
|
||||
[$context, $definition, $userid]
|
||||
);
|
||||
if (null !== $instancedata) {
|
||||
$tmpdata = array_merge($tmpdata, $instancedata);
|
||||
}
|
||||
// End of section to be removed with deprecation.
|
||||
|
||||
$defdata[] = (object) $tmpdata;
|
||||
|
||||
// Export grading_instances information.
|
||||
@ -378,14 +365,7 @@ class provider implements
|
||||
* @param \context $context the context to delete in.
|
||||
*/
|
||||
public static function delete_data_for_all_users_in_context(\context $context) {
|
||||
// MDL-63167 - This section is to be removed with the final deprecation of the gradingform_provider interface.
|
||||
manager::plugintype_class_callback(
|
||||
'gradingform',
|
||||
gradingform_provider::class,
|
||||
'delete_gradingform_for_context',
|
||||
[$context]
|
||||
);
|
||||
// End of section to be removed for final deprecation.
|
||||
// The only information left to be deleted here is the grading definitions. Currently we are not deleting these.
|
||||
}
|
||||
|
||||
/**
|
||||
@ -395,14 +375,7 @@ class provider implements
|
||||
* @param approved_contextlist $contextlist a list of contexts approved for deletion.
|
||||
*/
|
||||
public static function delete_data_for_user(approved_contextlist $contextlist) {
|
||||
// MDL-63167 - This section is to be removed with the final deprecation of the gradingform_provider interface.
|
||||
manager::plugintype_class_callback(
|
||||
'gradingform',
|
||||
gradingform_provider::class,
|
||||
'delete_gradingform_for_userid',
|
||||
[$contextlist]
|
||||
);
|
||||
// End of section to be removed for final deprecation.
|
||||
// The only information left to be deleted here is the grading definitions. Currently we are not deleting these.
|
||||
}
|
||||
|
||||
/**
|
||||
|
@ -1,6 +1,14 @@
|
||||
This files describes API changes in /grade/grading/form/* - Advanced grading methods
|
||||
information provided here is intended especially for developers.
|
||||
|
||||
=== 4.0 ===
|
||||
|
||||
* Removed gradingform_provider.
|
||||
* Removed the following deprecated functions:
|
||||
get_gradingform_export_data
|
||||
delete_gradingform_for_context
|
||||
delete_gradingform_for_userid
|
||||
|
||||
=== 3.6 ===
|
||||
|
||||
* The privacy interface gradingform_provider has been deprecated. Please use
|
||||
|
@ -69,56 +69,6 @@ class gradeform_privacy_legacy_polyfill_test extends advanced_testcase {
|
||||
test_legacy_polyfill_gradingform_provider::$mock = $mock;
|
||||
test_legacy_polyfill_gradingform_provider::delete_gradingform_for_instances([3, 17]);
|
||||
}
|
||||
|
||||
/**
|
||||
* Test the __get_gradingform_export_data shim.
|
||||
*/
|
||||
public function test_get_gradingform_export_data() {
|
||||
$userid = 476;
|
||||
$context = context_system::instance();
|
||||
|
||||
$mock = $this->createMock(test_gradingform_legacy_polyfill_mock_wrapper::class);
|
||||
$mock->expects($this->once())
|
||||
->method('get_return_value')
|
||||
->with('_get_gradingform_export_data', [$context, (object)[], $userid]);
|
||||
|
||||
test_legacy_polyfill_gradingform_provider::$mock = $mock;
|
||||
test_legacy_polyfill_gradingform_provider::get_gradingform_export_data($context, (object)[], $userid);
|
||||
$this->assertDebuggingCalled();
|
||||
}
|
||||
|
||||
/**
|
||||
* Test the _delete_gradingform_for_context shim.
|
||||
*/
|
||||
public function test_delete_gradingform_for_context() {
|
||||
$context = context_system::instance();
|
||||
|
||||
$mock = $this->createMock(test_gradingform_legacy_polyfill_mock_wrapper::class);
|
||||
$mock->expects($this->once())
|
||||
->method('get_return_value')
|
||||
->with('_delete_gradingform_for_context', [$context]);
|
||||
|
||||
test_legacy_polyfill_gradingform_provider::$mock = $mock;
|
||||
test_legacy_polyfill_gradingform_provider::delete_gradingform_for_context($context);
|
||||
$this->assertDebuggingCalled();
|
||||
}
|
||||
|
||||
/**
|
||||
* Test the _delete_gradingform_for_userid shim.
|
||||
*/
|
||||
public function test_delete_gradingform_for_user() {
|
||||
$userid = 696;
|
||||
$context = \context_system::instance();
|
||||
|
||||
$mock = $this->createMock(test_gradingform_legacy_polyfill_mock_wrapper::class);
|
||||
$mock->expects($this->once())
|
||||
->method('get_return_value')
|
||||
->with('_delete_gradingform_for_userid', [$userid, $context]);
|
||||
|
||||
test_legacy_polyfill_gradingform_provider::$mock = $mock;
|
||||
test_legacy_polyfill_gradingform_provider::delete_gradingform_for_userid($userid, $context);
|
||||
$this->assertDebuggingCalled();
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
@ -129,7 +79,6 @@ class gradeform_privacy_legacy_polyfill_test extends advanced_testcase {
|
||||
*/
|
||||
class test_legacy_polyfill_gradingform_provider implements
|
||||
\core_privacy\local\metadata\provider,
|
||||
\core_grading\privacy\gradingform_provider,
|
||||
\core_grading\privacy\gradingform_provider_v2 {
|
||||
|
||||
use \core_grading\privacy\gradingform_legacy_polyfill;
|
||||
@ -169,47 +118,6 @@ class test_legacy_polyfill_gradingform_provider implements
|
||||
protected static function _get_metadata(\core_privacy\local\metadata\collection $collection) {
|
||||
return $collection;
|
||||
}
|
||||
|
||||
/**
|
||||
* This method is used to export any user data this sub-plugin has using the object to get the context and userid.
|
||||
*
|
||||
* @deprecated Since Moodle 3.6 MDL-62535 Please use the methods in the gradingform_provider_v2 interface.
|
||||
* @todo MDL-63167 remove this method.
|
||||
*
|
||||
* @param context $context Context owner of the data.
|
||||
* @param stdClass $definition Grading definition entry to export.
|
||||
* @param int $userid The user whose information is to be exported.
|
||||
*
|
||||
* @return stdClass The data to export.
|
||||
*/
|
||||
protected static function _get_gradingform_export_data(\context $context, $definition, int $userid) {
|
||||
static::$mock->get_return_value(__FUNCTION__, func_get_args());
|
||||
}
|
||||
|
||||
/**
|
||||
* Any call to this method should delete all user data for the context defined.
|
||||
*
|
||||
* @deprecated Since Moodle 3.6 MDL-62535 Please use the methods in the gradingform_provider_v2 interface.
|
||||
* @todo MDL-63167 remove this method.
|
||||
*
|
||||
* @param context $context Context owner of the data.
|
||||
*/
|
||||
protected static function _delete_gradingform_for_context(\context $context) {
|
||||
static::$mock->get_return_value(__FUNCTION__, func_get_args());
|
||||
}
|
||||
|
||||
/**
|
||||
* A call to this method should delete user data (where practicle) from the userid and context.
|
||||
*
|
||||
* @deprecated Since Moodle 3.6 MDL-62535 Please use the methods in the gradingform_provider_v2 interface.
|
||||
* @todo MDL-63167 remove this method.
|
||||
*
|
||||
* @param int $userid The user whose information is to be deleted.
|
||||
* @param context $context Context owner of the data.
|
||||
*/
|
||||
protected static function _delete_gradingform_for_userid(int $userid, \context $context) {
|
||||
static::$mock->get_return_value(__FUNCTION__, func_get_args());
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
|
Loading…
x
Reference in New Issue
Block a user