diff --git a/lib/externallib.php b/lib/externallib.php index 6944b597959..d7acb943ee0 100644 --- a/lib/externallib.php +++ b/lib/externallib.php @@ -1140,6 +1140,8 @@ class external_settings { if ((AJAX_SCRIPT == false) && (CLI_SCRIPT == false) && (WS_SERVER == false)) { // For normal pages, the default should match the default for format_text. $this->filter = true; + // Use pluginfile.php for web requests. + $this->file = 'pluginfile.php'; } } @@ -1152,7 +1154,7 @@ class external_settings { /** * Return only one instance * - * @return object + * @return \external_settings */ public static function get_instance() { if (self::$instance === null) { diff --git a/lib/tests/externallib_test.php b/lib/tests/externallib_test.php index d6a922c0a00..ce50ac30276 100644 --- a/lib/tests/externallib_test.php +++ b/lib/tests/externallib_test.php @@ -43,6 +43,36 @@ class core_externallib_testcase extends advanced_testcase { } } + /** + * Tests for external_settings class. + */ + public function test_external_settings() { + + $settings = \external_settings::get_instance(); + $currentraw = $settings->get_raw(); + $currentfilter = $settings->get_filter(); + $currentfile = $settings->get_file(); + $currentfileurl = $settings->get_fileurl(); + + $this->assertInstanceOf('external_settings', $settings); + + // Check apis. + $settings->set_file('plugin.php'); + $this->assertEquals('plugin.php', $settings->get_file()); + $settings->set_filter(false); + $this->assertFalse($settings->get_filter()); + $settings->set_fileurl(false); + $this->assertFalse($settings->get_fileurl()); + $settings->set_raw(true); + $this->assertTrue($settings->get_raw()); + + // Restore original values. + $settings->set_file($currentfile); + $settings->set_filter($currentfilter); + $settings->set_fileurl($currentfileurl); + $settings->set_raw($currentraw); + } + public function test_validate_params() { $params = array('text'=>'aaa', 'someid'=>'6'); $description = new external_function_parameters(array('someid' => new external_value(PARAM_INT, 'Some int value'), @@ -539,7 +569,6 @@ class core_externallib_testcase extends advanced_testcase { } } - } /*