From bec18780213059d6b7b73ec79b6efdfa47ed1353 Mon Sep 17 00:00:00 2001 From: pigui Date: Tue, 3 Feb 2009 12:50:00 +0000 Subject: [PATCH] commiting delete group function MDL-12886 --- group/external.php | 17 ++++++ webservice/rest/testclient/deletegroup.php | 65 ++++++++++++++++++++++ webservice/rest/testclient/getgroup.php | 2 +- 3 files changed, 83 insertions(+), 1 deletion(-) create mode 100644 webservice/rest/testclient/deletegroup.php diff --git a/group/external.php b/group/external.php index 992e91b874..5fb043949a 100644 --- a/group/external.php +++ b/group/external.php @@ -35,6 +35,9 @@ final class group_external extends moodle_external { 'optionalparams' => array( ), 'return' => array('group' => array('id' => PARAM_RAW, 'courseid' => PARAM_RAW, 'name' => PARAM_RAW, 'enrolmentkey' => PARAM_RAW))); + $this->descriptions['tmp_delete_group'] = array( 'params' => array('groupid'=> PARAM_INT), + 'optionalparams' => array( ), + 'return' => array('result' => PARAM_BOOL)); $this->descriptions['tmp_add_groupmember'] = array( 'params' => array('groupid'=> PARAM_INT, 'userid'=> PARAM_INT), 'optionalparams' => array( ), @@ -90,6 +93,20 @@ final class group_external extends moodle_external { return $ret; + } + + static function tmp_delete_group($params){ + + if (has_capability('moodle/course:managegroups', get_context_instance(CONTEXT_SYSTEM))) { + + // @TODO groups_add_member() does not check userid + return groups_delete_group($params['groupid']); + } + else { + throw new moodle_exception('wscouldnotdeletegroup'); + } + + } } diff --git a/webservice/rest/testclient/deletegroup.php b/webservice/rest/testclient/deletegroup.php new file mode 100644 index 0000000000..c139e8e0f2 --- /dev/null +++ b/webservice/rest/testclient/deletegroup.php @@ -0,0 +1,65 @@ + + +
+ + + +
Group id:
+
+ +serverurl.'/user/tmp_get_token'); + curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); + curl_setopt($ch, CURLOPT_POST, 1); + curl_setopt($ch, CURLOPT_POSTFIELDS, format_postdata($connectiondata)); + $token = curl_exec($ch); + $data['token'] = $token; + + $data['groupid'] = $groupid; + + $ch = curl_init(); + curl_setopt($ch, CURLOPT_URL, $CFG->serverurl.'/group/tmp_delete_group'); + curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); + curl_setopt($ch, CURLOPT_POST, 1); + curl_setopt($ch, CURLOPT_POSTFIELDS, format_postdata($data)); + $out = curl_exec($ch); + + $res = basicxml_xml_to_object($out); + + show_object($res); + + show_xml ($out); +} else { + echo "

Fill the form first

"; +} + +end_interface(); + +?> diff --git a/webservice/rest/testclient/getgroup.php b/webservice/rest/testclient/getgroup.php index 77819a8c5d..1578202c2f 100644 --- a/webservice/rest/testclient/getgroup.php +++ b/webservice/rest/testclient/getgroup.php @@ -17,7 +17,7 @@ foreach ($params as $param) { $$param = (isset($_POST[$param]))?$_POST[$param]:''; } -start_interface("Delete a user"); +start_interface("Get Group"); ?>
-- 2.39.5