mirror of
https://github.com/moodle/moodle.git
synced 2025-08-07 18:06:51 +02:00
MDL-51579 core_course: New Web Service get_course_module_by_instance
This commit is contained in:
parent
35d3e8b00b
commit
13bb68199e
4 changed files with 128 additions and 1 deletions
|
@ -2418,6 +2418,54 @@ class core_course_external extends external_api {
|
|||
);
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns description of method parameters
|
||||
*
|
||||
* @return external_function_parameters
|
||||
* @since Moodle 3.0
|
||||
*/
|
||||
public static function get_course_module_by_instance_parameters() {
|
||||
return new external_function_parameters(
|
||||
array(
|
||||
'module' => new external_value(PARAM_COMPONENT, 'The module name'),
|
||||
'instance' => new external_value(PARAM_INT, 'The module instance id')
|
||||
)
|
||||
);
|
||||
}
|
||||
|
||||
/**
|
||||
* Return information about a course module.
|
||||
*
|
||||
* @param int $module the module name
|
||||
* @param int $instance the module instance
|
||||
* @return array of warnings and the course module
|
||||
* @since Moodle 3.0
|
||||
* @throws moodle_exception
|
||||
*/
|
||||
public static function get_course_module_by_instance($module, $instance) {
|
||||
|
||||
$params = self::validate_parameters(self::get_course_module_by_instance_parameters(),
|
||||
array(
|
||||
'module' => $module,
|
||||
'instance' => $instance,
|
||||
));
|
||||
|
||||
$warnings = array();
|
||||
$cm = get_coursemodule_from_instance($params['module'], $params['instance'], 0, false, MUST_EXIST);
|
||||
|
||||
return self::get_course_module($cm->id);
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns description of method result value
|
||||
*
|
||||
* @return external_description
|
||||
* @since Moodle 3.0
|
||||
*/
|
||||
public static function get_course_module_by_instance_returns() {
|
||||
return self::get_course_module_returns();
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue