# HG changeset patch # User Michiel Broek # Date 1409500264 -7200 # Node ID f436d826de4b09e7dad1d198c29fdf18d602bf76 # Parent e3f56dc46bcd83e69865618c7d154148ef9ed9ce Added Heater and Cooler delay edit fields. Added more checks on entered data in the units edit screen. diff -r e3f56dc46bcd -r f436d826de4b www-thermferm/units.php --- a/www-thermferm/units.php Sat Aug 30 22:15:54 2014 +0200 +++ b/www-thermferm/units.php Sun Aug 31 17:51:04 2014 +0200 @@ -95,7 +95,9 @@ $cmd[] = "AIR_ADDRESS,".$_POST['AirAddress']; $cmd[] = "BEER_ADDRESS,".$_POST['BeerAddress']; $cmd[] = "HEATER_ADDRESS,".$_POST['HeaterAddress']; + $cmd[] = "HEATER_DELAY,".$_POST['HeaterDelay']; $cmd[] = "COOLER_ADDRESS,".$_POST['CoolerAddress']; + $cmd[] = "COOLER_DELAY,".$_POST['CoolerDelay']; $cmd[] = "FAN_ADDRESS,".$_POST['FanAddress']; $cmd[] = "DOOR_ADDRESS,".$_POST['DoorAddress']; $cmd[] = "TEMP_SET_MIN,".$_POST['TempSetMin']; @@ -114,7 +116,9 @@ unset($_POST['AirAddress']); unset($_POST['BeerAddress']); unset($_POST['HeaterAddress']); + unset($_POST['HeaterDelay']); unset($_POST['CoolerAddress']); + unset($_POST['CoolerDelay']); unset($_POST['FanAddress']); unset($_POST['DoorAddress']); unset($_POST['TempSetMin']); @@ -138,6 +142,11 @@ * 1 = Missing data * 2 = Name field too short * 3 = Name already in use + * 4 = TempSetMax <= TempSetMin + * 5 = TempSetMax < 25 or > 35 + * 6 = TempSetMin < -5 or > 15 + * 7 = HeaterDelay out of range + * 8 = CoolerDelay out of range * 99 = Cancel key */ function test_thedata() { @@ -146,6 +155,7 @@ if (isset($_POST['UUID']) && isset($_POST['Name']) && isset($_POST['Volume']) && isset($_POST['AirAddress']) && isset($_POST['BeerAddress']) && isset($_POST['HeaterAddress']) && isset($_POST['CoolerAddress']) && + isset($_POST['HeaterDelay']) && isset($_POST['CoolerDelay']) && isset($_POST['FanAddress']) && isset($_POST['DoorAddress']) && isset($_POST['TempSetMin']) && isset($_POST['TempSetMax']) && isset($_POST['IdleRangeL']) && isset($_POST['IdleRangeH']) && isset($_POST['key']) && isset($_POST['command'])) { @@ -166,7 +176,28 @@ } $j++; } - } + } + + if ($_POST['TempSetMax'] <= $_POST['TempSetMin']) + return 4; + + if (($_POST['TempSetMax'] < 25) || ($_POST['TempSetMax'] > 35)) + return 5; + + if (($_POST['TempSetMin'] < -5) || ($_POST['TempSetMin'] > 15)) + return 6; + + if (($_POST['HeaterDelay'] < 0) || ($_POST['HeaterDelay'] > 45)) + return 7; + + if (($_POST['CoolerDelay'] < 0) || ($_POST['CoolerDelay'] > 45)) + return 8; + + if (($_POST['IdleRangeL'] > 0) || ($_POST['IdleRangeL'] < -5)) + return 9; + + if (($_POST['IdleRangeH'] < 0) || ($_POST['IdleRangeH'] > 5)) + return 10; } else { return 1; @@ -200,6 +231,20 @@ break; case 3: $error = 'The name is already in use, choose another one'; break; + case 4: $error = 'Temperature Maximum cannot be smaller then Temperature Minimum'; + break; + case 5: $error = 'Temperature Maximum must be between 25 and 35 °C'; + break; + case 6: $error = 'Temperature Minimum must be between -5 and 15 °C'; + break; + case 7: $error = 'Heater Delay must be bewteen 0 and 45'; + break; + case 8: $error = 'Cooler Delay must be bewteen 0 and 45'; + break; + case 9: $error = 'Idle Range Low must be between -5 en 0'; + break; + case 10: $error = 'Idle Range High must be between 0 and 5'; + break; case 99: load('units.php'); break; @@ -328,6 +373,12 @@ $outstr .= ' '.PHP_EOL; $outstr .= ' '.PHP_EOL; } + if ($f[0] == "HEATER_DELAY") { + $outstr .= ' '.PHP_EOL; + $outstr .= ' Heater Switch Delay'.PHP_EOL; + $outstr .= ' * 15 seconds'.PHP_EOL; + $outstr .= ' '.PHP_EOL; + } if ($f[0] == "COOLER_ADDRESS") { $outstr .= ' '.PHP_EOL; $outstr .= ' Cooler Switch Address'.PHP_EOL; @@ -349,6 +400,12 @@ $outstr .= ' '.PHP_EOL; $outstr .= ' '.PHP_EOL; } + if ($f[0] == "COOLER_DELAY") { + $outstr .= ' '.PHP_EOL; + $outstr .= ' Cooler Switch Delay'.PHP_EOL; + $outstr .= ' * 15 seconds'.PHP_EOL; + $outstr .= ' '.PHP_EOL; + } if ($f[0] == "FAN_ADDRESS") { $outstr .= ' '.PHP_EOL; $outstr .= ' Fan Switch Address'.PHP_EOL; @@ -394,25 +451,25 @@ if ($f[0] == "TEMP_SET_MIN") { $outstr .= ' '.PHP_EOL; $outstr .= ' Min. temp setting'.PHP_EOL; - $outstr .= ' '.PHP_EOL; + $outstr .= ' °C'.PHP_EOL; $outstr .= ' '.PHP_EOL; } if ($f[0] == "TEMP_SET_MAX") { $outstr .= ' '.PHP_EOL; $outstr .= ' Max. temp setting'.PHP_EOL; - $outstr .= ' '.PHP_EOL; + $outstr .= ' °C'.PHP_EOL; $outstr .= ' '.PHP_EOL; } if ($f[0] == "IDLE_RANGE_L") { $outstr .= ' '.PHP_EOL; $outstr .= ' Idle Range Low'.PHP_EOL; - $outstr .= ' '.PHP_EOL; + $outstr .= ' °C (Heater margin)'.PHP_EOL; $outstr .= ' '.PHP_EOL; } if ($f[0] == "IDLE_RANGE_H") { $outstr .= ' '.PHP_EOL; $outstr .= ' Idle Range High'.PHP_EOL; - $outstr .= ' '.PHP_EOL; + $outstr .= ' °C (Cooler margin)'.PHP_EOL; $outstr .= ' '.PHP_EOL; } $i++; @@ -507,7 +564,9 @@ $outstr .= ''; $outstr .= ''; $outstr .= ''; + $outstr .= ''; $outstr .= ''; + $outstr .= ''; $outstr .= ''; $outstr .= ''; $outstr .= '';