MDL-22871 fixed detection of local guest account, it must have the local mnet id
[moodle.git] / group / delete.php
blob67f5d7c9f936f16cdc5c9482e73d1481d31aeab8
1 <?php
2 /**
3 * Delete group
5 * @copyright &copy; 2008 The Open University
6 * @author s.marshall AT open.ac.uk
7 * @license http://www.gnu.org/copyleft/gpl.html GNU Public License
8 * @package groups
9 */
11 require_once('../config.php');
12 require_once('lib.php');
14 // Get and check parameters
15 $courseid = required_param('courseid', PARAM_INT);
16 $groupids = required_param('groups', PARAM_SEQUENCE);
17 $confirm = optional_param('confirm', 0, PARAM_BOOL);
19 // Make sure course is OK and user has access to manage groups
20 if (!$course = get_record('course', 'id', $courseid)) {
21 error('Course ID was incorrect');
23 require_login($course);
24 $context = get_context_instance(CONTEXT_COURSE, $course->id);
25 require_capability('moodle/course:managegroups', $context);
27 // Make sure all groups are OK and belong to course
28 $groupidarray = explode(',',$groupids);
29 $groupnames = array();
30 foreach($groupidarray as $groupid) {
31 if (!$group = get_record('groups', 'id', $groupid)) {
32 error('Group ID was incorrect');
34 if ($courseid != $group->courseid) {
35 error('Group not on required course');
37 $groupnames[] = format_string($group->name);
40 $returnurl='index.php?id='.$course->id;
42 if(count($groupidarray)==0) {
43 print_error('errorselectsome','group',$returnurl);
46 if ($confirm && data_submitted()) {
47 if (!confirm_sesskey() ) {
48 print_error('confirmsesskeybad','error',$returnurl);
50 begin_sql();
51 foreach($groupidarray as $groupid) {
52 if (!groups_delete_group($groupid)) {
53 print_error('erroreditgroup', 'group', $returnurl);
56 commit_sql();
57 redirect($returnurl);
58 } else {
59 print_header(get_string('deleteselectedgroup', 'group'), get_string('deleteselectedgroup', 'group'));
60 $optionsyes = array('courseid'=>$courseid, 'groups'=>$groupids, 'sesskey'=>sesskey(), 'confirm'=>1);
61 $optionsno = array('id'=>$courseid);
62 if(count($groupnames)==1) {
63 $message=get_string('deletegroupconfirm', 'group', $groupnames[0]);
64 } else {
65 $message=get_string('deletegroupsconfirm', 'group').'<ul>';
66 foreach($groupnames as $groupname) {
67 $message.='<li>'.$groupname.'</li>';
69 $message.='</ul>';
71 notice_yesno($message, 'delete.php', 'index.php', $optionsyes, $optionsno, 'post', 'get');
72 print_footer();