$group) {
if (!empty($_POST['same_tutor'])) {
$group['tutor'] = $_POST['group_0_tutor'];
}
if (!empty($_POST['same_places'])) {
$group['places'] = $_POST['group_0_places'];
}
if (api_get_setting('allow_group_categories') == 'false') {
$group['category'] = GroupManager::DEFAULT_GROUP_CATEGORY;
} elseif ($_POST['same_category']) {
$group['category'] = $_POST['group_0_category'];
}
GroupManager :: create_group($group['name'], $group['category'], $group['tutor'], $group['places']);
}
$msg = urlencode(count($groups).' '.get_lang('GroupsAdded'));
header('Location: group.php?action=show_msg&msg='.$msg);
exit;
break;
case 'create_subgroups':
GroupManager :: create_subgroups($_POST['base_group'], $_POST['number_of_groups']);
$msg = urlencode($_POST['number_of_groups'].' '.get_lang('GroupsAdded'));
header('Location: group.php?action=show_msg&msg='.$msg);
exit;
break;
case 'create_class_groups':
$ids = GroupManager :: create_class_groups($_POST['group_category']);
$msg = urlencode(count($ids).' '.get_lang('GroupsAdded'));
header('Location: group.php?action=show_msg&msg='.$msg);
exit;
break;
}
}
$nameTools = get_lang('GroupCreation');
$interbreadcrumb[] = array ('url' => 'group.php', 'name' => get_lang('Groups'));
Display :: display_header($nameTools, 'Group');
if (!api_is_allowed_to_edit(false, true)) {
api_not_allowed();
}
/* MAIN TOOL CODE */
/* Show group-settings-form */
elseif (isset($_POST['number_of_groups'])) {
if (!is_numeric($_POST['number_of_groups']) || intval($_POST['number_of_groups']) < 1) {
Display :: display_error_message(get_lang('PleaseEnterValidNumber').'
« '.get_lang('Back').'', false);
} else {
$number_of_groups = intval($_POST['number_of_groups']);
if ($number_of_groups > 1) {
?>
$category) {
// Don't allow new groups in the virtual course category!
if ($category['id'] != GroupManager::VIRTUAL_COURSE_CATEGORY) {
$cat_options[$category['id']] = $category['title'];
}
}
$form = new FormValidator('create_groups_step2', 'post', api_get_self().'?'.api_get_cidreq());
// Modify the default templates
$renderer = $form->defaultRenderer();
$form_template = "
'; if (count($categories) > 1 || isset ($categories[0]) && $categories[0]['id'] != GroupManager::VIRTUAL_COURSE_CATEGORY) { $create_groups_form = new FormValidator('create_groups', 'post', api_get_self().'?'.api_get_cidreq()); $create_groups_form->addElement('header', '', $nameTools); $group_el = array (); $group_el[] = $create_groups_form->createElement('static', null, null, get_lang('Create')); $group_el[] = $create_groups_form->createElement('text', 'number_of_groups', null, array('class' => 'span1')); $group_el[] = $create_groups_form->createElement('static', null, null, get_lang('NewGroups')); $group_el[] = $create_groups_form->createElement('style_submit_button', 'submit', get_lang('ProceedToCreateGroup'), 'class="save"'); $create_groups_form->addGroup($group_el, 'create_groups', null, ' ', false); $defaults = array(); $defaults['number_of_groups'] = 1; $create_groups_form->setDefaults($defaults); $create_groups_form->display(); } else { echo get_lang('NoCategoriesDefined'); } /* * Show form to generate subgroups */ if (api_get_setting('allow_group_categories') == 'true' && count(GroupManager :: get_group_list()) > 0) { $base_group_options = array (); $groups = GroupManager :: get_group_list(); foreach ($groups as $index => $group) { $number_of_students = GroupManager :: number_of_students($group['id']); if ($number_of_students > 0) { $base_group_options[$group['id']] = $group['name'].' ('.$number_of_students.' '.get_lang('Users').')'; } } if (count($base_group_options) > 0) { $create_subgroups_form = new FormValidator('create_subgroups'); $create_subgroups_form->addElement('header', get_lang('CreateSubgroups')); $create_subgroups_form->addElement('html', get_lang('CreateSubgroupsInfo')); $create_subgroups_form->addElement('hidden', 'action'); $group_el = array(); $group_el[] = $create_subgroups_form->createElement('static', null, null, get_lang('CreateNumberOfGroups')); $group_el[] = $create_subgroups_form->createElement('text', 'number_of_groups', null, array('size' => 3)); $group_el[] = $create_subgroups_form->createElement('static', null, null, get_lang('WithUsersFrom')); $group_el[] = $create_subgroups_form->createElement('select', 'base_group', null, $base_group_options); $group_el[] = $create_subgroups_form->createElement('button', 'submit', get_lang('Ok')); $create_subgroups_form->addGroup($group_el, 'create_groups', null, ' ', false); $defaults = array(); $defaults['action'] = 'create_subgroups'; $create_subgroups_form->setDefaults($defaults); $create_subgroups_form->display(); } } /* * Show form to generate groups from classes subscribed to the course */ $options['where'] = array(" usergroup.course_id = ? " => api_get_real_course_id()); $obj = new UserGroup(); $classes = $obj->get_usergroup_in_course($options); if (count($classes) > 0) { echo ''.get_lang('GroupsFromClasses').''; echo ''; echo ''; } } /* FOOTER */ Display :: display_footer();'.get_lang('GroupsFromClassesInfo').'
'; echo ''; foreach ($classes as $index => $class) { $number_of_users = count($obj->get_users_by_usergroup($class['id'])); echo '
'; $create_class_groups_form = new FormValidator('create_class_groups_form'); $create_class_groups_form->addElement('hidden', 'action'); if (api_get_setting('allow_group_categories') == 'true') { $group_categories = GroupManager :: get_categories(); $cat_options = array (); foreach ($group_categories as $index => $category) { // Don't allow new groups in the virtual course category! if ($category['id'] != GroupManager::VIRTUAL_COURSE_CATEGORY) { $cat_options[$category['id']] = $category['title']; } } $create_class_groups_form->addElement('select', 'group_category', null, $cat_options); } else { $create_class_groups_form->addElement('hidden', 'group_category'); } $create_class_groups_form->addElement('submit', 'submit', get_lang('Ok')); $defaults['group_category'] = GroupManager::DEFAULT_GROUP_CATEGORY; $defaults['action'] = 'create_class_groups'; $create_class_groups_form->setDefaults($defaults); $create_class_groups_form->display(); echo '- '; echo $class['name']; echo ' ('.$number_of_users.' '.get_lang('Users').')'; echo '
'; } echo '