mirror of
https://github.com/moodle/moodle.git
synced 2025-08-05 17:06:53 +02:00
some changes to setHelpButton methods on elements and MoodleQuickForm to allow non standard help buttons such as the grades pop up window.
This commit is contained in:
parent
3d436d5974
commit
d4fe14d3e4
12 changed files with 68 additions and 56 deletions
|
@ -19,8 +19,9 @@ class MoodleQuickForm_checkbox extends HTML_QuickForm_checkbox{
|
||||||
*
|
*
|
||||||
* @access public
|
* @access public
|
||||||
* @param array $help array of arguments to make a help button
|
* @param array $help array of arguments to make a help button
|
||||||
|
* @param string $function function name to call to get html
|
||||||
*/
|
*/
|
||||||
function setHelpButton($helpbuttonargs){
|
function setHelpButton($helpbuttonargs, $function='helpbutton'){
|
||||||
if (!is_array($helpbuttonargs)){
|
if (!is_array($helpbuttonargs)){
|
||||||
$helpbuttonargs=array($helpbuttonargs);
|
$helpbuttonargs=array($helpbuttonargs);
|
||||||
}else{
|
}else{
|
||||||
|
@ -30,7 +31,7 @@ class MoodleQuickForm_checkbox extends HTML_QuickForm_checkbox{
|
||||||
//without having to specify it in every call to make a button.
|
//without having to specify it in every call to make a button.
|
||||||
$defaultargs=array('', '', 'moodle', true, false, '', true);
|
$defaultargs=array('', '', 'moodle', true, false, '', true);
|
||||||
$helpbuttonargs=$helpbuttonargs + $defaultargs ;
|
$helpbuttonargs=$helpbuttonargs + $defaultargs ;
|
||||||
$this->_helpbutton=call_user_func_array('helpbutton', $helpbuttonargs);
|
$this->_helpbutton=call_user_func_array($function, $helpbuttonargs);
|
||||||
}
|
}
|
||||||
/**
|
/**
|
||||||
* get html for help button
|
* get html for help button
|
||||||
|
|
|
@ -19,8 +19,9 @@ class MoodleQuickForm_file extends HTML_QuickForm_file{
|
||||||
*
|
*
|
||||||
* @access public
|
* @access public
|
||||||
* @param array $help array of arguments to make a help button
|
* @param array $help array of arguments to make a help button
|
||||||
|
* @param string $function function name to call to get html
|
||||||
*/
|
*/
|
||||||
function setHelpButton($helpbuttonargs){
|
function setHelpButton($helpbuttonargs, $function='helpbutton'){
|
||||||
if (!is_array($helpbuttonargs)){
|
if (!is_array($helpbuttonargs)){
|
||||||
$helpbuttonargs=array($helpbuttonargs);
|
$helpbuttonargs=array($helpbuttonargs);
|
||||||
}else{
|
}else{
|
||||||
|
@ -30,13 +31,14 @@ class MoodleQuickForm_file extends HTML_QuickForm_file{
|
||||||
//without having to specify it in every call to make a button.
|
//without having to specify it in every call to make a button.
|
||||||
$defaultargs=array('', '', 'moodle', true, false, '', true);
|
$defaultargs=array('', '', 'moodle', true, false, '', true);
|
||||||
$helpbuttonargs=$helpbuttonargs + $defaultargs ;
|
$helpbuttonargs=$helpbuttonargs + $defaultargs ;
|
||||||
$this->_helpbutton=call_user_func_array('helpbutton', $helpbuttonargs);
|
$this->_helpbutton=call_user_func_array($function, $helpbuttonargs);
|
||||||
}
|
}
|
||||||
/**
|
/**
|
||||||
* get html for help button
|
* set html for help button
|
||||||
*
|
*
|
||||||
* @access public
|
* @access public
|
||||||
* @return string html for help button
|
* @param array $help array of arguments to make a help button
|
||||||
|
* @param string $function function name to call to get html
|
||||||
*/
|
*/
|
||||||
function getHelpButton(){
|
function getHelpButton(){
|
||||||
return $this->_helpbutton;
|
return $this->_helpbutton;
|
||||||
|
|
|
@ -25,8 +25,9 @@ class MoodleQuickForm_group extends HTML_QuickForm_group{
|
||||||
*
|
*
|
||||||
* @access public
|
* @access public
|
||||||
* @param array $help array of arguments to make a help button
|
* @param array $help array of arguments to make a help button
|
||||||
|
* @param string $function function name to call to get html
|
||||||
*/
|
*/
|
||||||
function setHelpButton($helpbuttonargs){
|
function setHelpButton($helpbuttonargs, $function='helpbutton'){
|
||||||
if (!is_array($helpbuttonargs)){
|
if (!is_array($helpbuttonargs)){
|
||||||
$helpbuttonargs=array($helpbuttonargs);
|
$helpbuttonargs=array($helpbuttonargs);
|
||||||
}else{
|
}else{
|
||||||
|
@ -36,13 +37,14 @@ class MoodleQuickForm_group extends HTML_QuickForm_group{
|
||||||
//without having to specify it in every call to make a button.
|
//without having to specify it in every call to make a button.
|
||||||
$defaultargs=array('', '', 'moodle', true, false, '', true);
|
$defaultargs=array('', '', 'moodle', true, false, '', true);
|
||||||
$helpbuttonargs=$helpbuttonargs + $defaultargs ;
|
$helpbuttonargs=$helpbuttonargs + $defaultargs ;
|
||||||
$this->_helpbutton=call_user_func_array('helpbutton', $helpbuttonargs);
|
$this->_helpbutton=call_user_func_array($function, $helpbuttonargs);
|
||||||
}
|
}
|
||||||
/**
|
/**
|
||||||
* get html for help button
|
* set html for help button
|
||||||
*
|
*
|
||||||
* @access public
|
* @access public
|
||||||
* @return string html for help button
|
* @param array $help array of arguments to make a help button
|
||||||
|
* @param string $function function name to call to get html
|
||||||
*/
|
*/
|
||||||
function getHelpButton(){
|
function getHelpButton(){
|
||||||
return $this->_helpbutton;
|
return $this->_helpbutton;
|
||||||
|
|
|
@ -19,8 +19,9 @@ class MoodleQuickForm_hidden extends HTML_QuickForm_hidden{
|
||||||
*
|
*
|
||||||
* @access public
|
* @access public
|
||||||
* @param array $help array of arguments to make a help button
|
* @param array $help array of arguments to make a help button
|
||||||
|
* @param string $function function name to call to get html
|
||||||
*/
|
*/
|
||||||
function setHelpButton($helpbuttonargs){
|
function setHelpButton($helpbuttonargs, $function='helpbutton'){
|
||||||
|
|
||||||
}
|
}
|
||||||
/**
|
/**
|
||||||
|
|
|
@ -9,8 +9,6 @@ require_once "$CFG->libdir/form/select.php";
|
||||||
* @access public
|
* @access public
|
||||||
*/
|
*/
|
||||||
class MoodleQuickForm_modgroupmode extends MoodleQuickForm_select{
|
class MoodleQuickForm_modgroupmode extends MoodleQuickForm_select{
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Class constructor
|
* Class constructor
|
||||||
*
|
*
|
||||||
|
@ -43,9 +41,10 @@ class MoodleQuickForm_modgroupmode extends MoodleQuickForm_select{
|
||||||
{
|
{
|
||||||
switch ($event) {
|
switch ($event) {
|
||||||
case 'createElement':
|
case 'createElement':
|
||||||
$choices=array();
|
$choices = array();
|
||||||
$choices[0] = get_string('no');
|
$choices[0] = get_string('no');
|
||||||
$choices[1] = get_string('yes');
|
$choices[1] = get_string('yes');
|
||||||
|
$this->setHelpButton(array('groupmode', get_string('groupmode')));
|
||||||
$this->load($choices);
|
$this->load($choices);
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
|
@ -19,8 +19,9 @@ class MoodleQuickForm_password extends HTML_QuickForm_password{
|
||||||
*
|
*
|
||||||
* @access public
|
* @access public
|
||||||
* @param array $help array of arguments to make a help button
|
* @param array $help array of arguments to make a help button
|
||||||
|
* @param string $function function name to call to get html
|
||||||
*/
|
*/
|
||||||
function setHelpButton($helpbuttonargs){
|
function setHelpButton($helpbuttonargs, $function='helpbutton'){
|
||||||
if (!is_array($helpbuttonargs)){
|
if (!is_array($helpbuttonargs)){
|
||||||
$helpbuttonargs=array($helpbuttonargs);
|
$helpbuttonargs=array($helpbuttonargs);
|
||||||
}else{
|
}else{
|
||||||
|
@ -30,7 +31,7 @@ class MoodleQuickForm_password extends HTML_QuickForm_password{
|
||||||
//without having to specify it in every call to make a button.
|
//without having to specify it in every call to make a button.
|
||||||
$defaultargs=array('', '', 'moodle', true, false, '', true);
|
$defaultargs=array('', '', 'moodle', true, false, '', true);
|
||||||
$helpbuttonargs=$helpbuttonargs + $defaultargs ;
|
$helpbuttonargs=$helpbuttonargs + $defaultargs ;
|
||||||
$this->_helpbutton=call_user_func_array('helpbutton', $helpbuttonargs);
|
$this->_helpbutton=call_user_func_array($function, $helpbuttonargs);
|
||||||
}
|
}
|
||||||
/**
|
/**
|
||||||
* get html for help button
|
* get html for help button
|
||||||
|
|
|
@ -19,8 +19,9 @@ class MoodleQuickForm_radio extends HTML_QuickForm_radio{
|
||||||
*
|
*
|
||||||
* @access public
|
* @access public
|
||||||
* @param array $help array of arguments to make a help button
|
* @param array $help array of arguments to make a help button
|
||||||
|
* @param string $function function name to call to get html
|
||||||
*/
|
*/
|
||||||
function setHelpButton($helpbuttonargs){
|
function setHelpButton($helpbuttonargs, $function='helpbutton'){
|
||||||
if (!is_array($helpbuttonargs)){
|
if (!is_array($helpbuttonargs)){
|
||||||
$helpbuttonargs=array($helpbuttonargs);
|
$helpbuttonargs=array($helpbuttonargs);
|
||||||
}else{
|
}else{
|
||||||
|
@ -30,7 +31,7 @@ class MoodleQuickForm_radio extends HTML_QuickForm_radio{
|
||||||
//without having to specify it in every call to make a button.
|
//without having to specify it in every call to make a button.
|
||||||
$defaultargs=array('', '', 'moodle', true, false, '', true);
|
$defaultargs=array('', '', 'moodle', true, false, '', true);
|
||||||
$helpbuttonargs=$helpbuttonargs + $defaultargs ;
|
$helpbuttonargs=$helpbuttonargs + $defaultargs ;
|
||||||
$this->_helpbutton=call_user_func_array('helpbutton', $helpbuttonargs);
|
$this->_helpbutton=call_user_func_array($function, $helpbuttonargs);
|
||||||
}
|
}
|
||||||
/**
|
/**
|
||||||
* get html for help button
|
* get html for help button
|
||||||
|
|
|
@ -19,8 +19,9 @@ class MoodleQuickForm_select extends HTML_QuickForm_select{
|
||||||
*
|
*
|
||||||
* @access public
|
* @access public
|
||||||
* @param array $help array of arguments to make a help button
|
* @param array $help array of arguments to make a help button
|
||||||
|
* @param string $function function name to call to get html
|
||||||
*/
|
*/
|
||||||
function setHelpButton($helpbuttonargs){
|
function setHelpButton($helpbuttonargs, $function='helpbutton'){
|
||||||
if (!is_array($helpbuttonargs)){
|
if (!is_array($helpbuttonargs)){
|
||||||
$helpbuttonargs=array($helpbuttonargs);
|
$helpbuttonargs=array($helpbuttonargs);
|
||||||
}else{
|
}else{
|
||||||
|
@ -30,7 +31,7 @@ class MoodleQuickForm_select extends HTML_QuickForm_select{
|
||||||
//without having to specify it in every call to make a button.
|
//without having to specify it in every call to make a button.
|
||||||
$defaultargs=array('', '', 'moodle', true, false, '', true);
|
$defaultargs=array('', '', 'moodle', true, false, '', true);
|
||||||
$helpbuttonargs=$helpbuttonargs + $defaultargs ;
|
$helpbuttonargs=$helpbuttonargs + $defaultargs ;
|
||||||
$this->_helpbutton=call_user_func_array('helpbutton', $helpbuttonargs);
|
$this->_helpbutton=call_user_func_array($function, $helpbuttonargs);
|
||||||
}
|
}
|
||||||
/**
|
/**
|
||||||
* get html for help button
|
* get html for help button
|
||||||
|
|
|
@ -19,8 +19,9 @@ class MoodleQuickForm_static extends HTML_QuickForm_static{
|
||||||
*
|
*
|
||||||
* @access public
|
* @access public
|
||||||
* @param array $help array of arguments to make a help button
|
* @param array $help array of arguments to make a help button
|
||||||
|
* @param string $function function name to call to get html
|
||||||
*/
|
*/
|
||||||
function setHelpButton($helpbuttonargs){
|
function setHelpButton($helpbuttonargs, $function='helpbutton'){
|
||||||
if (!is_array($helpbuttonargs)){
|
if (!is_array($helpbuttonargs)){
|
||||||
$helpbuttonargs=array($helpbuttonargs);
|
$helpbuttonargs=array($helpbuttonargs);
|
||||||
}else{
|
}else{
|
||||||
|
@ -30,7 +31,7 @@ class MoodleQuickForm_static extends HTML_QuickForm_static{
|
||||||
//without having to specify it in every call to make a button.
|
//without having to specify it in every call to make a button.
|
||||||
$defaultargs=array('', '', 'moodle', true, false, '', true);
|
$defaultargs=array('', '', 'moodle', true, false, '', true);
|
||||||
$helpbuttonargs=$helpbuttonargs + $defaultargs ;
|
$helpbuttonargs=$helpbuttonargs + $defaultargs ;
|
||||||
$this->_helpbutton=call_user_func_array('helpbutton', $helpbuttonargs);
|
$this->_helpbutton=call_user_func_array($function, $helpbuttonargs);
|
||||||
}
|
}
|
||||||
/**
|
/**
|
||||||
* get html for help button
|
* get html for help button
|
||||||
|
|
|
@ -19,8 +19,9 @@ class MoodleQuickForm_text extends HTML_QuickForm_text{
|
||||||
*
|
*
|
||||||
* @access public
|
* @access public
|
||||||
* @param array $help array of arguments to make a help button
|
* @param array $help array of arguments to make a help button
|
||||||
|
* @param string $function function name to call to get html
|
||||||
*/
|
*/
|
||||||
function setHelpButton($helpbuttonargs){
|
function setHelpButton($helpbuttonargs, $function='helpbutton'){
|
||||||
if (!is_array($helpbuttonargs)){
|
if (!is_array($helpbuttonargs)){
|
||||||
$helpbuttonargs=array($helpbuttonargs);
|
$helpbuttonargs=array($helpbuttonargs);
|
||||||
}else{
|
}else{
|
||||||
|
@ -30,7 +31,7 @@ class MoodleQuickForm_text extends HTML_QuickForm_text{
|
||||||
//without having to specify it in every call to make a button.
|
//without having to specify it in every call to make a button.
|
||||||
$defaultargs=array('', '', 'moodle', true, false, '', true);
|
$defaultargs=array('', '', 'moodle', true, false, '', true);
|
||||||
$helpbuttonargs=$helpbuttonargs + $defaultargs ;
|
$helpbuttonargs=$helpbuttonargs + $defaultargs ;
|
||||||
$this->_helpbutton=call_user_func_array('helpbutton', $helpbuttonargs);
|
$this->_helpbutton=call_user_func_array($function, $helpbuttonargs);
|
||||||
}
|
}
|
||||||
/**
|
/**
|
||||||
* get html for help button
|
* get html for help button
|
||||||
|
|
|
@ -19,8 +19,9 @@ class MoodleQuickForm_textarea extends HTML_QuickForm_textarea{
|
||||||
*
|
*
|
||||||
* @access public
|
* @access public
|
||||||
* @param array $help array of arguments to make a help button
|
* @param array $help array of arguments to make a help button
|
||||||
|
* @param string $function function name to call to get html
|
||||||
*/
|
*/
|
||||||
function setHelpButton($helpbuttonargs){
|
function setHelpButton($helpbuttonargs, $function='helpbutton'){
|
||||||
if (!is_array($helpbuttonargs)){
|
if (!is_array($helpbuttonargs)){
|
||||||
$helpbuttonargs=array($helpbuttonargs);
|
$helpbuttonargs=array($helpbuttonargs);
|
||||||
}else{
|
}else{
|
||||||
|
@ -30,7 +31,7 @@ class MoodleQuickForm_textarea extends HTML_QuickForm_textarea{
|
||||||
//without having to specify it in every call to make a button.
|
//without having to specify it in every call to make a button.
|
||||||
$defaultargs=array('', '', 'moodle', true, false, '', true);
|
$defaultargs=array('', '', 'moodle', true, false, '', true);
|
||||||
$helpbuttonargs=$helpbuttonargs + $defaultargs ;
|
$helpbuttonargs=$helpbuttonargs + $defaultargs ;
|
||||||
$this->_helpbutton=call_user_func_array('helpbutton', $helpbuttonargs);
|
$this->_helpbutton=call_user_func_array($function, $helpbuttonargs);
|
||||||
}
|
}
|
||||||
/**
|
/**
|
||||||
* get html for help button
|
* get html for help button
|
||||||
|
|
|
@ -337,7 +337,6 @@ class moodleform_mod extends moodleform {
|
||||||
$mform=$this->_form;
|
$mform=$this->_form;
|
||||||
$mform->addElement('header', '', get_string('modstandardels', 'form'));
|
$mform->addElement('header', '', get_string('modstandardels', 'form'));
|
||||||
$mform->addElement('modgroupmode', 'groupmode', get_string('groupmode'));
|
$mform->addElement('modgroupmode', 'groupmode', get_string('groupmode'));
|
||||||
$mform->setHelpButton('groupmode', array('groupmode', get_string('groupmode')));
|
|
||||||
$mform->setType('groupmode', PARAM_INT);
|
$mform->setType('groupmode', PARAM_INT);
|
||||||
|
|
||||||
$mform->addElement('modvisible', 'visible', get_string('visible'));
|
$mform->addElement('modvisible', 'visible', get_string('visible'));
|
||||||
|
@ -554,26 +553,27 @@ class MoodleQuickForm extends HTML_QuickForm_DHTMLRulesTableless {
|
||||||
*
|
*
|
||||||
* @access public
|
* @access public
|
||||||
*/
|
*/
|
||||||
function setHelpButtons($buttons, $suppresscheck=false){
|
function setHelpButtons($buttons, $suppresscheck=false, $function='helpbutton'){
|
||||||
|
|
||||||
foreach ($buttons as $elementname => $button){
|
foreach ($buttons as $elementname => $button){
|
||||||
$this->setHelpButton($elementname, $button, $suppresscheck);
|
$this->setHelpButton($elementname, $button, $suppresscheck, $function);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
/**
|
/**
|
||||||
* Add a single button.
|
* Add a single button.
|
||||||
*
|
*
|
||||||
* @param string $elementname name of the element to add the item to
|
* @param string $elementname name of the element to add the item to
|
||||||
* @param array $button - arguments to pass to setHelpButton
|
* @param array $button - arguments to pass to function $function
|
||||||
* @param boolean $suppresscheck - whether to throw an error if the element
|
* @param boolean $suppresscheck - whether to throw an error if the element
|
||||||
* doesn't exist.
|
* doesn't exist.
|
||||||
|
* @param string $function - function to generate html from the arguments in $button
|
||||||
*/
|
*/
|
||||||
function setHelpButton($elementname, $button, $suppresscheck=false){
|
function setHelpButton($elementname, $button, $suppresscheck=false, $function='helpbutton'){
|
||||||
if (array_key_exists($elementname, $this->_elementIndex)){
|
if (array_key_exists($elementname, $this->_elementIndex)){
|
||||||
//_elements has a numeric index, this code accesses the elements by name
|
//_elements has a numeric index, this code accesses the elements by name
|
||||||
$element=&$this->_elements[$this->_elementIndex[$elementname]];
|
$element=&$this->_elements[$this->_elementIndex[$elementname]];
|
||||||
if (method_exists($element, 'setHelpButton')){
|
if (method_exists($element, 'setHelpButton')){
|
||||||
$element->setHelpButton($button);
|
$element->setHelpButton($button, $function);
|
||||||
}else{
|
}else{
|
||||||
$a=new object();
|
$a=new object();
|
||||||
$a->name=$element->getName();
|
$a->name=$element->getName();
|
||||||
|
@ -935,5 +935,6 @@ MoodleQuickForm::registerElementType('hidden', "$CFG->libdir/form/hidden.php", '
|
||||||
MoodleQuickForm::registerElementType('modvisible', "$CFG->libdir/form/modvisible.php", 'MoodleQuickForm_modvisible');
|
MoodleQuickForm::registerElementType('modvisible', "$CFG->libdir/form/modvisible.php", 'MoodleQuickForm_modvisible');
|
||||||
MoodleQuickForm::registerElementType('modgroupmode', "$CFG->libdir/form/modgroupmode.php", 'MoodleQuickForm_modgroupmode');
|
MoodleQuickForm::registerElementType('modgroupmode', "$CFG->libdir/form/modgroupmode.php", 'MoodleQuickForm_modgroupmode');
|
||||||
MoodleQuickForm::registerElementType('selectyesno', "$CFG->libdir/form/selectyesno.php", 'MoodleQuickForm_selectyesno');
|
MoodleQuickForm::registerElementType('selectyesno', "$CFG->libdir/form/selectyesno.php", 'MoodleQuickForm_selectyesno');
|
||||||
|
MoodleQuickForm::registerElementType('modgrade', "$CFG->libdir/form/modgrade.php", 'MoodleQuickForm_modgrade');
|
||||||
|
|
||||||
?>
|
?>
|
Loading…
Add table
Add a link
Reference in a new issue