]> git.mjollnir.org Git - moodle.git/commitdiff
MDL-10892 modules explicitly declare support for groupmembersonly; the grouping and...
authorskodak <skodak>
Fri, 17 Aug 2007 12:29:18 +0000 (12:29 +0000)
committerskodak <skodak>
Fri, 17 Aug 2007 12:29:18 +0000 (12:29 +0000)
course/moodleform_mod.php
mod/resource/mod_form.php

index 261c789ce69b816d3d703fa80712bdadcb4fd331..adc7f69e026110843bac85668580d6362d117813 100644 (file)
@@ -70,6 +70,13 @@ class moodleform_mod extends moodleform {
                 $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
@@ -117,8 +124,9 @@ class moodleform_mod extends moodleform {
      * 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;
 
@@ -146,7 +154,12 @@ class moodleform_mod extends moodleform {
                 }
             }
             $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'));
index 1948c22130f2f60aecb53292385ca95a4a6157c2..3d9b4bb076056021c23f1a6bfb47a52be846fc84 100644 (file)
@@ -43,7 +43,7 @@ class mod_resource_mod_form extends moodleform_mod {
         $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();
     }