浏览代码

A few more fixes

Signed-off-by: Michael Eshom <[email protected]>
Michael Eshom 10 年之前
父节点
当前提交
29bd6f3ca4
共有 2 个文件被更改,包括 21 次插入5 次删除
  1. 3 3
      Themes/default/Admin.template.php
  2. 18 2
      Themes/default/Themes.template.php

+ 3 - 3
Themes/default/Admin.template.php

@@ -897,13 +897,13 @@ function template_show_settings()
 
 					// Extra options for float/int values - how much to decrease/increase by, the min value and the max value
 					// The step - only set if incrementing by something other than 1 for int or 0.1 for float
-					$step = isset($config_var['step']) ? ' step="' . $config_var['step'] . '"' : ($config_var['type'] == 'float') ? ' step="0.1"' : '';
+					$step = isset($config_var['step']) ? ' step="' . $config_var['step'] . '"' : ($config_var['type'] == 'float' ? ' step="0.1"' : '');
 					// Minimum allowed value for this setting. Most settings are 0
-					$min = isset($config_var['min']) ? ' min="' . $config_var['min'] . '"' : ' min="0"';
+					$min = isset($config_var['min']) ? ' min="' . $config_var['min'] . '"' : ($config_var['type'] == 'int' || $config_var['type'] == 'float' ? ' min="0"' : '');
 					$max = isset($config_var['max']) ? ' max="' . $config_var['max'] . '"' : '';
 
 					echo '
-											<input type="', $type ,'"', $javascript, $disabled, ' name="', $config_var['name'], '" id="', $config_var['name'], '" value="', $config_var['value'], '"', ($config_var['size'] ? ' size="' . $config_var['size'] . '"' : ''), ' class="input_text"', $step, '>';
+											<input type="', $type ,'"', $javascript, $disabled, ' name="', $config_var['name'], '" id="', $config_var['name'], '" value="', $config_var['value'], '"', ($config_var['size'] ? ' size="' . $config_var['size'] . '"' : ''), ' class="input_text"', $min . $max . $step, '>';
 				}
 
 				echo isset($config_var['postinput']) ? '

+ 18 - 2
Themes/default/Themes.template.php

@@ -649,8 +649,24 @@ function template_set_settings()
 
 			echo '
 						</dt>
-						<dd>
-							<input type="text" name="', !empty($setting['default']) ? 'default_' : '', 'options[', $setting['id'], ']" id="', $setting['id'], '" value="', $setting['value'], '"', $setting['type'] == 'number' ? ' size="5"' : (empty($setting['size']) ? ' size="40"' : ' size="' . $setting['size'] . '"'), ' class="input_text">
+						<dd>';
+
+			if (isset($setting['type']) && $setting['type'] == 'number')
+			{
+				$min = isset($setting['min']) ? ' min="' . $setting['min'] . '"' : ' min="0"';
+				$max = isset($setting['max']) ? ' max="' . $setting['max'] . '"' : '';
+				$step = isset($setting['step']) ? ' step="' . $setting['step'] . '"' : '';
+
+				echo '
+							<input type="number"', $min . $max . $step;
+			}
+			else
+			{
+				echo '
+							<input type="text"';
+			}
+
+			echo ' name="', !empty($setting['default']) ? 'default_' : '', 'options[', $setting['id'], ']" id="options_', $setting['id'], '" value="', $setting['value'], '"', $setting['type'] == 'number' ? ' size="5"' : (empty($settings['size']) ? ' size="40"' : ' size="' . $setting['size'] . '"'), ' class="input_text">
 						</dd>';
 		}
 	}