From 0e6303103b5dde48e97cda262e6dffff5e6c4ee2 Mon Sep 17 00:00:00 2001 From: jamiesensei Date: Tue, 21 Nov 2006 10:14:38 +0000 Subject: [PATCH] fixed a couple of bugs in custom elements --- lib/form/datetimeselector.php | 42 +++++++++++++++++++++-------------- lib/form/submit.php | 2 +- 2 files changed, 26 insertions(+), 18 deletions(-) diff --git a/lib/form/datetimeselector.php b/lib/form/datetimeselector.php index c5a885f342..e405b74427 100644 --- a/lib/form/datetimeselector.php +++ b/lib/form/datetimeselector.php @@ -84,10 +84,10 @@ class MoodleQuickForm_date_time_selector extends MoodleQuickForm_group{ $minutes[$i] = sprintf("%02d",$i); } $this->_elements[] =& MoodleQuickForm::createElement('select', 'day', null, $days, $this->getAttributes(), true); - $this->_elements[] =& MoodleQuickForm::createElement('select','month', null, $months, $this->getAttributes(), true); - $this->_elements[] =& MoodleQuickForm::createElement('select','year', null, $years, $this->getAttributes(), true); + $this->_elements[] =& MoodleQuickForm::createElement('select', 'month', null, $months, $this->getAttributes(), true); + $this->_elements[] =& MoodleQuickForm::createElement('select', 'year', null, $years, $this->getAttributes(), true); $this->_elements[] =& MoodleQuickForm::createElement('select', 'hour', null, $hours, $this->getAttributes(), true); - $this->_elements[] =& MoodleQuickForm::createElement('select','minute', null, $minutes, $this->getAttributes(), true); + $this->_elements[] =& MoodleQuickForm::createElement('select', 'minute', null, $minutes, $this->getAttributes(), true); $this->setValue(); } @@ -154,20 +154,28 @@ class MoodleQuickForm_date_time_selector extends MoodleQuickForm_group{ function exportValue(&$submitValues, $assoc = false) { $value = null; - $valuearray = $this->_elements[0]->exportValue($submitValues[$this->getName()], true); - $valuearray +=$this->_elements[1]->exportValue($submitValues[$this->getName()], true); - $valuearray +=$this->_elements[2]->exportValue($submitValues[$this->getName()], true); - $valuearray +=$this->_elements[3]->exportValue($submitValues[$this->getName()], true); - $valuearray +=$this->_elements[4]->exportValue($submitValues[$this->getName()], true); - $value[$this->getName()]=make_timestamp($valuearray['year'], - $valuearray['month'], - $valuearray['day'], - $valuearray['hour'], - $valuearray['minute'], - 0, - $this->_options['timezone'], - $this->_options['applydst']); - return $value; + print_object($submitValues); + $valuearray = array(); + foreach ($this->_elements as $element){ + $thisexport = $element->exportValue($submitValues[$this->getName()], true); + if ($thisexport!=null){ + $valuearray += $thisexport; + } + } + if (count($valuearray)){ + $value[$this->getName()]=make_timestamp($valuearray['year'], + $valuearray['month'], + $valuearray['day'], + $valuearray['hour'], + $valuearray['minute'], + 0, + $this->_options['timezone'], + $this->_options['applydst']); + + return $value; + } else { + return null; + } } // }}} diff --git a/lib/form/submit.php b/lib/form/submit.php index 6e1203cfc3..05669f2623 100644 --- a/lib/form/submit.php +++ b/lib/form/submit.php @@ -25,7 +25,7 @@ class MoodleQuickForm_submit extends HTML_QuickForm_submit function MoodleQuickForm_submit($elementName=null, $value=null, $attributes=null) { HTML_QuickForm_submit::HTML_QuickForm_submit($elementName, $value, $attributes); - if ($elementName='cancel'){ + if ('cancel'==$elementName){ //bypass form validation js : $this->updateAttributes(array('onclick'=>'this.form.submit();')); } -- 2.39.5