Note:

If you want to create a new page for developers, you should create it on the Moodle Developer Resource site.

lib/formslib.php setAdvanced

From MoodleDocs
Revision as of 11:03, 14 December 2006 by Jamie Pratt (talk | contribs)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)

You can use MoodleQuickForm's method setAdvanced to specify a form element is an advanced option :

       $mform->addElement('select', 'display', get_string("displaymode","choice"), $CHOICE_DISPLAY);
       $mform->setAdvanced('display');

setAdvanced takes a second boolean parameter which defaults to true. True means set this control as an advanced control. False means it is not advanced.

       $mform->addElement('header', 'miscellaneoussettingshdr', get_string('miscellaneoussettings', 'form'));
       $mform->setAdvanced('miscellaneoussettingshdr');

Will set the header element miscellaneoussettingshdr and all the elements it contains to advanced.

And if you set all elements within a header to advanced then the header is automatically set to advanced.

moodleform_mod::show_advanced_button()

Shows a button to show or hide the advanced elements in a form. The elements will be unhidden with javascript if it is on or if not then the form will be sumbitted and redisplayed with the elements shown or hidden. Within moodleform's definition method you call this method like this :

     $this->show_advanced_button();

Typically you will include the button at the top and the bottom of the page by calling the method twice.