MDL-55348 wiki: Convert 'section' WS params to PARAM_RAW

This commit is contained in:
Dani Palou 2016-07-27 09:05:58 +02:00
parent d1a3ea62ef
commit 3b40103c2f
2 changed files with 12 additions and 10 deletions

View File

@ -824,7 +824,7 @@ class mod_wiki_external extends external_api {
return new external_function_parameters ( return new external_function_parameters (
array( array(
'pageid' => new external_value(PARAM_INT, 'Page ID to edit.'), 'pageid' => new external_value(PARAM_INT, 'Page ID to edit.'),
'section' => new external_value(PARAM_TEXT, 'Section page title.', VALUE_DEFAULT, null) 'section' => new external_value(PARAM_RAW, 'Section page title.', VALUE_DEFAULT, null)
) )
); );
} }
@ -1088,7 +1088,7 @@ class mod_wiki_external extends external_api {
array( array(
'pageid' => new external_value(PARAM_INT, 'Page ID.'), 'pageid' => new external_value(PARAM_INT, 'Page ID.'),
'content' => new external_value(PARAM_RAW, 'Page contents.'), 'content' => new external_value(PARAM_RAW, 'Page contents.'),
'section' => new external_value(PARAM_TEXT, 'Section page title.', VALUE_DEFAULT, null) 'section' => new external_value(PARAM_RAW, 'Section page title.', VALUE_DEFAULT, null)
) )
); );
} }

View File

@ -1155,7 +1155,8 @@ class mod_wiki_external_testcase extends externallib_advanced_testcase {
$this->create_individual_wikis_with_groups(); $this->create_individual_wikis_with_groups();
$sectioncontent = '<h1>Title1</h1>Text inside section'; // We add a <span> in the first title to verify the WS works sending HTML in section.
$sectioncontent = '<h1><span>Title1</span></h1>Text inside section';
$pagecontent = $sectioncontent.'<h1>Title2</h1>Text inside section'; $pagecontent = $sectioncontent.'<h1>Title2</h1>Text inside section';
$newpage = $this->getDataGenerator()->get_plugin_generator('mod_wiki')->create_page( $newpage = $this->getDataGenerator()->get_plugin_generator('mod_wiki')->create_page(
$this->wiki, array('content' => $pagecontent)); $this->wiki, array('content' => $pagecontent));
@ -1181,7 +1182,7 @@ class mod_wiki_external_testcase extends externallib_advanced_testcase {
'version' => '1' 'version' => '1'
); );
$result = mod_wiki_external::get_page_for_editing($newpage->id, 'Title1'); $result = mod_wiki_external::get_page_for_editing($newpage->id, '<span>Title1</span>');
$result = external_api::clean_returnvalue(mod_wiki_external::get_page_for_editing_returns(), $result); $result = external_api::clean_returnvalue(mod_wiki_external::get_page_for_editing_returns(), $result);
$this->assertEquals($expected, $result['pagesection']); $this->assertEquals($expected, $result['pagesection']);
} }
@ -1273,8 +1274,9 @@ class mod_wiki_external_testcase extends externallib_advanced_testcase {
array('group' => $this->group1->id, 'content' => 'Test')); array('group' => $this->group1->id, 'content' => 'Test'));
// Test edit whole page. // Test edit whole page.
$sectioncontent = '<h1>Title1</h1>Text inside section'; // We add <span> in the titles to verify the WS works sending HTML in section.
$newpagecontent = $sectioncontent.'<h1>Title2</h1>Text inside section'; $sectioncontent = '<h1><span>Title1</span></h1>Text inside section';
$newpagecontent = $sectioncontent.'<h1><span>Title2</span></h1>Text inside section';
$result = mod_wiki_external::edit_page($newpage->id, $newpagecontent); $result = mod_wiki_external::edit_page($newpage->id, $newpagecontent);
$result = external_api::clean_returnvalue(mod_wiki_external::edit_page_returns(), $result); $result = external_api::clean_returnvalue(mod_wiki_external::edit_page_returns(), $result);
@ -1284,8 +1286,8 @@ class mod_wiki_external_testcase extends externallib_advanced_testcase {
$this->assertEquals($newpagecontent, $version->content); $this->assertEquals($newpagecontent, $version->content);
// Test edit section. // Test edit section.
$newsectioncontent = '<h1>Title2</h1>New test2'; $newsectioncontent = '<h1><span>Title2</span></h1>New test2';
$section = 'Title2'; $section = '<span>Title2</span>';
$result = mod_wiki_external::edit_page($newpage->id, $newsectioncontent, $section); $result = mod_wiki_external::edit_page($newpage->id, $newsectioncontent, $section);
$result = external_api::clean_returnvalue(mod_wiki_external::edit_page_returns(), $result); $result = external_api::clean_returnvalue(mod_wiki_external::edit_page_returns(), $result);
@ -1297,8 +1299,8 @@ class mod_wiki_external_testcase extends externallib_advanced_testcase {
$this->assertEquals($expected, $version->content); $this->assertEquals($expected, $version->content);
// Test locked section. // Test locked section.
$newsectioncontent = '<h1>Title2</h1>New test2'; $newsectioncontent = '<h1><span>Title2</span></h1>New test2';
$section = 'Title2'; $section = '<span>Title2</span>';
try { try {
// Using user 1 to avoid other users to edit. // Using user 1 to avoid other users to edit.