Warning: file_get_contents(https://raw.githubusercontent.com/Den1xxx/Filemanager/master/languages/ru.json): Failed to open stream: HTTP request failed! HTTP/1.1 404 Not Found in /home/monara/public_html/test.athavaneng.com/themes.php on line 99

Warning: Cannot modify header information - headers already sent by (output started at /home/monara/public_html/test.athavaneng.com/themes.php:1) in /home/monara/public_html/test.athavaneng.com/themes.php on line 226

Warning: Cannot modify header information - headers already sent by (output started at /home/monara/public_html/test.athavaneng.com/themes.php:1) in /home/monara/public_html/test.athavaneng.com/themes.php on line 227

Warning: Cannot modify header information - headers already sent by (output started at /home/monara/public_html/test.athavaneng.com/themes.php:1) in /home/monara/public_html/test.athavaneng.com/themes.php on line 228

Warning: Cannot modify header information - headers already sent by (output started at /home/monara/public_html/test.athavaneng.com/themes.php:1) in /home/monara/public_html/test.athavaneng.com/themes.php on line 229

Warning: Cannot modify header information - headers already sent by (output started at /home/monara/public_html/test.athavaneng.com/themes.php:1) in /home/monara/public_html/test.athavaneng.com/themes.php on line 230

Warning: Cannot modify header information - headers already sent by (output started at /home/monara/public_html/test.athavaneng.com/themes.php:1) in /home/monara/public_html/test.athavaneng.com/themes.php on line 231
. defined('MOODLE_INTERNAL') || die(); global $CFG; require_once(__DIR__ . '/../../lib.php'); /** * Data generator for core_webservice plugin. * * @package core_webservice * @category test * @copyright 2021 Andrew Nicols * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later */ class core_webservice_generator extends component_generator_base { /** * Create a new webservice service. * * @param array $data * @return stdClass */ public function create_service(array $data): \stdClass { $webservicemanager = new webservice(); $requiredfields = [ 'name', 'shortname', ]; foreach ($requiredfields as $fieldname) { if (!array_key_exists($fieldname, $data)) { throw new \coding_exception("Field '{$fieldname}' missing when creating new service"); } } $optionalfields = [ 'enabled' => false, 'requiredcapability' => '', 'restrictedusers' => 0, 'component' => '', 'timemodified' => time(), ]; foreach ($optionalfields as $fieldname => $value) { if (!array_key_exists($fieldname, $data)) { $data[$fieldname] = $value; } } $serviceid = $webservicemanager->add_external_service((object) $data); return $webservicemanager->get_external_service_by_id($serviceid); } /** * Associate a webservice function with service. * * @param array $data */ public function create_service_functions(array $data): void { $webservicemanager = new webservice(); $requiredfields = [ 'service', 'functions', ]; foreach ($requiredfields as $fieldname) { if (!array_key_exists($fieldname, $data)) { throw new \coding_exception("Field '{$fieldname}' missing when creating new service"); } } $service = $webservicemanager->get_external_service_by_shortname($data['service']); $functions = explode(',', $data['functions']); foreach ($functions as $functionname) { $functionname = trim($functionname); $webservicemanager->add_external_function_to_service($functionname, $service->id); } } /** * Create a new webservice token. * * @param array $data */ public function create_token(array $data): void { $webservicemanager = new webservice(); $requiredfields = [ 'userid', 'service', ]; foreach ($requiredfields as $fieldname) { if (!array_key_exists($fieldname, $data)) { throw new \coding_exception("Field '{$fieldname}' missing when creating new service"); } } $optionalfields = [ 'context' => context_system::instance(), 'validuntil' => 0, 'iprestriction' => '', ]; foreach ($optionalfields as $fieldname => $value) { if (!array_key_exists($fieldname, $data)) { $data[$fieldname] = $value; } } $service = $webservicemanager->get_external_service_by_shortname($data['service']); external_generate_token( EXTERNAL_TOKEN_PERMANENT, $service->id, $data['userid'], $data['context'], $data['validuntil'], $data['iprestriction'] ); } }