Sun, 10 Feb 2019 16:14:48 +0100
Fixed estimate_fg formula. Estimate neede sparge water displayed on the brewday tab. Moved calcSVG, calcFG and calcABV functions into calcFermentables. Calc FG now uses mash data if available. Show estimated fg on the fermentation tab. Cosmetic changes on the brewday tab.
<?php require($_SERVER['DOCUMENT_ROOT']."/config.php"); require($_SERVER['DOCUMENT_ROOT']."/version.php"); #Connect to the database $connect = mysqli_connect(DBASE_HOST, DBASE_USER, DBASE_PASS, DBASE_NAME); if (! $connect) { die('Connect Error (' . mysqli_connect_errno() . ') ' . mysqli_connect_error()); } mysqli_set_charset($connect, "utf8" ); $escapers = array("\\", "/", "\"", "\n", "\r", "\t", "\x08", "\x0c"); $replacements = array("\\\\", "\\/", "\\\"", "\\n", "\\r", "\\t", "\\f", "\\b"); $query = "SELECT * FROM profile_setup WHERE record='1'"; if (isset($_POST['update'])) { /* Search water record */ $result = mysqli_query($connect, "SELECT record FROM inventory_waters WHERE name='".$_POST['default_water']."';"); if ($row = mysqli_fetch_array($result, MYSQLI_ASSOC)) $default_water = $row['record']; else $default_water = 0; $sql = "UPDATE `profile_setup` SET "; $sql .= "brewery_name='" . mysqli_real_escape_string($connect, $_POST['brewery_name']); $sql .= "', factor_mashhop='" . $_POST['factor_mashhop']; $sql .= "', factor_fwh='" . $_POST['factor_fwh']; $sql .= "', factor_pellet='" . $_POST['factor_pellet']; $sql .= "', factor_plug='" . $_POST['factor_plug']; $sql .= "', color_method='" . mysqli_real_escape_string($connect, $_POST['color_method']); $sql .= "', ibu_method='" . mysqli_real_escape_string($connect, $_POST['ibu_method']); $sql .= "', brix_correction='" . $_POST['brix_correction']; $sql .= "', grain_absorbtion='" . $_POST['grain_absorbtion']; $sql .= "', default_water='" . $default_water; $sql .= "' WHERE record='1';"; // syslog(LOG_NOTICE, $sql); $result = mysqli_query($connect, $sql); if (! $result) { syslog(LOG_NOTICE, "db_profile_setup: ".$sql." result: ".mysqli_error($connect)); } else { syslog(LOG_NOTICE, "db_profile_setup: updated record 1"); } echo $result; } else { $result = mysqli_query($connect, $query) or die("SQL Error 1: " . mysqli_error($connect)); if ($row = mysqli_fetch_array($result, MYSQLI_ASSOC)) { /* search water name */ $wresult = mysqli_query($connect, "SELECT name FROM inventory_waters WHERE record='".$row['default_water']."';"); if ($wrow = mysqli_fetch_array($wresult, MYSQLI_ASSOC)) $default_water = $wrow['name']; else $default_water = ''; $data = '{"record":' . $row['record']; $data .= ',"brewery_name":"' . str_replace($escapers, $replacements, $row['brewery_name']); $data .= '","factor_mashhop":' . $row['factor_mashhop']; $data .= ',"factor_fwh":' . $row['factor_fwh']; $data .= ',"factor_pellet":' . $row['factor_pellet']; $data .= ',"factor_plug":' . $row['factor_plug']; $data .= ',"ibu_method":"' . str_replace($escapers, $replacements, $row['ibu_method']); $data .= '","color_method":"' . str_replace($escapers, $replacements, $row['color_method']); $data .= '","brix_correction":' . floatval($row['brix_correction']); $data .= ',"grain_absorbtion":' . floatval($row['grain_absorbtion']); $data .= ',"default_water":"' . str_replace($escapers, $replacements, $default_water); $data .= '"}'; } header("Content-type: application/json"); echo $data; } ?>