From 87c59979a0624f3ea0ee1ae900b06bcd7e50c98e Mon Sep 17 00:00:00 2001 From: Stephen Beaver Date: Fri, 18 Sep 2015 17:16:22 -0400 Subject: Fixed #5121 Obscure PHP issue with mixed variable types. --- src/usr/local/www/classes/Form/Select.class.php | 13 ++++++++++--- 1 file changed, 10 insertions(+), 3 deletions(-) (limited to 'src/usr/local/www') diff --git a/src/usr/local/www/classes/Form/Select.class.php b/src/usr/local/www/classes/Form/Select.class.php index 1c4594d..c7d73c1 100644 --- a/src/usr/local/www/classes/Form/Select.class.php +++ b/src/usr/local/www/classes/Form/Select.class.php @@ -54,10 +54,17 @@ class Form_Select extends Form_Input $options = ''; foreach ($this->_values as $value => $name) { + // Things can get wierd if we have mixed types + $sval = $this->_value; + + if( (gettype($value) == "integer") && (gettype($sval) == "string") ) + $value = strval($value); + if (isset($this->_attributes['multiple'])) - $selected = in_array($value, (array)$this->_value); - else - $selected = ($this->_value == $value); + $selected = in_array($value, (array)$sval); + else { + $selected = ($sval == $value); + } $options .= ''; } -- cgit v1.1