$mform->hardFreeze('groupmode'); // groupmode can not be changed if forced from course settings
}
}
+
+ // groupings have no use without groupmode or groupmembersonly
+ if (!$mform->elementExists('groupmode') and !$mform->elementExists('groupmembersonly')) {
+ if ($mform->elementExists('groupingid')) {
+ $mform->removeElement('groupingid');
+ }
+ }
}
// form verification
* Adds all the standard elements to a form to edit the settings for an activity module.
*
* @param bool $supportsgroups does this module support groups?
+ * @param bool $supportgroupmembersonly does this module support groupmembersonly access?
*/
- function standard_coursemodule_elements($supportsgroups=true){
+ function standard_coursemodule_elements($supportsgroups=true, $supportgroupmembersonly=false){
global $COURSE, $CFG;
$mform =& $this->_form;
}
}
$mform->addElement('select', 'groupingid', get_string('grouping', 'group'), $options);
- $mform->addElement('advcheckbox', 'groupmembersonly', get_string('groupmembersonly', 'group'));
+ $mform->setAdvanced('groupingid');
+
+ if ($supportgroupmembersonly) {
+ $mform->addElement('advcheckbox', 'groupmembersonly', get_string('groupmembersonly', 'group'));
+ $mform->setAdvanced('groupmembersonly');
+ }
}
$mform->addElement('modvisible', 'visible', get_string('visible'));
$mform->addElement('header', 'typedesc', get_string('resourcetype'.$type,'resource'));
$this->_resinstance->setup_elements($mform);
- $this->standard_coursemodule_elements(false);
+ $this->standard_coursemodule_elements(false, true);
$this->add_action_buttons();
}