MDL-76583 core: Update uses of external_* classes

This commit is contained in:
Andrew Nicols 2022-12-16 11:00:58 +08:00
parent 3e1920966c
commit a3cc26f8bb
382 changed files with 4067 additions and 4443 deletions

View file

@ -24,15 +24,11 @@
namespace tool_analytics;
defined('MOODLE_INTERNAL') || die();
require_once("$CFG->libdir/externallib.php");
use external_api;
use external_function_parameters;
use external_value;
use external_single_structure;
use external_multiple_structure;
use core_external\external_api;
use core_external\external_function_parameters;
use core_external\external_value;
use core_external\external_single_structure;
use core_external\external_multiple_structure;
/**
* This is the external API for this component.

View file

@ -25,14 +25,22 @@
namespace tool_behat\external;
use core_external\external_api;
use core_external\external_function_parameters;
use core_external\external_multiple_structure;
use core_external\external_single_structure;
use core_external\external_value;
defined('MOODLE_INTERNAL') || die();
require_once($CFG->libdir . '/externallib.php');
// Ensure we can load Behat and Facebook namespaces in behat libraries.
require_once($CFG->dirroot . '/vendor/autoload.php');
require_once($CFG->libdir . '/tests/behat/behat_data_generators.php');
/**
* External function for getting properties of entity generators.
*/
class get_entity_generator extends \external_api {
class get_entity_generator extends external_api {
/**
* Define parameters for external function.
@ -42,11 +50,11 @@ class get_entity_generator extends \external_api {
* behat_data_generators::parse_entity_type, which validates the format of the parameter and throws an exception if it is not
* correct.
*
* @return \external_function_parameters
* @return external_function_parameters
*/
public static function execute_parameters(): \external_function_parameters {
return new \external_function_parameters([
'entitytype' => new \external_value(PARAM_RAW, 'Entity type that can be created by a generator.'),
public static function execute_parameters(): external_function_parameters {
return new external_function_parameters([
'entitytype' => new external_value(PARAM_RAW, 'Entity type that can be created by a generator.'),
]);
}
@ -78,12 +86,12 @@ class get_entity_generator extends \external_api {
*
* Return required fields
*
* @return \external_single_structure
* @return external_single_structure
*/
public static function execute_returns(): \external_single_structure {
return new \external_single_structure([
'required' => new \external_multiple_structure(
new \external_value(PARAM_TEXT, 'Required field'),
public static function execute_returns(): external_single_structure {
return new external_single_structure([
'required' => new external_multiple_structure(
new external_value(PARAM_TEXT, 'Required field'),
'Required fields',
VALUE_OPTIONAL
),

View file

@ -21,30 +21,24 @@
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
*/
namespace tool_dataprivacy;
defined('MOODLE_INTERNAL') || die();
require_once("$CFG->libdir/externallib.php");
require_once($CFG->dirroot . '/' . $CFG->admin . '/tool/dataprivacy/lib.php');
use coding_exception;
use context_helper;
use context_system;
use context_user;
use core\invalid_persistent_exception;
use core\notification;
use core_user;
use dml_exception;
use external_api;
use external_description;
use external_function_parameters;
use external_multiple_structure;
use external_single_structure;
use external_value;
use external_warnings;
use invalid_parameter_exception;
use core_external\external_api;
use core_external\external_function_parameters;
use core_external\external_multiple_structure;
use core_external\external_single_structure;
use core_external\external_value;
use core_external\external_warnings;
use moodle_exception;
use required_capability_exception;
use restricted_context_exception;
use tool_dataprivacy\external\category_exporter;
use tool_dataprivacy\external\data_request_exporter;
use tool_dataprivacy\external\purpose_exporter;
@ -136,7 +130,7 @@ class external extends external_api {
* Parameter description for cancel_data_request().
*
* @since Moodle 3.5
* @return external_description
* @return \core_external\external_description
*/
public static function cancel_data_request_returns() {
return new external_single_structure([
@ -228,7 +222,7 @@ class external extends external_api {
* Parameter description for contact_dpo().
*
* @since Moodle 3.5
* @return external_description
* @return \core_external\external_description
*/
public static function contact_dpo_returns() {
return new external_single_structure([
@ -293,7 +287,7 @@ class external extends external_api {
* Parameter description for mark_complete().
*
* @since Moodle 3.5.2
* @return external_description
* @return \core_external\external_description
*/
public static function mark_complete_returns() {
return new external_single_structure([
@ -355,7 +349,7 @@ class external extends external_api {
* Parameter description for get_data_request().
*
* @since Moodle 3.5
* @return external_description
* @return \core_external\external_description
*/
public static function get_data_request_returns() {
return new external_single_structure([
@ -427,7 +421,7 @@ class external extends external_api {
* Parameter description for approve_data_request().
*
* @since Moodle 3.5
* @return external_description
* @return \core_external\external_description
*/
public static function approve_data_request_returns() {
return new external_single_structure([
@ -506,7 +500,7 @@ class external extends external_api {
* Parameter description for bulk_approve_data_requests().
*
* @since Moodle 3.5
* @return external_description
* @return \core_external\external_description
*/
public static function bulk_approve_data_requests_returns() {
return new external_single_structure([
@ -578,7 +572,7 @@ class external extends external_api {
* Parameter description for deny_data_request().
*
* @since Moodle 3.5
* @return external_description
* @return \core_external\external_description
*/
public static function deny_data_request_returns() {
return new external_single_structure([
@ -657,7 +651,7 @@ class external extends external_api {
* Parameter description for bulk_deny_data_requests().
*
* @since Moodle 3.5
* @return external_description
* @return \core_external\external_description
*/
public static function bulk_deny_data_requests_returns() {
return new external_single_structure([
@ -740,7 +734,7 @@ class external extends external_api {
* Parameter description for get_users().
*
* @since Moodle 3.5
* @return external_description
* @return \core_external\external_description
* @throws coding_exception
*/
public static function get_users_returns() {

View file

@ -24,12 +24,9 @@
namespace tool_dataprivacy\external;
defined('MOODLE_INTERNAL') || die();
use coding_exception;
use core\external\persistent_exporter;
use core_user;
use core_user\external\user_summary_exporter;
use dml_exception;
use moodle_exception;
use renderer_base;
use tool_dataprivacy\api;
use tool_dataprivacy\data_request;

View file

@ -24,9 +24,7 @@
namespace tool_dataprivacy\external;
defined('MOODLE_INTERNAL') || die();
use coding_exception;
use core\external\persistent_exporter;
use Exception;
use renderer_base;
use tool_dataprivacy\context_instance;
use tool_dataprivacy\purpose;

View file

@ -24,6 +24,7 @@
namespace tool_dataprivacy\external;
use core_external\external_api;
use externallib_advanced_testcase;
use tool_dataprivacy\api;
use tool_dataprivacy\context_instance;
@ -123,7 +124,7 @@ class external_test extends externallib_advanced_testcase {
$this->setAdminUser();
api::update_request_status($datarequest->get('id'), api::DATAREQUEST_STATUS_AWAITING_APPROVAL);
$result = external::approve_data_request($datarequest->get('id'));
$return = (object) \external_api::clean_returnvalue(external::approve_data_request_returns(), $result);
$return = (object) external_api::clean_returnvalue(external::approve_data_request_returns(), $result);
$this->assertTrue($return->result);
$this->assertEmpty($return->warnings);
}
@ -139,7 +140,7 @@ class external_test extends externallib_advanced_testcase {
$result = external::approve_data_request(1);
$return = (object) \external_api::clean_returnvalue(external::approve_data_request_returns(), $result);
$return = (object) external_api::clean_returnvalue(external::approve_data_request_returns(), $result);
$this->assertFalse($return->result);
$this->assertCount(1, $return->warnings);
$warning = reset($return->warnings);
@ -165,7 +166,7 @@ class external_test extends externallib_advanced_testcase {
$this->setUser($otheruser);
$result = external::cancel_data_request($datarequest->get('id'));
$return = (object) \external_api::clean_returnvalue(external::approve_data_request_returns(), $result);
$return = (object) external_api::clean_returnvalue(external::approve_data_request_returns(), $result);
$this->assertFalse($return->result);
$this->assertCount(1, $return->warnings);
$warning = reset($return->warnings);
@ -194,7 +195,7 @@ class external_test extends externallib_advanced_testcase {
$datarequest = api::create_data_request($otheruser->id, api::DATAREQUEST_TYPE_EXPORT, $comment);
$result = external::cancel_data_request($datarequest->get('id'));
$return = (object) \external_api::clean_returnvalue(external::approve_data_request_returns(), $result);
$return = (object) external_api::clean_returnvalue(external::approve_data_request_returns(), $result);
$this->assertTrue($return->result);
$this->assertEmpty($return->warnings);
}
@ -250,7 +251,7 @@ class external_test extends externallib_advanced_testcase {
$datarequest = api::create_data_request($otheruser->id, api::DATAREQUEST_TYPE_EXPORT, $comment);
$result = external::cancel_data_request($datarequest->get('id'));
$return = (object) \external_api::clean_returnvalue(external::approve_data_request_returns(), $result);
$return = (object) external_api::clean_returnvalue(external::approve_data_request_returns(), $result);
$this->assertTrue($return->result);
$this->assertEmpty($return->warnings);
}
@ -273,7 +274,7 @@ class external_test extends externallib_advanced_testcase {
$this->setUser($requester);
$result = external::cancel_data_request($datarequest->get('id'));
$return = (object) \external_api::clean_returnvalue(external::approve_data_request_returns(), $result);
$return = (object) external_api::clean_returnvalue(external::approve_data_request_returns(), $result);
$this->assertTrue($return->result);
$this->assertEmpty($return->warnings);
}
@ -290,7 +291,7 @@ class external_test extends externallib_advanced_testcase {
$this->setUser($user);
$message = 'Hello world!';
$result = external::contact_dpo($message);
$return = (object) \external_api::clean_returnvalue(external::contact_dpo_returns(), $result);
$return = (object) external_api::clean_returnvalue(external::contact_dpo_returns(), $result);
$this->assertTrue($return->result);
$this->assertEmpty($return->warnings);
}
@ -385,7 +386,7 @@ class external_test extends externallib_advanced_testcase {
$this->setAdminUser();
api::update_request_status($datarequest->get('id'), api::DATAREQUEST_STATUS_AWAITING_APPROVAL);
$result = external::approve_data_request($datarequest->get('id'));
$return = (object) \external_api::clean_returnvalue(external::deny_data_request_returns(), $result);
$return = (object) external_api::clean_returnvalue(external::deny_data_request_returns(), $result);
$this->assertTrue($return->result);
$this->assertEmpty($return->warnings);
}
@ -400,7 +401,7 @@ class external_test extends externallib_advanced_testcase {
$this->setAdminUser();
$result = external::deny_data_request(1);
$return = (object) \external_api::clean_returnvalue(external::deny_data_request_returns(), $result);
$return = (object) external_api::clean_returnvalue(external::deny_data_request_returns(), $result);
$this->assertFalse($return->result);
$this->assertCount(1, $return->warnings);
$warning = reset($return->warnings);
@ -462,7 +463,7 @@ class external_test extends externallib_advanced_testcase {
$this->setAdminUser();
$result = external::get_data_request($datarequest->get('id'));
$return = (object) \external_api::clean_returnvalue(external::get_data_request_returns(), $result);
$return = (object) external_api::clean_returnvalue(external::get_data_request_returns(), $result);
$this->assertEquals(api::DATAREQUEST_TYPE_EXPORT, $return->result['type']);
$this->assertEquals('sample comment', $return->result['comments']);
$this->assertEquals($requester->id, $return->result['userid']);
@ -542,7 +543,7 @@ class external_test extends externallib_advanced_testcase {
$result = external::set_context_defaults(CONTEXT_MODULE, $categoryid, $purposeid, $modulename, $override);
// Extract the result.
$return = \external_api::clean_returnvalue(external::set_context_defaults_returns(), $result);
$return = external_api::clean_returnvalue(external::set_context_defaults_returns(), $result);
$this->assertTrue($return['result']);
// Check the assignment context instance.
@ -626,7 +627,7 @@ class external_test extends externallib_advanced_testcase {
$result = external::get_category_options($includeinherit, $includenotset);
// Extract the options.
$return = (object) \external_api::clean_returnvalue(external::get_category_options_returns(), $result);
$return = (object) external_api::clean_returnvalue(external::get_category_options_returns(), $result);
$options = $return->options;
// Make sure everything checks out.
@ -690,7 +691,7 @@ class external_test extends externallib_advanced_testcase {
$result = external::get_purpose_options($includeinherit, $includenotset);
// Extract the options.
$return = (object) \external_api::clean_returnvalue(external::get_purpose_options_returns(), $result);
$return = (object) external_api::clean_returnvalue(external::get_purpose_options_returns(), $result);
$options = $return->options;
// Make sure everything checks out.
@ -749,7 +750,7 @@ class external_test extends externallib_advanced_testcase {
$result = external::get_activity_options($nodefaults);
// Extract the options.
$return = (object) \external_api::clean_returnvalue(external::get_activity_options_returns(), $result);
$return = (object) external_api::clean_returnvalue(external::get_activity_options_returns(), $result);
$options = $return->options;
// Make sure the options list is not empty.
@ -792,7 +793,7 @@ class external_test extends externallib_advanced_testcase {
api::update_request_status($requestid2, api::DATAREQUEST_STATUS_AWAITING_APPROVAL);
$result = external::bulk_approve_data_requests([$requestid1, $requestid2]);
$return = (object) \external_api::clean_returnvalue(external::bulk_approve_data_requests_returns(), $result);
$return = (object) external_api::clean_returnvalue(external::bulk_approve_data_requests_returns(), $result);
$this->assertTrue($return->result);
$this->assertEmpty($return->warnings);
}
@ -807,7 +808,7 @@ class external_test extends externallib_advanced_testcase {
$result = external::bulk_approve_data_requests([42]);
$return = (object) \external_api::clean_returnvalue(external::bulk_approve_data_requests_returns(), $result);
$return = (object) external_api::clean_returnvalue(external::bulk_approve_data_requests_returns(), $result);
$this->assertFalse($return->result);
$this->assertCount(1, $return->warnings);
$warning = reset($return->warnings);
@ -895,7 +896,7 @@ class external_test extends externallib_advanced_testcase {
api::update_request_status($requestid2, api::DATAREQUEST_STATUS_AWAITING_APPROVAL);
$result = external::bulk_deny_data_requests([$requestid1, $requestid2]);
$return = (object) \external_api::clean_returnvalue(external::bulk_approve_data_requests_returns(), $result);
$return = (object) external_api::clean_returnvalue(external::bulk_approve_data_requests_returns(), $result);
$this->assertTrue($return->result);
$this->assertEmpty($return->warnings);
}
@ -908,7 +909,7 @@ class external_test extends externallib_advanced_testcase {
$this->setAdminUser();
$result = external::bulk_deny_data_requests([42]);
$return = (object) \external_api::clean_returnvalue(external::bulk_approve_data_requests_returns(), $result);
$return = (object) external_api::clean_returnvalue(external::bulk_approve_data_requests_returns(), $result);
$this->assertFalse($return->result);
$this->assertCount(1, $return->warnings);

View file

@ -24,38 +24,11 @@
namespace tool_lp;
defined('MOODLE_INTERNAL') || die();
require_once("$CFG->libdir/externallib.php");
require_once("$CFG->libdir/grade/grade_scale.php");
use context;
use context_system;
use context_course;
use context_helper;
use context_system;
use context_user;
use coding_exception;
use external_api;
use external_function_parameters;
use external_value;
use external_format_value;
use external_single_structure;
use external_multiple_structure;
use invalid_parameter_exception;
use required_capability_exception;
use core_cohort\external\cohort_summary_exporter;
use tool_lp\external\competency_path_exporter;
use tool_lp\external\competency_summary_exporter;
use tool_lp\external\course_competency_statistics_exporter;
use core_course\external\course_module_summary_exporter;
use core_course\external\course_summary_exporter;
use tool_lp\external\template_statistics_exporter;
use tool_lp\external\user_competency_summary_exporter;
use tool_lp\external\user_competency_summary_in_course_exporter;
use tool_lp\external\user_competency_summary_in_plan_exporter;
use tool_lp\external\user_evidence_summary_exporter;
use tool_lp\output\user_competency_summary_in_plan;
use tool_lp\output\user_competency_summary_in_course;
use core_competency\api;
use core_competency\external\competency_exporter;
use core_competency\external\competency_framework_exporter;
@ -66,7 +39,24 @@ use core_competency\external\template_exporter;
use core_competency\external\user_competency_course_exporter;
use core_competency\external\user_competency_exporter;
use core_competency\external\user_competency_plan_exporter;
use core_course\external\course_module_summary_exporter;
use core_course\external\course_summary_exporter;
use core_external\external_api;
use core_external\external_function_parameters;
use core_external\external_multiple_structure;
use core_external\external_single_structure;
use core_external\external_value;
use core_user\external\user_summary_exporter;
use tool_lp\external\competency_path_exporter;
use tool_lp\external\competency_summary_exporter;
use tool_lp\external\course_competency_statistics_exporter;
use tool_lp\external\template_statistics_exporter;
use tool_lp\external\user_competency_summary_exporter;
use tool_lp\external\user_competency_summary_in_course_exporter;
use tool_lp\external\user_competency_summary_in_plan_exporter;
use tool_lp\external\user_evidence_summary_exporter;
use tool_lp\output\user_competency_summary_in_course;
use tool_lp\output\user_competency_summary_in_plan;
/**
* This is the external API for this tool.
@ -109,7 +99,7 @@ class external extends external_api {
/**
* Returns description of data_for_competency_frameworks_manage_page() parameters.
*
* @return \external_function_parameters
* @return external_function_parameters
*/
public static function data_for_competency_frameworks_manage_page_parameters() {
$params = array('pagecontext' => self::get_context_parameters());
@ -145,7 +135,7 @@ class external extends external_api {
/**
* Returns description of data_for_competency_frameworks_manage_page() result value.
*
* @return \external_description
* @return external_description
*/
public static function data_for_competency_frameworks_manage_page_returns() {
return new external_single_structure(array (
@ -164,7 +154,7 @@ class external extends external_api {
/**
* Returns description of data_for_competencies_manage_page() parameters.
*
* @return \external_function_parameters
* @return external_function_parameters
*/
public static function data_for_competencies_manage_page_parameters() {
$competencyframeworkid = new external_value(
@ -215,7 +205,7 @@ class external extends external_api {
/**
* Returns description of data_for_competencies_manage_page() result value.
*
* @return \external_description
* @return external_description
*/
public static function data_for_competencies_manage_page_returns() {
return new external_single_structure(array (
@ -232,7 +222,7 @@ class external extends external_api {
/**
* Returns description of data_for_competency_summary() parameters.
*
* @return \external_function_parameters
* @return external_function_parameters
*/
public static function data_for_competency_summary_parameters() {
$competencyid = new external_value(
@ -291,7 +281,7 @@ class external extends external_api {
/**
* Returns description of data_for_competency_summary_() result value.
*
* @return \external_description
* @return external_description
*/
public static function data_for_competency_summary_returns() {
return competency_summary_exporter::get_read_structure();
@ -300,7 +290,7 @@ class external extends external_api {
/**
* Returns description of list_courses_using_competency() parameters.
*
* @return \external_function_parameters
* @return external_function_parameters
*/
public static function list_courses_using_competency_parameters() {
$competencyid = new external_value(
@ -345,7 +335,7 @@ class external extends external_api {
/**
* Returns description of list_courses_using_competency() result value.
*
* @return \external_description
* @return external_description
*/
public static function list_courses_using_competency_returns() {
return new external_multiple_structure(course_summary_exporter::get_read_structure());
@ -355,7 +345,7 @@ class external extends external_api {
/**
* Returns description of data_for_course_competenies_page() parameters.
*
* @return \external_function_parameters
* @return external_function_parameters
*/
public static function data_for_course_competencies_page_parameters() {
$courseid = new external_value(
@ -399,7 +389,7 @@ class external extends external_api {
/**
* Returns description of data_for_course_competencies_page() result value.
*
* @return \external_description
* @return external_description
*/
public static function data_for_course_competencies_page_returns() {
$ucc = user_competency_course_exporter::get_read_structure();
@ -441,7 +431,7 @@ class external extends external_api {
/**
* Returns description of data_for_templates_manage_page() parameters.
*
* @return \external_function_parameters
* @return external_function_parameters
*/
public static function data_for_templates_manage_page_parameters() {
$params = array('pagecontext' => self::get_context_parameters());
@ -474,7 +464,7 @@ class external extends external_api {
/**
* Returns description of data_for_templates_manage_page() result value.
*
* @return \external_description
* @return external_description
*/
public static function data_for_templates_manage_page_returns() {
return new external_single_structure(array (
@ -494,7 +484,7 @@ class external extends external_api {
/**
* Returns description of data_for_template_competenies_page() parameters.
*
* @return \external_function_parameters
* @return external_function_parameters
*/
public static function data_for_template_competencies_page_parameters() {
$templateid = new external_value(
@ -535,7 +525,7 @@ class external extends external_api {
/**
* Returns description of data_for_template_competencies_page() result value.
*
* @return \external_description
* @return external_description
*/
public static function data_for_template_competencies_page_returns() {
return new external_single_structure(array (
@ -556,7 +546,7 @@ class external extends external_api {
/**
* Returns description of data_for_plan_competenies_page() parameters.
*
* @return \external_function_parameters
* @return external_function_parameters
*/
public static function data_for_plan_page_parameters() {
$planid = new external_value(
@ -593,7 +583,7 @@ class external extends external_api {
/**
* Returns description of data_for_plan_page() result value.
*
* @return \external_description
* @return external_description
*/
public static function data_for_plan_page_returns() {
$uc = user_competency_exporter::get_read_structure();
@ -624,7 +614,7 @@ class external extends external_api {
/**
* Returns description of data_for_plans_page() parameters.
*
* @return \external_function_parameters
* @return external_function_parameters
*/
public static function data_for_plans_page_parameters() {
$userid = new external_value(
@ -661,7 +651,7 @@ class external extends external_api {
/**
* Returns description of data_for_plans_page() result value.
*
* @return \external_description
* @return external_description
*/
public static function data_for_plans_page_returns() {
return new external_single_structure(array (
@ -681,7 +671,7 @@ class external extends external_api {
/**
* Returns description of external function parameters.
*
* @return \external_function_parameters
* @return external_function_parameters
*/
public static function data_for_user_evidence_list_page_parameters() {
return new external_function_parameters(array(
@ -711,7 +701,7 @@ class external extends external_api {
/**
* Returns description of external function result value.
*
* @return \external_description
* @return external_description
*/
public static function data_for_user_evidence_list_page_returns() {
return new external_single_structure(array (
@ -728,7 +718,7 @@ class external extends external_api {
/**
* Returns description of external function parameters.
*
* @return \external_function_parameters
* @return external_function_parameters
*/
public static function data_for_user_evidence_page_parameters() {
return new external_function_parameters(array(
@ -758,7 +748,7 @@ class external extends external_api {
/**
* Returns description of external function result value.
*
* @return \external_description
* @return external_description
*/
public static function data_for_user_evidence_page_returns() {
return new external_single_structure(array(
@ -805,7 +795,7 @@ class external extends external_api {
/**
* Returns description of data_for_related_competencies_section_returns() result value.
*
* @return external_description
* @return \core_external\external_description
*/
public static function data_for_related_competencies_section_returns() {
return new external_single_structure(array(
@ -920,7 +910,7 @@ class external extends external_api {
/**
* Returns description of external function result value.
*
* @return external_description
* @return \core_external\external_description
*/
public static function search_users_returns() {
global $CFG;
@ -934,7 +924,7 @@ class external extends external_api {
/**
* Returns description of external function.
*
* @return \external_function_parameters
* @return external_function_parameters
*/
public static function data_for_user_competency_summary_parameters() {
$userid = new external_value(
@ -979,7 +969,7 @@ class external extends external_api {
/**
* Returns description of external function.
*
* @return \external_description
* @return external_description
*/
public static function data_for_user_competency_summary_returns() {
return user_competency_summary_exporter::get_read_structure();
@ -988,7 +978,7 @@ class external extends external_api {
/**
* Returns description of data_for_user_competency_summary_in_plan() parameters.
*
* @return \external_function_parameters
* @return external_function_parameters
*/
public static function data_for_user_competency_summary_in_plan_parameters() {
$competencyid = new external_value(
@ -1035,7 +1025,7 @@ class external extends external_api {
/**
* Returns description of data_for_user_competency_summary_in_plan() result value.
*
* @return \external_description
* @return external_description
*/
public static function data_for_user_competency_summary_in_plan_returns() {
return user_competency_summary_in_plan_exporter::get_read_structure();
@ -1044,7 +1034,7 @@ class external extends external_api {
/**
* Returns description of data_for_user_competency_summary_in_course() parameters.
*
* @return \external_function_parameters
* @return external_function_parameters
*/
public static function data_for_user_competency_summary_in_course_parameters() {
$userid = new external_value(
@ -1097,10 +1087,9 @@ class external extends external_api {
/**
* Returns description of data_for_user_competency_summary_in_course() result value.
*
* @return \external_description
* @return external_description
*/
public static function data_for_user_competency_summary_in_course_returns() {
return user_competency_summary_in_course_exporter::get_read_structure();
}
}

View file

@ -17,15 +17,7 @@
namespace tool_lp;
use core_competency\api;
use core_competency\invalid_persistent_exception;
use core_competency\plan;
use core_competency\related_competency;
use core_competency\user_competency;
use core_competency\user_competency_plan;
use core_competency\plan_competency;
use core_competency\template;
use core_competency\template_competency;
use core_competency\course_competency_settings;
use core_external\external_api;
use externallib_advanced_testcase;
defined('MOODLE_INTERNAL') || die();
@ -152,7 +144,7 @@ class externallib_test extends externallib_advanced_testcase {
// First we search with no capability assigned.
$this->setUser($ux);
$result = external::search_users('yyylan', 'moodle/competency:planmanage');
$result = \external_api::clean_returnvalue(external::search_users_returns(), $result);
$result = external_api::clean_returnvalue(external::search_users_returns(), $result);
$this->assertCount(0, $result['users']);
$this->assertEquals(0, $result['count']);
@ -162,7 +154,7 @@ class externallib_test extends externallib_advanced_testcase {
$customrole = $this->assignUserCapability('moodle/competency:planview', $usercontext->id);
$result = external::search_users('yyylan', 'moodle/competency:planmanage');
$result = \external_api::clean_returnvalue(external::search_users_returns(), $result);
$result = external_api::clean_returnvalue(external::search_users_returns(), $result);
$this->assertCount(0, $result['users']);
$this->assertEquals(0, $result['count']);
@ -171,14 +163,14 @@ class externallib_test extends externallib_advanced_testcase {
$this->assignUserCapability('moodle/competency:planmanage', $usercontext->id, $customrole);
$result = external::search_users('yyylan', 'moodle/competency:planmanage');
$result = \external_api::clean_returnvalue(external::search_users_returns(), $result);
$result = external_api::clean_returnvalue(external::search_users_returns(), $result);
$this->assertCount(1, $result['users']);
$this->assertEquals(1, $result['count']);
// Now assign another role with the same capability (test duplicates).
role_assign($this->creatorrole, $ux->id, $usercontext->id);
$result = external::search_users('yyylan', 'moodle/competency:planmanage');
$result = \external_api::clean_returnvalue(external::search_users_returns(), $result);
$result = external_api::clean_returnvalue(external::search_users_returns(), $result);
$this->assertCount(1, $result['users']);
$this->assertEquals(1, $result['count']);
@ -187,7 +179,7 @@ class externallib_test extends externallib_advanced_testcase {
role_assign($this->creatorrole, $ux2->id, $systemcontext->id);
$this->setUser($ux2);
$result = external::search_users('yyylan', 'moodle/competency:planmanage');
$result = \external_api::clean_returnvalue(external::search_users_returns(), $result);
$result = external_api::clean_returnvalue(external::search_users_returns(), $result);
$this->assertCount(1, $result['users']);
$this->assertEquals(1, $result['count']);
@ -196,7 +188,7 @@ class externallib_test extends externallib_advanced_testcase {
role_assign($this->creatorrole, $ux3->id, $usercontext->id);
$this->setUser($ux3);
$result = external::search_users('yyylan', 'moodle/competency:planmanage');
$result = \external_api::clean_returnvalue(external::search_users_returns(), $result);
$result = external_api::clean_returnvalue(external::search_users_returns(), $result);
$this->assertCount(1, $result['users']);
$this->assertEquals(1, $result['count']);
@ -206,14 +198,14 @@ class externallib_test extends externallib_advanced_testcase {
// Now add a prevent override (will change nothing because we still have an ALLOW).
assign_capability('moodle/competency:planmanage', CAP_PREVENT, $customrole, $usercontext->id);
$result = external::search_users('yyylan', 'moodle/competency:planmanage');
$result = \external_api::clean_returnvalue(external::search_users_returns(), $result);
$result = external_api::clean_returnvalue(external::search_users_returns(), $result);
$this->assertCount(1, $result['users']);
$this->assertEquals(1, $result['count']);
// Now change to a prohibit override (should prevent access).
assign_capability('moodle/competency:planmanage', CAP_PROHIBIT, $customrole, $usercontext->id);
$result = external::search_users('yyylan', 'moodle/competency:planmanage');
$result = \external_api::clean_returnvalue(external::search_users_returns(), $result);
$result = external_api::clean_returnvalue(external::search_users_returns(), $result);
$this->assertCount(1, $result['users']);
$this->assertEquals(1, $result['count']);
@ -321,14 +313,14 @@ class externallib_test extends externallib_advanced_testcase {
// No identity fields.
$CFG->showuseridentity = '';
$result = external::search_users('cats', 'moodle/competency:planmanage');
$result = \external_api::clean_returnvalue(external::search_users_returns(), $result);
$result = external_api::clean_returnvalue(external::search_users_returns(), $result);
$this->assertCount(0, $result['users']);
$this->assertEquals(0, $result['count']);
// Filter by name.
$CFG->showuseridentity = '';
$result = external::search_users('dyyylan', 'moodle/competency:planmanage');
$result = \external_api::clean_returnvalue(external::search_users_returns(), $result);
$result = external_api::clean_returnvalue(external::search_users_returns(), $result);
$this->assertCount(2, $result['users']);
$this->assertEquals(2, $result['count']);
$this->assertEquals($u2->id, $result['users'][0]['id']);
@ -337,7 +329,7 @@ class externallib_test extends externallib_advanced_testcase {
// Filter by institution and name.
$CFG->showuseridentity = 'institution';
$result = external::search_users('bob', 'moodle/competency:planmanage');
$result = \external_api::clean_returnvalue(external::search_users_returns(), $result);
$result = external_api::clean_returnvalue(external::search_users_returns(), $result);
$this->assertCount(2, $result['users']);
$this->assertEquals(2, $result['count']);
$this->assertEquals($u1->id, $result['users'][0]['id']);
@ -346,7 +338,7 @@ class externallib_test extends externallib_advanced_testcase {
// Filter by id number.
$CFG->showuseridentity = 'idnumber';
$result = external::search_users('cats', 'moodle/competency:planmanage');
$result = \external_api::clean_returnvalue(external::search_users_returns(), $result);
$result = external_api::clean_returnvalue(external::search_users_returns(), $result);
$this->assertCount(1, $result['users']);
$this->assertEquals(1, $result['count']);
$this->assertEquals($u1->id, $result['users'][0]['id']);
@ -360,7 +352,7 @@ class externallib_test extends externallib_advanced_testcase {
// Filter by email.
$CFG->showuseridentity = 'email';
$result = external::search_users('yyy', 'moodle/competency:planmanage');
$result = \external_api::clean_returnvalue(external::search_users_returns(), $result);
$result = external_api::clean_returnvalue(external::search_users_returns(), $result);
$this->assertCount(3, $result['users']);
$this->assertEquals(3, $result['count']);
$this->assertEquals($u2->id, $result['users'][0]['id']);
@ -373,7 +365,7 @@ class externallib_test extends externallib_advanced_testcase {
// Filter by any.
$CFG->showuseridentity = 'idnumber,email,phone1,phone2,department,institution';
$result = external::search_users('yyy', 'moodle/competency:planmanage');
$result = \external_api::clean_returnvalue(external::search_users_returns(), $result);
$result = external_api::clean_returnvalue(external::search_users_returns(), $result);
$this->assertCount(3, $result['users']);
$this->assertEquals(3, $result['count']);
$this->assertArrayHasKey('idnumber', $result['users'][0]);
@ -389,12 +381,12 @@ class externallib_test extends externallib_advanced_testcase {
// Only names are included.
$result = external::search_users('fish');
$result = \external_api::clean_returnvalue(external::search_users_returns(), $result);
$result = external_api::clean_returnvalue(external::search_users_returns(), $result);
$this->assertCount(0, $result['users']);
$this->assertEquals(0, $result['count']);
$result = external::search_users('bob', 'moodle/competency:planmanage');
$result = \external_api::clean_returnvalue(external::search_users_returns(), $result);
$result = external_api::clean_returnvalue(external::search_users_returns(), $result);
$this->assertCount(1, $result['users']);
$this->assertEquals(1, $result['count']);
$this->assertEquals($u1->id, $result['users'][0]['id']);

View file

@ -23,7 +23,6 @@
*/
require_once(__DIR__ . '/../../../config.php');
require_once($CFG->libdir . '/externallib.php');
$userid = required_param('userid', PARAM_INT); // The user id the key belongs to (for double-checking).
$key = required_param('key', PARAM_ALPHANUMEXT); // The key generated by the tool_mobile_external::get_autologin_key() external function.

View file

@ -170,12 +170,12 @@ class api {
// Check if contacting site support is available to all visitors.
$sitesupportavailable = (isset($CFG->supportavailability) && $CFG->supportavailability == CONTACT_SUPPORT_ANYONE);
list($authinstructions, $notusedformat) = external_format_text($CFG->auth_instructions, FORMAT_MOODLE, $context->id);
list($maintenancemessage, $notusedformat) = external_format_text($CFG->maintenance_message, FORMAT_MOODLE, $context->id);
[$authinstructions] = \core_external\util::format_text($CFG->auth_instructions, FORMAT_MOODLE, $context->id);
[$maintenancemessage] = \core_external\util::format_text($CFG->maintenance_message, FORMAT_MOODLE, $context->id);
$settings = array(
'wwwroot' => $CFG->wwwroot,
'httpswwwroot' => $CFG->wwwroot,
'sitename' => external_format_string($SITE->fullname, $context->id, true),
'sitename' => \core_external\util::format_string($SITE->fullname, $context->id, true),
'guestlogin' => $CFG->guestloginbutton,
'rememberusername' => $CFG->rememberusername,
'authloginviaemail' => $CFG->authloginviaemail,
@ -265,12 +265,12 @@ class api {
if (empty($section) or $section == 'frontpagesettings') {
require_once($CFG->dirroot . '/course/format/lib.php');
// First settings that anyone can deduce.
$settings->fullname = external_format_string($SITE->fullname, $context->id);
$settings->shortname = external_format_string($SITE->shortname, $context->id);
$settings->fullname = \core_external\util::format_string($SITE->fullname, $context->id);
$settings->shortname = \core_external\util::format_string($SITE->shortname, $context->id);
// Return to a var instead of directly to $settings object because of differences between
// list() in php5 and php7. {@link http://php.net/manual/en/function.list.php}
$formattedsummary = external_format_text($SITE->summary, $SITE->summaryformat,
$formattedsummary = \core_external\util::format_text($SITE->summary, $SITE->summaryformat,
$context->id);
$settings->summary = $formattedsummary[0];
$settings->summaryformat = $formattedsummary[1];

View file

@ -23,22 +23,21 @@
*/
namespace tool_mobile;
defined('MOODLE_INTERNAL') || die();
require_once("$CFG->libdir/externallib.php");
defined('MOODLE_INTERNAL') || die();
require_once("$CFG->dirroot/webservice/lib.php");
use external_api;
use external_files;
use external_function_parameters;
use external_value;
use external_single_structure;
use external_multiple_structure;
use external_warnings;
use core_external\external_api;
use core_external\external_files;
use core_external\external_function_parameters;
use core_external\external_multiple_structure;
use core_external\external_single_structure;
use core_external\external_settings;
use core_external\external_value;
use core_external\external_warnings;
use context_system;
use moodle_exception;
use moodle_url;
use core_text;
use core_user;
use coding_exception;
@ -76,7 +75,7 @@ class external extends external_api {
/**
* Returns description of get_plugins_supporting_mobile() result value.
*
* @return external_description
* @return \core_external\external_description
* @since Moodle 3.1
*/
public static function get_plugins_supporting_mobile_returns() {
@ -131,7 +130,7 @@ class external extends external_api {
/**
* Returns description of get_public_config() result value.
*
* @return external_description
* @return \core_external\external_description
* @since Moodle 3.2
*/
public static function get_public_config_returns() {
@ -237,7 +236,7 @@ class external extends external_api {
/**
* Returns description of get_config() result value.
*
* @return external_description
* @return \core_external\external_description
* @since Moodle 3.2
*/
public static function get_config_returns() {
@ -346,7 +345,7 @@ class external extends external_api {
/**
* Returns description of get_autologin_key() result value.
*
* @return external_description
* @return \core_external\external_description
* @since Moodle 3.2
*/
public static function get_autologin_key_returns() {
@ -525,7 +524,7 @@ class external extends external_api {
$webservicemanager = new \webservice;
$token = $webservicemanager->get_user_ws_token(required_param('wstoken', PARAM_ALPHANUM));
$settings = \external_settings::get_instance();
$settings = external_settings::get_instance();
$defaultlang = current_language();
$responses = [];
@ -672,9 +671,9 @@ class external extends external_api {
}
// Get an existing token or create a new one.
$token = external_generate_token_for_current_user($service);
$token = \core_external\util::generate_token_for_current_user($service);
$privatetoken = $token->privatetoken; // Save it here, the next function removes it.
external_log_token_request($token);
\core_external\util::log_token_request($token);
$result = [
'token' => $token->token,
@ -687,7 +686,7 @@ class external extends external_api {
/**
* Returns description of get_tokens_for_qr_login() result value.
*
* @return external_description
* @return \core_external\external_description
* @since Moodle 3.9
*/
public static function get_tokens_for_qr_login_returns() {
@ -747,7 +746,7 @@ class external extends external_api {
/**
* Returns description of validate_subscription_key() result value.
*
* @return external_description
* @return \core_external\external_description
* @since Moodle 3.9
*/
public static function validate_subscription_key_returns() {

View file

@ -26,7 +26,6 @@
*/
require_once(__DIR__ . '/../../../config.php');
require_once($CFG->libdir . '/externallib.php');
$serviceshortname = required_param('service', PARAM_ALPHANUMEXT);
$passport = required_param('passport', PARAM_RAW); // Passport send from the app to validate the response URL.
@ -76,9 +75,9 @@ core_user::require_active_user($USER);
// Get an existing token or create a new one.
$timenow = time();
$token = external_generate_token_for_current_user($service);
$token = \core_external\util::generate_token_for_current_user($service);
$privatetoken = $token->privatetoken;
external_log_token_request($token);
\core_external\util::log_token_request($token);
// Don't return the private token if the user didn't just log in and a new token wasn't created.
if (empty($SESSION->justloggedin) and $token->timecreated < $timenow) {

View file

@ -82,7 +82,7 @@ class api_test extends \externallib_advanced_testcase {
*/
public function test_pre_processor_message_send_callback() {
global $DB, $CFG;
require_once($CFG->libdir . '/externallib.php');
$this->preventResetByRollback();
$this->resetAfterTest();
@ -140,7 +140,7 @@ class api_test extends \externallib_advanced_testcase {
$user3 = $this->getDataGenerator()->create_user();
$this->setUser($user3);
$service = $DB->get_record('external_services', array('shortname' => MOODLE_OFFICIAL_MOBILE_SERVICE));
$token = external_generate_token_for_current_user($service);
$token = \core_external\util::generate_token_for_current_user($service);
$message->userto = $user3;
$messageid = message_send($message);

View file

@ -17,6 +17,7 @@
namespace tool_mobile;
use externallib_advanced_testcase;
use core_external\external_api;
defined('MOODLE_INTERNAL') || die();
@ -42,7 +43,7 @@ class externallib_test extends externallib_advanced_testcase {
*/
public function test_get_plugins_supporting_mobile() {
$result = external::get_plugins_supporting_mobile();
$result = \external_api::clean_returnvalue(external::get_plugins_supporting_mobile_returns(), $result);
$result = external_api::clean_returnvalue(external::get_plugins_supporting_mobile_returns(), $result);
$this->assertCount(0, $result['warnings']);
$this->assertArrayHasKey('plugins', $result);
$this->assertTrue(is_array($result['plugins']));
@ -53,17 +54,25 @@ class externallib_test extends externallib_advanced_testcase {
$this->resetAfterTest(true);
$result = external::get_public_config();
$result = \external_api::clean_returnvalue(external::get_public_config_returns(), $result);
$result = external_api::clean_returnvalue(external::get_public_config_returns(), $result);
// Test default values.
$context = \context_system::instance();
list($authinstructions, $notusedformat) = external_format_text($CFG->auth_instructions, FORMAT_MOODLE, $context->id);
list($maintenancemessage, $notusedformat) = external_format_text($CFG->maintenance_message, FORMAT_MOODLE, $context->id);
[$authinstructions] = \core_external\util::format_text(
$CFG->auth_instructions,
FORMAT_MOODLE,
$context->id
);
[$maintenancemessage] = \core_external\util::format_text(
$CFG->maintenance_message,
FORMAT_MOODLE,
$context->id
);
$expected = array(
'wwwroot' => $CFG->wwwroot,
'httpswwwroot' => $CFG->wwwroot,
'sitename' => external_format_string($SITE->fullname, $context->id, true),
'sitename' => \core_external\util::format_string($SITE->fullname, $context->id, true),
'guestlogin' => $CFG->guestloginbutton,
'rememberusername' => $CFG->rememberusername,
'authloginviaemail' => $CFG->authloginviaemail,
@ -126,7 +135,7 @@ class externallib_test extends externallib_advanced_testcase {
set_config('auth_name', 'CAS', 'auth_cas');
set_config('auth', 'oauth2,cas');
list($authinstructions, $notusedformat) = external_format_text($authinstructions, FORMAT_MOODLE, $context->id);
list($authinstructions, $notusedformat) = \core_external\util::format_text($authinstructions, FORMAT_MOODLE, $context->id);
$expected['registerauth'] = 'email';
$expected['authinstructions'] = $authinstructions;
$expected['typeoflogin'] = api::LOGIN_VIA_BROWSER;
@ -148,7 +157,7 @@ class externallib_test extends externallib_advanced_testcase {
}
$result = external::get_public_config();
$result = \external_api::clean_returnvalue(external::get_public_config_returns(), $result);
$result = external_api::clean_returnvalue(external::get_public_config_returns(), $result);
// First check providers.
$identityproviders = $result['identityproviders'];
unset($result['identityproviders']);
@ -167,7 +176,7 @@ class externallib_test extends externallib_advanced_testcase {
$newurl = 'validimage.png';
set_config('auth_logo', $newurl, 'auth_cas');
$result = external::get_public_config();
$result = \external_api::clean_returnvalue(external::get_public_config_returns(), $result);
$result = external_api::clean_returnvalue(external::get_public_config_returns(), $result);
$this->assertStringContainsString($newurl, $result['identityproviders'][1]['iconurl']);
}
@ -187,10 +196,10 @@ class externallib_test extends externallib_advanced_testcase {
set_config('supportemail', 'test@test.com');
$result = external::get_config();
$result = \external_api::clean_returnvalue(external::get_config_returns(), $result);
$result = external_api::clean_returnvalue(external::get_config_returns(), $result);
// SITE summary is null in phpunit which gets transformed to an empty string by format_text.
[$sitesummary, $summaryformat] = external_format_text(
[$sitesummary, $summaryformat] = \core_external\util::format_text(
$SITE->summary,
$SITE->summaryformat,
\context_system::instance()->id
@ -256,7 +265,7 @@ class externallib_test extends externallib_advanced_testcase {
array_splice($expected, 11);
$result = external::get_config('frontpagesettings');
$result = \external_api::clean_returnvalue(external::get_config_returns(), $result);
$result = external_api::clean_returnvalue(external::get_config_returns(), $result);
$this->assertCount(0, $result['warnings']);
$this->assertEquals($expected, $result['settings']);
}
@ -273,7 +282,7 @@ class externallib_test extends externallib_advanced_testcase {
$this->setUser($user);
$service = $DB->get_record('external_services', array('shortname' => MOODLE_OFFICIAL_MOBILE_SERVICE));
$token = external_generate_token_for_current_user($service);
$token = \core_external\util::generate_token_for_current_user($service);
// Check we got the private token.
$this->assertTrue(isset($token->privatetoken));
@ -290,7 +299,7 @@ class externallib_test extends externallib_advanced_testcase {
$this->setCurrentTimeStart();
$result = external::get_autologin_key($token->privatetoken);
$result = \external_api::clean_returnvalue(external::get_autologin_key_returns(), $result);
$result = external_api::clean_returnvalue(external::get_autologin_key_returns(), $result);
// Validate the key.
$this->assertEquals(32, \core_text::strlen($result['key']));
$key = $DB->get_record('user_private_key', array('value' => $result['key']));
@ -377,7 +386,7 @@ class externallib_test extends externallib_advanced_testcase {
$service = $DB->get_record('external_services', array('shortname' => MOODLE_OFFICIAL_MOBILE_SERVICE));
$token = external_generate_token_for_current_user($service);
$token = \core_external\util::generate_token_for_current_user($service);
$_GET['wstoken'] = $token->token; // Mock parameters.
// Fake the app.
@ -385,13 +394,13 @@ class externallib_test extends externallib_advanced_testcase {
'AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/71.0.3578.99 Mobile Safari/537.36 MoodleMobile');
$result = external::get_autologin_key($token->privatetoken);
$result = \external_api::clean_returnvalue(external::get_autologin_key_returns(), $result);
$result = external_api::clean_returnvalue(external::get_autologin_key_returns(), $result);
// Mock last time request.
$mocktime = time() - 7 * MINSECS;
set_user_preference('tool_mobile_autologin_request_last', $mocktime, $USER);
$result = external::get_autologin_key($token->privatetoken);
$result = \external_api::clean_returnvalue(external::get_autologin_key_returns(), $result);
$result = external_api::clean_returnvalue(external::get_autologin_key_returns(), $result);
// Change min time between requests to 30 seconds.
set_config('autologinmintimebetweenreq', 30, 'tool_mobile');
@ -400,7 +409,7 @@ class externallib_test extends externallib_advanced_testcase {
$mocktime = time() - MINSECS;
set_user_preference('tool_mobile_autologin_request_last', $mocktime, $USER);
$result = external::get_autologin_key($token->privatetoken); // All good, we were expecint 30 seconds or more.
$result = \external_api::clean_returnvalue(external::get_autologin_key_returns(), $result);
$result = external_api::clean_returnvalue(external::get_autologin_key_returns(), $result);
// We just requested one token, we must wait.
$this->expectException('moodle_exception');
@ -429,7 +438,7 @@ class externallib_test extends externallib_advanced_testcase {
$paramval = 16;
$result = external::get_content('tool_mobile', 'test_view', array(array('name' => 'param1', 'value' => $paramval)));
$result = \external_api::clean_returnvalue(external::get_content_returns(), $result);
$result = external_api::clean_returnvalue(external::get_content_returns(), $result);
$this->assertCount(1, $result['templates']);
$this->assertCount(1, $result['otherdata']);
$this->assertCount(2, $result['restrict']['users']);
@ -453,7 +462,7 @@ class externallib_test extends externallib_advanced_testcase {
$paramval = 16;
$result = external::get_content('tool_mobile', 'test_view_disabled',
array(array('name' => 'param1', 'value' => $paramval)));
$result = \external_api::clean_returnvalue(external::get_content_returns(), $result);
$result = external_api::clean_returnvalue(external::get_content_returns(), $result);
$this->assertTrue($result['disabled']);
}
@ -507,14 +516,13 @@ class externallib_test extends externallib_advanced_testcase {
// Setup WS token.
$webservicemanager = new \webservice;
$service = $webservicemanager->get_external_service_by_shortname(MOODLE_OFFICIAL_MOBILE_SERVICE);
$token = external_generate_token_for_current_user($service);
$token = \core_external\util::generate_token_for_current_user($service);
$_POST['wstoken'] = $token->token;
// Workaround for \external_api::call_external_function requiring sesskey.
// Workaround for external_api::call_external_function requiring sesskey.
$_POST['sesskey'] = sesskey();
// Call some functions.
$requests = [
[
'function' => 'core_course_get_courses_by_field',
@ -536,19 +544,19 @@ class externallib_test extends externallib_advanced_testcase {
$result = external::call_external_functions($requests);
// We need to execute the return values cleaning process to simulate the web service server.
$result = \external_api::clean_returnvalue(external::call_external_functions_returns(), $result);
$result = external_api::clean_returnvalue(external::call_external_functions_returns(), $result);
// Only 3 responses, the 4th request is not executed because the 3rd throws an exception.
$this->assertCount(3, $result['responses']);
$this->assertFalse($result['responses'][0]['error']);
$coursedata = \external_api::clean_returnvalue(
$coursedata = external_api::clean_returnvalue(
\core_course_external::get_courses_by_field_returns(),
\core_course_external::get_courses_by_field('id', $course->id));
$this->assertEquals(json_encode($coursedata), $result['responses'][0]['data']);
$this->assertFalse($result['responses'][1]['error']);
$userdata = \external_api::clean_returnvalue(
$userdata = external_api::clean_returnvalue(
\core_user_external::get_users_by_field_returns(),
\core_user_external::get_users_by_field('id', [$user1->id]));
$this->assertEquals(json_encode($userdata), $result['responses'][1]['data']);
@ -644,14 +652,14 @@ class externallib_test extends externallib_advanced_testcase {
// Generate new tokens, the ones we expect to receive.
$service = $DB->get_record('external_services', array('shortname' => MOODLE_OFFICIAL_MOBILE_SERVICE));
$token = external_generate_token_for_current_user($service);
$token = \core_external\util::generate_token_for_current_user($service);
// Fake the app.
\core_useragent::instance(true, 'Mozilla/5.0 (Linux; Android 7.1.1; Moto G Play Build/NPIS26.48-43-2; wv) ' .
'AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/71.0.3578.99 Mobile Safari/537.36 MoodleMobile');
$result = external::get_tokens_for_qr_login($qrloginkey, $USER->id);
$result = \external_api::clean_returnvalue(external::get_tokens_for_qr_login_returns(), $result);
$result = external_api::clean_returnvalue(external::get_tokens_for_qr_login_returns(), $result);
$this->assertEmpty($result['warnings']);
$this->assertEquals($token->token, $result['token']);
@ -683,14 +691,14 @@ class externallib_test extends externallib_advanced_testcase {
// Generate new tokens, the ones we expect to receive.
$service = $DB->get_record('external_services', array('shortname' => MOODLE_OFFICIAL_MOBILE_SERVICE));
$token = external_generate_token_for_current_user($service);
$token = \core_external\util::generate_token_for_current_user($service);
// Fake the app.
\core_useragent::instance(true, 'Mozilla/5.0 (Linux; Android 7.1.1; Moto G Play Build/NPIS26.48-43-2; wv) ' .
'AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/71.0.3578.99 Mobile Safari/537.36 MoodleMobile');
$result = external::get_tokens_for_qr_login($qrloginkey, $USER->id);
$result = \external_api::clean_returnvalue(external::get_tokens_for_qr_login_returns(), $result);
$result = external_api::clean_returnvalue(external::get_tokens_for_qr_login_returns(), $result);
$this->assertEmpty($result['warnings']);
$this->assertEquals($token->token, $result['token']);
@ -722,7 +730,7 @@ class externallib_test extends externallib_advanced_testcase {
// Generate new tokens, the ones we expect to receive.
$service = $DB->get_record('external_services', array('shortname' => MOODLE_OFFICIAL_MOBILE_SERVICE));
$token = external_generate_token_for_current_user($service);
$token = \core_external\util::generate_token_for_current_user($service);
// Fake the app.
\core_useragent::instance(true, 'Mozilla/5.0 (Linux; Android 7.1.1; Moto G Play Build/NPIS26.48-43-2; wv) ' .
@ -834,7 +842,7 @@ class externallib_test extends externallib_advanced_testcase {
set_config('sitesubscriptionkey', json_encode($sitesubscriptionkey), 'tool_mobile');
$result = external::validate_subscription_key($sitesubscriptionkey['key']);
$result = \external_api::clean_returnvalue(external::validate_subscription_key_returns(), $result);
$result = external_api::clean_returnvalue(external::validate_subscription_key_returns(), $result);
$this->assertEmpty($result['warnings']);
$this->assertTrue($result['validated']);
}
@ -849,13 +857,13 @@ class externallib_test extends externallib_advanced_testcase {
set_config('sitesubscriptionkey', json_encode($sitesubscriptionkey), 'tool_mobile');
$result = external::validate_subscription_key('fakekey');
$result = \external_api::clean_returnvalue(external::validate_subscription_key_returns(), $result);
$result = external_api::clean_returnvalue(external::validate_subscription_key_returns(), $result);
$this->assertEmpty($result['warnings']);
$this->assertFalse($result['validated']);
// The valid one has been invalidated because the previous attempt.
$result = external::validate_subscription_key($sitesubscriptionkey['key']);
$result = \external_api::clean_returnvalue(external::validate_subscription_key_returns(), $result);
$result = external_api::clean_returnvalue(external::validate_subscription_key_returns(), $result);
$this->assertEmpty($result['warnings']);
$this->assertFalse($result['validated']);
}
@ -867,7 +875,7 @@ class externallib_test extends externallib_advanced_testcase {
$this->resetAfterTest(true);
$result = external::validate_subscription_key('fakekey');
$result = \external_api::clean_returnvalue(external::validate_subscription_key_returns(), $result);
$result = external_api::clean_returnvalue(external::validate_subscription_key_returns(), $result);
$this->assertEmpty($result['warnings']);
$this->assertFalse($result['validated']);
}
@ -882,7 +890,7 @@ class externallib_test extends externallib_advanced_testcase {
set_config('sitesubscriptionkey', json_encode($sitesubscriptionkey), 'tool_mobile');
$result = external::validate_subscription_key($sitesubscriptionkey['key']);
$result = \external_api::clean_returnvalue(external::validate_subscription_key_returns(), $result);
$result = external_api::clean_returnvalue(external::validate_subscription_key_returns(), $result);
$this->assertEmpty($result['warnings']);
$this->assertFalse($result['validated']);
}

View file

@ -26,15 +26,15 @@ namespace tool_moodlenet;
defined('MOODLE_INTERNAL') || die();
require_once($CFG->libdir .'/externallib.php');
require_once($CFG->libdir . '/filelib.php');
require_once(__DIR__ . '/../lib.php');
use core_course\external\course_summary_exporter;
use external_api;
use external_function_parameters;
use external_value;
use external_single_structure;
use core_external\external_api;
use core_external\external_function_parameters;
use core_external\external_multiple_structure;
use core_external\external_single_structure;
use core_external\external_value;
/**
* This is the external API for this component.
@ -100,7 +100,7 @@ class external extends external_api {
/**
* verify_webfinger return.
*
* @return \external_description
* @return external_description
*/
public static function verify_webfinger_returns() {
return new external_single_structure([
@ -171,11 +171,11 @@ class external extends external_api {
/**
* search_courses_returns.
*
* @return \external_description
* @return external_description
*/
public static function search_courses_returns() {
return new external_single_structure([
'courses' => new \external_multiple_structure(
'courses' => new external_multiple_structure(
new external_single_structure([
'id' => new external_value(PARAM_INT, 'course id'),
'fullname' => new external_value(PARAM_TEXT, 'course full name'),

View file

@ -24,23 +24,13 @@
namespace tool_policy;
defined('MOODLE_INTERNAL') || die();
use coding_exception;
use context_system;
use context_user;
use core\invalid_persistent_exception;
use dml_exception;
use external_api;
use external_description;
use external_function_parameters;
use external_single_structure;
use external_value;
use external_warnings;
use invalid_parameter_exception;
use core_external\external_api;
use core_external\external_function_parameters;
use core_external\external_single_structure;
use core_external\external_value;
use core_external\external_warnings;
use moodle_exception;
use restricted_context_exception;
use tool_policy\api;
use tool_policy\form\accept_policy;
/**
@ -106,10 +96,10 @@ class external extends external_api {
$version = api::get_policy_version($versionid);
$policy['name'] = $version->name;
$policy['versionid'] = $versionid;
list($policy['content'], $notusedformat) = external_format_text(
list($policy['content'], $notusedformat) = \core_external\util::format_text(
$version->content,
$version->contentformat,
SYSCONTEXTID,
\context_system::instance(),
'tool_policy',
'policydocumentcontent',
$version->id
@ -133,7 +123,7 @@ class external extends external_api {
/**
* Parameter description for get_policy_version().
*
* @return external_description
* @return \core_external\external_description
*/
public static function get_policy_version_returns() {
return new external_single_structure([
@ -190,7 +180,7 @@ class external extends external_api {
/**
* Returns description of method result value.
*
* @return external_description
* @return \core_external\external_description
* @since Moodle 3.0
*/
public static function submit_accept_on_behalf_returns() {

View file

@ -23,7 +23,6 @@ defined('MOODLE_INTERNAL') || die();
global $CFG;
require_once($CFG->libdir . '/externallib.php');
require_once($CFG->dirroot . '/webservice/tests/helpers.php');
require_once($CFG->dirroot . '/user/externallib.php');
@ -87,21 +86,21 @@ class externallib_test extends externallib_advanced_testcase {
// View current policy version.
$result = external::get_policy_version($this->policy2->get('id'));
$result = \external_api::clean_returnvalue(external::get_policy_version_returns(), $result);
$result = \core_external\external_api::clean_returnvalue(external::get_policy_version_returns(), $result);
$this->assertCount(1, $result['result']);
$this->assertEquals($this->policy1->get('name'), $result['result']['policy']['name']);
$this->assertEquals($this->policy1->get('content'), $result['result']['policy']['content']);
// View draft policy version.
$result = external::get_policy_version($this->policy3->get('id'));
$result = \external_api::clean_returnvalue(external::get_policy_version_returns(), $result);
$result = \core_external\external_api::clean_returnvalue(external::get_policy_version_returns(), $result);
$this->assertCount(0, $result['result']);
$this->assertCount(1, $result['warnings']);
$this->assertEquals(array_pop($result['warnings'])['warningcode'], 'errorusercantviewpolicyversion');
// Add test for non existing versionid.
$result = external::get_policy_version(999);
$result = \external_api::clean_returnvalue(external::get_policy_version_returns(), $result);
$result = \core_external\external_api::clean_returnvalue(external::get_policy_version_returns(), $result);
$this->assertCount(0, $result['result']);
$this->assertCount(1, $result['warnings']);
$this->assertEquals(array_pop($result['warnings'])['warningcode'], 'errorpolicyversionnotfound');
@ -109,7 +108,7 @@ class externallib_test extends externallib_advanced_testcase {
// View previous non-accepted version in behalf of a child.
$this->setUser($this->parent);
$result = external::get_policy_version($this->policy1->get('id'), $this->child->id);
$result = \external_api::clean_returnvalue(external::get_policy_version_returns(), $result);
$result = \core_external\external_api::clean_returnvalue(external::get_policy_version_returns(), $result);
$this->assertCount(0, $result['result']);
$this->assertCount(1, $result['warnings']);
$this->assertEquals(array_pop($result['warnings'])['warningcode'], 'errorusercantviewpolicyversion');
@ -117,7 +116,7 @@ class externallib_test extends externallib_advanced_testcase {
// Let the parent accept the policy on behalf of her child and view it again.
api::accept_policies($this->policy1->get('id'), $this->child->id);
$result = external::get_policy_version($this->policy1->get('id'), $this->child->id);
$result = \external_api::clean_returnvalue(external::get_policy_version_returns(), $result);
$result = \core_external\external_api::clean_returnvalue(external::get_policy_version_returns(), $result);
$this->assertCount(1, $result['result']);
$this->assertEquals($this->policy1->get('name'), $result['result']['policy']['name']);
$this->assertEquals($this->policy1->get('content'), $result['result']['policy']['content']);
@ -125,7 +124,7 @@ class externallib_test extends externallib_advanced_testcase {
// Only parent is able to view the child policy version accepted by her child.
$this->setUser($this->adult);
$result = external::get_policy_version($this->policy1->get('id'), $this->child->id);
$result = \external_api::clean_returnvalue(external::get_policy_version_returns(), $result);
$result = \core_external\external_api::clean_returnvalue(external::get_policy_version_returns(), $result);
$this->assertCount(0, $result['result']);
$this->assertCount(1, $result['warnings']);
$this->assertEquals(array_pop($result['warnings'])['warningcode'], 'errorusercantviewpolicyversion');
@ -143,7 +142,7 @@ class externallib_test extends externallib_advanced_testcase {
$CFG->sitepolicyhandler = 'tool_policy';
$sitepolicymanager = new \core_privacy\local\sitepolicy\manager();
$result = external_mobile::get_config();
$result = \external_api::clean_returnvalue(external_mobile::get_config_returns(), $result);
$result = \core_external\external_api::clean_returnvalue(external_mobile::get_config_returns(), $result);
$toolsitepolicy = $sitepolicymanager->get_embed_url();
foreach (array_values($result['settings']) as $r) {
if ($r['name'] == 'sitepolicy') {
@ -176,7 +175,7 @@ class externallib_test extends externallib_advanced_testcase {
// Call WS to agree to the site policy. It will call tool_policy handler.
$result = \core_user_external::agree_site_policy();
$result = \external_api::clean_returnvalue(\core_user_external::agree_site_policy_returns(), $result);
$result = \core_external\external_api::clean_returnvalue(\core_user_external::agree_site_policy_returns(), $result);
$this->assertTrue($result['status']);
$this->assertCount(0, $result['warnings']);
$this->assertEquals(1, $USER->policyagreed);
@ -184,7 +183,7 @@ class externallib_test extends externallib_advanced_testcase {
// Try again, we should get a warning.
$result = \core_user_external::agree_site_policy();
$result = \external_api::clean_returnvalue(\core_user_external::agree_site_policy_returns(), $result);
$result = \core_external\external_api::clean_returnvalue(\core_user_external::agree_site_policy_returns(), $result);
$this->assertFalse($result['status']);
$this->assertCount(1, $result['warnings']);
$this->assertEquals('alreadyagreed', $result['warnings'][0]['warningcode']);
@ -211,14 +210,14 @@ class externallib_test extends externallib_advanced_testcase {
// Default user can accept policies.
$this->setUser($adult);
$result = external_mobile::get_config();
$result = \external_api::clean_returnvalue(external_mobile::get_config_returns(), $result);
$result = \core_external\external_api::clean_returnvalue(external_mobile::get_config_returns(), $result);
$toolsitepolicy = $sitepolicymanager->accept();
$this->assertTrue($toolsitepolicy);
// Child user can not accept policies.
$this->setUser($child);
$result = external_mobile::get_config();
$result = \external_api::clean_returnvalue(external_mobile::get_config_returns(), $result);
$result = \core_external\external_api::clean_returnvalue(external_mobile::get_config_returns(), $result);
$this->expectException(\required_capability_exception::class);
$sitepolicymanager->accept();
}

View file

@ -14,25 +14,12 @@
// You should have received a copy of the GNU General Public License
// along with Moodle. If not, see <http://www.gnu.org/licenses/>.
/**
* This is the external API for this tool.
*
* @package tool_templatelibrary
* @copyright 2015 Damyon Wiese
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
*/
namespace tool_templatelibrary;
defined('MOODLE_INTERNAL') || die();
require_once("$CFG->libdir/externallib.php");
use external_api;
use external_function_parameters;
use external_value;
use external_format_value;
use external_single_structure;
use external_multiple_structure;
use invalid_parameter_exception;
use core_external\external_api;
use core_external\external_function_parameters;
use core_external\external_multiple_structure;
use core_external\external_value;
/**
* This is the external API for this tool.
@ -91,7 +78,7 @@ class external extends external_api {
/**
* Returns description of list_templates() result value.
*
* @return external_description
* @return \core_external\external_description
*/
public static function list_templates_returns() {
return new external_multiple_structure(new external_value(PARAM_RAW, 'The template name (format is component/templatename)'));
@ -132,7 +119,7 @@ class external extends external_api {
/**
* Returns description of load_canonical_template() result value.
*
* @return external_description
* @return \core_external\external_description
*/
public static function load_canonical_template_returns() {
return new external_value(PARAM_RAW, 'template');

View file

@ -14,23 +14,13 @@
// You should have received a copy of the GNU General Public License
// along with Moodle. If not, see <http://www.gnu.org/licenses/>.
/**
* Web Service functions for steps.
*
* @package tool_usertours
* @copyright 2016 Andrew Nicols <andrew@nicols.co.uk>
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
*/
namespace tool_usertours\external;
defined('MOODLE_INTERNAL') || die();
use external_api;
use external_function_parameters;
use external_single_structure;
use external_multiple_structure;
use external_value;
use core_external\external_api;
use core_external\external_function_parameters;
use core_external\external_multiple_structure;
use core_external\external_single_structure;
use core_external\external_value;
use tool_usertours\tour as tourinstance;
use tool_usertours\step;

View file

@ -73,13 +73,13 @@ class step implements \renderable {
$result = (object) [
'stepid' => $step->get_id(),
'title' => external_format_text(
'title' => \core_external\util::format_text(
helper::get_string_from_input($step->get_title()),
FORMAT_HTML,
$PAGE->context->id,
'tool_usertours'
)[0],
'content' => external_format_text(
'content' => \core_external\util::format_text(
$content,
$step->get_contentformat(),
$PAGE->context->id,

View file

@ -102,7 +102,8 @@ function xmldb_tool_usertours_upgrade($oldversion) {
} else {
// Field was added by previous upgrade step with the default value is FORMAT_HTML.
// Need to drop the field and re-create with the new structure to make sure all the existing tours use FORMAT_MOODLE.
// FORMAT_MOODLE will force the external_format_text method to use nl2br to convert the new line to line break tag.
// FORMAT_MOODLE will force the \core_external\util::format_text method to use nl2br to
// convert the new line to line break tag.
$dbman->drop_field($table, $field);
// Add the field again.
$dbman->add_field($table, $field);

View file

@ -22,9 +22,7 @@
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
*/
defined('MOODLE_INTERNAL') || die();
use core\output\inplace_editable;
use core_external\external_api;
use tool_usertours\helper;
/**
@ -33,7 +31,7 @@ use tool_usertours\helper;
* @param string $itemtype The type of item.
* @param int $itemid The ID of the item.
* @param mixed $newvalue The new value
* @return inplace_editable
* @return \core\output\inplace_editable
*/
function tool_usertours_inplace_editable($itemtype, $itemid, $newvalue) {
$context = \context_system::instance();

View file

@ -14,17 +14,9 @@
// You should have received a copy of the GNU General Public License
// along with Moodle. If not, see <http://www.gnu.org/licenses/>.
/**
* Web services
*
* @package tool_xmldb
* @copyright 2018 Marina Glancy
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
*/
defined('MOODLE_INTERNAL') || die();
require_once($CFG->libdir . '/externallib.php');
use core_external\external_api;
use core_external\external_function_parameters;
use core_external\external_value;
/**
* tool_xmldb external function
@ -124,4 +116,4 @@ class tool_xmldb_external extends external_api {
return null;
}
}
}

View file

@ -24,7 +24,6 @@
*/
require_once('../../config.php');
require_once($CFG->libdir . '/adminlib.php');
require_once($CFG->libdir . '/externallib.php');
require_once($CFG->dirroot . '/webservice/lib.php');
require_once('forms.php');
@ -123,4 +122,3 @@ echo $OUTPUT->heading(get_string('addservicefunction', 'webservice', $service->n
$functions = $webservicemanager->get_external_functions(array($service->id));
echo $renderer->admin_service_function_list($functions, $service);
echo $OUTPUT->footer();

View file

@ -26,7 +26,6 @@
require('../../config.php');
require_once($CFG->libdir.'/adminlib.php');
require_once("$CFG->libdir/externallib.php");
require_once($CFG->dirroot . "/" . $CFG->admin . "/webservice/testclient_forms.php");
$function = optional_param('function', '', PARAM_PLUGIN);
@ -49,7 +48,7 @@ admin_externalpage_setup('testclient');
$allfunctions = $DB->get_records('external_functions', array(), 'name ASC');
$functions = array();
foreach ($allfunctions as $f) {
$finfo = external_api::external_function_info($f);
$finfo = \core_external\external_api::external_function_info($f);
if (!empty($finfo->testclientpath) and file_exists($CFG->dirroot.'/'.$finfo->testclientpath)) {
//some plugins may want to have own test client forms
include_once($CFG->dirroot.'/'.$finfo->testclientpath);
@ -115,7 +114,7 @@ if ($mform->is_cancelled()) {
} else if ($data = $mform->get_data()) {
$functioninfo = external_api::external_function_info($function);
$functioninfo = \core_external\external_api::external_function_info($function);
// first load lib of selected protocol
require_once("$CFG->dirroot/webservice/$protocol/locallib.php");
@ -140,7 +139,7 @@ if ($mform->is_cancelled()) {
$params = $mform->get_params();
// now test the parameters, this also fixes PHP data types
$params = external_api::validate_parameters($functioninfo->parameters_desc, $params);
$params = \core_external\external_api::validate_parameters($functioninfo->parameters_desc, $params);
echo $OUTPUT->header();
echo $OUTPUT->heading(get_string('pluginname', 'webservice_'.$protocol).': '.$function);

View file

@ -25,7 +25,6 @@
require(__DIR__ . '/../../config.php');
require_once($CFG->libdir . '/adminlib.php');
require_once($CFG->libdir . '/externallib.php');
require_once($CFG->dirroot . '/webservice/lib.php');
$action = optional_param('action', '', PARAM_ALPHANUMEXT);
@ -69,8 +68,14 @@ if ($action === 'create') {
// Generate the token.
if (empty($errormsg)) {
external_generate_token(EXTERNAL_TOKEN_PERMANENT, $data->service, $data->user, context_system::instance(),
$data->validuntil, $data->iprestriction);
\core_external\util::generate_token(
EXTERNAL_TOKEN_PERMANENT,
\core_external\util::get_service_by_id($data->service),
$data->user,
context_system::instance(),
$data->validuntil,
$data->iprestriction
);
redirect($PAGE->url);
}
}

View file

@ -22,7 +22,7 @@
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
*/
defined('MOODLE_INTERNAL') || die();
use core_external\external_api;
/**
* Implements the inplace editable feature.
@ -33,9 +33,8 @@ defined('MOODLE_INTERNAL') || die();
* @return \core\output\inplace_editable
*/
function core_analytics_inplace_editable($itemtype, $itemid, $newvalue) {
if ($itemtype === 'modelname') {
\external_api::validate_context(context_system::instance());
external_api::validate_context(context_system::instance());
require_capability('moodle/analytics:managemodels', \context_system::instance());
$model = new \core_analytics\model($itemid);

View file

@ -24,9 +24,14 @@
* @since Moodle 3.2
*/
use core_external\external_api;
use core_external\external_function_parameters;
use core_external\external_single_structure;
use core_external\external_value;
use core_external\external_warnings;
defined('MOODLE_INTERNAL') || die;
require_once($CFG->libdir . '/externallib.php');
require_once($CFG->libdir . '/authlib.php');
/**

View file

@ -23,9 +23,6 @@
*/
namespace core_auth\output;
defined('MOODLE_INTERNAL') || die();
require_once($CFG->libdir . '/externallib.php');
use context_system;
use help_icon;
@ -149,7 +146,7 @@ class login implements renderable, templatable {
$data->hasidentityproviders = !empty($this->identityproviders);
$data->hasinstructions = !empty($this->instructions) || $this->cansignup;
$data->identityproviders = $identityproviders;
list($data->instructions, $data->instructionsformat) = external_format_text($this->instructions, FORMAT_MOODLE,
list($data->instructions, $data->instructionsformat) = \core_external\util::format_text($this->instructions, FORMAT_MOODLE,
context_system::instance()->id);
$data->loginurl = $this->loginurl->out(false);
$data->signupurl = $this->signupurl->out(false);

View file

@ -24,9 +24,16 @@
* @since Moodle 3.2
*/
use core_external\external_api;
use core_external\external_format_value;
use core_external\external_function_parameters;
use core_external\external_multiple_structure;
use core_external\external_single_structure;
use core_external\external_value;
use core_external\external_warnings;
defined('MOODLE_INTERNAL') || die;
require_once($CFG->libdir . '/externallib.php');
require_once($CFG->libdir . '/authlib.php');
require_once($CFG->dirroot . '/user/editlib.php');
require_once($CFG->dirroot . '/user/profile/lib.php');
@ -106,10 +113,10 @@ class auth_email_external extends external_api {
$result['profilefields'] = array();
foreach ($fields as $field) {
$fielddata = $field->object->get_field_config_for_external();
$fielddata['categoryname'] = external_format_string($field->categoryname, $context->id);
$fielddata['name'] = external_format_string($fielddata['name'], $context->id);
$fielddata['categoryname'] = \core_external\util::format_string($field->categoryname, $context->id);
$fielddata['name'] = \core_external\util::format_string($fielddata['name'], $context->id);
list($fielddata['defaultdata'], $fielddata['defaultdataformat']) =
external_format_text($fielddata['defaultdata'], $fielddata['defaultdataformat'], $context->id);
\core_external\util::format_text($fielddata['defaultdata'], $fielddata['defaultdataformat'], $context->id);
$result['profilefields'][] = $fielddata;
}

View file

@ -70,7 +70,7 @@ class external_test extends externallib_advanced_testcase {
$CFG->sitepolicy = 'https://moodle.org';
$result = auth_email_external::get_signup_settings();
$result = \external_api::clean_returnvalue(auth_email_external::get_signup_settings_returns(), $result);
$result = \core_external\external_api::clean_returnvalue(auth_email_external::get_signup_settings_returns(), $result);
// Check expected data.
$this->assertEquals(array('firstname', 'lastname'), $result['namefields']);
@ -101,10 +101,6 @@ class external_test extends externallib_advanced_testcase {
* Test get_signup_settings with mathjax in a profile field.
*/
public function test_get_signup_settings_with_mathjax_in_profile_fields() {
global $CFG, $DB;
require_once($CFG->dirroot . '/lib/externallib.php');
// Enable MathJax filter in content and headings.
$this->configure_filters([
['name' => 'mathjaxloader', 'state' => TEXTFILTER_ON, 'move' => -1, 'applytostrings' => true],
@ -119,12 +115,12 @@ class external_test extends externallib_advanced_testcase {
'datatype' => 'textarea', 'signup' => 1, 'visible' => 1, 'required' => 1, 'sortorder' => 2));
$result = auth_email_external::get_signup_settings();
$result = \external_api::clean_returnvalue(auth_email_external::get_signup_settings_returns(), $result);
$result = \core_external\external_api::clean_returnvalue(auth_email_external::get_signup_settings_returns(), $result);
// Format the original data.
$sitecontext = \context_system::instance();
$categoryname = external_format_string($categoryname, $sitecontext->id);
$fieldname = external_format_string($fieldname, $sitecontext->id);
$categoryname = \core_external\util::format_string($categoryname, $sitecontext->id);
$fieldname = \core_external\util::format_string($fieldname, $sitecontext->id);
// Whip up a array with named entries to easily check against.
$namedarray = array();
@ -173,7 +169,7 @@ class external_test extends externallib_advanced_testcase {
// Create new user.
$result = auth_email_external::signup_user($username, $password, $firstname, $lastname, $email, $city, $country,
'', '', $customprofilefields);
$result = \external_api::clean_returnvalue(auth_email_external::signup_user_returns(), $result);
$result = \core_external\external_api::clean_returnvalue(auth_email_external::signup_user_returns(), $result);
$this->assertTrue($result['success']);
$this->assertEmpty($result['warnings']);
$user = $DB->get_record('user', array('username' => $username));
@ -194,7 +190,7 @@ class external_test extends externallib_advanced_testcase {
$password = 'abc';
$result = auth_email_external::signup_user($username, $password, $firstname, $lastname, $email, $city, $country,
'', '', $customprofilefields);
$result = \external_api::clean_returnvalue(auth_email_external::signup_user_returns(), $result);
$result = \core_external\external_api::clean_returnvalue(auth_email_external::signup_user_returns(), $result);
$this->assertFalse($result['success']);
$this->assertCount(3, $result['warnings']);
$expectederrors = array('username', 'email', 'password');

View file

@ -28,6 +28,7 @@ namespace core_auth\external;
use auth_email_external;
use core_auth_external;
use core_external\external_api;
use externallib_advanced_testcase;
defined('MOODLE_INTERNAL') || die();
@ -85,14 +86,14 @@ class external_test extends externallib_advanced_testcase {
// Create new user.
$result = auth_email_external::signup_user($username, $password, $firstname, $lastname, $email);
$result = \external_api::clean_returnvalue(auth_email_external::signup_user_returns(), $result);
$result = external_api::clean_returnvalue(auth_email_external::signup_user_returns(), $result);
$this->assertTrue($result['success']);
$this->assertEmpty($result['warnings']);
$secret = $DB->get_field('user', 'secret', array('username' => $username));
// Confirm the user.
$result = core_auth_external::confirm_user($username, $secret);
$result = \external_api::clean_returnvalue(core_auth_external::confirm_user_returns(), $result);
$result = external_api::clean_returnvalue(core_auth_external::confirm_user_returns(), $result);
$this->assertTrue($result['success']);
$this->assertEmpty($result['warnings']);
$confirmed = $DB->get_field('user', 'confirmed', array('username' => $username));
@ -100,7 +101,7 @@ class external_test extends externallib_advanced_testcase {
// Try to confirm the user again.
$result = core_auth_external::confirm_user($username, $secret);
$result = \external_api::clean_returnvalue(core_auth_external::confirm_user_returns(), $result);
$result = external_api::clean_returnvalue(core_auth_external::confirm_user_returns(), $result);
$this->assertFalse($result['success']);
$this->assertCount(1, $result['warnings']);
$this->assertEquals('alreadyconfirmed', $result['warnings'][0]['warningcode']);
@ -119,7 +120,7 @@ class external_test extends externallib_advanced_testcase {
$CFG->agedigitalconsentverification = 0;
$result = core_auth_external::is_age_digital_consent_verification_enabled();
$result = \external_api::clean_returnvalue(
$result = external_api::clean_returnvalue(
core_auth_external::is_age_digital_consent_verification_enabled_returns(), $result);
$this->assertFalse($result['status']);
}
@ -132,7 +133,7 @@ class external_test extends externallib_advanced_testcase {
$CFG->agedigitalconsentverification = 1;
$result = core_auth_external::is_age_digital_consent_verification_enabled();
$result = \external_api::clean_returnvalue(
$result = external_api::clean_returnvalue(
core_auth_external::is_age_digital_consent_verification_enabled_returns(), $result);
$this->assertTrue($result['status']);
}
@ -151,12 +152,12 @@ class external_test extends externallib_advanced_testcase {
// Create new user.
$result = auth_email_external::signup_user($username, $password, $firstname, $lastname, $email);
$result = \external_api::clean_returnvalue(auth_email_external::signup_user_returns(), $result);
$result = external_api::clean_returnvalue(auth_email_external::signup_user_returns(), $result);
$this->assertTrue($result['success']);
$this->assertEmpty($result['warnings']);
$result = core_auth_external::resend_confirmation_email($username, $password);
$result = \external_api::clean_returnvalue(core_auth_external::resend_confirmation_email_returns(), $result);
$result = external_api::clean_returnvalue(core_auth_external::resend_confirmation_email_returns(), $result);
$this->assertTrue($result['status']);
$this->assertEmpty($result['warnings']);
$confirmed = $DB->get_field('user', 'confirmed', array('username' => $username));
@ -176,7 +177,7 @@ class external_test extends externallib_advanced_testcase {
// Create new user.
$result = auth_email_external::signup_user($username, $password, $firstname, $lastname, $email);
$result = \external_api::clean_returnvalue(auth_email_external::signup_user_returns(), $result);
$result = external_api::clean_returnvalue(auth_email_external::signup_user_returns(), $result);
$this->assertTrue($result['success']);
$this->assertEmpty($result['warnings']);
@ -199,7 +200,7 @@ class external_test extends externallib_advanced_testcase {
// Create new user.
$result = auth_email_external::signup_user($username, $password, $firstname, $lastname, $email);
$result = \external_api::clean_returnvalue(auth_email_external::signup_user_returns(), $result);
$result = external_api::clean_returnvalue(auth_email_external::signup_user_returns(), $result);
$this->assertTrue($result['success']);
$this->assertEmpty($result['warnings']);
@ -223,14 +224,14 @@ class external_test extends externallib_advanced_testcase {
// Create new user.
$result = auth_email_external::signup_user($username, $password, $firstname, $lastname, $email);
$result = \external_api::clean_returnvalue(auth_email_external::signup_user_returns(), $result);
$result = external_api::clean_returnvalue(auth_email_external::signup_user_returns(), $result);
$this->assertTrue($result['success']);
$this->assertEmpty($result['warnings']);
$secret = $DB->get_field('user', 'secret', array('username' => $username));
// Confirm the user.
$result = core_auth_external::confirm_user($username, $secret);
$result = \external_api::clean_returnvalue(core_auth_external::confirm_user_returns(), $result);
$result = external_api::clean_returnvalue(core_auth_external::confirm_user_returns(), $result);
$this->assertTrue($result['success']);
$this->expectException('\moodle_exception');

View file

@ -14,7 +14,6 @@
// You should have received a copy of the GNU General Public License
// along with Moodle. If not, see <http://www.gnu.org/licenses/>.
/**
* External backup API.
*
@ -24,9 +23,14 @@
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
*/
use core_external\external_api;
use core_external\external_function_parameters;
use core_external\external_multiple_structure;
use core_external\external_single_structure;
use core_external\external_value;
defined('MOODLE_INTERNAL') || die;
require_once("$CFG->libdir/externallib.php");
require_once($CFG->dirroot . '/backup/util/includes/backup_includes.php');
require_once($CFG->dirroot . '/backup/util/includes/restore_includes.php');
@ -101,7 +105,7 @@ class core_backup_external extends external_api {
/**
* Returns description of method result value
*
* @return external_description
* @return \core_external\external_description
* @since Moodle 3.7
*/
public static function get_async_backup_progress_returns() {
@ -172,7 +176,7 @@ class core_backup_external extends external_api {
/**
* Returns description of method result value.
*
* @return external_description
* @return \core_external\external_description
* @since Moodle 3.7
*/
public static function get_async_backup_links_backup_returns() {
@ -238,7 +242,7 @@ class core_backup_external extends external_api {
/**
* Returns description of method result value.
*
* @return external_description
* @return \core_external\external_description
* @since Moodle 3.7
*/
public static function get_async_backup_links_restore_returns() {
@ -321,7 +325,7 @@ class core_backup_external extends external_api {
/**
* Returns description of method result value.
*
* @return external_description
* @return \core_external\external_description
* @since Moodle 3.9
*/
public static function get_copy_progress_returns() {
@ -400,7 +404,7 @@ class core_backup_external extends external_api {
/**
* Returns description of method result value.
*
* @return external_description
* @return \core_external\external_description
* @since Moodle 3.9
*/
public static function submit_copy_form_returns() {

View file

@ -18,6 +18,7 @@ namespace core_backup;
use backup;
use core_backup_external;
use core_external\external_api;
use externallib_advanced_testcase;
defined('MOODLE_INTERNAL') || die();
@ -90,7 +91,7 @@ class externallib_test extends externallib_advanced_testcase {
$returnvalue = core_backup_external::get_copy_progress($params);
// We need to execute the return values cleaning process to simulate the web service server.
$returnvalue = \external_api::clean_returnvalue(core_backup_external::get_copy_progress_returns(), $returnvalue);
$returnvalue = external_api::clean_returnvalue(core_backup_external::get_copy_progress_returns(), $returnvalue);
$this->assertEquals(\backup::STATUS_AWAITING, $returnvalue[0]['status']);
$this->assertEquals(0, $returnvalue[0]['progress']);
@ -111,7 +112,7 @@ class externallib_test extends externallib_advanced_testcase {
$params = array('copies' => $copydetails);
$returnvalue = core_backup_external::get_copy_progress($params);
$returnvalue = \external_api::clean_returnvalue(core_backup_external::get_copy_progress_returns(), $returnvalue);
$returnvalue = external_api::clean_returnvalue(core_backup_external::get_copy_progress_returns(), $returnvalue);
$this->assertEquals(\backup::STATUS_FINISHED_OK, $returnvalue[0]['status']);
$this->assertEquals(1, $returnvalue[0]['progress']);
@ -160,7 +161,7 @@ class externallib_test extends externallib_advanced_testcase {
$returnvalue = core_backup_external::submit_copy_form($jsonformdata);
$returnjson = \external_api::clean_returnvalue(core_backup_external::submit_copy_form_returns(), $returnvalue);
$returnjson = external_api::clean_returnvalue(core_backup_external::submit_copy_form_returns(), $returnvalue);
$copyids = json_decode($returnjson, true);
$backuprec = $DB->get_record('backup_controllers', array('backupid' => $copyids['backupid']));

View file

@ -26,10 +26,15 @@
defined('MOODLE_INTERNAL') || die;
require_once($CFG->libdir . '/externallib.php');
require_once($CFG->libdir . '/badgeslib.php');
use core_badges\external\user_badge_exporter;
use core_external\external_api;
use core_external\external_function_parameters;
use core_external\external_multiple_structure;
use core_external\external_single_structure;
use core_external\external_value;
use core_external\external_warnings;
/**
* Badges external functions

View file

@ -27,6 +27,8 @@
namespace core_badges\external;
use core_badges_external;
use core_external\external_api;
use core_external\external_settings;
use externallib_advanced_testcase;
defined('MOODLE_INTERNAL') || die();
@ -214,12 +216,12 @@ class external_test extends externallib_advanced_testcase {
}
$result = core_badges_external::get_user_badges();
$result = \external_api::clean_returnvalue(core_badges_external::get_user_badges_returns(), $result);
$result = external_api::clean_returnvalue(core_badges_external::get_user_badges_returns(), $result);
$this->assertEquals($expectedbadges, $result['badges']);
// Pagination and filtering.
$result = core_badges_external::get_user_badges(0, $this->course->id, 0, 1, '', true);
$result = \external_api::clean_returnvalue(core_badges_external::get_user_badges_returns(), $result);
$result = external_api::clean_returnvalue(core_badges_external::get_user_badges_returns(), $result);
$this->assertCount(1, $result['badges']);
$this->assertEquals($coursebadge, $result['badges'][0]);
}
@ -232,7 +234,7 @@ class external_test extends externallib_advanced_testcase {
$this->setUser($this->teacher);
$result = core_badges_external::get_user_badges($this->student->id);
$result = \external_api::clean_returnvalue(core_badges_external::get_user_badges_returns(), $result);
$result = external_api::clean_returnvalue(core_badges_external::get_user_badges_returns(), $result);
$this->assertCount(2, $result['badges']);
@ -264,7 +266,7 @@ class external_test extends externallib_advanced_testcase {
filter_set_global_state('multilang', TEXTFILTER_ON);
filter_set_applies_to_strings('multilang', true);
\external_settings::get_instance()->set_filter(true);
external_settings::get_instance()->set_filter(true);
// Update issuer name of test badge.
$issuername = '<span class="multilang" lang="en">Issuer (en)</span><span class="multilang" lang="es">Issuer (es)</span>';
@ -272,7 +274,7 @@ class external_test extends externallib_advanced_testcase {
// Retrieve student badges.
$result = core_badges_external::get_user_badges($this->student->id);
$result = \external_api::clean_returnvalue(core_badges_external::get_user_badges_returns(), $result);
$result = external_api::clean_returnvalue(core_badges_external::get_user_badges_returns(), $result);
// Site badge will be last, because it has the earlier issued date.
$badge = end($result['badges']);

View file

@ -14,27 +14,15 @@
// You should have received a copy of the GNU General Public License
// along with Moodle. If not, see <http://www.gnu.org/licenses/>.
/**
* Web service to fetch module data.
*
* @package block_accessreview
* @copyright 2020 onward Brickfield Education Labs Ltd, https://www.brickfield.ie
* @author 2020 Max Larkin <max@brickfieldlabs.ie>
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
*/
namespace block_accessreview\external;
use external_api;
use external_function_parameters;
use external_multiple_structure;
use external_single_structure;
use external_value;
use core_external\external_api;
use core_external\external_function_parameters;
use core_external\external_multiple_structure;
use core_external\external_single_structure;
use core_external\external_value;
use tool_brickfield\manager;
defined('MOODLE_INTERNAL') || die();
require_once($CFG->libdir . '/externallib.php');
/**
* Web service to fetch module data.
*

View file

@ -14,26 +14,15 @@
// You should have received a copy of the GNU General Public License
// along with Moodle. If not, see <http://www.gnu.org/licenses/>.
/**
* Web service to fetch section data.
*
* @package block_accessreview
* @copyright 2020 onward Brickfield Education Labs Ltd, https://www.brickfield.ie
* @author 2020 Max Larkin <max@brickfieldlabs.ie>
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
*/
namespace block_accessreview\external;
use external_api;
use external_function_parameters;
use external_multiple_structure;
use external_single_structure;
use external_value;
use core_external\external_api;
use core_external\external_function_parameters;
use core_external\external_multiple_structure;
use core_external\external_single_structure;
use core_external\external_value;
use tool_brickfield\manager;
defined('MOODLE_INTERNAL') || die();
require_once($CFG->libdir . '/externallib.php');
/**
* Web service to fetch section data.
*

View file

@ -24,9 +24,17 @@
* @since Moodle 3.3
*/
use core_external\external_api;
use core_external\external_files;
use core_external\external_format_value;
use core_external\external_function_parameters;
use core_external\external_multiple_structure;
use core_external\external_single_structure;
use core_external\external_value;
use core_external\external_warnings;
defined('MOODLE_INTERNAL') || die;
require_once("$CFG->libdir/externallib.php");
require_once("$CFG->dirroot/my/lib.php");
/**

View file

@ -14,6 +14,14 @@
// You should have received a copy of the GNU General Public License
// along with Moodle. If not, see <http://www.gnu.org/licenses/>.
namespace core_block\external;
use core_external\external_api;
use core_external\external_function_parameters;
use core_external\external_multiple_structure;
use core_external\external_single_structure;
use core_external\external_value;
/**
* This is the external method used for fetching the addable blocks in a given page.
*
@ -22,26 +30,6 @@
* @copyright 2020 Mihail Geshoski <mihail@moodle.com>
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
*/
namespace core_block\external;
defined('MOODLE_INTERNAL') || die();
global $CFG;
require_once($CFG->libdir . '/externallib.php');
use external_api;
use external_function_parameters;
use external_multiple_structure;
use external_single_structure;
use external_value;
/**
* This is the external method used for fetching the addable blocks in a given page.
*
* @copyright 2020 Mihail Geshoski <mihail@moodle.com>
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
*/
class fetch_addable_blocks extends external_api {
/**

View file

@ -14,6 +14,8 @@
// You should have received a copy of the GNU General Public License
// along with Moodle. If not, see <http://www.gnu.org/licenses/>.
use core_external\util as external_util;
/**
* Form for editing HTML block instances.
*
@ -21,9 +23,7 @@
* @copyright 1999 onwards Martin Dougiamas (http://dougiamas.com)
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
*/
class block_html extends block_base {
function init() {
$this->title = get_string('pluginname', 'block_html');
}
@ -87,9 +87,6 @@ class block_html extends block_base {
}
public function get_content_for_external($output) {
global $CFG;
require_once($CFG->libdir . '/externallib.php');
$bc = new stdClass;
$bc->title = null;
$bc->content = '';
@ -113,8 +110,15 @@ class block_html extends block_base {
if (isset($this->config->format)) {
$format = $this->config->format;
}
list($bc->content, $bc->contentformat) =
external_format_text($this->config->text, $format, $this->context, 'block_html', 'content', null, $filteropt);
[$bc->content, $bc->contentformat] = \core_external\util::format_text(
$this->config->text,
$format,
$this->context,
'block_html',
'content',
null,
$filteropt
);
$bc->files = external_util::get_area_files($this->context->id, 'block_html', 'content', false, false);
}

View file

@ -278,7 +278,7 @@ class block_base {
* Return an object containing all the block content to be returned by external functions.
*
* If your block is returning formatted content or provide files for download, you should override this method to use the
* external_format_text, external_format_string functions for formatting or external_util::get_area_files for files.
* \core_external\util::format_text, \core_external\util::format_string functions for formatting or external_util::get_area_files for files.
*
* @param core_renderer $output the rendered used for output
* @return stdClass object containing the block title, central content, footer and linked files (if any).

View file

@ -14,23 +14,13 @@
// You should have received a copy of the GNU General Public License
// along with Moodle. If not, see <http://www.gnu.org/licenses/>.
/**
* External API.
*
* @package block_recentlyaccesseditems
* @copyright 2018 Victor Deniz <victor@moodle.com>
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
*/
namespace block_recentlyaccesseditems;
defined('MOODLE_INTERNAL') || die();
require_once("$CFG->libdir/externallib.php");
use block_recentlyaccesseditems\external\recentlyaccesseditems_item_exporter;
use external_api;
use external_function_parameters;
use external_value;
use external_multiple_structure;
use core_external\external_api;
use core_external\external_function_parameters;
use core_external\external_multiple_structure;
use core_external\external_value;
use context_user;
use context_module;
@ -92,7 +82,7 @@ class external extends external_api {
/**
* Returns description of method result value
*
* @return external_description
* @return \core_external\external_description
* @since Moodle 3.6
*/
public static function get_recent_items_returns() {

View file

@ -21,14 +21,16 @@
* @copyright 2018 Simey Lameze <simey@moodle.com>
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
*/
defined('MOODLE_INTERNAL') || die;
require_once($CFG->libdir . '/externallib.php');
defined('MOODLE_INTERNAL') || die;
require_once($CFG->dirroot . '/course/lib.php');
require_once($CFG->dirroot . '/course/externallib.php');
use \core_course\external\course_summary_exporter;
use core_course\external\course_summary_exporter;
use core_external\external_function_parameters;
use core_external\external_multiple_structure;
use core_external\external_value;
/**
* Starred courses block external functions.
@ -107,7 +109,7 @@ class block_starredcourses_external extends core_course_external {
/**
* Returns description of method result value
*
* @return external_description
* @return \core_external\external_description
* @since Moodle 3.6
*/
public static function get_starred_courses_returns() {

View file

@ -63,7 +63,7 @@ class externallib_test extends externallib_advanced_testcase {
// Check for the new block.
$result = core_block_external::get_course_blocks($course->id);
// We need to execute the return values cleaning process to simulate the web service server.
$result = \external_api::clean_returnvalue(core_block_external::get_course_blocks_returns(), $result);
$result = \core_external\external_api::clean_returnvalue(core_block_external::get_course_blocks_returns(), $result);
// Expect the new block.
$this->assertCount(1, $result['blocks']);
@ -92,7 +92,7 @@ class externallib_test extends externallib_advanced_testcase {
// Check for the new block.
$result = core_block_external::get_course_blocks(SITEID);
// We need to execute the return values cleaning process to simulate the web service server.
$result = \external_api::clean_returnvalue(core_block_external::get_course_blocks_returns(), $result);
$result = \core_external\external_api::clean_returnvalue(core_block_external::get_course_blocks_returns(), $result);
// Expect the new block.
$this->assertCount(1, $result['blocks']);
@ -119,7 +119,7 @@ class externallib_test extends externallib_advanced_testcase {
// Try default blocks.
$result = core_block_external::get_course_blocks($course->id);
// We need to execute the return values cleaning process to simulate the web service server.
$result = \external_api::clean_returnvalue(core_block_external::get_course_blocks_returns(), $result);
$result = \core_external\external_api::clean_returnvalue(core_block_external::get_course_blocks_returns(), $result);
// Expect 4 default blocks.
$this->assertCount(4, $result['blocks']);
@ -202,7 +202,7 @@ class externallib_test extends externallib_advanced_testcase {
// Check for the new block.
$result = core_block_external::get_course_blocks($course->id, true);
// We need to execute the return values cleaning process to simulate the web service server.
$result = \external_api::clean_returnvalue(core_block_external::get_course_blocks_returns(), $result);
$result = \core_external\external_api::clean_returnvalue(core_block_external::get_course_blocks_returns(), $result);
// Expect the new block.
$this->assertCount(1, $result['blocks']);
@ -236,8 +236,6 @@ class externallib_test extends externallib_advanced_testcase {
public function test_get_course_blocks_contents_with_mathjax() {
global $DB, $CFG;
require_once($CFG->dirroot . '/lib/externallib.php');
$this->resetAfterTest(true);
// Enable MathJax filter in content and headings.
@ -292,12 +290,12 @@ class externallib_test extends externallib_advanced_testcase {
// Check for the new block.
$result = core_block_external::get_course_blocks($course->id, true);
$result = \external_api::clean_returnvalue(core_block_external::get_course_blocks_returns(), $result);
$result = \core_external\external_api::clean_returnvalue(core_block_external::get_course_blocks_returns(), $result);
// Format the original data.
$sitecontext = \context_system::instance();
$title = external_format_string($title, $coursecontext->id);
list($body, $bodyformat) = external_format_text($body, $bodyformat, $coursecontext->id, 'block_html', 'content');
$title = \core_external\util::format_string($title, $coursecontext->id);
list($body, $bodyformat) = \core_external\util::format_text($body, $bodyformat, $coursecontext, 'block_html', 'content');
// Check that the block data is formatted.
$this->assertCount(1, $result['blocks']);
@ -336,7 +334,7 @@ class externallib_test extends externallib_advanced_testcase {
// Check for the default blocks.
$result = core_block_external::get_dashboard_blocks($user->id);
// We need to execute the return values cleaning process to simulate the web service server.
$result = \external_api::clean_returnvalue(core_block_external::get_dashboard_blocks_returns(), $result);
$result = \core_external\external_api::clean_returnvalue(core_block_external::get_dashboard_blocks_returns(), $result);
// Expect all default blocks defined in blocks_add_default_system_blocks().
$this->assertCount(count($alldefaultblocksordered), $result['blocks']);
$returnedblocks = array();
@ -390,7 +388,7 @@ class externallib_test extends externallib_advanced_testcase {
// Check for the default blocks plus the sticky.
$result = core_block_external::get_dashboard_blocks($user->id);
// We need to execute the return values cleaning process to simulate the web service server.
$result = \external_api::clean_returnvalue(core_block_external::get_dashboard_blocks_returns(), $result);
$result = \core_external\external_api::clean_returnvalue(core_block_external::get_dashboard_blocks_returns(), $result);
// Expect all default blocks defined in blocks_add_default_system_blocks() plus sticky one.
$this->assertCount(count($alldefaultblocks) + 1, $result['blocks']);
$found = false;
@ -441,7 +439,7 @@ class externallib_test extends externallib_advanced_testcase {
// Check for the new block as admin for a user.
$result = core_block_external::get_dashboard_blocks($user->id);
// We need to execute the return values cleaning process to simulate the web service server.
$result = \external_api::clean_returnvalue(core_block_external::get_dashboard_blocks_returns(), $result);
$result = \core_external\external_api::clean_returnvalue(core_block_external::get_dashboard_blocks_returns(), $result);
// Expect all default blocks defined in blocks_add_default_system_blocks() plus the one we added.
$this->assertCount(count($alldefaultblocks) + 1, $result['blocks']);
$found = false;
@ -499,7 +497,7 @@ class externallib_test extends externallib_advanced_testcase {
// Check for the default blocks.
$result = core_block_external::get_dashboard_blocks($user->id, false, MY_PAGE_COURSES);
// We need to execute the return values cleaning process to simulate the web service server.
$result = \external_api::clean_returnvalue(core_block_external::get_dashboard_blocks_returns(), $result);
$result = \core_external\external_api::clean_returnvalue(core_block_external::get_dashboard_blocks_returns(), $result);
// Expect all default blocks defined in blocks_add_default_system_blocks().
$this->assertCount(count($alldefaultblocksordered), $result['blocks']);
$returnedblocks = [];

View file

@ -25,16 +25,15 @@
namespace core_blog;
defined('MOODLE_INTERNAL') || die();
require_once($CFG->libdir .'/externallib.php');
require_once($CFG->dirroot .'/blog/lib.php');
require_once($CFG->dirroot .'/blog/locallib.php');
use external_api;
use external_function_parameters;
use external_value;
use external_single_structure;
use external_multiple_structure;
use external_warnings;
use core_external\external_api;
use core_external\external_function_parameters;
use core_external\external_multiple_structure;
use core_external\external_single_structure;
use core_external\external_value;
use core_external\external_warnings;
use context_system;
use context_course;
use moodle_exception;
@ -195,7 +194,7 @@ class external extends external_api {
/**
* Returns description of get_entries() result value.
*
* @return external_description
* @return \core_external\external_description
* @since Moodle 3.6
*/
public static function get_entries_returns() {
@ -277,7 +276,7 @@ class external extends external_api {
/**
* Returns description of view_entries() result value.
*
* @return external_description
* @return \core_external\external_description
* @since Moodle 3.6
*/
public static function view_entries_returns() {

View file

@ -25,8 +25,8 @@ namespace core_blog\external;
defined('MOODLE_INTERNAL') || die();
use core\external\exporter;
use external_util;
use external_files;
use core_external\util as external_util;
use core_external\external_files;
use renderer_base;
use context_system;
use core_tag\external\tag_item_exporter;

View file

@ -24,6 +24,8 @@
namespace core_blog\external;
use core_external\external_api;
defined('MOODLE_INTERNAL') || die();
global $CFG;
@ -108,7 +110,7 @@ class external_test extends \advanced_testcase {
$DB->set_field('post', 'publishstate', 'public', array('id' => $this->postid));
$result = \core_blog\external::get_entries();
$result = \external_api::clean_returnvalue(\core_blog\external::get_entries_returns(), $result);
$result = external_api::clean_returnvalue(\core_blog\external::get_entries_returns(), $result);
$this->assertCount(1, $result['entries']);
$this->assertCount(1, $result['entries'][0]['tags']);
$this->assertEquals('tag1', $result['entries'][0]['tags'][0]['rawname']);
@ -144,7 +146,7 @@ class external_test extends \advanced_testcase {
$this->setGuestUser();
$result = \core_blog\external::get_entries();
$result = \external_api::clean_returnvalue(\core_blog\external::get_entries_returns(), $result);
$result = external_api::clean_returnvalue(\core_blog\external::get_entries_returns(), $result);
$this->assertCount(1, $result['entries']);
$this->assertCount(1, $result['entries'][0]['tags']);
$this->assertEquals('tag1', $result['entries'][0]['tags'][0]['rawname']);
@ -162,7 +164,7 @@ class external_test extends \advanced_testcase {
$CFG->bloglevel = BLOG_GLOBAL_LEVEL;
$result = \core_blog\external::get_entries();
$result = \external_api::clean_returnvalue(\core_blog\external::get_entries_returns(), $result);
$result = external_api::clean_returnvalue(\core_blog\external::get_entries_returns(), $result);
$this->assertCount(0, $result['entries']);
}
@ -177,7 +179,7 @@ class external_test extends \advanced_testcase {
$this->setGuestUser();
$result = \core_blog\external::get_entries();
$result = \external_api::clean_returnvalue(\core_blog\external::get_entries_returns(), $result);
$result = external_api::clean_returnvalue(\core_blog\external::get_entries_returns(), $result);
$this->assertCount(0, $result['entries']);
}
@ -198,7 +200,7 @@ class external_test extends \advanced_testcase {
$this->setGuestUser();
$result = \core_blog\external::get_entries();
$result = \external_api::clean_returnvalue(\core_blog\external::get_entries_returns(), $result);
$result = external_api::clean_returnvalue(\core_blog\external::get_entries_returns(), $result);
$this->assertCount(0, $result['entries']);
}
@ -209,7 +211,7 @@ class external_test extends \advanced_testcase {
$this->setUser($this->userid);
$result = \core_blog\external::get_entries();
$result = \external_api::clean_returnvalue(\core_blog\external::get_entries_returns(), $result);
$result = external_api::clean_returnvalue(\core_blog\external::get_entries_returns(), $result);
$this->assertCount(1, $result['entries']);
$this->assertEquals($this->postid, $result['entries'][0]['id']);
}
@ -225,7 +227,7 @@ class external_test extends \advanced_testcase {
$this->setUser($this->userid);
$result = \core_blog\external::get_entries();
$result = \external_api::clean_returnvalue(\core_blog\external::get_entries_returns(), $result);
$result = external_api::clean_returnvalue(\core_blog\external::get_entries_returns(), $result);
$this->assertCount(1, $result['entries']);
$this->assertEquals($this->postid, $result['entries'][0]['id']);
}
@ -242,7 +244,7 @@ class external_test extends \advanced_testcase {
$this->setUser($user);
$result = \core_blog\external::get_entries();
$result = \external_api::clean_returnvalue(\core_blog\external::get_entries_returns(), $result);
$result = external_api::clean_returnvalue(\core_blog\external::get_entries_returns(), $result);
$this->assertCount(0, $result['entries']);
}
@ -258,7 +260,7 @@ class external_test extends \advanced_testcase {
$this->setAdminUser();
$result = \core_blog\external::get_entries();
$result = \external_api::clean_returnvalue(\core_blog\external::get_entries_returns(), $result);
$result = external_api::clean_returnvalue(\core_blog\external::get_entries_returns(), $result);
$this->assertCount(1, $result['entries']);
$this->assertEquals($this->postid, $result['entries'][0]['id']);
}
@ -275,7 +277,7 @@ class external_test extends \advanced_testcase {
$this->setUser($this->userid);
$result = \core_blog\external::get_entries();
$result = \external_api::clean_returnvalue(\core_blog\external::get_entries_returns(), $result);
$result = external_api::clean_returnvalue(\core_blog\external::get_entries_returns(), $result);
$this->assertCount(1, $result['entries']);
$this->assertEquals($this->postid, $result['entries'][0]['id']);
}
@ -293,7 +295,7 @@ class external_test extends \advanced_testcase {
$this->setUser($user);
$result = \core_blog\external::get_entries();
$result = \external_api::clean_returnvalue(\core_blog\external::get_entries_returns(), $result);
$result = external_api::clean_returnvalue(\core_blog\external::get_entries_returns(), $result);
$this->assertCount(0, $result['entries']);
}
@ -310,7 +312,7 @@ class external_test extends \advanced_testcase {
$this->setAdminUser();
$result = \core_blog\external::get_entries();
$result = \external_api::clean_returnvalue(\core_blog\external::get_entries_returns(), $result);
$result = external_api::clean_returnvalue(\core_blog\external::get_entries_returns(), $result);
$this->assertCount(1, $result['entries']);
$this->assertEquals($this->postid, $result['entries'][0]['id']);
}
@ -336,7 +338,7 @@ class external_test extends \advanced_testcase {
$this->setUser($this->userid);
$result = \core_blog\external::get_entries();
$result = \external_api::clean_returnvalue(\core_blog\external::get_entries_returns(), $result);
$result = external_api::clean_returnvalue(\core_blog\external::get_entries_returns(), $result);
$this->assertCount(2, $result['entries']);
$this->assertEquals(2, $result['totalentries']);
$this->assertCount(0, $result['entries'][0]['tags']);
@ -344,13 +346,13 @@ class external_test extends \advanced_testcase {
$this->assertEquals('tag1', $result['entries'][1]['tags'][0]['rawname']);
$result = \core_blog\external::get_entries(array(), 0, 1);
$result = \external_api::clean_returnvalue(\core_blog\external::get_entries_returns(), $result);
$result = external_api::clean_returnvalue(\core_blog\external::get_entries_returns(), $result);
$this->assertCount(1, $result['entries']);
$this->assertEquals(2, $result['totalentries']);
$this->assertEquals($newpost->id, $result['entries'][0]['id']);
$result = \core_blog\external::get_entries(array(), 1, 1);
$result = \external_api::clean_returnvalue(\core_blog\external::get_entries_returns(), $result);
$result = external_api::clean_returnvalue(\core_blog\external::get_entries_returns(), $result);
$this->assertCount(1, $result['entries']);
$this->assertEquals(2, $result['totalentries']);
$this->assertEquals($this->postid, $result['entries'][0]['id']);
@ -374,19 +376,19 @@ class external_test extends \advanced_testcase {
// There is one entry associated with a course.
$result = \core_blog\external::get_entries(array(array('name' => 'courseid', 'value' => $this->courseid)));
$result = \external_api::clean_returnvalue(\core_blog\external::get_entries_returns(), $result);
$result = external_api::clean_returnvalue(\core_blog\external::get_entries_returns(), $result);
$this->assertCount(1, $result['entries']);
$this->assertCount(1, $result['entries'][0]['tags']);
$this->assertEquals('tag1', $result['entries'][0]['tags'][0]['rawname']);
// There is no entry associated with a wrong course.
$result = \core_blog\external::get_entries(array(array('name' => 'courseid', 'value' => $anothercourse->id)));
$result = \external_api::clean_returnvalue(\core_blog\external::get_entries_returns(), $result);
$result = external_api::clean_returnvalue(\core_blog\external::get_entries_returns(), $result);
$this->assertCount(0, $result['entries']);
// There is no entry associated with a module.
$result = \core_blog\external::get_entries(array(array('name' => 'cmid', 'value' => $this->cmid)));
$result = \external_api::clean_returnvalue(\core_blog\external::get_entries_returns(), $result);
$result = external_api::clean_returnvalue(\core_blog\external::get_entries_returns(), $result);
$this->assertCount(0, $result['entries']);
}
@ -409,17 +411,17 @@ class external_test extends \advanced_testcase {
// There is no entry associated with a course.
$result = \core_blog\external::get_entries(array(array('name' => 'courseid', 'value' => $this->courseid)));
$result = \external_api::clean_returnvalue(\core_blog\external::get_entries_returns(), $result);
$result = external_api::clean_returnvalue(\core_blog\external::get_entries_returns(), $result);
$this->assertCount(0, $result['entries']);
// There is one entry associated with a module.
$result = \core_blog\external::get_entries(array(array('name' => 'cmid', 'value' => $this->cmid)));
$result = \external_api::clean_returnvalue(\core_blog\external::get_entries_returns(), $result);
$result = external_api::clean_returnvalue(\core_blog\external::get_entries_returns(), $result);
$this->assertCount(1, $result['entries']);
// There is no entry associated with a wrong module.
$result = \core_blog\external::get_entries(array(array('name' => 'cmid', 'value' => $anothermodule->cmid)));
$result = \external_api::clean_returnvalue(\core_blog\external::get_entries_returns(), $result);
$result = external_api::clean_returnvalue(\core_blog\external::get_entries_returns(), $result);
$this->assertCount(0, $result['entries']);
}
@ -430,12 +432,12 @@ class external_test extends \advanced_testcase {
$this->setAdminUser();
// Filter by author.
$result = \core_blog\external::get_entries(array(array('name' => 'userid', 'value' => $this->userid)));
$result = \external_api::clean_returnvalue(\core_blog\external::get_entries_returns(), $result);
$result = external_api::clean_returnvalue(\core_blog\external::get_entries_returns(), $result);
$this->assertCount(1, $result['entries']);
// No author.
$anotheruser = $this->getDataGenerator()->create_user();
$result = \core_blog\external::get_entries(array(array('name' => 'userid', 'value' => $anotheruser->id)));
$result = \external_api::clean_returnvalue(\core_blog\external::get_entries_returns(), $result);
$result = external_api::clean_returnvalue(\core_blog\external::get_entries_returns(), $result);
$this->assertCount(0, $result['entries']);
}
@ -446,7 +448,7 @@ class external_test extends \advanced_testcase {
$this->setAdminUser();
// Filter by correct entry.
$result = \core_blog\external::get_entries(array(array('name' => 'entryid', 'value' => $this->postid)));
$result = \external_api::clean_returnvalue(\core_blog\external::get_entries_returns(), $result);
$result = external_api::clean_returnvalue(\core_blog\external::get_entries_returns(), $result);
$this->assertCount(1, $result['entries']);
// Non-existent entry.
$this->expectException('\moodle_exception');
@ -460,11 +462,11 @@ class external_test extends \advanced_testcase {
$this->setAdminUser();
// Filter by correct search.
$result = \core_blog\external::get_entries(array(array('name' => 'search', 'value' => 'test')));
$result = \external_api::clean_returnvalue(\core_blog\external::get_entries_returns(), $result);
$result = external_api::clean_returnvalue(\core_blog\external::get_entries_returns(), $result);
$this->assertCount(1, $result['entries']);
// Non-existent search.
$result = \core_blog\external::get_entries(array(array('name' => 'search', 'value' => 'abc')));
$result = \external_api::clean_returnvalue(\core_blog\external::get_entries_returns(), $result);
$result = external_api::clean_returnvalue(\core_blog\external::get_entries_returns(), $result);
$this->assertCount(0, $result['entries']);
}
@ -475,14 +477,14 @@ class external_test extends \advanced_testcase {
$this->setAdminUser();
// Filter by correct tag.
$result = \core_blog\external::get_entries(array(array('name' => 'tag', 'value' => 'tag1')));
$result = \external_api::clean_returnvalue(\core_blog\external::get_entries_returns(), $result);
$result = external_api::clean_returnvalue(\core_blog\external::get_entries_returns(), $result);
$this->assertCount(1, $result['entries']);
// Create tag.
$tag = $this->getDataGenerator()->create_tag(array('userid' => $this->userid, 'name' => 'tag2',
'isstandard' => 1));
$result = \core_blog\external::get_entries(array(array('name' => 'tag', 'value' => 'tag2')));
$result = \external_api::clean_returnvalue(\core_blog\external::get_entries_returns(), $result);
$result = external_api::clean_returnvalue(\core_blog\external::get_entries_returns(), $result);
$this->assertCount(0, $result['entries']);
}
@ -493,7 +495,7 @@ class external_test extends \advanced_testcase {
$this->setAdminUser();
// Filter by correct tag.
$result = \core_blog\external::get_entries(array(array('name' => 'tagid', 'value' => $this->tagid)));
$result = \external_api::clean_returnvalue(\core_blog\external::get_entries_returns(), $result);
$result = external_api::clean_returnvalue(\core_blog\external::get_entries_returns(), $result);
$this->assertCount(1, $result['entries']);
// Non-existent tag.
@ -502,7 +504,7 @@ class external_test extends \advanced_testcase {
'isstandard' => 1));
$result = \core_blog\external::get_entries(array(array('name' => 'tagid', 'value' => $tag->id)));
$result = \external_api::clean_returnvalue(\core_blog\external::get_entries_returns(), $result);
$result = external_api::clean_returnvalue(\core_blog\external::get_entries_returns(), $result);
$this->assertCount(0, $result['entries']);
}
@ -518,7 +520,7 @@ class external_test extends \advanced_testcase {
// Filter by correct group.
$result = \core_blog\external::get_entries(array(array('name' => 'groupid', 'value' => $this->groupid)));
$result = \external_api::clean_returnvalue(\core_blog\external::get_entries_returns(), $result);
$result = external_api::clean_returnvalue(\core_blog\external::get_entries_returns(), $result);
$this->assertCount(1, $result['entries']);
// Non-existent group.
$anotheruser = $this->getDataGenerator()->create_user();
@ -540,7 +542,7 @@ class external_test extends \advanced_testcase {
array('name' => 'tagid', 'value' => $this->tagid),
array('name' => 'userid', 'value' => $this->userid),
));
$result = \external_api::clean_returnvalue(\core_blog\external::get_entries_returns(), $result);
$result = external_api::clean_returnvalue(\core_blog\external::get_entries_returns(), $result);
$this->assertCount(1, $result['entries']);
// Non-existent multiple filter.
@ -548,7 +550,7 @@ class external_test extends \advanced_testcase {
array('name' => 'search', 'value' => 'www'),
array('name' => 'userid', 'value' => $this->userid),
));
$result = \external_api::clean_returnvalue(\core_blog\external::get_entries_returns(), $result);
$result = external_api::clean_returnvalue(\core_blog\external::get_entries_returns(), $result);
$this->assertCount(0, $result['entries']);
}
@ -584,7 +586,7 @@ class external_test extends \advanced_testcase {
// Trigger and capture the event.
$sink = $this->redirectEvents();
$result = \core_blog\external::view_entries();
$result = \external_api::clean_returnvalue(\core_blog\external::view_entries_returns(), $result);
$result = external_api::clean_returnvalue(\core_blog\external::view_entries_returns(), $result);
$events = $sink->get_events();
$this->assertCount(1, $events);
@ -615,7 +617,7 @@ class external_test extends \advanced_testcase {
array('name' => 'tagid', 'value' => $this->tagid),
array('name' => 'userid', 'value' => $this->userid),
));
$result = \external_api::clean_returnvalue(\core_blog\external::view_entries_returns(), $result);
$result = external_api::clean_returnvalue(\core_blog\external::view_entries_returns(), $result);
$events = $sink->get_events();
$this->assertCount(1, $events);

View file

@ -27,7 +27,6 @@ namespace core_calendar\external;
defined('MOODLE_INTERNAL') || die();
use \core_calendar\local\event\container;
use \core_course\external\course_summary_exporter;
use \renderer_base;
require_once($CFG->dirroot . '/course/lib.php');
/**
@ -117,9 +116,13 @@ class calendar_event_exporter extends event_exporter_base {
$today = $this->related['type']->timestamp_to_date_array($this->related['today']);
if ($hascourse) {
$values['popupname'] = external_format_string($this->event->get_name(), \context_course::instance($course->id), true);
$values['popupname'] = \core_external\util::format_string(
$this->event->get_name(),
\context_course::instance($course->id),
true
);
} else {
$values['popupname'] = external_format_string($this->event->get_name(), \context_system::instance(), true);
$values['popupname'] = \core_external\util::format_string($this->event->get_name(), \context_system::instance(), true);
}
$times = $this->event->get_times();

View file

@ -27,8 +27,6 @@ namespace core_calendar\external;
defined('MOODLE_INTERNAL') || die();
use core\external\exporter;
use renderer_base;
use moodle_url;
/**
* Class for normalising the date data.

View file

@ -28,9 +28,7 @@ defined('MOODLE_INTERNAL') || die();
require_once($CFG->dirroot . "/calendar/lib.php");
use \core_calendar\local\event\entities\action_event_interface;
use \core_calendar\local\event\container;
use \core_course\external\course_summary_exporter;
use \renderer_base;
/**

View file

@ -79,7 +79,7 @@ class event_exporter_base extends exporter {
$event->get_id()
);
$data->descriptionformat = $event->get_description()->get_format();
$data->location = external_format_text($event->get_location(), FORMAT_PLAIN, $related['context']->id)[0];
$data->location = \core_external\util::format_text($event->get_location(), FORMAT_PLAIN, $related['context']->id)[0];
$data->groupid = $groupid;
$data->userid = $userid;
$data->categoryid = $categoryid;

View file

@ -26,9 +26,7 @@ namespace core_calendar\external;
defined('MOODLE_INTERNAL') || die();
use context;
use \core_calendar\local\event\entities\event_interface;
use stdClass;
/**
* Class to providing the related objects when exporting a list of calendar events.
@ -90,7 +88,7 @@ class events_related_objects_cache {
* Get the related course object for a given event.
*
* @param event_interface $event The event object.
* @return stdClass|null
* @return \stdClass|null
*/
public function get_course(event_interface $event) {
if (is_null($this->courses)) {
@ -109,7 +107,7 @@ class events_related_objects_cache {
* Get the related context for a given event.
*
* @param event_interface $event The event object.
* @return context|null
* @return \context|null
*/
public function get_context(event_interface $event) {
global $USER;
@ -141,7 +139,7 @@ class events_related_objects_cache {
* Get the related group object for a given event.
*
* @param event_interface $event The event object.
* @return stdClass|null
* @return \stdClass|null
*/
public function get_group(event_interface $event) {
if (is_null($this->groups)) {
@ -160,7 +158,7 @@ class events_related_objects_cache {
* Get the related course module for a given event.
*
* @param event_interface $event The event object.
* @return stdClass|null
* @return \stdClass|null
*/
public function get_course_module(event_interface $event) {
if (!$event->get_course_module()) {
@ -182,7 +180,7 @@ class events_related_objects_cache {
* Get the related module instance for a given event.
*
* @param event_interface $event The event object.
* @return stdClass|null
* @return \stdClass|null
*/
public function get_module_instance(event_interface $event) {
if (!$event->get_course_module()) {

View file

@ -28,16 +28,14 @@ namespace core_calendar\external\export;
defined('MOODLE_INTERNAL') || die();
global $CFG;
require_once($CFG->libdir . '/externallib.php');
require_once($CFG->dirroot . '/calendar/lib.php');
use context_system;
use external_api;
use external_function_parameters;
use external_multiple_structure;
use external_single_structure;
use external_value;
use external_warnings;
use core_external\external_api;
use core_external\external_function_parameters;
use core_external\external_single_structure;
use core_external\external_value;
use core_external\external_warnings;
use moodle_exception;
/**
@ -84,7 +82,7 @@ class token extends external_api {
/**
* Returns description of method result value.
*
* @return external_description.
* @return \core_external\external_description.
* @since Moodle 3.10
*/
public static function execute_returns() {

View file

@ -29,11 +29,11 @@ defined('MOODLE_INTERNAL') || die();
require_once($CFG->dirroot . '/calendar/lib.php');
use external_api;
use external_function_parameters;
use external_single_structure;
use external_value;
use external_warnings;
use core_external\external_api;
use core_external\external_function_parameters;
use core_external\external_single_structure;
use core_external\external_value;
use core_external\external_warnings;
/**
* Calendar external API for deleting the subscription.

View file

@ -27,7 +27,6 @@ namespace core_calendar\external;
defined('MOODLE_INTERNAL') || die();
use renderer_base;
use moodle_url;
/**
* Class for displaying the day on month view.

View file

@ -14,7 +14,6 @@
// You should have received a copy of the GNU General Public License
// along with Moodle. If not, see <http://www.gnu.org/licenses/>.
/**
* External calendar API
*
@ -27,18 +26,25 @@
defined('MOODLE_INTERNAL') || die;
require_once("$CFG->libdir/externallib.php");
require_once($CFG->dirroot . '/calendar/lib.php');
use \core_calendar\local\api as local_api;
use \core_calendar\local\event\container as event_container;
use \core_calendar\local\event\forms\create as create_event_form;
use \core_calendar\local\event\forms\update as update_event_form;
use \core_calendar\local\event\mappers\create_update_form_mapper;
use \core_calendar\external\event_exporter;
use \core_calendar\external\events_exporter;
use \core_calendar\external\events_grouped_by_course_exporter;
use \core_calendar\external\events_related_objects_cache;
use core_calendar\local\api as local_api;
use core_calendar\local\event\container as event_container;
use core_calendar\local\event\forms\create as create_event_form;
use core_calendar\local\event\forms\update as update_event_form;
use core_calendar\local\event\mappers\create_update_form_mapper;
use core_calendar\external\event_exporter;
use core_calendar\external\events_exporter;
use core_calendar\external\events_grouped_by_course_exporter;
use core_calendar\external\events_related_objects_cache;
use core_external\external_api;
use core_external\external_format_value;
use core_external\external_function_parameters;
use core_external\external_multiple_structure;
use core_external\external_single_structure;
use core_external\external_value;
use core_external\external_warnings;
use core_external\util as external_util;
/**
* Calendar external functions
@ -50,8 +56,6 @@ use \core_calendar\external\events_related_objects_cache;
* @since Moodle 2.5
*/
class core_calendar_external extends external_api {
/**
* Returns description of method parameters
*
@ -107,7 +111,7 @@ class core_calendar_external extends external_api {
/**
* Returns description of method result value
*
* @return external_description
* @return \core_external\external_description
* @since Moodle 2.5
*/
public static function delete_calendar_events_returns() {
@ -358,7 +362,7 @@ class core_calendar_external extends external_api {
/**
* Returns description of method result value
*
* @return external_description
* @return \core_external\external_description
* @since Moodle 2.5
*/
public static function get_calendar_events_returns() {
@ -480,7 +484,7 @@ class core_calendar_external extends external_api {
* Returns description of method result value.
*
* @since Moodle 3.3
* @return external_description
* @return \core_external\external_description
*/
public static function get_calendar_action_events_by_timesort_returns() {
return events_exporter::get_read_structure();
@ -567,7 +571,7 @@ class core_calendar_external extends external_api {
/**
* Returns description of method result value.
*
* @return external_description
* @return \core_external\external_description
*/
public static function get_calendar_action_events_by_course_returns() {
return events_exporter::get_read_structure();
@ -655,7 +659,7 @@ class core_calendar_external extends external_api {
/**
* Returns description of method result value.
*
* @return external_description
* @return \core_external\external_description
*/
public static function get_calendar_action_events_by_courses_returns() {
return events_grouped_by_course_exporter::get_read_structure();
@ -718,7 +722,7 @@ class core_calendar_external extends external_api {
$event['instance'] = 0;
$event['subscriptionid'] = null;
$event['uuid']= '';
$event['format'] = external_validate_format($event['format']);
$event['format'] = external_util::validate_format($event['format']);
if ($event['repeats'] > 0) {
$event['repeat'] = 1;
} else {
@ -753,7 +757,7 @@ class core_calendar_external extends external_api {
/**
* Returns description of method result value.
*
* @return external_description.
* @return \core_external\external_description.
* @since Moodle 2.5
*/
public static function create_calendar_events_returns() {
@ -844,7 +848,7 @@ class core_calendar_external extends external_api {
/**
* Returns description of method result value
*
* @return external_description
* @return \core_external\external_description
*/
public static function get_calendar_event_by_id_returns() {
$eventstructure = event_exporter::get_read_structure();
@ -983,7 +987,7 @@ class core_calendar_external extends external_api {
/**
* Returns description of method result value.
*
* @return external_description.
* @return \core_external\external_description.
*/
public static function submit_create_update_form_returns() {
$eventstructure = event_exporter::get_read_structure();
@ -1077,7 +1081,7 @@ class core_calendar_external extends external_api {
/**
* Returns description of method result value.
*
* @return external_description
* @return \core_external\external_description
*/
public static function get_calendar_monthly_view_returns() {
return \core_calendar\external\month_exporter::get_read_structure();
@ -1138,7 +1142,7 @@ class core_calendar_external extends external_api {
/**
* Returns description of method result value.
*
* @return external_description
* @return \core_external\external_description
*/
public static function get_calendar_day_view_returns() {
return \core_calendar\external\calendar_day_exporter::get_read_structure();
@ -1215,7 +1219,7 @@ class core_calendar_external extends external_api {
/**
* Returns description of method result value.
*
* @return external_description
* @return \core_external\external_description
*/
public static function update_event_start_day_returns() {
return new external_single_structure(
@ -1270,7 +1274,7 @@ class core_calendar_external extends external_api {
/**
* Returns description of method result value.
*
* @return external_description
* @return \core_external\external_description
*/
public static function get_calendar_upcoming_view_returns() {
return \core_calendar\external\calendar_upcoming_exporter::get_read_structure();
@ -1322,7 +1326,7 @@ class core_calendar_external extends external_api {
/**
* Returns description of method result value.
*
* @return external_description.
* @return \core_external\external_description.
* @since Moodle 3.7
*/
public static function get_calendar_access_information_returns() {
@ -1382,7 +1386,7 @@ class core_calendar_external extends external_api {
/**
* Returns description of method result value.
*
* @return external_description.
* @return \core_external\external_description.
* @since Moodle 3.7
*/
public static function get_allowed_event_types_returns() {

View file

@ -23,6 +23,8 @@
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
*/
use core_external\external_api;
if (!defined('MOODLE_INTERNAL')) {
die('Direct access to this script is forbidden.'); /// It must be included from a Moodle page
}
@ -975,7 +977,7 @@ class calendar_event {
$this->editorcontext = $this->get_context();
}
return external_format_string($this->properties->name, $this->editorcontext->id);
return \core_external\util::format_string($this->properties->name, $this->editorcontext->id);
}
/**
@ -993,7 +995,11 @@ class calendar_event {
if (!calendar_is_valid_eventtype($this->properties->eventtype)) {
// We don't have a context here, do a normal format_text.
return external_format_text($this->properties->description, $this->properties->format, $this->editorcontext->id);
return \core_external\util::format_text(
$this->properties->description,
$this->properties->format,
$this->editorcontext
);
}
}
@ -1004,8 +1010,14 @@ class calendar_event {
$itemid = $this->properties->id;
}
return external_format_text($this->properties->description, $this->properties->format, $this->editorcontext->id,
'calendar', 'event_description', $itemid);
return \core_external\util::format_text(
$this->properties->description,
$this->properties->format,
$this->editorcontext,
'calendar',
'event_description',
$itemid
);
}
}
@ -4010,7 +4022,7 @@ function calendar_inplace_editable(string $itemtype, int $itemid, int $newvalue)
$subscription = calendar_get_subscription($itemid);
$context = calendar_get_calendar_context($subscription);
\external_api::validate_context($context);
external_api::validate_context($context);
$updateresult = \core_calendar\output\refreshintervalcollection::update($itemid, $newvalue);
@ -4025,5 +4037,5 @@ function calendar_inplace_editable(string $itemtype, int $itemid, int $newvalue)
return $updateresult;
}
\external_api::validate_context(context_system::instance());
external_api::validate_context(context_system::instance());
}

View file

@ -18,6 +18,7 @@ namespace core_calendar;
use core_calendar_external;
use externallib_advanced_testcase;
use core_external\external_api;
defined('MOODLE_INTERNAL') || die();
@ -359,14 +360,14 @@ class externallib_test extends externallib_advanced_testcase {
$options = array ('siteevents' => true, 'userevents' => true);
$events = core_calendar_external::get_calendar_events($paramevents, $options);
$events = \external_api::clean_returnvalue(core_calendar_external::get_calendar_events_returns(), $events);
$events = external_api::clean_returnvalue(core_calendar_external::get_calendar_events_returns(), $events);
// Check to see if we got all events.
$this->assertEquals(5, count($events['events']));
$this->assertEquals(0, count($events['warnings']));
$options = array ('siteevents' => true, 'userevents' => true, 'timeend' => time() + 7*WEEKSECS);
$events = core_calendar_external::get_calendar_events($paramevents, $options);
$events = \external_api::clean_returnvalue(core_calendar_external::get_calendar_events_returns(), $events);
$events = external_api::clean_returnvalue(core_calendar_external::get_calendar_events_returns(), $events);
$this->assertEquals(5, count($events['events']));
$this->assertEquals(0, count($events['warnings']));
@ -392,71 +393,71 @@ class externallib_test extends externallib_advanced_testcase {
$this->setUser($user);
$events = core_calendar_external::get_calendar_events($paramevents, $options);
$events = \external_api::clean_returnvalue(core_calendar_external::get_calendar_events_returns(), $events);
$events = external_api::clean_returnvalue(core_calendar_external::get_calendar_events_returns(), $events);
$this->assertEquals(2, count($events['events'])); // site, user.
$this->assertEquals(2, count($events['warnings'])); // course, group.
$role = $DB->get_record('role', array('shortname' => 'student'));
$this->getDataGenerator()->enrol_user($user->id, $course->id, $role->id);
$events = core_calendar_external::get_calendar_events($paramevents, $options);
$events = \external_api::clean_returnvalue(core_calendar_external::get_calendar_events_returns(), $events);
$events = external_api::clean_returnvalue(core_calendar_external::get_calendar_events_returns(), $events);
$this->assertEquals(4, count($events['events'])); // site, user, both course events.
$this->assertEquals(1, count($events['warnings'])); // group.
$options = array ('siteevents' => true, 'userevents' => true, 'timeend' => time() + HOURSECS);
$events = core_calendar_external::get_calendar_events($paramevents, $options);
$events = \external_api::clean_returnvalue(core_calendar_external::get_calendar_events_returns(), $events);
$events = external_api::clean_returnvalue(core_calendar_external::get_calendar_events_returns(), $events);
$this->assertEquals(3, count($events['events'])); // site, user, one course event.
$this->assertEquals(1, count($events['warnings'])); // group.
groups_add_member($group, $user);
$events = core_calendar_external::get_calendar_events($paramevents, $options);
$events = \external_api::clean_returnvalue(core_calendar_external::get_calendar_events_returns(), $events);
$events = external_api::clean_returnvalue(core_calendar_external::get_calendar_events_returns(), $events);
$this->assertEquals(4, count($events['events'])); // site, user, group, one course event.
$this->assertEquals(0, count($events['warnings']));
$paramevents = array ('courseids' => array($course->id), 'groupids' => array($group->id));
$events = core_calendar_external::get_calendar_events($paramevents, $options);
$events = \external_api::clean_returnvalue(core_calendar_external::get_calendar_events_returns(), $events);
$events = external_api::clean_returnvalue(core_calendar_external::get_calendar_events_returns(), $events);
$this->assertEquals(4, count($events['events'])); // site, user, group, one course event.
$this->assertEquals(0, count($events['warnings']));
$paramevents = array ('groupids' => array($group->id, 23));
$events = core_calendar_external::get_calendar_events($paramevents, $options);
$events = \external_api::clean_returnvalue(core_calendar_external::get_calendar_events_returns(), $events);
$events = external_api::clean_returnvalue(core_calendar_external::get_calendar_events_returns(), $events);
$this->assertEquals(3, count($events['events'])); // site, user, group.
$this->assertEquals(1, count($events['warnings']));
$paramevents = array ('courseids' => array(23));
$events = core_calendar_external::get_calendar_events($paramevents, $options);
$events = \external_api::clean_returnvalue(core_calendar_external::get_calendar_events_returns(), $events);
$events = external_api::clean_returnvalue(core_calendar_external::get_calendar_events_returns(), $events);
$this->assertEquals(2, count($events['events'])); // site, user.
$this->assertEquals(1, count($events['warnings']));
$paramevents = array ();
$options = array ('siteevents' => false, 'userevents' => false, 'timeend' => time() + 7*WEEKSECS);
$events = core_calendar_external::get_calendar_events($paramevents, $options);
$events = \external_api::clean_returnvalue(core_calendar_external::get_calendar_events_returns(), $events);
$events = external_api::clean_returnvalue(core_calendar_external::get_calendar_events_returns(), $events);
$this->assertEquals(0, count($events['events'])); // nothing returned.
$this->assertEquals(0, count($events['warnings']));
$paramevents = array ('eventids' => array($siteevent->id, $groupevent->id));
$options = array ('siteevents' => false, 'userevents' => false, 'timeend' => time() + 7*WEEKSECS);
$events = core_calendar_external::get_calendar_events($paramevents, $options);
$events = \external_api::clean_returnvalue(core_calendar_external::get_calendar_events_returns(), $events);
$events = external_api::clean_returnvalue(core_calendar_external::get_calendar_events_returns(), $events);
$this->assertEquals(2, count($events['events'])); // site, group.
$this->assertEquals(0, count($events['warnings']));
$paramevents = array ('eventids' => array($siteevent->id));
$events = core_calendar_external::get_calendar_events($paramevents, $options);
$events = \external_api::clean_returnvalue(core_calendar_external::get_calendar_events_returns(), $events);
$events = external_api::clean_returnvalue(core_calendar_external::get_calendar_events_returns(), $events);
$this->assertEquals(1, count($events['events'])); // site.
$this->assertEquals(0, count($events['warnings']));
// Try getting a course event by its id.
$paramevents = array ('eventids' => array($courseevent->id));
$events = core_calendar_external::get_calendar_events($paramevents, $options);
$events = \external_api::clean_returnvalue(core_calendar_external::get_calendar_events_returns(), $events);
$events = external_api::clean_returnvalue(core_calendar_external::get_calendar_events_returns(), $events);
$this->assertEquals(1, count($events['events']));
$this->assertEquals(0, count($events['warnings']));
@ -469,7 +470,7 @@ class externallib_test extends externallib_advanced_testcase {
$paramevents = array ('courseids' => array($course->id));
$options = array ('siteevents' => true, 'userevents' => true, 'timeend' => time() + WEEKSECS);
$events = core_calendar_external::get_calendar_events($paramevents, $options);
$events = \external_api::clean_returnvalue(core_calendar_external::get_calendar_events_returns(), $events);
$events = external_api::clean_returnvalue(core_calendar_external::get_calendar_events_returns(), $events);
$this->assertCount(5, $events['events']);
@ -480,7 +481,7 @@ class externallib_test extends externallib_advanced_testcase {
\course_modinfo::clear_instance_cache();
$events = core_calendar_external::get_calendar_events($paramevents, $options);
$events = \external_api::clean_returnvalue(core_calendar_external::get_calendar_events_returns(), $events);
$events = external_api::clean_returnvalue(core_calendar_external::get_calendar_events_returns(), $events);
// Expect one less.
$this->assertCount(4, $events['events']);
@ -503,7 +504,7 @@ class externallib_test extends externallib_advanced_testcase {
$paramevents = array('categoryids' => array($category2b->id));
$options = array('timeend' => time() + 7 * WEEKSECS, 'userevents' => false, 'siteevents' => false);
$events = core_calendar_external::get_calendar_events($paramevents, $options);
$events = \external_api::clean_returnvalue(core_calendar_external::get_calendar_events_returns(), $events);
$events = external_api::clean_returnvalue(core_calendar_external::get_calendar_events_returns(), $events);
// Should be just one, since there's just one category event of the course I am enrolled (course3 - cat2b).
$this->assertEquals(1, count($events['events']));
@ -515,7 +516,7 @@ class externallib_test extends externallib_advanced_testcase {
$paramevents = array('courseids' => array($course3->id));
$options = array('timeend' => time() + 7 * WEEKSECS, 'userevents' => false, 'siteevents' => false);
$events = core_calendar_external::get_calendar_events($paramevents, $options);
$events = \external_api::clean_returnvalue(core_calendar_external::get_calendar_events_returns(), $events);
$events = external_api::clean_returnvalue(core_calendar_external::get_calendar_events_returns(), $events);
$this->assertEquals(1, count($events['events']));
$this->assertEquals($catevent2->id, $events['events'][0]['id']);
$this->assertEquals(0, count($events['warnings']));
@ -525,7 +526,7 @@ class externallib_test extends externallib_advanced_testcase {
$paramevents = array('categoryids' => array($category2->id, $category->id));
$options = array('timeend' => time() + 7 * WEEKSECS, 'userevents' => false, 'siteevents' => false);
$events = core_calendar_external::get_calendar_events($paramevents, $options);
$events = \external_api::clean_returnvalue(core_calendar_external::get_calendar_events_returns(), $events);
$events = external_api::clean_returnvalue(core_calendar_external::get_calendar_events_returns(), $events);
$this->assertEquals(1, count($events['events']));
$this->assertEquals($catevent2->id, $events['events'][0]['id']);
$this->assertEquals(0, count($events['warnings']));
@ -535,7 +536,7 @@ class externallib_test extends externallib_advanced_testcase {
$paramevents = array('categoryids' => array($category->id, $category2->id, $category2b->id));
$options = array('timeend' => time() + 7 * WEEKSECS, 'userevents' => false, 'siteevents' => false);
$events = core_calendar_external::get_calendar_events($paramevents, $options);
$events = \external_api::clean_returnvalue(core_calendar_external::get_calendar_events_returns(), $events);
$events = external_api::clean_returnvalue(core_calendar_external::get_calendar_events_returns(), $events);
$this->assertEquals(2, count($events['events']));
$this->assertEquals(0, count($events['warnings']));
$this->assertEquals($catevent1->id, $events['events'][0]['id']);
@ -565,7 +566,7 @@ class externallib_test extends externallib_advanced_testcase {
// Now call the WebService.
$events = core_calendar_external::get_calendar_events();
$events = \external_api::clean_returnvalue(core_calendar_external::get_calendar_events_returns(), $events);
$events = external_api::clean_returnvalue(core_calendar_external::get_calendar_events_returns(), $events);
// Format the original data.
$sitecontext = \context_system::instance();
@ -606,7 +607,7 @@ class externallib_test extends externallib_advanced_testcase {
array('name' => 'user')
);
$eventsret = core_calendar_external::create_calendar_events($events);
$eventsret = \external_api::clean_returnvalue(core_calendar_external::create_calendar_events_returns(), $eventsret);
$eventsret = external_api::clean_returnvalue(core_calendar_external::create_calendar_events_returns(), $eventsret);
// Check to see if things were created properly.
$aftercount = $DB->count_records('event');
@ -630,7 +631,7 @@ class externallib_test extends externallib_advanced_testcase {
$this->assignUserCapability('moodle/calendar:manageentries', $coursecontext->id, $role->id);
$this->assignUserCapability('moodle/calendar:managegroupentries', $coursecontext->id, $role->id);
$eventsret = core_calendar_external::create_calendar_events($events);
$eventsret = \external_api::clean_returnvalue(core_calendar_external::create_calendar_events_returns(), $eventsret);
$eventsret = external_api::clean_returnvalue(core_calendar_external::create_calendar_events_returns(), $eventsret);
// Check to see if things were created properly.
$aftercount = $DB->count_records('event');
$this->assertEquals($prevcount + 4, $aftercount);
@ -641,7 +642,7 @@ class externallib_test extends externallib_advanced_testcase {
$this->setGuestUser();
$prevcount = $DB->count_records('event');
$eventsret = core_calendar_external::create_calendar_events($events);
$eventsret = \external_api::clean_returnvalue(core_calendar_external::create_calendar_events_returns(), $eventsret);
$eventsret = external_api::clean_returnvalue(core_calendar_external::create_calendar_events_returns(), $eventsret);
$aftercount = $DB->count_records('event');
$this->assertEquals($prevcount, $aftercount);
$this->assertEquals(0, count($eventsret['events']));
@ -652,7 +653,7 @@ class externallib_test extends externallib_advanced_testcase {
$this->unassignUserCapability('moodle/calendar:managegroupentries', $coursecontext->id, $role->id);
$prevcount = $DB->count_records('event');
$eventsret = core_calendar_external::create_calendar_events($events);
$eventsret = \external_api::clean_returnvalue(core_calendar_external::create_calendar_events_returns(), $eventsret);
$eventsret = external_api::clean_returnvalue(core_calendar_external::create_calendar_events_returns(), $eventsret);
$aftercount = $DB->count_records('event');
$this->assertEquals($prevcount + 1, $aftercount); // User event.
$this->assertEquals(1, count($eventsret['events']));
@ -694,7 +695,7 @@ class externallib_test extends externallib_advanced_testcase {
$event8 = $this->create_calendar_event('Event 8', $user->id, 'user', 0, 1, array_merge($params, ['timesort' => 8]));
$result = core_calendar_external::get_calendar_action_events_by_timesort(5);
$result = \external_api::clean_returnvalue(
$result = external_api::clean_returnvalue(
core_calendar_external::get_calendar_action_events_by_timesort_returns(),
$result
);
@ -709,7 +710,7 @@ class externallib_test extends externallib_advanced_testcase {
$this->assertEquals($event8->id, $result['lastid']);
$result = core_calendar_external::get_calendar_action_events_by_timesort(9);
$result = \external_api::clean_returnvalue(
$result = external_api::clean_returnvalue(
core_calendar_external::get_calendar_action_events_by_timesort_returns(),
$result
);
@ -721,7 +722,7 @@ class externallib_test extends externallib_advanced_testcase {
// Requesting action events on behalf of another user.
$this->setAdminUser();
$result = core_calendar_external::get_calendar_action_events_by_timesort(5, null, 0, 20, false, $user->id);
$result = \external_api::clean_returnvalue(
$result = external_api::clean_returnvalue(
core_calendar_external::get_calendar_action_events_by_timesort_returns(),
$result
);
@ -771,7 +772,7 @@ class externallib_test extends externallib_advanced_testcase {
$event8 = $this->create_calendar_event('Event 8', $user->id, 'user', 0, 1, array_merge($params, ['timesort' => 9]));
$result = core_calendar_external::get_calendar_action_events_by_timesort(null, 5);
$result = \external_api::clean_returnvalue(
$result = external_api::clean_returnvalue(
core_calendar_external::get_calendar_action_events_by_timesort_returns(),
$result
);
@ -786,7 +787,7 @@ class externallib_test extends externallib_advanced_testcase {
$this->assertEquals($event4->id, $result['lastid']);
$result = core_calendar_external::get_calendar_action_events_by_timesort(null, 1);
$result = \external_api::clean_returnvalue(
$result = external_api::clean_returnvalue(
core_calendar_external::get_calendar_action_events_by_timesort_returns(),
$result
);
@ -799,7 +800,7 @@ class externallib_test extends externallib_advanced_testcase {
$this->setAdminUser();
$result = core_calendar_external::get_calendar_action_events_by_timesort(null, 5, 0, 20, false, $user->id);
$result = \external_api::clean_returnvalue(
$result = external_api::clean_returnvalue(
core_calendar_external::get_calendar_action_events_by_timesort_returns(),
$result
);
@ -848,7 +849,7 @@ class externallib_test extends externallib_advanced_testcase {
$paramevents = array('courseids' => array($course->id));
$options = array ('siteevents' => true, 'userevents' => true);
$events = core_calendar_external::get_calendar_events($paramevents, $options);
$events = \external_api::clean_returnvalue(core_calendar_external::get_calendar_events_returns(), $events);
$events = external_api::clean_returnvalue(core_calendar_external::get_calendar_events_returns(), $events);
$this->assertEquals(1, count($events['events']));
$this->assertEquals(0, count($events['warnings']));
$this->assertEquals('Base event', $events['events'][0]['name']);
@ -856,7 +857,7 @@ class externallib_test extends externallib_advanced_testcase {
// Retrieve events for the first student - both events are returned.
$this->setUser($user);
$events = core_calendar_external::get_calendar_events($paramevents, $options);
$events = \external_api::clean_returnvalue(core_calendar_external::get_calendar_events_returns(), $events);
$events = external_api::clean_returnvalue(core_calendar_external::get_calendar_events_returns(), $events);
$this->assertEquals(2, count($events['events']));
$this->assertEquals(0, count($events['warnings']));
$this->assertEquals('Base event', $events['events'][0]['name']);
@ -866,7 +867,7 @@ class externallib_test extends externallib_advanced_testcase {
$this->setUser($teacher);
$paramevents = ['eventids' => [$event2->id]];
$events = core_calendar_external::get_calendar_events($paramevents, $options);
$events = \external_api::clean_returnvalue(core_calendar_external::get_calendar_events_returns(), $events);
$events = external_api::clean_returnvalue(core_calendar_external::get_calendar_events_returns(), $events);
$this->assertEquals(1, count($events['events']));
$this->assertEquals(0, count($events['warnings']));
$this->assertEquals('User event', $events['events'][0]['name']);
@ -875,7 +876,7 @@ class externallib_test extends externallib_advanced_testcase {
$this->setUser($anotheruser);
$paramevents = ['eventids' => [$event2->id, $event1->id]];
$events = core_calendar_external::get_calendar_events($paramevents, $options);
$events = \external_api::clean_returnvalue(core_calendar_external::get_calendar_events_returns(), $events);
$events = external_api::clean_returnvalue(core_calendar_external::get_calendar_events_returns(), $events);
$this->assertEquals(0, count($events['events']));
$this->assertEquals(0, count($events['warnings']));
}
@ -914,7 +915,7 @@ class externallib_test extends externallib_advanced_testcase {
$event8 = $this->create_calendar_event('Event 8', $user->id, 'user', 0, 1, array_merge($params, ['timesort' => 8]));
$result = core_calendar_external::get_calendar_action_events_by_timesort(3, 6);
$result = \external_api::clean_returnvalue(
$result = external_api::clean_returnvalue(
core_calendar_external::get_calendar_action_events_by_timesort_returns(),
$result
);
@ -929,7 +930,7 @@ class externallib_test extends externallib_advanced_testcase {
$this->assertEquals($event6->id, $result['lastid']);
$result = core_calendar_external::get_calendar_action_events_by_timesort(10, 15);
$result = \external_api::clean_returnvalue(
$result = external_api::clean_returnvalue(
core_calendar_external::get_calendar_action_events_by_timesort_returns(),
$result
);
@ -974,7 +975,7 @@ class externallib_test extends externallib_advanced_testcase {
$event8 = $this->create_calendar_event('Event 8', $user->id, 'user', 0, 1, array_merge($params, ['timesort' => 8]));
$result = core_calendar_external::get_calendar_action_events_by_timesort(2, 7, $event3->id, 2);
$result = \external_api::clean_returnvalue(
$result = external_api::clean_returnvalue(
core_calendar_external::get_calendar_action_events_by_timesort_returns(),
$result
);
@ -987,7 +988,7 @@ class externallib_test extends externallib_advanced_testcase {
$this->assertEquals($event5->id, $result['lastid']);
$result = core_calendar_external::get_calendar_action_events_by_timesort(2, 7, $event5->id, 2);
$result = \external_api::clean_returnvalue(
$result = external_api::clean_returnvalue(
core_calendar_external::get_calendar_action_events_by_timesort_returns(),
$result
);
@ -1000,7 +1001,7 @@ class externallib_test extends externallib_advanced_testcase {
$this->assertEquals($event7->id, $result['lastid']);
$result = core_calendar_external::get_calendar_action_events_by_timesort(2, 7, $event7->id, 2);
$result = \external_api::clean_returnvalue(
$result = external_api::clean_returnvalue(
core_calendar_external::get_calendar_action_events_by_timesort_returns(),
$result
);
@ -1128,7 +1129,7 @@ class externallib_test extends externallib_advanced_testcase {
}
$result = core_calendar_external::get_calendar_action_events_by_course($course1->id, 5);
$result = \external_api::clean_returnvalue(
$result = external_api::clean_returnvalue(
core_calendar_external::get_calendar_action_events_by_course_returns(),
$result
);
@ -1141,7 +1142,7 @@ class externallib_test extends externallib_advanced_testcase {
$this->assertEquals('Event 8', $result[3]['name']);
$result = core_calendar_external::get_calendar_action_events_by_course($course1->id, 9);
$result = \external_api::clean_returnvalue(
$result = external_api::clean_returnvalue(
core_calendar_external::get_calendar_action_events_by_course_returns(),
$result
);
@ -1192,7 +1193,7 @@ class externallib_test extends externallib_advanced_testcase {
}
$result = core_calendar_external::get_calendar_action_events_by_course($course1->id, null, 5);
$result = \external_api::clean_returnvalue(
$result = external_api::clean_returnvalue(
core_calendar_external::get_calendar_action_events_by_course_returns(),
$result
);
@ -1205,7 +1206,7 @@ class externallib_test extends externallib_advanced_testcase {
$this->assertEquals('Event 4', $result[3]['name']);
$result = core_calendar_external::get_calendar_action_events_by_course($course1->id, null, 1);
$result = \external_api::clean_returnvalue(
$result = external_api::clean_returnvalue(
core_calendar_external::get_calendar_action_events_by_course_returns(),
$result
);
@ -1256,7 +1257,7 @@ class externallib_test extends externallib_advanced_testcase {
}
$result = core_calendar_external::get_calendar_action_events_by_course($course1->id, 3, 6);
$result = \external_api::clean_returnvalue(
$result = external_api::clean_returnvalue(
core_calendar_external::get_calendar_action_events_by_course_returns(),
$result
);
@ -1269,7 +1270,7 @@ class externallib_test extends externallib_advanced_testcase {
$this->assertEquals('Event 6', $result[3]['name']);
$result = core_calendar_external::get_calendar_action_events_by_course($course1->id, 10, 15);
$result = \external_api::clean_returnvalue(
$result = external_api::clean_returnvalue(
core_calendar_external::get_calendar_action_events_by_course_returns(),
$result
);
@ -1322,7 +1323,7 @@ class externallib_test extends externallib_advanced_testcase {
$result = core_calendar_external::get_calendar_action_events_by_course(
$course1->id, 2, 7, $records[2]->id, 2);
$result = \external_api::clean_returnvalue(
$result = external_api::clean_returnvalue(
core_calendar_external::get_calendar_action_events_by_course_returns(),
$result
);
@ -1334,7 +1335,7 @@ class externallib_test extends externallib_advanced_testcase {
$result = core_calendar_external::get_calendar_action_events_by_course(
$course1->id, 2, 7, $records[4]->id, 2);
$result = \external_api::clean_returnvalue(
$result = external_api::clean_returnvalue(
core_calendar_external::get_calendar_action_events_by_course_returns(),
$result
);
@ -1346,7 +1347,7 @@ class externallib_test extends externallib_advanced_testcase {
$result = core_calendar_external::get_calendar_action_events_by_course(
$course1->id, 2, 7, $records[6]->id, 2);
$result = \external_api::clean_returnvalue(
$result = external_api::clean_returnvalue(
core_calendar_external::get_calendar_action_events_by_course_returns(),
$result
);
@ -1389,7 +1390,7 @@ class externallib_test extends externallib_advanced_testcase {
// No result found for fake search.
$result = core_calendar_external::get_calendar_action_events_by_course($course->id, null, null, 0, 20, 'Fake search');
$result = \external_api::clean_returnvalue(
$result = external_api::clean_returnvalue(
core_calendar_external::get_calendar_action_events_by_course_returns(),
$result
);
@ -1398,7 +1399,7 @@ class externallib_test extends externallib_advanced_testcase {
// Search for event name called 'Event 1'.
$result = core_calendar_external::get_calendar_action_events_by_course($course->id, null, null, 0, 20, 'Event 1');
$result = \external_api::clean_returnvalue(
$result = external_api::clean_returnvalue(
core_calendar_external::get_calendar_action_events_by_course_returns(),
$result
);
@ -1408,7 +1409,7 @@ class externallib_test extends externallib_advanced_testcase {
// Search for activity type called 'assign'.
$result = core_calendar_external::get_calendar_action_events_by_course($course->id, null, null, 0, 20, 'assign');
$result = \external_api::clean_returnvalue(
$result = external_api::clean_returnvalue(
core_calendar_external::get_calendar_action_events_by_course_returns(),
$result
);
@ -1479,7 +1480,7 @@ class externallib_test extends externallib_advanced_testcase {
}
$result = core_calendar_external::get_calendar_action_events_by_courses([], 1);
$result = \external_api::clean_returnvalue(
$result = external_api::clean_returnvalue(
core_calendar_external::get_calendar_action_events_by_courses_returns(),
$result
);
@ -1488,7 +1489,7 @@ class externallib_test extends externallib_advanced_testcase {
$this->assertEmpty($result);
$result = core_calendar_external::get_calendar_action_events_by_courses([$course1->id], 3);
$result = \external_api::clean_returnvalue(
$result = external_api::clean_returnvalue(
core_calendar_external::get_calendar_action_events_by_courses_returns(),
$result
);
@ -1498,7 +1499,7 @@ class externallib_test extends externallib_advanced_testcase {
$this->assertEmpty($groupedbycourse[$course1->id]);
$result = core_calendar_external::get_calendar_action_events_by_courses([$course1->id], 1);
$result = \external_api::clean_returnvalue(
$result = external_api::clean_returnvalue(
core_calendar_external::get_calendar_action_events_by_courses_returns(),
$result
);
@ -1510,7 +1511,7 @@ class externallib_test extends externallib_advanced_testcase {
$result = core_calendar_external::get_calendar_action_events_by_courses(
[$course1->id, $course2->id], 1);
$result = \external_api::clean_returnvalue(
$result = external_api::clean_returnvalue(
core_calendar_external::get_calendar_action_events_by_courses_returns(),
$result
);
@ -1526,7 +1527,7 @@ class externallib_test extends externallib_advanced_testcase {
$result = core_calendar_external::get_calendar_action_events_by_courses(
[$course1->id, $course2->id], 2, 4);
$result = \external_api::clean_returnvalue(
$result = external_api::clean_returnvalue(
core_calendar_external::get_calendar_action_events_by_courses_returns(),
$result
);
@ -1541,7 +1542,7 @@ class externallib_test extends externallib_advanced_testcase {
$result = core_calendar_external::get_calendar_action_events_by_courses(
[$course1->id, $course2->id], 1, null, 1);
$result = \external_api::clean_returnvalue(
$result = external_api::clean_returnvalue(
core_calendar_external::get_calendar_action_events_by_courses_returns(),
$result
);
@ -1615,7 +1616,7 @@ class externallib_test extends externallib_advanced_testcase {
// No result found for fake search.
$result = core_calendar_external::get_calendar_action_events_by_courses([$course1->id, $course2->id, $course3->id],
1, null, 20, 'Fake search');
$result = \external_api::clean_returnvalue(
$result = external_api::clean_returnvalue(
core_calendar_external::get_calendar_action_events_by_courses_returns(),
$result
);
@ -1628,7 +1629,7 @@ class externallib_test extends externallib_advanced_testcase {
// Search for event name called 'Event 1'.
$result = core_calendar_external::get_calendar_action_events_by_courses([$course1->id, $course2->id, $course3->id],
1, null, 20, 'Event 1');
$result = \external_api::clean_returnvalue(
$result = external_api::clean_returnvalue(
core_calendar_external::get_calendar_action_events_by_courses_returns(),
$result
);
@ -1643,7 +1644,7 @@ class externallib_test extends externallib_advanced_testcase {
// Search for activity type called 'assign'.
$result = core_calendar_external::get_calendar_action_events_by_courses([$course1->id, $course2->id, $course3->id],
1, null, 20, 'assign');
$result = \external_api::clean_returnvalue(
$result = external_api::clean_returnvalue(
core_calendar_external::get_calendar_action_events_by_courses_returns(),
$result
);
@ -1715,7 +1716,7 @@ class externallib_test extends externallib_advanced_testcase {
);
$result = core_calendar_external::update_event_start_day($event->id, $newstartdate->getTimestamp());
$result = \external_api::clean_returnvalue(
$result = external_api::clean_returnvalue(
core_calendar_external::update_event_start_day_returns(),
$result
);
@ -1757,7 +1758,7 @@ class externallib_test extends externallib_advanced_testcase {
assign_capability('moodle/calendar:manageownentries', CAP_PROHIBIT, $roleid, $context, true);
$this->expectException(\moodle_exception::class);
$result = core_calendar_external::update_event_start_day($event->id, $newstartdate->getTimestamp());
$result = \external_api::clean_returnvalue(
$result = external_api::clean_returnvalue(
core_calendar_external::update_event_start_day_returns(),
$result
);
@ -1801,7 +1802,7 @@ class externallib_test extends externallib_advanced_testcase {
assign_capability('moodle/calendar:manageentries', CAP_ALLOW, $roleid, $context, true);
$this->expectException(\moodle_exception::class);
$result = core_calendar_external::update_event_start_day($event->id, $newstartdate->getTimestamp());
$result = \external_api::clean_returnvalue(
$result = external_api::clean_returnvalue(
core_calendar_external::update_event_start_day_returns(),
$result
);
@ -1854,7 +1855,7 @@ class externallib_test extends externallib_advanced_testcase {
$this->resetAfterTest(true);
$this->setUser($user);
$result = \external_api::clean_returnvalue(
$result = external_api::clean_returnvalue(
core_calendar_external::submit_create_update_form_returns(),
core_calendar_external::submit_create_update_form($querystring)
);
@ -1916,7 +1917,7 @@ class externallib_test extends externallib_advanced_testcase {
$this->resetAfterTest(true);
$this->setUser($user);
$result = \external_api::clean_returnvalue(
$result = external_api::clean_returnvalue(
core_calendar_external::submit_create_update_form_returns(),
core_calendar_external::submit_create_update_form($querystring)
);
@ -1982,7 +1983,7 @@ class externallib_test extends externallib_advanced_testcase {
$this->expectException(\moodle_exception::class);
\external_api::clean_returnvalue(
external_api::clean_returnvalue(
core_calendar_external::submit_create_update_form_returns(),
core_calendar_external::submit_create_update_form($querystring)
);
@ -2043,7 +2044,7 @@ class externallib_test extends externallib_advanced_testcase {
$this->resetAfterTest(true);
$this->setUser($user);
$result = \external_api::clean_returnvalue(
$result = external_api::clean_returnvalue(
core_calendar_external::submit_create_update_form_returns(),
core_calendar_external::submit_create_update_form($querystring)
);
@ -2108,7 +2109,7 @@ class externallib_test extends externallib_advanced_testcase {
$this->resetAfterTest(true);
$this->setUser($user);
$result = \external_api::clean_returnvalue(
$result = external_api::clean_returnvalue(
core_calendar_external::submit_create_update_form_returns(),
core_calendar_external::submit_create_update_form($querystring)
);
@ -2174,7 +2175,7 @@ class externallib_test extends externallib_advanced_testcase {
$this->resetAfterTest(true);
$this->setUser($user);
$result = \external_api::clean_returnvalue(
$result = external_api::clean_returnvalue(
core_calendar_external::submit_create_update_form_returns(),
core_calendar_external::submit_create_update_form($querystring)
);
@ -2243,7 +2244,7 @@ class externallib_test extends externallib_advanced_testcase {
$this->resetAfterTest(true);
$this->setUser($user);
$result = \external_api::clean_returnvalue(
$result = external_api::clean_returnvalue(
core_calendar_external::submit_create_update_form_returns(),
core_calendar_external::submit_create_update_form($querystring)
);
@ -2309,7 +2310,7 @@ class externallib_test extends externallib_advanced_testcase {
$this->resetAfterTest(true);
$this->setUser($user);
$result = \external_api::clean_returnvalue(
$result = external_api::clean_returnvalue(
core_calendar_external::submit_create_update_form_returns(),
core_calendar_external::submit_create_update_form($querystring)
);
@ -2378,7 +2379,7 @@ class externallib_test extends externallib_advanced_testcase {
$this->resetAfterTest(true);
$this->setUser($user);
$result = \external_api::clean_returnvalue(
$result = external_api::clean_returnvalue(
core_calendar_external::submit_create_update_form_returns(),
core_calendar_external::submit_create_update_form($querystring)
);
@ -2452,7 +2453,7 @@ class externallib_test extends externallib_advanced_testcase {
$this->resetAfterTest(true);
$this->setUser($user);
$result = \external_api::clean_returnvalue(
$result = external_api::clean_returnvalue(
core_calendar_external::submit_create_update_form_returns(),
core_calendar_external::submit_create_update_form($querystring)
);
@ -2525,7 +2526,7 @@ class externallib_test extends externallib_advanced_testcase {
$this->resetAfterTest(true);
$this->setUser($user);
$result = \external_api::clean_returnvalue(
$result = external_api::clean_returnvalue(
core_calendar_external::submit_create_update_form_returns(),
core_calendar_external::submit_create_update_form($querystring)
);
@ -2598,7 +2599,7 @@ class externallib_test extends externallib_advanced_testcase {
$this->resetAfterTest(true);
$this->setUser($user);
$result = \external_api::clean_returnvalue(
$result = external_api::clean_returnvalue(
core_calendar_external::submit_create_update_form_returns(),
core_calendar_external::submit_create_update_form($querystring)
);
@ -2626,7 +2627,7 @@ class externallib_test extends externallib_advanced_testcase {
$timestart = new \DateTime();
// Admin can load the course.
$data = \external_api::clean_returnvalue(
$data = external_api::clean_returnvalue(
core_calendar_external::get_calendar_monthly_view_returns(),
core_calendar_external::get_calendar_monthly_view($timestart->format('Y'), $timestart->format('n'),
$course->id, null, false, true, $timestart->format('j'))
@ -2634,7 +2635,7 @@ class externallib_test extends externallib_advanced_testcase {
$this->assertEquals($data['courseid'], $course->id);
// User enrolled in the course can load the course calendar.
$this->setUser($user1);
$data = \external_api::clean_returnvalue(
$data = external_api::clean_returnvalue(
core_calendar_external::get_calendar_monthly_view_returns(),
core_calendar_external::get_calendar_monthly_view($timestart->format('Y'), $timestart->format('n'),
$course->id, null, false, true, $timestart->format('j'))
@ -2643,7 +2644,7 @@ class externallib_test extends externallib_advanced_testcase {
// User not enrolled in the course cannot load the course calendar.
$this->setUser($user2);
$this->expectException(\require_login_exception::class);
$data = \external_api::clean_returnvalue(
$data = external_api::clean_returnvalue(
core_calendar_external::get_calendar_monthly_view_returns(),
core_calendar_external::get_calendar_monthly_view($timestart->format('Y'), $timestart->format('n'),
$course->id, null, false, false, $timestart->format('j'))
@ -2658,7 +2659,7 @@ class externallib_test extends externallib_advanced_testcase {
$this->setAdminUser();
$timestart = new \DateTime();
$data = \external_api::clean_returnvalue(
$data = external_api::clean_returnvalue(
core_calendar_external::get_calendar_monthly_view_returns(),
core_calendar_external::get_calendar_monthly_view($timestart->format('Y'), $timestart->format('n'),
SITEID, null, false, true, $timestart->format('j'))
@ -2686,7 +2687,7 @@ class externallib_test extends externallib_advanced_testcase {
$timestart = new \DateTime();
// Admin can load the course.
$data = \external_api::clean_returnvalue(
$data = external_api::clean_returnvalue(
core_calendar_external::get_calendar_day_view_returns(),
core_calendar_external::get_calendar_day_view($timestart->format('Y'), $timestart->format('n'),
$timestart->format('j'), $course->id, null)
@ -2694,7 +2695,7 @@ class externallib_test extends externallib_advanced_testcase {
$this->assertEquals($data['courseid'], $course->id);
// User enrolled in the course can load the course calendar.
$this->setUser($user1);
$data = \external_api::clean_returnvalue(
$data = external_api::clean_returnvalue(
core_calendar_external::get_calendar_day_view_returns(),
core_calendar_external::get_calendar_day_view($timestart->format('Y'), $timestart->format('n'),
$timestart->format('j'), $course->id, null)
@ -2703,7 +2704,7 @@ class externallib_test extends externallib_advanced_testcase {
// User not enrolled in the course cannot load the course calendar.
$this->setUser($user2);
$this->expectException(\require_login_exception::class);
$data = \external_api::clean_returnvalue(
$data = external_api::clean_returnvalue(
core_calendar_external::get_calendar_day_view_returns(),
core_calendar_external::get_calendar_day_view($timestart->format('Y'), $timestart->format('n'),
$timestart->format('j'), $course->id, null)
@ -2729,14 +2730,14 @@ class externallib_test extends externallib_advanced_testcase {
$courseevent = $this->create_calendar_event($name, $USER->id, 'course', 0, time(), $record);
// Admin can load the course.
$data = \external_api::clean_returnvalue(
$data = external_api::clean_returnvalue(
core_calendar_external::get_calendar_upcoming_view_returns(),
core_calendar_external::get_calendar_upcoming_view($course->id, null)
);
$this->assertEquals($data['courseid'], $course->id);
// User enrolled in the course can load the course calendar.
$this->setUser($user1);
$data = \external_api::clean_returnvalue(
$data = external_api::clean_returnvalue(
core_calendar_external::get_calendar_upcoming_view_returns(),
core_calendar_external::get_calendar_upcoming_view($course->id, null)
);
@ -2744,7 +2745,7 @@ class externallib_test extends externallib_advanced_testcase {
// User not enrolled in the course cannot load the course calendar.
$this->setUser($user2);
$this->expectException(\require_login_exception::class);
$data = \external_api::clean_returnvalue(
$data = external_api::clean_returnvalue(
core_calendar_external::get_calendar_upcoming_view_returns(),
core_calendar_external::get_calendar_upcoming_view($course->id, null)
);
@ -2769,14 +2770,14 @@ class externallib_test extends externallib_advanced_testcase {
$courseevent = $this->create_calendar_event($name, $USER->id, 'course', 0, time(), $record);
// Admin can load the course event.
$data = \external_api::clean_returnvalue(
$data = external_api::clean_returnvalue(
core_calendar_external::get_calendar_event_by_id_returns(),
core_calendar_external::get_calendar_event_by_id($courseevent->id)
);
$this->assertEquals($data['event']['id'], $courseevent->id);
// User enrolled in the course can load the course event.
$this->setUser($user1);
$data = \external_api::clean_returnvalue(
$data = external_api::clean_returnvalue(
core_calendar_external::get_calendar_event_by_id_returns(),
core_calendar_external::get_calendar_event_by_id($courseevent->id)
);
@ -2784,7 +2785,7 @@ class externallib_test extends externallib_advanced_testcase {
// User not enrolled in the course cannot load the course event.
$this->setUser($user2);
$this->expectException(\moodle_exception::class);
$data = \external_api::clean_returnvalue(
$data = external_api::clean_returnvalue(
core_calendar_external::get_calendar_event_by_id_returns(),
core_calendar_external::get_calendar_event_by_id($courseevent->id)
);
@ -2833,7 +2834,7 @@ class externallib_test extends externallib_advanced_testcase {
$this->setUser($user);
}
$userevent = $this->create_calendar_event('user event', $USER->id, 'user', 0, time());
$results = \external_api::clean_returnvalue(
$results = external_api::clean_returnvalue(
core_calendar_external::get_calendar_event_by_id_returns(),
core_calendar_external::get_calendar_event_by_id($userevent->id)
);
@ -2855,7 +2856,7 @@ class externallib_test extends externallib_advanced_testcase {
// Setup if exception is expected for the test.
$this->expectException(\moodle_exception::class);
}
\external_api::clean_returnvalue(
external_api::clean_returnvalue(
core_calendar_external::get_calendar_event_by_id_returns(),
core_calendar_external::get_calendar_event_by_id($userevent->id)
);
@ -3015,14 +3016,14 @@ class externallib_test extends externallib_advanced_testcase {
];
$options = [];
// Admin can load the category event.
$data = \external_api::clean_returnvalue(
$data = external_api::clean_returnvalue(
core_calendar_external::get_calendar_events_returns(),
core_calendar_external::get_calendar_events($events, $options)
);
$this->assertEquals($data['events'][0]['id'], $categoryevent->id);
// User with no special permission to see hidden categories will not see the event.
$this->setUser($user1);
$data = \external_api::clean_returnvalue(
$data = external_api::clean_returnvalue(
core_calendar_external::get_calendar_events_returns(),
core_calendar_external::get_calendar_events($events, $options)
);
@ -3040,7 +3041,7 @@ class externallib_test extends externallib_advanced_testcase {
$CFG->calendar_adminseesall = 1;
$data = \external_api::clean_returnvalue(
$data = external_api::clean_returnvalue(
core_calendar_external::get_calendar_access_information_returns(),
core_calendar_external::get_calendar_access_information()
);
@ -3056,7 +3057,7 @@ class externallib_test extends externallib_advanced_testcase {
$this->resetAfterTest(true);
$this->setUser($this->getDataGenerator()->create_user());
$data = \external_api::clean_returnvalue(
$data = external_api::clean_returnvalue(
core_calendar_external::get_calendar_access_information_returns(),
core_calendar_external::get_calendar_access_information()
);
@ -3079,7 +3080,7 @@ class externallib_test extends externallib_advanced_testcase {
$this->setUser($user);
$data = \external_api::clean_returnvalue(
$data = external_api::clean_returnvalue(
core_calendar_external::get_calendar_access_information_returns(),
core_calendar_external::get_calendar_access_information($course->id)
);
@ -3103,7 +3104,7 @@ class externallib_test extends externallib_advanced_testcase {
$this->setUser($user);
$data = \external_api::clean_returnvalue(
$data = external_api::clean_returnvalue(
core_calendar_external::get_calendar_access_information_returns(),
core_calendar_external::get_calendar_access_information($course->id)
);
@ -3120,7 +3121,7 @@ class externallib_test extends externallib_advanced_testcase {
$this->resetAfterTest(true);
$this->setAdminUser();
$CFG->calendar_adminseesall = 1;
$data = \external_api::clean_returnvalue(
$data = external_api::clean_returnvalue(
core_calendar_external::get_allowed_event_types_returns(),
core_calendar_external::get_allowed_event_types()
);
@ -3132,7 +3133,7 @@ class externallib_test extends externallib_advanced_testcase {
public function test_get_allowed_event_types_for_authenticated_users() {
$this->resetAfterTest(true);
$this->setUser($this->getDataGenerator()->create_user());
$data = \external_api::clean_returnvalue(
$data = external_api::clean_returnvalue(
core_calendar_external::get_allowed_event_types_returns(),
core_calendar_external::get_allowed_event_types()
);
@ -3149,7 +3150,7 @@ class externallib_test extends externallib_advanced_testcase {
$role = $DB->get_record('role', array('shortname' => 'student'));
$this->getDataGenerator()->enrol_user($user->id, $course->id, $role->id);
$this->setUser($user);
$data = \external_api::clean_returnvalue(
$data = external_api::clean_returnvalue(
core_calendar_external::get_allowed_event_types_returns(),
core_calendar_external::get_allowed_event_types($course->id)
);
@ -3167,7 +3168,7 @@ class externallib_test extends externallib_advanced_testcase {
$this->getDataGenerator()->enrol_user($user->id, $course->id, $role->id);
$this->getDataGenerator()->create_group(['courseid' => $course->id]);
$this->setUser($user);
$data = \external_api::clean_returnvalue(
$data = external_api::clean_returnvalue(
core_calendar_external::get_allowed_event_types_returns(),
core_calendar_external::get_allowed_event_types($course->id)
);

View file

@ -24,6 +24,7 @@
namespace core_cohort\output;
use core_external\external_api;
use lang_string;
/**
@ -61,7 +62,7 @@ class cohortidnumber extends \core\output\inplace_editable {
global $DB;
$cohort = $DB->get_record('cohort', array('id' => $cohortid), '*', MUST_EXIST);
$cohortcontext = \context::instance_by_id($cohort->contextid);
\external_api::validate_context($cohortcontext);
external_api::validate_context($cohortcontext);
require_capability('moodle/cohort:manage', $cohortcontext);
$record = (object)array('id' => $cohort->id, 'idnumber' => $newvalue, 'contextid' => $cohort->contextid);
cohort_update_cohort($record);

View file

@ -24,6 +24,7 @@
namespace core_cohort\output;
use core_external\external_api;
use lang_string;
/**
@ -61,7 +62,7 @@ class cohortname extends \core\output\inplace_editable {
global $DB;
$cohort = $DB->get_record('cohort', array('id' => $cohortid), '*', MUST_EXIST);
$cohortcontext = \context::instance_by_id($cohort->contextid);
\external_api::validate_context($cohortcontext);
external_api::validate_context($cohortcontext);
require_capability('moodle/cohort:manage', $cohortcontext);
$newvalue = clean_param($newvalue, PARAM_TEXT);
if (strval($newvalue) !== '') {

View file

@ -14,6 +14,15 @@
// You should have received a copy of the GNU General Public License
// along with Moodle. If not, see <http://www.gnu.org/licenses/>.
use core_external\external_api;
use core_external\external_format_value;
use core_external\external_function_parameters;
use core_external\external_multiple_structure;
use core_external\external_single_structure;
use core_external\external_value;
use core_external\external_warnings;
use core_external\util;
/**
* External cohort API
*
@ -22,11 +31,6 @@
* @copyright MediaTouch 2000 srl
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
*/
defined('MOODLE_INTERNAL') || die();
require_once("$CFG->libdir/externallib.php");
class core_cohort_external extends external_api {
/**
@ -123,12 +127,12 @@ class core_cohort_external extends external_api {
}
// Validate format.
$cohort->descriptionformat = external_validate_format($cohort->descriptionformat);
$cohort->descriptionformat = util::validate_format($cohort->descriptionformat);
$cohort->id = cohort_add_cohort($cohort);
list($cohort->description, $cohort->descriptionformat) =
external_format_text($cohort->description, $cohort->descriptionformat,
$context->id, 'cohort', 'description', $cohort->id);
\core_external\util::format_text($cohort->description, $cohort->descriptionformat,
$context, 'cohort', 'description', $cohort->id);
$cohortids[] = (array)$cohort;
}
$transaction->allow_commit();
@ -139,7 +143,7 @@ class core_cohort_external extends external_api {
/**
* Returns description of method result value
*
* @return external_description
* @return \core_external\external_description
* @since Moodle 2.5
*/
public static function create_cohorts_returns() {
@ -267,8 +271,8 @@ class core_cohort_external extends external_api {
}
list($cohort->description, $cohort->descriptionformat) =
external_format_text($cohort->description, $cohort->descriptionformat,
$context->id, 'cohort', 'description', $cohort->id);
\core_external\util::format_text($cohort->description, $cohort->descriptionformat,
$context, 'cohort', 'description', $cohort->id);
$cohortsinfo[] = (array) $cohort;
}
@ -279,7 +283,7 @@ class core_cohort_external extends external_api {
/**
* Returns description of method result value
*
* @return external_description
* @return \core_external\external_description
* @since Moodle 2.5
*/
public static function get_cohorts_returns() {
@ -403,8 +407,8 @@ class core_cohort_external extends external_api {
}
list($cohort->description, $cohort->descriptionformat) =
external_format_text($cohort->description, $cohort->descriptionformat,
$cohortcontext->id, 'cohort', 'description', $cohort->id);
\core_external\util::format_text($cohort->description, $cohort->descriptionformat,
$cohortcontext, 'cohort', 'description', $cohort->id);
$cohorts[$key] = $cohort;
}
@ -415,7 +419,7 @@ class core_cohort_external extends external_api {
/**
* Returns description of external function result value.
*
* @return external_description
* @return \core_external\external_description
*/
public static function search_cohorts_returns() {
return new external_single_structure(array(
@ -534,7 +538,7 @@ class core_cohort_external extends external_api {
}
if (!empty($cohort->description)) {
$cohort->descriptionformat = external_validate_format($cohort->descriptionformat);
$cohort->descriptionformat = util::validate_format($cohort->descriptionformat);
}
cohort_update_cohort($cohort);
@ -808,7 +812,7 @@ class core_cohort_external extends external_api {
/**
* Returns description of method result value
*
* @return external_description
* @return \core_external\external_description
* @since Moodle 2.5
*/
public static function get_cohort_members_returns() {

View file

@ -17,6 +17,7 @@
namespace core_cohort;
use core_cohort_external;
use core_external\external_api;
use externallib_advanced_testcase;
defined('MOODLE_INTERNAL') || die();
@ -84,7 +85,7 @@ class externallib_test extends externallib_advanced_testcase {
// Call the external function.
$this->setCurrentTimeStart();
$createdcohorts = core_cohort_external::create_cohorts(array($cohort1, $cohort2));
$createdcohorts = \external_api::clean_returnvalue(core_cohort_external::create_cohorts_returns(), $createdcohorts);
$createdcohorts = external_api::clean_returnvalue(core_cohort_external::create_cohorts_returns(), $createdcohorts);
// Check we retrieve the good total number of created cohorts + no error on capability.
$this->assertEquals(2, count($createdcohorts));
@ -117,7 +118,7 @@ class externallib_test extends externallib_advanced_testcase {
// Call when $CFG->allowcohortthemes is disabled.
set_config('allowcohortthemes', 0);
$createdcohorts = core_cohort_external::create_cohorts(array($cohort4));
$createdcohorts = \external_api::clean_returnvalue(core_cohort_external::create_cohorts_returns(), $createdcohorts);
$createdcohorts = external_api::clean_returnvalue(core_cohort_external::create_cohorts_returns(), $createdcohorts);
foreach ($createdcohorts as $createdcohort) {
$dbcohort = $DB->get_record('cohort', array('id' => $createdcohort['id']));
if ($createdcohort['idnumber'] == $cohort4['idnumber']) {
@ -195,7 +196,7 @@ class externallib_test extends externallib_advanced_testcase {
// Call the external function.
$returnedcohorts = core_cohort_external::get_cohorts(array(
$cohort1->id, $cohort2->id));
$returnedcohorts = \external_api::clean_returnvalue(core_cohort_external::get_cohorts_returns(), $returnedcohorts);
$returnedcohorts = external_api::clean_returnvalue(core_cohort_external::get_cohorts_returns(), $returnedcohorts);
// Check we retrieve the good total number of enrolled cohorts + no error on capability.
$this->assertEquals(2, count($returnedcohorts));
@ -215,7 +216,7 @@ class externallib_test extends externallib_advanced_testcase {
// Call the external function.
$returnedcohorts = core_cohort_external::get_cohorts(array(
$cohort1->id, $cohort2->id));
$returnedcohorts = \external_api::clean_returnvalue(core_cohort_external::get_cohorts_returns(), $returnedcohorts);
$returnedcohorts = external_api::clean_returnvalue(core_cohort_external::get_cohorts_returns(), $returnedcohorts);
// Check we retrieve the good total number of enrolled cohorts + no error on capability.
$this->assertEquals(2, count($returnedcohorts));
@ -224,7 +225,7 @@ class externallib_test extends externallib_advanced_testcase {
set_config('allowcohortthemes', 0);
$returnedcohorts = core_cohort_external::get_cohorts(array(
$cohort1->id));
$returnedcohorts = \external_api::clean_returnvalue(core_cohort_external::get_cohorts_returns(), $returnedcohorts);
$returnedcohorts = external_api::clean_returnvalue(core_cohort_external::get_cohorts_returns(), $returnedcohorts);
foreach ($returnedcohorts as $enrolledcohort) {
if ($enrolledcohort['idnumber'] == $cohort1->idnumber) {
$this->assertNull($enrolledcohort['theme']);
@ -437,7 +438,7 @@ class externallib_test extends externallib_advanced_testcase {
// Call the external function.
$addcohortmembers = core_cohort_external::add_cohort_members(array($cohort1));
$addcohortmembers = \external_api::clean_returnvalue(core_cohort_external::add_cohort_members_returns(), $addcohortmembers);
$addcohortmembers = external_api::clean_returnvalue(core_cohort_external::add_cohort_members_returns(), $addcohortmembers);
// Check we retrieve the good total number of created cohorts + no error on capability.
$this->assertEquals(1, count($addcohortmembers));
@ -479,14 +480,14 @@ class externallib_test extends externallib_advanced_testcase {
'usertype' => array('type' => 'id', 'value' => $user1->id)
);
$cohortmembers1 = core_cohort_external::add_cohort_members(array($cohortaddmember1));
$cohortmembers1 = \external_api::clean_returnvalue(core_cohort_external::add_cohort_members_returns(), $cohortmembers1);
$cohortmembers1 = external_api::clean_returnvalue(core_cohort_external::add_cohort_members_returns(), $cohortmembers1);
$cohortaddmember2 = array(
'cohorttype' => array('type' => 'id', 'value' => $cohort2->id),
'usertype' => array('type' => 'id', 'value' => $user2->id)
);
$cohortmembers2 = core_cohort_external::add_cohort_members(array($cohortaddmember2));
$cohortmembers2 = \external_api::clean_returnvalue(core_cohort_external::add_cohort_members_returns(), $cohortmembers2);
$cohortmembers2 = external_api::clean_returnvalue(core_cohort_external::add_cohort_members_returns(), $cohortmembers2);
// Check we retrieve no cohorts + no error on capability.
$this->assertEquals(2, $DB->count_records_select('cohort_members', ' ((cohortid = :idcohort1 AND userid = :iduser1)

View file

@ -24,9 +24,16 @@
* @since Moodle 2.9
*/
use core_external\external_api;
use core_external\external_format_value;
use core_external\external_function_parameters;
use core_external\external_multiple_structure;
use core_external\external_single_structure;
use core_external\external_value;
use core_external\external_warnings;
defined('MOODLE_INTERNAL') || die();
require_once("$CFG->libdir/externallib.php");
require_once("$CFG->dirroot/comment/lib.php");
/**
@ -118,7 +125,7 @@ class core_comment_external extends external_api {
foreach ($comments as $key => $comment) {
list($comments[$key]->content, $comments[$key]->format) = external_format_text($comment->content,
list($comments[$key]->content, $comments[$key]->format) = \core_external\util::format_text($comment->content,
$comment->format,
$context->id,
$params['component'],
@ -140,7 +147,7 @@ class core_comment_external extends external_api {
/**
* Returns description of method result value
*
* @return external_description
* @return \core_external\external_description
* @since Moodle 2.9
*/
public static function get_comments_returns() {
@ -264,7 +271,7 @@ class core_comment_external extends external_api {
/**
* Returns description of method result value for the add_comments method.
*
* @return external_description
* @return \core_external\external_description
* @since Moodle 3.8
*/
public static function add_comments_returns() {
@ -356,7 +363,7 @@ class core_comment_external extends external_api {
/**
* Returns description of method result value for the delete_comments() method.
*
* @return external_description
* @return \core_external\external_description
* @since Moodle 3.8
*/
public static function delete_comments_returns() {

View file

@ -18,6 +18,7 @@ namespace core_comment;
use comment_exception;
use core_comment_external;
use core_external\external_api;
use externallib_advanced_testcase;
defined('MOODLE_INTERNAL') || die();
@ -121,7 +122,7 @@ class externallib_test extends externallib_advanced_testcase {
]
];
$result = core_comment_external::add_comments($inputdata);
$result = \external_api::clean_returnvalue(core_comment_external::add_comments_returns(), $result);
$result = external_api::clean_returnvalue(core_comment_external::add_comments_returns(), $result);
$ids = array_column($result, 'id');
// Verify we can get the comments.
@ -132,7 +133,7 @@ class externallib_test extends externallib_advanced_testcase {
$area = 'database_entry';
$page = 0;
$result = core_comment_external::get_comments($contextlevel, $instanceid, $component, $itemid, $area, $page);
$result = \external_api::clean_returnvalue(core_comment_external::get_comments_returns(), $result);
$result = external_api::clean_returnvalue(core_comment_external::get_comments_returns(), $result);
$this->assertCount(0, $result['warnings']);
$this->assertCount(2, $result['comments']);
@ -149,7 +150,7 @@ class externallib_test extends externallib_advanced_testcase {
// Test sort direction and pagination.
$CFG->commentsperpage = 1;
$result = core_comment_external::get_comments($contextlevel, $instanceid, $component, $itemid, $area, $page, 'ASC');
$result = \external_api::clean_returnvalue(core_comment_external::get_comments_returns(), $result);
$result = external_api::clean_returnvalue(core_comment_external::get_comments_returns(), $result);
$this->assertCount(0, $result['warnings']);
$this->assertCount(1, $result['comments']); // Only one per page.
@ -159,7 +160,7 @@ class externallib_test extends externallib_advanced_testcase {
// Next page.
$result = core_comment_external::get_comments($contextlevel, $instanceid, $component, $itemid, $area, $page + 1, 'ASC');
$result = \external_api::clean_returnvalue(core_comment_external::get_comments_returns(), $result);
$result = external_api::clean_returnvalue(core_comment_external::get_comments_returns(), $result);
$this->assertCount(0, $result['warnings']);
$this->assertCount(1, $result['comments']);
@ -235,7 +236,7 @@ class externallib_test extends externallib_advanced_testcase {
'area' => 'database_entry'
]
]);
$result = \external_api::clean_returnvalue(core_comment_external::add_comments_returns(), $result);
$result = external_api::clean_returnvalue(core_comment_external::add_comments_returns(), $result);
// Verify the result contains 1 result having the correct structure.
$this->assertCount(1, $result);
@ -318,7 +319,7 @@ class externallib_test extends externallib_advanced_testcase {
]
];
$result = core_comment_external::add_comments($inputdata);
$result = \external_api::clean_returnvalue(core_comment_external::add_comments_returns(), $result);
$result = external_api::clean_returnvalue(core_comment_external::add_comments_returns(), $result);
// Two comments should have been created.
$this->assertCount(2, $result);
@ -390,14 +391,14 @@ class externallib_test extends externallib_advanced_testcase {
'area' => 'database_entry'
]
]);
$result = \external_api::clean_returnvalue(core_comment_external::add_comments_returns(), $result);
$result = external_api::clean_returnvalue(core_comment_external::add_comments_returns(), $result);
// Delete those comments we just created.
$result = core_comment_external::delete_comments([
$result[0]['id'],
$result[1]['id']
]);
$result = \external_api::clean_returnvalue(core_comment_external::delete_comments_returns(), $result);
$result = external_api::clean_returnvalue(core_comment_external::delete_comments_returns(), $result);
$this->assertEquals([], $result);
}
@ -419,7 +420,7 @@ class externallib_test extends externallib_advanced_testcase {
'area' => 'database_entry'
]
]);
$result = \external_api::clean_returnvalue(core_comment_external::add_comments_returns(), $result);
$result = external_api::clean_returnvalue(core_comment_external::add_comments_returns(), $result);
// Now, as student 2, try to delete the comment made by student 1. Verify we can't.
$this->setUser($student2);
@ -445,12 +446,12 @@ class externallib_test extends externallib_advanced_testcase {
'area' => 'database_entry'
]
]);
$result = \external_api::clean_returnvalue(core_comment_external::add_comments_returns(), $result);
$result = external_api::clean_returnvalue(core_comment_external::add_comments_returns(), $result);
// Verify teachers can delete the comment.
$this->setUser($teacher1);
$result = core_comment_external::delete_comments([$result[0]['id']]);
$result = \external_api::clean_returnvalue(core_comment_external::delete_comments_returns(), $result);
$result = external_api::clean_returnvalue(core_comment_external::delete_comments_returns(), $result);
$this->assertEquals([], $result);
}
}

File diff suppressed because it is too large Load diff

View file

@ -35,6 +35,7 @@ use core_competency\template;
use core_competency\template_competency;
use core_competency\user_competency;
use core_competency\user_competency_plan;
use core_external\external_api;
use externallib_advanced_testcase;
defined('MOODLE_INTERNAL') || die();
@ -201,7 +202,7 @@ class external_test extends externallib_advanced_testcase {
'contextid' => $system ? \context_system::instance()->id : \context_coursecat::instance($this->category->id)->id
);
$result = external::create_competency_framework($framework);
return (object) \external_api::clean_returnvalue(external::create_competency_framework_returns(), $result);
return (object) external_api::clean_returnvalue(external::create_competency_framework_returns(), $result);
}
protected function create_plan($number, $userid, $templateid, $status, $duedate) {
@ -215,7 +216,7 @@ class external_test extends externallib_advanced_testcase {
'duedate' => $duedate
);
$result = external::create_plan($plan);
return (object) \external_api::clean_returnvalue(external::create_plan_returns(), $result);
return (object) external_api::clean_returnvalue(external::create_plan_returns(), $result);
}
protected function create_template($number, $system) {
@ -228,7 +229,7 @@ class external_test extends externallib_advanced_testcase {
'contextid' => $system ? \context_system::instance()->id : \context_coursecat::instance($this->category->id)->id
);
$result = external::create_template($template);
return (object) \external_api::clean_returnvalue(external::create_template_returns(), $result);
return (object) external_api::clean_returnvalue(external::create_template_returns(), $result);
}
protected function update_template($templateid, $number) {
@ -240,7 +241,7 @@ class external_test extends externallib_advanced_testcase {
'visible' => true
);
$result = external::update_template($template);
return \external_api::clean_returnvalue(external::update_template_returns(), $result);
return external_api::clean_returnvalue(external::update_template_returns(), $result);
}
protected function update_plan($planid, $number, $userid, $templateid, $status, $duedate) {
@ -255,7 +256,7 @@ class external_test extends externallib_advanced_testcase {
'duedate' => $duedate
);
$result = external::update_plan($plan);
return \external_api::clean_returnvalue(external::update_plan_returns(), $result);
return external_api::clean_returnvalue(external::update_plan_returns(), $result);
}
protected function update_competency_framework($id, $number = 1, $system = true) {
@ -273,7 +274,7 @@ class external_test extends externallib_advanced_testcase {
'contextid' => $system ? \context_system::instance()->id : \context_coursecat::instance($this->category->id)->id
);
$result = external::update_competency_framework($framework);
return \external_api::clean_returnvalue(external::update_competency_framework_returns(), $result);
return external_api::clean_returnvalue(external::update_competency_framework_returns(), $result);
}
protected function create_competency($number, $frameworkid) {
@ -285,7 +286,7 @@ class external_test extends externallib_advanced_testcase {
'competencyframeworkid' => $frameworkid
);
$result = external::create_competency($competency);
return (object) \external_api::clean_returnvalue(external::create_competency_returns(), $result);
return (object) external_api::clean_returnvalue(external::create_competency_returns(), $result);
}
protected function update_competency($id, $number) {
@ -297,7 +298,7 @@ class external_test extends externallib_advanced_testcase {
'descriptionformat' => FORMAT_HTML
);
$result = external::update_competency($competency);
return \external_api::clean_returnvalue(external::update_competency_returns(), $result);
return external_api::clean_returnvalue(external::update_competency_returns(), $result);
}
/**
@ -392,7 +393,7 @@ class external_test extends externallib_advanced_testcase {
$id = $result->id;
$result = external::read_competency_framework($id);
$result = (object) \external_api::clean_returnvalue(external::read_competency_framework_returns(), $result);
$result = (object) external_api::clean_returnvalue(external::read_competency_framework_returns(), $result);
$this->assertGreaterThan(0, $result->timecreated);
$this->assertGreaterThan(0, $result->timemodified);
@ -418,7 +419,7 @@ class external_test extends externallib_advanced_testcase {
$this->setUser($this->catcreator);
$id = $incat->id;
$result = external::read_competency_framework($id);
$result = (object) \external_api::clean_returnvalue(external::read_competency_framework_returns(), $result);
$result = (object) external_api::clean_returnvalue(external::read_competency_framework_returns(), $result);
$this->assertGreaterThan(0, $result->timecreated);
$this->assertGreaterThan(0, $result->timemodified);
@ -434,7 +435,7 @@ class external_test extends externallib_advanced_testcase {
try {
$id = $insystem->id;
$result = external::read_competency_framework($id);
$result = (object) \external_api::clean_returnvalue(external::read_competency_framework_returns(), $result);
$result = (object) external_api::clean_returnvalue(external::read_competency_framework_returns(), $result);
$this->fail('User cannot read a framework at system level.');
} catch (\required_capability_exception $e) {
// All good.
@ -452,7 +453,7 @@ class external_test extends externallib_advanced_testcase {
$this->setUser($this->user);
$id = $result->id;
$result = external::read_competency_framework($id);
$result = (object) \external_api::clean_returnvalue(external::read_competency_framework_returns(), $result);
$result = (object) external_api::clean_returnvalue(external::read_competency_framework_returns(), $result);
$this->assertGreaterThan(0, $result->timecreated);
$this->assertGreaterThan(0, $result->timemodified);
@ -478,7 +479,7 @@ class external_test extends externallib_advanced_testcase {
$this->setUser($this->catuser);
$id = $incat->id;
$result = external::read_competency_framework($id);
$result = (object) \external_api::clean_returnvalue(external::read_competency_framework_returns(), $result);
$result = (object) external_api::clean_returnvalue(external::read_competency_framework_returns(), $result);
$this->assertGreaterThan(0, $result->timecreated);
$this->assertGreaterThan(0, $result->timemodified);
@ -509,7 +510,7 @@ class external_test extends externallib_advanced_testcase {
$id = $result->id;
$result = external::delete_competency_framework($id);
$result = \external_api::clean_returnvalue(external::delete_competency_framework_returns(), $result);
$result = external_api::clean_returnvalue(external::delete_competency_framework_returns(), $result);
$this->assertTrue($result);
}
@ -526,14 +527,14 @@ class external_test extends externallib_advanced_testcase {
$this->setUser($this->catcreator);
$id = $incat->id;
$result = external::delete_competency_framework($id);
$result = \external_api::clean_returnvalue(external::delete_competency_framework_returns(), $result);
$result = external_api::clean_returnvalue(external::delete_competency_framework_returns(), $result);
$this->assertTrue($result);
try {
$id = $insystem->id;
$result = external::delete_competency_framework($id);
$result = \external_api::clean_returnvalue(external::delete_competency_framework_returns(), $result);
$result = external_api::clean_returnvalue(external::delete_competency_framework_returns(), $result);
$this->fail('Current user cannot should not be able to delete the framework.');
} catch (\required_capability_exception $e) {
// All good.
@ -644,13 +645,13 @@ class external_test extends externallib_advanced_testcase {
$result = $this->create_competency_framework(4, false);
$result = external::count_competency_frameworks(array('contextid' => \context_system::instance()->id), 'self');
$result = \external_api::clean_returnvalue(external::count_competency_frameworks_returns(), $result);
$result = external_api::clean_returnvalue(external::count_competency_frameworks_returns(), $result);
$this->assertEquals($result, 3);
$result = external::list_competency_frameworks('shortname', 'ASC', 0, 10,
array('contextid' => \context_system::instance()->id), 'self', false);
$result = \external_api::clean_returnvalue(external::list_competency_frameworks_returns(), $result);
$result = external_api::clean_returnvalue(external::list_competency_frameworks_returns(), $result);
$this->assertEquals(count($result), 3);
$result = (object) $result[0];
@ -690,7 +691,7 @@ class external_test extends externallib_advanced_testcase {
// Search on both ID number and shortname.
$result = external::list_competency_frameworks('shortname', 'ASC', 0, 10,
array('contextid' => \context_system::instance()->id), 'self', false, 'bee');
$result = \external_api::clean_returnvalue(external::list_competency_frameworks_returns(), $result);
$result = external_api::clean_returnvalue(external::list_competency_frameworks_returns(), $result);
$this->assertCount(2, $result);
$f = (object) array_shift($result);
$this->assertEquals($framework1->get('id'), $f->id);
@ -700,7 +701,7 @@ class external_test extends externallib_advanced_testcase {
// Search on ID number.
$result = external::list_competency_frameworks('shortname', 'ASC', 0, 10,
array('contextid' => \context_system::instance()->id), 'self', false, 'beer');
$result = \external_api::clean_returnvalue(external::list_competency_frameworks_returns(), $result);
$result = external_api::clean_returnvalue(external::list_competency_frameworks_returns(), $result);
$this->assertCount(1, $result);
$f = (object) array_shift($result);
$this->assertEquals($framework2->get('id'), $f->id);
@ -708,7 +709,7 @@ class external_test extends externallib_advanced_testcase {
// Search on shortname.
$result = external::list_competency_frameworks('shortname', 'ASC', 0, 10,
array('contextid' => \context_system::instance()->id), 'self', false, 'cinnamon');
$result = \external_api::clean_returnvalue(external::list_competency_frameworks_returns(), $result);
$result = external_api::clean_returnvalue(external::list_competency_frameworks_returns(), $result);
$this->assertCount(1, $result);
$f = (object) array_shift($result);
$this->assertEquals($framework1->get('id'), $f->id);
@ -716,7 +717,7 @@ class external_test extends externallib_advanced_testcase {
// No match.
$result = external::list_competency_frameworks('shortname', 'ASC', 0, 10,
array('contextid' => \context_system::instance()->id), 'self', false, 'pwnd!');
$result = \external_api::clean_returnvalue(external::list_competency_frameworks_returns(), $result);
$result = external_api::clean_returnvalue(external::list_competency_frameworks_returns(), $result);
$this->assertCount(0, $result);
}
@ -732,12 +733,12 @@ class external_test extends externallib_advanced_testcase {
$this->setUser($this->user);
$result = external::count_competency_frameworks(array('contextid' => \context_system::instance()->id), 'self');
$result = \external_api::clean_returnvalue(external::count_competency_frameworks_returns(), $result);
$result = external_api::clean_returnvalue(external::count_competency_frameworks_returns(), $result);
$this->assertEquals($result, 3);
$result = external::list_competency_frameworks('shortname', 'ASC', 0, 10,
array('contextid' => \context_system::instance()->id), 'self', false);
$result = \external_api::clean_returnvalue(external::list_competency_frameworks_returns(), $result);
$result = external_api::clean_returnvalue(external::list_competency_frameworks_returns(), $result);
$this->assertEquals(count($result), 3);
$result = (object) $result[0];
@ -845,7 +846,7 @@ class external_test extends externallib_advanced_testcase {
$id = $competency->id;
$result = external::read_competency($id);
$result = (object) \external_api::clean_returnvalue(external::read_competency_returns(), $result);
$result = (object) external_api::clean_returnvalue(external::read_competency_returns(), $result);
$this->assertGreaterThan(0, $result->timecreated);
$this->assertGreaterThan(0, $result->timemodified);
@ -873,7 +874,7 @@ class external_test extends externallib_advanced_testcase {
$this->setUser($this->catcreator);
$id = $incat->id;
$result = external::read_competency($id);
$result = (object) \external_api::clean_returnvalue(external::read_competency_returns(), $result);
$result = (object) external_api::clean_returnvalue(external::read_competency_returns(), $result);
$this->assertGreaterThan(0, $result->timecreated);
$this->assertGreaterThan(0, $result->timemodified);
@ -905,7 +906,7 @@ class external_test extends externallib_advanced_testcase {
$this->setUser($this->user);
$id = $competency->id;
$result = external::read_competency($id);
$result = (object) \external_api::clean_returnvalue(external::read_competency_returns(), $result);
$result = (object) external_api::clean_returnvalue(external::read_competency_returns(), $result);
$this->assertGreaterThan(0, $result->timecreated);
$this->assertGreaterThan(0, $result->timemodified);
@ -932,7 +933,7 @@ class external_test extends externallib_advanced_testcase {
$this->setUser($this->catuser);
$id = $incat->id;
$result = external::read_competency($id);
$result = (object) \external_api::clean_returnvalue(external::read_competency_returns(), $result);
$result = (object) external_api::clean_returnvalue(external::read_competency_returns(), $result);
$this->assertGreaterThan(0, $result->timecreated);
$this->assertGreaterThan(0, $result->timemodified);
@ -962,7 +963,7 @@ class external_test extends externallib_advanced_testcase {
$id = $result->id;
$result = external::delete_competency($id);
$result = \external_api::clean_returnvalue(external::delete_competency_returns(), $result);
$result = external_api::clean_returnvalue(external::delete_competency_returns(), $result);
$this->assertTrue($result);
}
@ -981,7 +982,7 @@ class external_test extends externallib_advanced_testcase {
$this->setUser($this->catcreator);
$id = $incat->id;
$result = external::delete_competency($id);
$result = \external_api::clean_returnvalue(external::delete_competency_returns(), $result);
$result = external_api::clean_returnvalue(external::delete_competency_returns(), $result);
$this->assertTrue($result);
@ -1075,15 +1076,15 @@ class external_test extends externallib_advanced_testcase {
$c5 = $lpg->create_competency(array('competencyframeworkid' => $f2->get('id')));
$result = external::count_competencies(array(array('column' => 'competencyframeworkid', 'value' => $f2->get('id'))));
$result = \external_api::clean_returnvalue(external::count_competencies_returns(), $result);
$result = external_api::clean_returnvalue(external::count_competencies_returns(), $result);
$this->assertEquals(2, $result);
$result = external::count_competencies(array(array('column' => 'competencyframeworkid', 'value' => $f1->get('id'))));
$result = \external_api::clean_returnvalue(external::count_competencies_returns(), $result);
$result = external_api::clean_returnvalue(external::count_competencies_returns(), $result);
$this->assertEquals(3, $result);
$result = external::count_competencies(array(array('column' => 'shortname', 'value' => 'A')));
$result = \external_api::clean_returnvalue(external::count_competencies_returns(), $result);
$result = external_api::clean_returnvalue(external::count_competencies_returns(), $result);
$this->assertEquals(1, $result);
}
@ -1098,12 +1099,12 @@ class external_test extends externallib_advanced_testcase {
$result = $this->create_competency(3, $framework->id);
$result = external::count_competencies(array());
$result = \external_api::clean_returnvalue(external::count_competencies_returns(), $result);
$result = external_api::clean_returnvalue(external::count_competencies_returns(), $result);
$this->assertEquals($result, 3);
array('id' => $result = external::list_competencies(array(), 'shortname', 'ASC', 0, 10, \context_system::instance()->id));
$result = \external_api::clean_returnvalue(external::list_competencies_returns(), $result);
$result = external_api::clean_returnvalue(external::list_competencies_returns(), $result);
$this->assertEquals(count($result), 3);
$result = (object) $result[0];
@ -1129,12 +1130,12 @@ class external_test extends externallib_advanced_testcase {
$this->setUser($this->user);
$result = external::count_competencies(array());
$result = \external_api::clean_returnvalue(external::count_competencies_returns(), $result);
$result = external_api::clean_returnvalue(external::count_competencies_returns(), $result);
$this->assertEquals($result, 3);
array('id' => $result = external::list_competencies(array(), 'shortname', 'ASC', 0, 10, \context_system::instance()->id));
$result = \external_api::clean_returnvalue(external::list_competencies_returns(), $result);
$result = external_api::clean_returnvalue(external::list_competencies_returns(), $result);
$this->assertEquals(count($result), 3);
$result = (object) $result[0];
@ -1160,7 +1161,7 @@ class external_test extends externallib_advanced_testcase {
$this->setUser($this->user);
$result = external::search_competencies('short', $framework->id);
$result = \external_api::clean_returnvalue(external::search_competencies_returns(), $result);
$result = external_api::clean_returnvalue(external::search_competencies_returns(), $result);
$this->assertEquals(count($result), 3);
$result = (object) $result[0];
@ -1699,7 +1700,7 @@ class external_test extends externallib_advanced_testcase {
// This is a move up.
external::reorder_template_competency($template->id, $competency4->id, $competency2->id);
$result = external::list_competencies_in_template($template->id);
$result = \external_api::clean_returnvalue(external::list_competencies_in_template_returns(), $result);
$result = external_api::clean_returnvalue(external::list_competencies_in_template_returns(), $result);
$r1 = (object) $result[0];
$r2 = (object) $result[1];
@ -1712,7 +1713,7 @@ class external_test extends externallib_advanced_testcase {
// This is a move down.
external::reorder_template_competency($template->id, $competency1->id, $competency4->id);
$result = external::list_competencies_in_template($template->id);
$result = \external_api::clean_returnvalue(external::list_competencies_in_template_returns(), $result);
$result = external_api::clean_returnvalue(external::list_competencies_in_template_returns(), $result);
$r1 = (object) $result[0];
$r2 = (object) $result[1];
@ -1907,7 +1908,7 @@ class external_test extends externallib_advanced_testcase {
}
$result = external::read_template($cattemplate->id);
$result = \external_api::clean_returnvalue(external::read_template_returns(), $result);
$result = external_api::clean_returnvalue(external::read_template_returns(), $result);
$this->assertEquals($cattemplate->id, $result['id']);
$this->assertEquals('shortname2', $result['shortname']);
$this->assertEquals('description2', $result['description']);
@ -1921,7 +1922,7 @@ class external_test extends externallib_advanced_testcase {
accesslib_clear_all_caches_for_unit_testing();
$this->assertTrue(has_capability('moodle/competency:templateview', \context_system::instance()));
$result = external::read_template($systemplate->id);
$result = \external_api::clean_returnvalue(external::read_template_returns(), $result);
$result = external_api::clean_returnvalue(external::read_template_returns(), $result);
$this->assertEquals($systemplate->id, $result['id']);
$this->assertEquals('shortname1', $result['shortname']);
$this->assertEquals('description1', $result['description']);
@ -1931,7 +1932,7 @@ class external_test extends externallib_advanced_testcase {
$this->assertEquals(userdate(0), $result['duedateformatted']);
$result = external::read_template($cattemplate->id);
$result = \external_api::clean_returnvalue(external::read_template_returns(), $result);
$result = external_api::clean_returnvalue(external::read_template_returns(), $result);
$this->assertEquals($cattemplate->id, $result['id']);
$this->assertEquals('shortname2', $result['shortname']);
$this->assertEquals('description2', $result['description']);
@ -1986,7 +1987,7 @@ class external_test extends externallib_advanced_testcase {
$result = $this->update_template($cattemplate->id, 3);
$this->assertTrue($result);
$result = external::read_template($cattemplate->id);
$result = \external_api::clean_returnvalue(external::read_template_returns(), $result);
$result = external_api::clean_returnvalue(external::read_template_returns(), $result);
$this->assertEquals($cattemplate->id, $result['id']);
$this->assertEquals('shortname3', $result['shortname']);
$this->assertEquals("description3", $result['description']);
@ -2000,7 +2001,7 @@ class external_test extends externallib_advanced_testcase {
$result = $this->update_template($systemplate->id, 4);
$this->assertTrue($result);
$result = external::read_template($systemplate->id);
$result = \external_api::clean_returnvalue(external::read_template_returns(), $result);
$result = external_api::clean_returnvalue(external::read_template_returns(), $result);
$this->assertEquals($systemplate->id, $result['id']);
$this->assertEquals('shortname4', $result['shortname']);
$this->assertEquals('description4', $result['description']);
@ -2012,7 +2013,7 @@ class external_test extends externallib_advanced_testcase {
$result = $this->update_template($cattemplate->id, 5);
$this->assertTrue($result);
$result = external::read_template($cattemplate->id);
$result = \external_api::clean_returnvalue(external::read_template_returns(), $result);
$result = external_api::clean_returnvalue(external::read_template_returns(), $result);
$this->assertEquals($cattemplate->id, $result['id']);
$this->assertEquals('shortname5', $result['shortname']);
$this->assertEquals('description5', $result['description']);
@ -2064,17 +2065,17 @@ class external_test extends externallib_advanced_testcase {
}
$result = external::delete_template($cat1->id);
$result = \external_api::clean_returnvalue(external::delete_template_returns(), $result);
$result = external_api::clean_returnvalue(external::delete_template_returns(), $result);
$this->assertTrue($result);
$this->assertFalse($DB->record_exists(template::TABLE, array('id' => $cat1->id)));
// User with system permissions.
$this->setUser($this->creator);
$result = external::delete_template($sys1->id);
$result = \external_api::clean_returnvalue(external::delete_template_returns(), $result);
$result = external_api::clean_returnvalue(external::delete_template_returns(), $result);
$this->assertTrue($result);
$result = external::delete_template($cat2->id);
$result = \external_api::clean_returnvalue(external::delete_template_returns(), $result);
$result = external_api::clean_returnvalue(external::delete_template_returns(), $result);
$this->assertTrue($result);
$this->assertFalse($DB->record_exists(template::TABLE, array('id' => $sys1->id)));
$this->assertFalse($DB->record_exists(template::TABLE, array('id' => $cat2->id)));
@ -2110,7 +2111,7 @@ class external_test extends externallib_advanced_testcase {
assign_capability('moodle/competency:templateview', CAP_ALLOW, $this->userrole, $catcontextid, true);
accesslib_clear_all_caches_for_unit_testing();
$result = external::list_templates('id', 'ASC', 0, 10, array('contextid' => $syscontextid), 'children', false);
$result = \external_api::clean_returnvalue(external::list_templates_returns(), $result);
$result = external_api::clean_returnvalue(external::list_templates_returns(), $result);
$this->assertCount(2, $result);
$this->assertEquals($cat1->id, $result[0]['id']);
$this->assertEquals($cat2->id, $result[1]['id']);
@ -2119,7 +2120,7 @@ class external_test extends externallib_advanced_testcase {
assign_capability('moodle/competency:templateview', CAP_ALLOW, $this->userrole, $syscontextid, true);
accesslib_clear_all_caches_for_unit_testing();
$result = external::list_templates('id', 'DESC', 0, 3, array('contextid' => $catcontextid), 'parents', false);
$result = \external_api::clean_returnvalue(external::list_templates_returns(), $result);
$result = external_api::clean_returnvalue(external::list_templates_returns(), $result);
$this->assertCount(3, $result);
$this->assertEquals($cat2->id, $result[0]['id']);
$this->assertEquals($cat1->id, $result[1]['id']);
@ -2201,14 +2202,14 @@ class external_test extends externallib_advanced_testcase {
assign_capability('moodle/competency:templateview', CAP_ALLOW, $this->userrole, $catcontextid, true);
accesslib_clear_all_caches_for_unit_testing();
$result = external::count_templates(array('contextid' => $syscontextid), 'children');
$result = \external_api::clean_returnvalue(external::count_templates_returns(), $result);
$result = external_api::clean_returnvalue(external::count_templates_returns(), $result);
$this->assertEquals(3, $result);
// User with system permissions.
assign_capability('moodle/competency:templateview', CAP_ALLOW, $this->userrole, $syscontextid, true);
accesslib_clear_all_caches_for_unit_testing();
$result = external::count_templates(array('contextid' => $catcontextid), 'parents');
$result = \external_api::clean_returnvalue(external::count_templates_returns(), $result);
$result = external_api::clean_returnvalue(external::count_templates_returns(), $result);
$this->assertEquals(5, $result);
}
@ -2231,7 +2232,7 @@ class external_test extends externallib_advanced_testcase {
// The lower one always as competencyid.
$result = external::add_related_competency($competency1->get('id'), $competency2->get('id'));
$result = \external_api::clean_returnvalue(external::add_related_competency_returns(), $result);
$result = external_api::clean_returnvalue(external::add_related_competency_returns(), $result);
$this->assertTrue($result);
$this->assertTrue($DB->record_exists_select(
related_competency::TABLE, 'competencyid = :cid AND relatedcompetencyid = :rid',
@ -2249,7 +2250,7 @@ class external_test extends externallib_advanced_testcase {
));
$result = external::add_related_competency($competency3->get('id'), $competency1->get('id'));
$result = \external_api::clean_returnvalue(external::add_related_competency_returns(), $result);
$result = external_api::clean_returnvalue(external::add_related_competency_returns(), $result);
$this->assertTrue($result);
$this->assertTrue($DB->record_exists_select(
related_competency::TABLE, 'competencyid = :cid AND relatedcompetencyid = :rid',
@ -2274,7 +2275,7 @@ class external_test extends externallib_advanced_testcase {
'competencyid = :cid AND relatedcompetencyid = :rid',
array('rid' => $competency1->get('id'), 'cid' => $competency2->get('id'))));
$result = external::add_related_competency($competency2->get('id'), $competency1->get('id'));
$result = \external_api::clean_returnvalue(external::add_related_competency_returns(), $result);
$result = external_api::clean_returnvalue(external::add_related_competency_returns(), $result);
$this->assertTrue($result);
$this->assertEquals(1, $DB->count_records_select(related_competency::TABLE,
'competencyid = :cid AND relatedcompetencyid = :rid',
@ -2324,18 +2325,18 @@ class external_test extends externallib_advanced_testcase {
// Returns false when the relation does not exist.
$result = external::remove_related_competency($c1->get('id'), $c3->get('id'));
$result = \external_api::clean_returnvalue(external::remove_related_competency_returns(), $result);
$result = external_api::clean_returnvalue(external::remove_related_competency_returns(), $result);
$this->assertFalse($result);
// Returns true on success.
$result = external::remove_related_competency($c2->get('id'), $c3->get('id'));
$result = \external_api::clean_returnvalue(external::remove_related_competency_returns(), $result);
$result = external_api::clean_returnvalue(external::remove_related_competency_returns(), $result);
$this->assertTrue($result);
$this->assertEquals(1, related_competency::count_records());
// We don't need to specify competencyid and relatedcompetencyid in the right order.
$result = external::remove_related_competency($c2->get('id'), $c1->get('id'));
$result = \external_api::clean_returnvalue(external::remove_related_competency_returns(), $result);
$result = external_api::clean_returnvalue(external::remove_related_competency_returns(), $result);
$this->assertTrue($result);
$this->assertEquals(0, related_competency::count_records());
}
@ -2362,7 +2363,7 @@ class external_test extends externallib_advanced_testcase {
$rc24 = $lpg->create_related_competency(array('competencyid' => $c2->get('id'), 'relatedcompetencyid' => $c4->get('id')));
$result = external::search_competencies('comp', $framework->get('id'), true);
$result = \external_api::clean_returnvalue(external::search_competencies_returns(), $result);
$result = external_api::clean_returnvalue(external::search_competencies_returns(), $result);
$this->assertCount(5, $result);
@ -2584,7 +2585,7 @@ class external_test extends externallib_advanced_testcase {
$this->assertEquals(3, $c2d->get('sortorder'));
$result = external::delete_competency($c1->get('id'));
$result = \external_api::clean_returnvalue(external::delete_competency_returns(), $result);
$result = external_api::clean_returnvalue(external::delete_competency_returns(), $result);
$c2->read();
$c2a->read();
@ -2599,7 +2600,7 @@ class external_test extends externallib_advanced_testcase {
$this->assertEquals(3, $c2d->get('sortorder'));
$result = external::delete_competency($c2b->get('id'));
$result = \external_api::clean_returnvalue(external::delete_competency_returns(), $result);
$result = external_api::clean_returnvalue(external::delete_competency_returns(), $result);
$c2->read();
$c2a->read();
@ -2637,7 +2638,7 @@ class external_test extends externallib_advanced_testcase {
$this->assertEquals(1, $c2b->get('sortorder'));
$result = external::set_parent_competency($c2a->get('id'), $c1->get('id'));
$result = \external_api::clean_returnvalue(external::set_parent_competency_returns(), $result);
$result = external_api::clean_returnvalue(external::set_parent_competency_returns(), $result);
$c1->read();
$c1a->read();
@ -2655,7 +2656,7 @@ class external_test extends externallib_advanced_testcase {
// Move a root node.
$result = external::set_parent_competency($c2->get('id'), $c1b->get('id'));
$result = \external_api::clean_returnvalue(external::set_parent_competency_returns(), $result);
$result = external_api::clean_returnvalue(external::set_parent_competency_returns(), $result);
$c1->read();
$c1a->read();

View file

@ -24,9 +24,15 @@
* @since Moodle 2.9
*/
use core_external\external_api;
use core_external\external_function_parameters;
use core_external\external_multiple_structure;
use core_external\external_single_structure;
use core_external\external_value;
use core_external\external_warnings;
defined('MOODLE_INTERNAL') || die;
require_once("$CFG->libdir/externallib.php");
require_once("$CFG->libdir/completionlib.php");
/**
@ -283,7 +289,7 @@ class core_completion_external extends external_api {
/**
* Returns description of method result value
*
* @return external_description
* @return \core_external\external_description
* @since Moodle 2.9
*/
public static function get_activities_completion_status_returns() {
@ -460,7 +466,7 @@ class core_completion_external extends external_api {
/**
* Returns description of method result value
*
* @return external_description
* @return \core_external\external_description
* @since Moodle 2.9
*/
public static function get_course_completion_status_returns() {

View file

@ -17,6 +17,7 @@
namespace core_completion;
use core_completion_external;
use core_external\external_api;
use externallib_advanced_testcase;
defined('MOODLE_INTERNAL') || die();
@ -58,7 +59,7 @@ class externallib_test extends externallib_advanced_testcase {
$result = core_completion_external::update_activity_completion_status_manually($data->cmid, true);
// We need to execute the return values cleaning process to simulate the web service server.
$result = \external_api::clean_returnvalue(
$result = external_api::clean_returnvalue(
core_completion_external::update_activity_completion_status_manually_returns(), $result);
// Check in DB.
@ -73,7 +74,7 @@ class externallib_test extends externallib_advanced_testcase {
$result = core_completion_external::update_activity_completion_status_manually($data->cmid, false);
// We need to execute the return values cleaning process to simulate the web service server.
$result = \external_api::clean_returnvalue(
$result = external_api::clean_returnvalue(
core_completion_external::update_activity_completion_status_manually_returns(), $result);
$this->assertEquals(0, $DB->get_field('course_modules_completion', 'completionstate',
@ -152,7 +153,7 @@ class externallib_test extends externallib_advanced_testcase {
$result = core_completion_external::get_activities_completion_status($course->id, $student->id);
// We need to execute the return values cleaning process to simulate the web service server.
$result = \external_api::clean_returnvalue(
$result = external_api::clean_returnvalue(
core_completion_external::get_activities_completion_status_returns(), $result);
// We added 6 activities, but only 4 with completion enabled and one of those is hidden.
@ -230,7 +231,7 @@ class externallib_test extends externallib_advanced_testcase {
$this->setUser($teacher);
$result = core_completion_external::get_activities_completion_status($course->id, $student->id);
// We need to execute the return values cleaning process to simulate the web service server.
$result = \external_api::clean_returnvalue(
$result = external_api::clean_returnvalue(
core_completion_external::get_activities_completion_status_returns(), $result);
$this->assertCount($numberofcompletions, $result['statuses']);
@ -240,7 +241,7 @@ class externallib_test extends externallib_advanced_testcase {
$result = core_completion_external::get_activities_completion_status($course->id, $student->id);
// We need to execute the return values cleaning process to simulate the web service server.
$result = \external_api::clean_returnvalue(
$result = external_api::clean_returnvalue(
core_completion_external::get_activities_completion_status_returns(), $result);
// Check forum has been overriden by the teacher.
@ -261,7 +262,7 @@ class externallib_test extends externallib_advanced_testcase {
$result = core_completion_external::get_activities_completion_status($course->id, $teacher->id);
// We need to execute the return values cleaning process to simulate the web service server.
$result = \external_api::clean_returnvalue(
$result = external_api::clean_returnvalue(
core_completion_external::get_activities_completion_status_returns(), $result);
$this->assertCount($numberofcompletions, $result['statuses']);
@ -300,7 +301,7 @@ class externallib_test extends externallib_advanced_testcase {
groups_add_member($group1->id, $teacher->id);
$result = core_completion_external::get_activities_completion_status($course->id, $student->id);
// We need to execute the return values cleaning process to simulate the web service server.
$result = \external_api::clean_returnvalue(
$result = external_api::clean_returnvalue(
core_completion_external::get_activities_completion_status_returns(), $result);
$this->assertCount($numberofcompletions, $result['statuses']);
}
@ -337,28 +338,28 @@ class externallib_test extends externallib_advanced_testcase {
// Test overriding the status of the manual-completion-activity 'incomplete'.
$this->setUser($teacher);
$result = core_completion_external::override_activity_completion_status($student->id, $data->cmid, COMPLETION_INCOMPLETE);
$result = \external_api::clean_returnvalue(core_completion_external::override_activity_completion_status_returns(), $result);
$result = external_api::clean_returnvalue(core_completion_external::override_activity_completion_status_returns(), $result);
$this->assertEquals($result['state'], COMPLETION_INCOMPLETE);
$completiondata = $completion->get_data($cmdata, false, $student->id);
$this->assertEquals(COMPLETION_INCOMPLETE, $completiondata->completionstate);
// Test overriding the status of the manual-completion-activity back to 'complete'.
$result = core_completion_external::override_activity_completion_status($student->id, $data->cmid, COMPLETION_COMPLETE);
$result = \external_api::clean_returnvalue(core_completion_external::override_activity_completion_status_returns(), $result);
$result = external_api::clean_returnvalue(core_completion_external::override_activity_completion_status_returns(), $result);
$this->assertEquals($result['state'], COMPLETION_COMPLETE);
$completiondata = $completion->get_data($cmdata, false, $student->id);
$this->assertEquals(COMPLETION_COMPLETE, $completiondata->completionstate);
// Test overriding the status of the auto-completion-activity to 'complete'.
$result = core_completion_external::override_activity_completion_status($student->id, $forum->cmid, COMPLETION_COMPLETE);
$result = \external_api::clean_returnvalue(core_completion_external::override_activity_completion_status_returns(), $result);
$result = external_api::clean_returnvalue(core_completion_external::override_activity_completion_status_returns(), $result);
$this->assertEquals($result['state'], COMPLETION_COMPLETE);
$completionforum = $completion->get_data($cmforum, false, $student->id);
$this->assertEquals(COMPLETION_COMPLETE, $completionforum->completionstate);
// Test overriding the status of the auto-completion-activity to 'incomplete'.
$result = core_completion_external::override_activity_completion_status($student->id, $forum->cmid, COMPLETION_INCOMPLETE);
$result = \external_api::clean_returnvalue(core_completion_external::override_activity_completion_status_returns(), $result);
$result = external_api::clean_returnvalue(core_completion_external::override_activity_completion_status_returns(), $result);
$this->assertEquals($result['state'], COMPLETION_INCOMPLETE);
$completionforum = $completion->get_data($cmforum, false, $student->id);
$this->assertEquals(COMPLETION_INCOMPLETE, $completionforum->completionstate);
@ -483,7 +484,7 @@ class externallib_test extends externallib_advanced_testcase {
$result = core_completion_external::get_course_completion_status($course->id, $student->id);
// We need to execute the return values cleaning process to simulate the web service server.
$studentresult = \external_api::clean_returnvalue(
$studentresult = external_api::clean_returnvalue(
core_completion_external::get_course_completion_status_returns(), $result);
// 3 different criteria.
@ -500,7 +501,7 @@ class externallib_test extends externallib_advanced_testcase {
$this->setUser($teacher);
$result = core_completion_external::get_course_completion_status($course->id, $student->id);
// We need to execute the return values cleaning process to simulate the web service server.
$teacherresult = \external_api::clean_returnvalue(
$teacherresult = external_api::clean_returnvalue(
core_completion_external::get_course_completion_status_returns(), $result);
$this->assertEquals($studentresult, $teacherresult);
@ -521,7 +522,7 @@ class externallib_test extends externallib_advanced_testcase {
groups_add_member($group1->id, $teacher->id);
$result = core_completion_external::get_course_completion_status($course->id, $student->id);
// We need to execute the return values cleaning process to simulate the web service server.
$teacherresult = \external_api::clean_returnvalue(
$teacherresult = external_api::clean_returnvalue(
core_completion_external::get_course_completion_status_returns(), $result);
$this->assertEquals($studentresult, $teacherresult);
@ -572,7 +573,7 @@ class externallib_test extends externallib_advanced_testcase {
$result = core_completion_external::mark_course_self_completed($course->id);
// We need to execute the return values cleaning process to simulate the web service server.
$result = \external_api::clean_returnvalue(
$result = external_api::clean_returnvalue(
core_completion_external::mark_course_self_completed_returns(), $result);
// We expect a valid result.
@ -580,7 +581,7 @@ class externallib_test extends externallib_advanced_testcase {
$result = core_completion_external::get_course_completion_status($course->id, $student->id);
// We need to execute the return values cleaning process to simulate the web service server.
$result = \external_api::clean_returnvalue(
$result = external_api::clean_returnvalue(
core_completion_external::get_course_completion_status_returns(), $result);
// Course must be completed.

View file

@ -14,6 +14,16 @@
// You should have received a copy of the GNU General Public License
// along with Moodle. If not, see <http://www.gnu.org/licenses/>.
namespace core_contentbank\external;
use core_contentbank\contentbank;
use core_external\external_api;
use core_external\external_function_parameters;
use core_external\external_multiple_structure;
use core_external\external_single_structure;
use core_external\external_value;
use core_external\external_warnings;
/**
* This is the external method for deleting a content.
*
@ -22,28 +32,6 @@
* @copyright 2020 Sara Arjona <sara@moodle.com>
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
*/
namespace core_contentbank\external;
defined('MOODLE_INTERNAL') || die();
global $CFG;
require_once($CFG->libdir . '/externallib.php');
use core_contentbank\contentbank;
use external_api;
use external_function_parameters;
use external_multiple_structure;
use external_single_structure;
use external_value;
use external_warnings;
/**
* This is the external method for deleting a content.
*
* @copyright 2020 Sara Arjona <sara@moodle.com>
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
*/
class delete_content extends external_api {
/**
* Parameters.

View file

@ -14,31 +14,19 @@
// You should have received a copy of the GNU General Public License
// along with Moodle. If not, see <http://www.gnu.org/licenses/>.
/**
* External API to rename content bank content.
*
* @package core_contentbank
* @copyright 2020 Amaia Anabitarte <amaia@moodle.com>
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
*/
namespace core_contentbank\external;
defined('MOODLE_INTERNAL') || die();
global $CFG;
require_once($CFG->libdir . '/externallib.php');
use core_contentbank\contentbank;
use external_api;
use external_function_parameters;
use external_single_structure;
use external_value;
use external_warnings;
use core_external\external_api;
use core_external\external_function_parameters;
use core_external\external_single_structure;
use core_external\external_value;
use core_external\external_warnings;
/**
* This is the external method for renaming a content.
*
* @package core_contentbank
* @copyright 2020 Amaia Anabitarte <amaia@moodle.com>
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
*/

View file

@ -16,16 +16,11 @@
namespace core_contentbank\external;
defined('MOODLE_INTERNAL') || die();
global $CFG;
require_once($CFG->libdir . '/externallib.php');
use external_api;
use external_function_parameters;
use external_single_structure;
use external_value;
use external_warnings;
use core_external\external_api;
use core_external\external_function_parameters;
use core_external\external_single_structure;
use core_external\external_value;
use core_external\external_warnings;
/**
* External API to set the visibility of content bank content.

View file

@ -33,7 +33,7 @@ require_once($CFG->dirroot . '/webservice/tests/helpers.php');
require_once($CFG->dirroot . '/contentbank/tests/fixtures/testable_content.php');
use dml_missing_record_exception;
use external_api;
use core_external\external_api;
use externallib_advanced_testcase;
/**

View file

@ -33,7 +33,7 @@ require_once($CFG->dirroot . '/contentbank/tests/fixtures/testable_contenttype.p
require_once($CFG->dirroot . '/contentbank/tests/fixtures/testable_content.php');
require_once($CFG->dirroot . '/webservice/tests/helpers.php');
use external_api;
use core_external\external_api;
/**
* Core content bank external functions tests.

View file

@ -21,11 +21,11 @@ defined('MOODLE_INTERNAL') || die();
use context_user;
use core_calendar_external;
use core_course_external;
use external_api;
use external_function_parameters;
use external_multiple_structure;
use external_single_structure;
use external_value;
use core_external\external_api;
use core_external\external_function_parameters;
use core_external\external_multiple_structure;
use core_external\external_single_structure;
use core_external\external_value;
require_once("{$CFG->dirroot}/calendar/externallib.php");
require_once("{$CFG->dirroot}/course/externallib.php");

View file

@ -17,11 +17,11 @@
namespace core_course\external;
use context_module;
use external_description;
use external_files;
use external_format_value;
use external_util;
use external_value;
use core_external\external_description;
use core_external\external_files;
use core_external\external_format_value;
use core_external\util as external_util;
use core_external\external_value;
/**
* This class helps implement the get_..._by_courses web service that every activity should have.
@ -86,10 +86,10 @@ abstract class helper_for_get_mods_by_courses {
public static function format_name_and_intro(\stdClass $modinstance, string $component) {
$context = context_module::instance($modinstance->coursemodule);
$modinstance->name = external_format_string($modinstance->name, $context->id);
$modinstance->name = \core_external\util::format_string($modinstance->name, $context);
[$modinstance->intro, $modinstance->introformat] = external_format_text(
$modinstance->intro, $modinstance->introformat, $context->id,
[$modinstance->intro, $modinstance->introformat] = \core_external\util::format_text(
$modinstance->intro, $modinstance->introformat, $context,
$component, 'intro', null, ['noclean' => true]);
$modinstance->introfiles = external_util::get_area_files($context->id, $component, 'intro', false, false);
}

View file

@ -24,9 +24,10 @@
namespace core_course\output;
use context_module;
use lang_string;
use cm_info;
use context_module;
use core_external\external_api;
use lang_string;
/**
* Class to prepare a course module name for display and in-place editing
@ -93,7 +94,7 @@ class course_module_name extends \core\output\inplace_editable {
public static function update($itemid, $newvalue) {
$context = context_module::instance($itemid);
// Check access.
\external_api::validate_context($context);
external_api::validate_context($context);
require_capability('moodle/course:manageactivities', $context);
// Trim module name and Update value.

View file

@ -27,10 +27,15 @@
defined('MOODLE_INTERNAL') || die;
use core_course\external\course_summary_exporter;
use core_availability\info;
require_once("$CFG->libdir/externallib.php");
use core_external\external_api;
use core_external\external_files;
use core_external\external_format_value;
use core_external\external_function_parameters;
use core_external\external_multiple_structure;
use core_external\external_single_structure;
use core_external\external_value;
use core_external\external_warnings;
use core_external\util;
require_once(__DIR__ . "/lib.php");
/**
@ -208,8 +213,8 @@ class core_course_external extends external_api {
$options = (object) array('noclean' => true);
list($sectionvalues['summary'], $sectionvalues['summaryformat']) =
external_format_text($section->summary, $section->summaryformat,
$context->id, 'course', 'section', $section->id, $options);
\core_external\util::format_text($section->summary, $section->summaryformat,
$context, 'course', 'section', $section->id, $options);
$sectionvalues['section'] = $section->section;
$sectionvalues['hiddenbynumsections'] = $section->section > $coursenumsections ? 1 : 0;
$sectionvalues['uservisible'] = $section->uservisible;
@ -264,7 +269,7 @@ class core_course_external extends external_api {
//common info (for people being able to see the module or availability dates)
$module['id'] = $cm->id;
$module['name'] = external_format_string($cm->name, $modcontext->id);
$module['name'] = \core_external\util::format_string($cm->name, $modcontext);
$module['instance'] = $cm->instance;
$module['contextid'] = $modcontext->id;
$module['modname'] = (string) $cm->modname;
@ -291,8 +296,8 @@ class core_course_external extends external_api {
if (!empty($cm->showdescription) or $module['noviewlink']) {
// We want to use the external format. However from reading get_formatted_content(), $cm->content format is always FORMAT_HTML.
$options = array('noclean' => true);
list($module['description'], $descriptionformat) = external_format_text($cm->content,
FORMAT_HTML, $modcontext->id, $cm->modname, 'intro', $cm->id, $options);
list($module['description'], $descriptionformat) = \core_external\util::format_text($cm->content,
FORMAT_HTML, $modcontext, $cm->modname, 'intro', $cm->id, $options);
}
//url of the module
@ -423,7 +428,7 @@ class core_course_external extends external_api {
/**
* Returns description of method result value
*
* @return external_description
* @return \core_external\external_description
* @since Moodle 2.2
*/
public static function get_course_contents_returns() {
@ -600,12 +605,12 @@ class core_course_external extends external_api {
$courseinfo = array();
$courseinfo['id'] = $course->id;
$courseinfo['fullname'] = external_format_string($course->fullname, $context->id);
$courseinfo['shortname'] = external_format_string($course->shortname, $context->id);
$courseinfo['displayname'] = external_format_string(get_course_display_name_for_list($course), $context->id);
$courseinfo['fullname'] = \core_external\util::format_string($course->fullname, $context);
$courseinfo['shortname'] = \core_external\util::format_string($course->shortname, $context);
$courseinfo['displayname'] = \core_external\util::format_string(get_course_display_name_for_list($course), $context);
$courseinfo['categoryid'] = $course->category;
list($courseinfo['summary'], $courseinfo['summaryformat']) =
external_format_text($course->summary, $course->summaryformat, $context->id, 'course', 'summary', 0);
\core_external\util::format_text($course->summary, $course->summaryformat, $context, 'course', 'summary', 0);
$courseinfo['format'] = $course->format;
$courseinfo['startdate'] = $course->startdate;
$courseinfo['enddate'] = $course->enddate;
@ -676,7 +681,7 @@ class core_course_external extends external_api {
/**
* Returns description of method result value
*
* @return external_description
* @return \core_external\external_description
* @since Moodle 2.2
*/
public static function get_courses_returns() {
@ -921,7 +926,7 @@ class core_course_external extends external_api {
$course['category'] = $course['categoryid'];
// Summary format.
$course['summaryformat'] = external_validate_format($course['summaryformat']);
$course['summaryformat'] = util::validate_format($course['summaryformat']);
if (!empty($course['courseformatoptions'])) {
foreach ($course['courseformatoptions'] as $option) {
@ -950,7 +955,7 @@ class core_course_external extends external_api {
/**
* Returns description of method result value
*
* @return external_description
* @return \core_external\external_description
* @since Moodle 2.2
*/
public static function create_courses_returns() {
@ -1095,7 +1100,7 @@ class core_course_external extends external_api {
// Summary format.
if (array_key_exists('summaryformat', $course) && ($oldcourse->summaryformat != $course['summaryformat'])) {
require_capability('moodle/course:changesummary', $context);
$course['summaryformat'] = external_validate_format($course['summaryformat']);
$course['summaryformat'] = util::validate_format($course['summaryformat']);
}
// Check if user can change visibility.
@ -1175,7 +1180,7 @@ class core_course_external extends external_api {
/**
* Returns description of method result value
*
* @return external_description
* @return \core_external\external_description
* @since Moodle 2.5
*/
public static function update_courses_returns() {
@ -1262,7 +1267,7 @@ class core_course_external extends external_api {
/**
* Returns description of method result value
*
* @return external_description
* @return \core_external\external_description
* @since Moodle 2.2
*/
public static function delete_courses_returns() {
@ -1497,7 +1502,7 @@ class core_course_external extends external_api {
/**
* Returns description of method result value
*
* @return external_description
* @return \core_external\external_description
* @since Moodle 2.3
*/
public static function duplicate_course_returns() {
@ -1685,7 +1690,7 @@ class core_course_external extends external_api {
/**
* Returns description of method result value
*
* @return external_description
* @return \core_external\external_description
* @since Moodle 2.4
*/
public static function import_course_returns() {
@ -1913,10 +1918,10 @@ class core_course_external extends external_api {
$categoryinfo = array();
$categoryinfo['id'] = $category->id;
$categoryinfo['name'] = external_format_string($category->name, $context);
$categoryinfo['name'] = \core_external\util::format_string($category->name, $context);
list($categoryinfo['description'], $categoryinfo['descriptionformat']) =
external_format_text($category->description, $category->descriptionformat,
$context->id, 'coursecat', 'description', null);
\core_external\util::format_text($category->description, $category->descriptionformat,
$context, 'coursecat', 'description', null);
$categoryinfo['parent'] = $category->parent;
$categoryinfo['sortorder'] = $category->sortorder;
$categoryinfo['coursecount'] = $category->coursecount;
@ -1974,7 +1979,7 @@ class core_course_external extends external_api {
/**
* Returns description of method result value
*
* @return external_description
* @return \core_external\external_description
* @since Moodle 2.3
*/
public static function get_categories_returns() {
@ -2061,14 +2066,14 @@ class core_course_external extends external_api {
require_capability('moodle/category:manage', $context);
// this will validate format and throw an exception if there are errors
external_validate_format($category['descriptionformat']);
util::validate_format($category['descriptionformat']);
$newcategory = core_course_category::create($category);
$context = context_coursecat::instance($newcategory->id);
$createdcategories[] = array(
'id' => $newcategory->id,
'name' => external_format_string($newcategory->name, $context),
'name' => \core_external\util::format_string($newcategory->name, $context),
);
}
@ -2144,7 +2149,7 @@ class core_course_external extends external_api {
require_capability('moodle/category:manage', $categorycontext);
// this will throw an exception if descriptionformat is not valid
external_validate_format($cat['descriptionformat']);
util::validate_format($cat['descriptionformat']);
$category->update($cat);
}
@ -2155,7 +2160,7 @@ class core_course_external extends external_api {
/**
* Returns description of method result value
*
* @return external_description
* @return \core_external\external_description
* @since Moodle 2.3
*/
public static function update_categories_returns() {
@ -2381,7 +2386,7 @@ class core_course_external extends external_api {
/**
* Returns description of method result value
*
* @return external_description
* @return \core_external\external_description
* @since Moodle 2.9
*/
public static function view_course_returns() {
@ -2476,24 +2481,24 @@ class core_course_external extends external_api {
// Format summary.
list($summary, $summaryformat) =
external_format_text($course->summary, $course->summaryformat, $coursecontext->id, 'course', 'summary', null);
\core_external\util::format_text($course->summary, $course->summaryformat, $coursecontext, 'course', 'summary', null);
$categoryname = '';
if (!empty($category)) {
$categoryname = external_format_string($category->name, $category->get_context());
$categoryname = \core_external\util::format_string($category->name, $category->get_context());
}
$displayname = get_course_display_name_for_list($course);
$coursereturns = array();
$coursereturns['id'] = $course->id;
$coursereturns['fullname'] = external_format_string($course->fullname, $coursecontext->id);
$coursereturns['displayname'] = external_format_string($displayname, $coursecontext->id);
$coursereturns['shortname'] = external_format_string($course->shortname, $coursecontext->id);
$coursereturns['fullname'] = \core_external\util::format_string($course->fullname, $coursecontext);
$coursereturns['displayname'] = \core_external\util::format_string($displayname, $coursecontext);
$coursereturns['shortname'] = \core_external\util::format_string($course->shortname, $coursecontext);
$coursereturns['categoryid'] = $course->category;
$coursereturns['categoryname'] = $categoryname;
$coursereturns['summary'] = $summary;
$coursereturns['summaryformat'] = $summaryformat;
$coursereturns['summaryfiles'] = external_util::get_area_files($coursecontext->id, 'course', 'summary', false, false);
$coursereturns['summaryfiles'] = util::get_area_files($coursecontext->id, 'course', 'summary', false, false);
$coursereturns['overviewfiles'] = $files;
$coursereturns['contacts'] = $coursecontacts;
$coursereturns['enrollmentmethods'] = $enroltypes;
@ -2722,7 +2727,7 @@ class core_course_external extends external_api {
/**
* Returns description of method result value
*
* @return external_description
* @return \core_external\external_description
* @since Moodle 3.0
*/
public static function search_courses_returns() {
@ -2809,7 +2814,7 @@ class core_course_external extends external_api {
$scaleitems = $outcome->load_scale();
$info->outcomes[] = array(
'id' => $id,
'name' => external_format_string($outcome->get_name(), $context->id),
'name' => \core_external\util::format_string($outcome->get_name(), $context),
'scale' => $scaleitems->scale
);
}
@ -2830,7 +2835,7 @@ class core_course_external extends external_api {
$info->downloadcontent = $cm->downloadcontent;
}
// Format name.
$info->name = external_format_string($cm->name, $context->id);
$info->name = \core_external\util::format_string($cm->name, $context);
$result = array();
$result['cm'] = $info;
$result['warnings'] = $warnings;
@ -2840,7 +2845,7 @@ class core_course_external extends external_api {
/**
* Returns description of method result value
*
* @return external_description
* @return \core_external\external_description
* @since Moodle 3.0
*/
public static function get_course_module_returns() {
@ -2944,7 +2949,7 @@ class core_course_external extends external_api {
/**
* Returns description of method result value
*
* @return external_description
* @return \core_external\external_description
* @since Moodle 3.0
*/
public static function get_course_module_by_instance_returns() {
@ -2981,7 +2986,7 @@ class core_course_external extends external_api {
$params = self::validate_parameters(self::get_user_navigation_options_parameters(), array('courseids' => $courseids));
$courseoptions = array();
list($courses, $warnings) = external_util::validate_courses($params['courseids'], array(), true);
list($courses, $warnings) = util::validate_courses($params['courseids'], array(), true);
if (!empty($courses)) {
foreach ($courses as $course) {
@ -3015,7 +3020,7 @@ class core_course_external extends external_api {
/**
* Returns description of method result value
*
* @return external_description
* @return \core_external\external_description
* @since Moodle 3.2
*/
public static function get_user_navigation_options_returns() {
@ -3071,7 +3076,7 @@ class core_course_external extends external_api {
$params = self::validate_parameters(self::get_user_administration_options_parameters(), array('courseids' => $courseids));
$courseoptions = array();
list($courses, $warnings) = external_util::validate_courses($params['courseids'], array(), true);
list($courses, $warnings) = util::validate_courses($params['courseids'], array(), true);
if (!empty($courses)) {
foreach ($courses as $course) {
@ -3101,7 +3106,7 @@ class core_course_external extends external_api {
/**
* Returns description of method result value
*
* @return external_description
* @return \core_external\external_description
* @since Moodle 3.2
*/
public static function get_user_administration_options_returns() {
@ -3186,7 +3191,7 @@ class core_course_external extends external_api {
// Load and validate all courses. This is called because it loads the courses
// more efficiently.
list ($courses, $warnings) = external_util::validate_courses($courseids, [],
list ($courses, $warnings) = util::validate_courses($courseids, [],
false, true);
} else {
$courses = $DB->get_records('course', array($params['field'] => $value), 'id ASC');
@ -3265,7 +3270,7 @@ class core_course_external extends external_api {
/**
* Returns description of method result value
*
* @return external_description
* @return \core_external\external_description
* @since Moodle 3.2
*/
public static function get_courses_by_field_returns() {
@ -3375,7 +3380,7 @@ class core_course_external extends external_api {
/**
* Returns description of method result value
*
* @return external_description
* @return \core_external\external_description
* @since Moodle 3.2
*/
public static function check_updates_returns() {
@ -3474,7 +3479,7 @@ class core_course_external extends external_api {
/**
* Returns description of method result value
*
* @return external_description
* @return \core_external\external_description
* @since Moodle 3.3
*/
public static function get_updates_since_returns() {
@ -3614,7 +3619,7 @@ class core_course_external extends external_api {
* Return structure for edit_module()
*
* @since Moodle 3.3
* @return external_description
* @return \core_external\external_description
*/
public static function edit_module_returns() {
return new external_value(PARAM_RAW, 'html to replace the current module with');
@ -3680,7 +3685,7 @@ class core_course_external extends external_api {
* Return structure for get_module()
*
* @since Moodle 3.3
* @return external_description
* @return \core_external\external_description
*/
public static function get_module_returns() {
return new external_value(PARAM_RAW, 'html to replace the current module with');
@ -3735,7 +3740,7 @@ class core_course_external extends external_api {
* Return structure for edit_section()
*
* @since Moodle 3.3
* @return external_description
* @return \core_external\external_description
*/
public static function edit_section_returns() {
return new external_value(PARAM_RAW, 'Additional data for javascript (JSON-encoded string)');
@ -3937,7 +3942,7 @@ class core_course_external extends external_api {
/**
* Returns description of method result value
*
* @return external_description
* @return \core_external\external_description
*/
public static function get_enrolled_courses_by_timeline_classification_returns() {
return new external_single_structure(
@ -4051,7 +4056,7 @@ class core_course_external extends external_api {
/**
* Returns description of method result value
*
* @return external_description
* @return \core_external\external_description
*/
public static function set_favourite_courses_returns() {
return new external_single_structure(
@ -4135,7 +4140,7 @@ class core_course_external extends external_api {
/**
* Returns description of method result value
*
* @return external_description
* @return \core_external\external_description
* @since Moodle 3.6
*/
public static function get_recent_courses_returns() {
@ -4199,7 +4204,7 @@ class core_course_external extends external_api {
/**
* Returns description of method result value
*
* @return external_description
* @return \core_external\external_description
*/
public static function get_enrolled_users_by_cmid_returns() {
return new external_single_structure([
@ -4211,7 +4216,7 @@ class core_course_external extends external_api {
/**
* Create user return value description.
*
* @return external_description
* @return \core_external\external_description
*/
public static function user_description() {
$userfields = array(
@ -4273,7 +4278,7 @@ class core_course_external extends external_api {
/**
* Returns description of method result value.
*
* @return external_description
* @return \core_external\external_description
*/
public static function add_content_item_to_user_favourites_returns() {
return \core_course\local\exporters\course_content_item_exporter::get_read_structure();
@ -4322,7 +4327,7 @@ class core_course_external extends external_api {
/**
* Returns description of method result value.
*
* @return external_description
* @return \core_external\external_description
*/
public static function remove_content_item_from_user_favourites_returns() {
return \core_course\local\exporters\course_content_item_exporter::get_read_structure();
@ -4331,7 +4336,7 @@ class core_course_external extends external_api {
/**
* Returns description of method result value
*
* @return external_description
* @return \core_external\external_description
*/
public static function get_course_content_items_returns() {
return new external_single_structure([
@ -4414,7 +4419,7 @@ class core_course_external extends external_api {
/**
* Returns warnings.
*
* @return external_description
* @return \core_external\external_description
*/
public static function toggle_activity_recommendation_returns() {
return new external_single_structure(
@ -4477,7 +4482,7 @@ class core_course_external extends external_api {
/**
* Returns description of method result value
*
* @return external_description
* @return \core_external\external_description
*/
public static function get_activity_chooser_footer_returns() {
return new external_single_structure(

View file

@ -38,7 +38,7 @@ use coding_exception;
use moodle_url;
use lang_string;
use completion_info;
use external_api;
use core_external\external_api;
use stdClass;
use cache;
use core_courseformat\output\legacy_renderer;

View file

@ -16,14 +16,9 @@
namespace core_courseformat\external;
defined('MOODLE_INTERNAL') || die();
global $CFG;
require_once($CFG->libdir . '/externallib.php');
use external_api;
use external_function_parameters;
use external_value;
use core_external\external_api;
use core_external\external_function_parameters;
use core_external\external_value;
/**
* Class for exporting a course state.
@ -41,11 +36,9 @@ class get_state extends external_api {
* @return external_function_parameters
*/
public static function execute_parameters(): external_function_parameters {
return new external_function_parameters(
[
'courseid' => new external_value(PARAM_INT, 'course id', VALUE_REQUIRED),
]
);
return new external_function_parameters([
'courseid' => new external_value(PARAM_INT, 'course id', VALUE_REQUIRED),
]);
}
/**

View file

@ -16,15 +16,10 @@
namespace core_courseformat\external;
defined('MOODLE_INTERNAL') || die();
global $CFG;
require_once($CFG->libdir . '/externallib.php');
use external_api;
use external_function_parameters;
use external_value;
use external_multiple_structure;
use core_external\external_api;
use core_external\external_function_parameters;
use core_external\external_multiple_structure;
use core_external\external_value;
use moodle_exception;
use coding_exception;
use context_course;

View file

@ -35,7 +35,7 @@ use lang_string;
use renderable;
use section_info;
use stdClass;
use external_api;
use core_external\external_api;
use context_module;
/**

View file

@ -72,8 +72,7 @@ class cm implements renderable {
* @return stdClass data context for a mustache template
*/
public function export_for_template(renderer_base $output): stdClass {
global $USER, $CFG;
require_once($CFG->libdir . '/externallib.php');
global $USER;
$format = $this->format;
$section = $this->section;
@ -83,7 +82,7 @@ class cm implements renderable {
$data = (object)[
'id' => $cm->id,
'anchor' => "module-{$cm->id}",
'name' => external_format_string($cm->name, $cm->context, true),
'name' => \core_external\util::format_string($cm->name, $cm->context, true),
'visible' => !empty($cm->visible),
'stealth' => $cm->is_stealth(),
'sectionid' => $section->id,

View file

@ -21,7 +21,7 @@ defined('MOODLE_INTERNAL') || die();
global $CFG;
require_once($CFG->dirroot . '/webservice/tests/helpers.php');
use external_api;
use core_external\external_api;
/**
* Tests for the get_state class.

View file

@ -18,7 +18,6 @@ namespace core_courseformat\output\local\state;
use availability_date\condition;
use core_availability\tree;
use context_course;
use stdClass;
/**
@ -39,7 +38,6 @@ class cm_test extends \advanced_testcase {
require_once($CFG->dirroot . '/course/lib.php');
require_once($CFG->dirroot . '/course/format/tests/fixtures/format_theunittest.php');
require_once($CFG->dirroot . '/course/format/tests/fixtures/format_theunittest_output_course_format_state.php');
require_once($CFG->libdir . '/externallib.php');
}
/**

View file

@ -18,7 +18,6 @@ namespace core_courseformat\output\local\state;
use availability_date\condition;
use core_availability\tree;
use context_course;
use stdClass;
/**
@ -39,7 +38,6 @@ class section_test extends \advanced_testcase {
require_once($CFG->dirroot . '/course/lib.php');
require_once($CFG->dirroot . '/course/format/tests/fixtures/format_theunittest.php');
require_once($CFG->dirroot . '/course/format/tests/fixtures/format_theunittest_output_course_format_state.php');
require_once($CFG->libdir . '/externallib.php');
}
/**

View file

@ -35,7 +35,6 @@ class state_test extends \advanced_testcase {
require_once($CFG->dirroot . '/course/lib.php');
require_once($CFG->dirroot . '/course/format/tests/fixtures/format_theunittest.php');
require_once($CFG->dirroot . '/course/format/tests/fixtures/format_theunittest_output_course_format_state.php');
require_once($CFG->dirroot . '/lib/externallib.php');
}
/**

View file

@ -30,16 +30,6 @@ use stdClass;
* @coversDefaultClass \core_courseformat\stateactions
*/
class stateactions_test extends \advanced_testcase {
/**
* Setup to ensure that fixtures are loaded.
*/
public static function setupBeforeClass(): void {
global $CFG;
// State data uses external_format_string.
require_once($CFG->dirroot . '/lib/externallib.php');
}
/**
* Helper method to create an activity into a section and add it to the $sections and $activities arrays.
*

View file

@ -16,6 +16,8 @@
namespace format_topics;
use core_external\external_api;
defined('MOODLE_INTERNAL') || die();
global $CFG;
@ -151,7 +153,7 @@ class format_topics_test extends \advanced_testcase {
$this->getDataGenerator()->enrol_user($user->id, $course->id, $teacherrole->id);
$res = \core_external::update_inplace_editable('format_topics', 'sectionname', $section->id, 'New section name');
$res = \external_api::clean_returnvalue(\core_external::update_inplace_editable_returns(), $res);
$res = external_api::clean_returnvalue(\core_external::update_inplace_editable_returns(), $res);
$this->assertEquals('New section name', $res['value']);
$this->assertEquals('New section name', $DB->get_field('course_sections', 'name', ['id' => $section->id]));
}

View file

@ -16,6 +16,8 @@
namespace format_weeks;
use core_external\external_api;
defined('MOODLE_INTERNAL') || die();
global $CFG;
@ -149,7 +151,7 @@ class format_weeks_test extends \advanced_testcase {
$this->getDataGenerator()->enrol_user($user->id, $course->id, $teacherrole->id);
$res = \core_external::update_inplace_editable('format_weeks', 'sectionname', $section->id, 'New section name');
$res = \external_api::clean_returnvalue(\core_external::update_inplace_editable_returns(), $res);
$res = external_api::clean_returnvalue(\core_external::update_inplace_editable_returns(), $res);
$this->assertEquals('New section name', $res['value']);
$this->assertEquals('New section name', $DB->get_field('course_sections', 'name', array('id' => $section->id)));
}

View file

@ -38,7 +38,7 @@ use course_capability_assignment;
use course_request;
use core_course_category;
use enrol_imsenterprise\imsenterprise_test;
use external_api;
use core_external\external_api;
use grade_item;
use grading_manager;
use moodle_exception;

View file

@ -745,13 +745,18 @@ class externallib_test extends externallib_advanced_testcase {
$coursecontext = context_course::instance($course['id']);
$dbcourse = $generatedcourses[$course['id']];
$this->assertEquals($course['idnumber'], $dbcourse->idnumber);
$this->assertEquals($course['fullname'], external_format_string($dbcourse->fullname, $coursecontext->id));
$this->assertEquals($course['displayname'], external_format_string(get_course_display_name_for_list($dbcourse),
$coursecontext->id));
$this->assertEquals(
$course['fullname'],
\core_external\util::format_string($dbcourse->fullname, $coursecontext->id)
);
$this->assertEquals(
$course['displayname'],
\core_external\util::format_string(get_course_display_name_for_list($dbcourse), $coursecontext->id)
);
// Summary was converted to the HTML format.
$this->assertEquals($course['summary'], format_text($dbcourse->summary, FORMAT_MOODLE, array('para' => false)));
$this->assertEquals($course['summaryformat'], FORMAT_HTML);
$this->assertEquals($course['shortname'], external_format_string($dbcourse->shortname, $coursecontext->id));
$this->assertEquals($course['shortname'], \core_external\util::format_string($dbcourse->shortname, $coursecontext->id));
$this->assertEquals($course['categoryid'], $dbcourse->category);
$this->assertEquals($course['format'], $dbcourse->format);
$this->assertEquals($course['showgrades'], $dbcourse->showgrades);

View file

@ -14,6 +14,12 @@
// You should have received a copy of the GNU General Public License
// along with Moodle. If not, see <http://www.gnu.org/licenses/>.
use core_external\external_api;
use core_external\external_function_parameters;
use core_external\external_multiple_structure;
use core_external\external_single_structure;
use core_external\external_value;
/**
* External interface library for customfields component
*
@ -21,17 +27,6 @@
* @copyright 2018 David Matamoros <davidmc@moodle.com>
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
*/
defined('MOODLE_INTERNAL') || die;
require_once($CFG->libdir . "/externallib.php");
/**
* Class core_customfield_external
*
* @copyright 2018 David Matamoros <davidmc@moodle.com>
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
*/
class core_customfield_external extends external_api {
/**

View file

@ -22,6 +22,8 @@
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
*/
use core_external\external_api;
defined('MOODLE_INTERNAL') || die;
/**
@ -36,7 +38,7 @@ function core_customfield_inplace_editable($itemtype, $itemid, $newvalue) {
if ($itemtype === 'category') {
$category = core_customfield\category_controller::create($itemid);
$handler = $category->get_handler();
\external_api::validate_context($handler->get_configuration_context());
external_api::validate_context($handler->get_configuration_context());
if (!$handler->can_configure()) {
throw new moodle_exception('nopermissionconfigure', 'core_customfield');
}

View file

@ -14,12 +14,8 @@
// You should have received a copy of the GNU General Public License
// along with Moodle. If not, see <http://www.gnu.org/licenses/>.
/**
* External course participation api.
*
* This api is mostly read only, the actual enrol and unenrol
* support is in each enrol plugin.
* Course participations External functions.
*
* @package core_enrol
* @category external
@ -27,16 +23,23 @@
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
*/
defined('MOODLE_INTERNAL') || die();
require_once("$CFG->libdir/externallib.php");
use core_external\external_api;
use core_external\external_files;
use core_external\external_format_value;
use core_external\external_function_parameters;
use core_external\external_multiple_structure;
use core_external\external_single_structure;
use core_external\external_value;
/**
* Enrol external functions
*
* This api is mostly read only, the actual enrol and unenrol
* support is in each enrol plugin.
*
* @package core_enrol
* @category external
* @copyright 2011 Jerome Mouneyrac
* @copyright 2010 Jerome Mouneyrac
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
* @since Moodle 2.2
*/
@ -352,11 +355,11 @@ class core_enrol_external extends external_api {
$enrolledusercount = $DB->count_records_sql($enrolledsql, $enrolledparams);
}
$displayname = external_format_string(get_course_display_name_for_list($course), $context->id);
$displayname = \core_external\util::format_string(get_course_display_name_for_list($course), $context);
list($course->summary, $course->summaryformat) =
external_format_text($course->summary, $course->summaryformat, $context->id, 'course', 'summary', null);
$course->fullname = external_format_string($course->fullname, $context->id);
$course->shortname = external_format_string($course->shortname, $context->id);
\core_external\util::format_text($course->summary, $course->summaryformat, $context, 'course', 'summary', null);
$course->fullname = \core_external\util::format_string($course->fullname, $context);
$course->shortname = \core_external\util::format_string($course->shortname, $context);
$progress = null;
$completed = null;
@ -449,7 +452,7 @@ class core_enrol_external extends external_api {
/**
* Returns description of method result value
*
* @return external_description
* @return \core_external\external_description
*/
public static function get_users_courses_returns() {
return new external_multiple_structure(
@ -494,7 +497,7 @@ class core_enrol_external extends external_api {
/**
* Returns description of method parameters value
*
* @return external_description
* @return \core_external\external_description
*/
public static function get_potential_users_parameters() {
return new external_function_parameters(
@ -598,7 +601,7 @@ class core_enrol_external extends external_api {
/**
* Returns description of method result value
*
* @return external_description
* @return \core_external\external_description
*/
public static function get_potential_users_returns() {
global $CFG;
@ -894,7 +897,7 @@ class core_enrol_external extends external_api {
/**
* Returns description of method result value
*
* @return external_description
* @return \core_external\external_description
*/
public static function get_enrolled_users_returns() {
return new external_multiple_structure(
@ -1015,7 +1018,7 @@ class core_enrol_external extends external_api {
/**
* Returns description of get_course_enrolment_methods() result value
*
* @return external_description
* @return \core_external\external_description
*/
public static function get_course_enrolment_methods_returns() {
return new external_multiple_structure(
@ -1090,7 +1093,7 @@ class core_enrol_external extends external_api {
/**
* Returns description of submit_user_enrolment_form() result value
*
* @return external_description
* @return \core_external\external_description
*/
public static function submit_user_enrolment_form_returns() {
return new external_single_structure([
@ -1164,7 +1167,7 @@ class core_enrol_external extends external_api {
/**
* Returns description of unenrol_user_enrolment() result value
*
* @return external_description
* @return \core_external\external_description
*/
public static function unenrol_user_enrolment_returns() {
return new external_single_structure(

View file

@ -24,9 +24,15 @@
* @since Moodle 3.1
*/
use core_external\external_api;
use core_external\external_description;
use core_external\external_function_parameters;
use core_external\external_single_structure;
use core_external\external_value;
use core_external\external_warnings;
defined('MOODLE_INTERNAL') || die;
require_once($CFG->libdir . '/externallib.php');
require_once($CFG->libdir . '/enrollib.php');
/**

View file

@ -25,6 +25,7 @@
namespace enrol_guest\external;
use core_external\external_api;
use enrol_guest_external;
use externallib_advanced_testcase;
@ -74,7 +75,7 @@ class external_test extends externallib_advanced_testcase {
$this->setAdminUser();
$result = enrol_guest_external::get_instance_info($instance);
$result = \external_api::clean_returnvalue(enrol_guest_external::get_instance_info_returns(), $result);
$result = external_api::clean_returnvalue(enrol_guest_external::get_instance_info_returns(), $result);
$this->assertEquals($instance, $result['instanceinfo']['id']);
$this->assertEquals($course->id, $result['instanceinfo']['courseid']);
@ -86,7 +87,7 @@ class external_test extends externallib_advanced_testcase {
$DB->set_field('enrol', 'status', ENROL_INSTANCE_DISABLED, array('id' => $instance));
$result = enrol_guest_external::get_instance_info($instance);
$result = \external_api::clean_returnvalue(enrol_guest_external::get_instance_info_returns(), $result);
$result = external_api::clean_returnvalue(enrol_guest_external::get_instance_info_returns(), $result);
$this->assertEquals($instance, $result['instanceinfo']['id']);
$this->assertEquals($course->id, $result['instanceinfo']['courseid']);
$this->assertEquals('guest', $result['instanceinfo']['type']);
@ -109,7 +110,7 @@ class external_test extends externallib_advanced_testcase {
$DB->set_field('course', 'visible', 1, array('id' => $course->id));
$this->setUser($student);
$result = enrol_guest_external::get_instance_info($instance);
$result = \external_api::clean_returnvalue(enrol_guest_external::get_instance_info_returns(), $result);
$result = external_api::clean_returnvalue(enrol_guest_external::get_instance_info_returns(), $result);
$this->assertEquals($instance, $result['instanceinfo']['id']);
$this->assertEquals($course->id, $result['instanceinfo']['courseid']);

View file

@ -14,6 +14,12 @@
// You should have received a copy of the GNU General Public License
// along with Moodle. If not, see <http://www.gnu.org/licenses/>.
use core_external\external_api;
use core_external\external_function_parameters;
use core_external\external_multiple_structure;
use core_external\external_single_structure;
use core_external\external_value;
/**
* External course participation api.
*
@ -24,19 +30,6 @@
* @category external
* @copyright 2011 Jerome Mouneyrac
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
*/
defined('MOODLE_INTERNAL') || die();
require_once("$CFG->libdir/externallib.php");
/**
* Manual enrolment external functions.
*
* @package enrol_manual
* @category external
* @copyright 2011 Jerome Mouneyrac
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
* @since Moodle 2.2
*/
class enrol_manual_external extends external_api {

View file

@ -16,11 +16,11 @@
namespace enrol_meta\external;
use external_api;
use external_function_parameters;
use external_multiple_structure;
use external_single_structure;
use external_value;
use core_external\external_api;
use core_external\external_function_parameters;
use core_external\external_multiple_structure;
use core_external\external_single_structure;
use core_external\external_value;
use invalid_parameter_exception;
use context_course;
use moodle_exception;

View file

@ -16,11 +16,11 @@
namespace enrol_meta\external;
use external_api;
use external_function_parameters;
use external_multiple_structure;
use external_single_structure;
use external_value;
use core_external\external_api;
use core_external\external_function_parameters;
use core_external\external_multiple_structure;
use core_external\external_single_structure;
use core_external\external_value;
use invalid_parameter_exception;
use context_course;
use moodle_exception;

Some files were not shown because too many files have changed in this diff Show more