Tue, 31 Aug 2021 20:48:37 +0200
Split batch, adjust mash step volume. In the duplicated log_brew handle the missing values. In save product, round the mash step sg to 4 decimals. In prod_edit, ingredients are stored as strings, not arrays. This triggered a memory corruption that only happened in rare circumstances. Don't fix mash step fields in the javascript, it is already done during load from the database. Calculation of the mash volume is rounded to 6 decimals. Enter mash step Brix/Plato value, the SG result is rounded to 4 decimals.
21
acb2d8098f19
Added inventory miscs and water sources.
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
1 | <?php |
acb2d8098f19
Added inventory miscs and water sources.
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
2 | |
acb2d8098f19
Added inventory miscs and water sources.
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
3 | require($_SERVER['DOCUMENT_ROOT']."/config.php"); |
acb2d8098f19
Added inventory miscs and water sources.
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
4 | require($_SERVER['DOCUMENT_ROOT']."/version.php"); |
acb2d8098f19
Added inventory miscs and water sources.
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
5 | |
acb2d8098f19
Added inventory miscs and water sources.
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
6 | #Connect to the database |
acb2d8098f19
Added inventory miscs and water sources.
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
7 | $connect = mysqli_connect(DBASE_HOST, DBASE_USER, DBASE_PASS, DBASE_NAME); |
acb2d8098f19
Added inventory miscs and water sources.
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
8 | if (! $connect) { |
acb2d8098f19
Added inventory miscs and water sources.
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
9 | die('Connect Error (' . mysqli_connect_errno() . ') ' . mysqli_connect_error()); |
acb2d8098f19
Added inventory miscs and water sources.
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
10 | } |
77
a9f8de2d7b2b
Fixed most charset problems. Added fpdf library. Added inventory pdf creation.
Michiel Broek <mbroek@mbse.eu>
parents:
47
diff
changeset
|
11 | mysqli_set_charset($connect, "utf8" ); |
21
acb2d8098f19
Added inventory miscs and water sources.
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
12 | |
767
08c0343b622b
Improved error handling for inventory equipments, fermentables, hops, miscs, suppliers, water and yeasts.
Michiel Broek <mbroek@mbse.eu>
parents:
715
diff
changeset
|
13 | $response = array( |
08c0343b622b
Improved error handling for inventory equipments, fermentables, hops, miscs, suppliers, water and yeasts.
Michiel Broek <mbroek@mbse.eu>
parents:
715
diff
changeset
|
14 | 'error' => false, |
08c0343b622b
Improved error handling for inventory equipments, fermentables, hops, miscs, suppliers, water and yeasts.
Michiel Broek <mbroek@mbse.eu>
parents:
715
diff
changeset
|
15 | 'msg' => 'Ok', |
08c0343b622b
Improved error handling for inventory equipments, fermentables, hops, miscs, suppliers, water and yeasts.
Michiel Broek <mbroek@mbse.eu>
parents:
715
diff
changeset
|
16 | ); |
21
acb2d8098f19
Added inventory miscs and water sources.
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
17 | |
205
08488ac3bbb1
Inventory waters: use POST instead of GET. Redesigned web editor page. Total Alkalinity and Bicarbonate update eachother with calculated values.
Michiel Broek <mbroek@mbse.eu>
parents:
99
diff
changeset
|
18 | if (isset($_POST['insert']) || isset($_POST['update'])) { |
08488ac3bbb1
Inventory waters: use POST instead of GET. Redesigned web editor page. Total Alkalinity and Bicarbonate update eachother with calculated values.
Michiel Broek <mbroek@mbse.eu>
parents:
99
diff
changeset
|
19 | if (isset($_POST['insert'])) { |
08488ac3bbb1
Inventory waters: use POST instead of GET. Redesigned web editor page. Total Alkalinity and Bicarbonate update eachother with calculated values.
Michiel Broek <mbroek@mbse.eu>
parents:
99
diff
changeset
|
20 | $sql = "INSERT INTO `inventory_waters` SET "; |
08488ac3bbb1
Inventory waters: use POST instead of GET. Redesigned web editor page. Total Alkalinity and Bicarbonate update eachother with calculated values.
Michiel Broek <mbroek@mbse.eu>
parents:
99
diff
changeset
|
21 | } |
08488ac3bbb1
Inventory waters: use POST instead of GET. Redesigned web editor page. Total Alkalinity and Bicarbonate update eachother with calculated values.
Michiel Broek <mbroek@mbse.eu>
parents:
99
diff
changeset
|
22 | if (isset($_POST['update'])) { |
08488ac3bbb1
Inventory waters: use POST instead of GET. Redesigned web editor page. Total Alkalinity and Bicarbonate update eachother with calculated values.
Michiel Broek <mbroek@mbse.eu>
parents:
99
diff
changeset
|
23 | $sql = "UPDATE `inventory_waters` SET "; |
08488ac3bbb1
Inventory waters: use POST instead of GET. Redesigned web editor page. Total Alkalinity and Bicarbonate update eachother with calculated values.
Michiel Broek <mbroek@mbse.eu>
parents:
99
diff
changeset
|
24 | } |
08488ac3bbb1
Inventory waters: use POST instead of GET. Redesigned web editor page. Total Alkalinity and Bicarbonate update eachother with calculated values.
Michiel Broek <mbroek@mbse.eu>
parents:
99
diff
changeset
|
25 | |
08488ac3bbb1
Inventory waters: use POST instead of GET. Redesigned web editor page. Total Alkalinity and Bicarbonate update eachother with calculated values.
Michiel Broek <mbroek@mbse.eu>
parents:
99
diff
changeset
|
26 | $sql .= "name='" . mysqli_real_escape_string($connect, $_POST['name']); |
08488ac3bbb1
Inventory waters: use POST instead of GET. Redesigned web editor page. Total Alkalinity and Bicarbonate update eachother with calculated values.
Michiel Broek <mbroek@mbse.eu>
parents:
99
diff
changeset
|
27 | ($_POST['unlimited_stock'] == 'true') ? $sql .= "', unlimited_stock='1" : $sql .= "', unlimited_stock='0"; |
08488ac3bbb1
Inventory waters: use POST instead of GET. Redesigned web editor page. Total Alkalinity and Bicarbonate update eachother with calculated values.
Michiel Broek <mbroek@mbse.eu>
parents:
99
diff
changeset
|
28 | $sql .= "', calcium='" . $_POST['calcium']; |
08488ac3bbb1
Inventory waters: use POST instead of GET. Redesigned web editor page. Total Alkalinity and Bicarbonate update eachother with calculated values.
Michiel Broek <mbroek@mbse.eu>
parents:
99
diff
changeset
|
29 | $sql .= "', bicarbonate='" . $_POST['bicarbonate']; |
08488ac3bbb1
Inventory waters: use POST instead of GET. Redesigned web editor page. Total Alkalinity and Bicarbonate update eachother with calculated values.
Michiel Broek <mbroek@mbse.eu>
parents:
99
diff
changeset
|
30 | $sql .= "', sulfate='" . $_POST['sulfate']; |
08488ac3bbb1
Inventory waters: use POST instead of GET. Redesigned web editor page. Total Alkalinity and Bicarbonate update eachother with calculated values.
Michiel Broek <mbroek@mbse.eu>
parents:
99
diff
changeset
|
31 | $sql .= "', chloride='" . $_POST['chloride']; |
08488ac3bbb1
Inventory waters: use POST instead of GET. Redesigned web editor page. Total Alkalinity and Bicarbonate update eachother with calculated values.
Michiel Broek <mbroek@mbse.eu>
parents:
99
diff
changeset
|
32 | $sql .= "', sodium='" . $_POST['sodium']; |
08488ac3bbb1
Inventory waters: use POST instead of GET. Redesigned web editor page. Total Alkalinity and Bicarbonate update eachother with calculated values.
Michiel Broek <mbroek@mbse.eu>
parents:
99
diff
changeset
|
33 | $sql .= "', magnesium='" . $_POST['magnesium']; |
08488ac3bbb1
Inventory waters: use POST instead of GET. Redesigned web editor page. Total Alkalinity and Bicarbonate update eachother with calculated values.
Michiel Broek <mbroek@mbse.eu>
parents:
99
diff
changeset
|
34 | $sql .= "', ph='" . $_POST['ph']; |
08488ac3bbb1
Inventory waters: use POST instead of GET. Redesigned web editor page. Total Alkalinity and Bicarbonate update eachother with calculated values.
Michiel Broek <mbroek@mbse.eu>
parents:
99
diff
changeset
|
35 | $sql .= "', notes='" . mysqli_real_escape_string($connect, $_POST['notes']); |
08488ac3bbb1
Inventory waters: use POST instead of GET. Redesigned web editor page. Total Alkalinity and Bicarbonate update eachother with calculated values.
Michiel Broek <mbroek@mbse.eu>
parents:
99
diff
changeset
|
36 | $sql .= "', total_alkalinity='" . $_POST['total_alkalinity']; |
08488ac3bbb1
Inventory waters: use POST instead of GET. Redesigned web editor page. Total Alkalinity and Bicarbonate update eachother with calculated values.
Michiel Broek <mbroek@mbse.eu>
parents:
99
diff
changeset
|
37 | $sql .= "', inventory='" . $_POST['inventory']; |
08488ac3bbb1
Inventory waters: use POST instead of GET. Redesigned web editor page. Total Alkalinity and Bicarbonate update eachother with calculated values.
Michiel Broek <mbroek@mbse.eu>
parents:
99
diff
changeset
|
38 | $sql .= "', cost='" . $_POST['cost']; |
08488ac3bbb1
Inventory waters: use POST instead of GET. Redesigned web editor page. Total Alkalinity and Bicarbonate update eachother with calculated values.
Michiel Broek <mbroek@mbse.eu>
parents:
99
diff
changeset
|
39 | if (isset($_POST['insert'])) { |
08488ac3bbb1
Inventory waters: use POST instead of GET. Redesigned web editor page. Total Alkalinity and Bicarbonate update eachother with calculated values.
Michiel Broek <mbroek@mbse.eu>
parents:
99
diff
changeset
|
40 | $sql .= "';"; |
08488ac3bbb1
Inventory waters: use POST instead of GET. Redesigned web editor page. Total Alkalinity and Bicarbonate update eachother with calculated values.
Michiel Broek <mbroek@mbse.eu>
parents:
99
diff
changeset
|
41 | } |
08488ac3bbb1
Inventory waters: use POST instead of GET. Redesigned web editor page. Total Alkalinity and Bicarbonate update eachother with calculated values.
Michiel Broek <mbroek@mbse.eu>
parents:
99
diff
changeset
|
42 | if (isset($_POST['update'])) { |
08488ac3bbb1
Inventory waters: use POST instead of GET. Redesigned web editor page. Total Alkalinity and Bicarbonate update eachother with calculated values.
Michiel Broek <mbroek@mbse.eu>
parents:
99
diff
changeset
|
43 | $sql .= "' WHERE record='" . $_POST['record'] . "';"; |
08488ac3bbb1
Inventory waters: use POST instead of GET. Redesigned web editor page. Total Alkalinity and Bicarbonate update eachother with calculated values.
Michiel Broek <mbroek@mbse.eu>
parents:
99
diff
changeset
|
44 | } |
21
acb2d8098f19
Added inventory miscs and water sources.
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
45 | $result = mysqli_query($connect, $sql); |
acb2d8098f19
Added inventory miscs and water sources.
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
46 | if (! $result) { |
47
94cd5ac04b6a
Changed always_on_stock to unlimited_stock. Fixed html page. Added tooltips. Changed grid columns layout.
Michiel Broek <mbroek@mbse.eu>
parents:
46
diff
changeset
|
47 | syslog(LOG_NOTICE, "db_inventory_waters: ".$sql." result: ".mysqli_error($connect)); |
767
08c0343b622b
Improved error handling for inventory equipments, fermentables, hops, miscs, suppliers, water and yeasts.
Michiel Broek <mbroek@mbse.eu>
parents:
715
diff
changeset
|
48 | $response['error'] = true; |
08c0343b622b
Improved error handling for inventory equipments, fermentables, hops, miscs, suppliers, water and yeasts.
Michiel Broek <mbroek@mbse.eu>
parents:
715
diff
changeset
|
49 | $response['msg'] = "SQL fout: ".mysqli_error($connect); |
08c0343b622b
Improved error handling for inventory equipments, fermentables, hops, miscs, suppliers, water and yeasts.
Michiel Broek <mbroek@mbse.eu>
parents:
715
diff
changeset
|
50 | } |
08c0343b622b
Improved error handling for inventory equipments, fermentables, hops, miscs, suppliers, water and yeasts.
Michiel Broek <mbroek@mbse.eu>
parents:
715
diff
changeset
|
51 | exit(json_encode($response)); |
21
acb2d8098f19
Added inventory miscs and water sources.
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
52 | |
205
08488ac3bbb1
Inventory waters: use POST instead of GET. Redesigned web editor page. Total Alkalinity and Bicarbonate update eachother with calculated values.
Michiel Broek <mbroek@mbse.eu>
parents:
99
diff
changeset
|
53 | } else if (isset($_POST['delete'])) { |
08488ac3bbb1
Inventory waters: use POST instead of GET. Redesigned web editor page. Total Alkalinity and Bicarbonate update eachother with calculated values.
Michiel Broek <mbroek@mbse.eu>
parents:
99
diff
changeset
|
54 | // DELETE COMMAND |
08488ac3bbb1
Inventory waters: use POST instead of GET. Redesigned web editor page. Total Alkalinity and Bicarbonate update eachother with calculated values.
Michiel Broek <mbroek@mbse.eu>
parents:
99
diff
changeset
|
55 | $sql = "DELETE FROM `inventory_waters` WHERE record='".$_POST['record']."';"; |
21
acb2d8098f19
Added inventory miscs and water sources.
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
56 | $result = mysqli_query($connect, $sql); |
acb2d8098f19
Added inventory miscs and water sources.
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
57 | if (! $result) { |
47
94cd5ac04b6a
Changed always_on_stock to unlimited_stock. Fixed html page. Added tooltips. Changed grid columns layout.
Michiel Broek <mbroek@mbse.eu>
parents:
46
diff
changeset
|
58 | syslog(LOG_NOTICE, "db_inventory_waters: ".$sql." result: ".mysqli_error($connect)); |
767
08c0343b622b
Improved error handling for inventory equipments, fermentables, hops, miscs, suppliers, water and yeasts.
Michiel Broek <mbroek@mbse.eu>
parents:
715
diff
changeset
|
59 | $response['error'] = true; |
08c0343b622b
Improved error handling for inventory equipments, fermentables, hops, miscs, suppliers, water and yeasts.
Michiel Broek <mbroek@mbse.eu>
parents:
715
diff
changeset
|
60 | $response['msg'] = "SQL fout: ".mysqli_error($connect); |
08c0343b622b
Improved error handling for inventory equipments, fermentables, hops, miscs, suppliers, water and yeasts.
Michiel Broek <mbroek@mbse.eu>
parents:
715
diff
changeset
|
61 | } |
08c0343b622b
Improved error handling for inventory equipments, fermentables, hops, miscs, suppliers, water and yeasts.
Michiel Broek <mbroek@mbse.eu>
parents:
715
diff
changeset
|
62 | exit(json_encode($response)); |
21
acb2d8098f19
Added inventory miscs and water sources.
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
63 | |
acb2d8098f19
Added inventory miscs and water sources.
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
64 | } else { |
acb2d8098f19
Added inventory miscs and water sources.
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
65 | // SELECT COMMAND |
205
08488ac3bbb1
Inventory waters: use POST instead of GET. Redesigned web editor page. Total Alkalinity and Bicarbonate update eachother with calculated values.
Michiel Broek <mbroek@mbse.eu>
parents:
99
diff
changeset
|
66 | $query = "SELECT * FROM inventory_waters ORDER BY name"; |
21
acb2d8098f19
Added inventory miscs and water sources.
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
67 | $result = mysqli_query($connect, $query) or die("SQL Error 1: " . mysqli_error($connect)); |
acb2d8098f19
Added inventory miscs and water sources.
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
68 | while ($row = mysqli_fetch_array($result, MYSQLI_ASSOC)) { |
acb2d8098f19
Added inventory miscs and water sources.
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
69 | $waters[] = array( |
acb2d8098f19
Added inventory miscs and water sources.
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
70 | 'record' => $row['record'], |
acb2d8098f19
Added inventory miscs and water sources.
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
71 | 'name' => $row['name'], |
47
94cd5ac04b6a
Changed always_on_stock to unlimited_stock. Fixed html page. Added tooltips. Changed grid columns layout.
Michiel Broek <mbroek@mbse.eu>
parents:
46
diff
changeset
|
72 | 'unlimited_stock' => $row['unlimited_stock'], |
21
acb2d8098f19
Added inventory miscs and water sources.
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
73 | 'calcium' => $row['calcium'], |
acb2d8098f19
Added inventory miscs and water sources.
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
74 | 'bicarbonate' => $row['bicarbonate'], |
acb2d8098f19
Added inventory miscs and water sources.
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
75 | 'sulfate' => $row['sulfate'], |
acb2d8098f19
Added inventory miscs and water sources.
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
76 | 'chloride' => $row['chloride'], |
acb2d8098f19
Added inventory miscs and water sources.
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
77 | 'sodium' => $row['sodium'], |
acb2d8098f19
Added inventory miscs and water sources.
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
78 | 'magnesium' => $row['magnesium'], |
acb2d8098f19
Added inventory miscs and water sources.
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
79 | 'ph' => $row['ph'], |
acb2d8098f19
Added inventory miscs and water sources.
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
80 | 'notes' => $row['notes'], |
acb2d8098f19
Added inventory miscs and water sources.
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
81 | 'total_alkalinity' => $row['total_alkalinity'], |
acb2d8098f19
Added inventory miscs and water sources.
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
82 | 'inventory' => $row['inventory'], |
acb2d8098f19
Added inventory miscs and water sources.
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
83 | 'cost' => $row['cost'] |
acb2d8098f19
Added inventory miscs and water sources.
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
84 | ); |
acb2d8098f19
Added inventory miscs and water sources.
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
85 | } |
296
69fadd1aded2
Updated design document. Add content header application/json to all scripts that produce json output. Chart prints show the beer code and name in the header. Charts don't display the menu anymore.
Michiel Broek <mbroek@mbse.eu>
parents:
205
diff
changeset
|
86 | header("Content-type: application/json"); |
767
08c0343b622b
Improved error handling for inventory equipments, fermentables, hops, miscs, suppliers, water and yeasts.
Michiel Broek <mbroek@mbse.eu>
parents:
715
diff
changeset
|
87 | exit(json_encode($waters)); |
21
acb2d8098f19
Added inventory miscs and water sources.
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
88 | } |
767
08c0343b622b
Improved error handling for inventory equipments, fermentables, hops, miscs, suppliers, water and yeasts.
Michiel Broek <mbroek@mbse.eu>
parents:
715
diff
changeset
|
89 | |
08c0343b622b
Improved error handling for inventory equipments, fermentables, hops, miscs, suppliers, water and yeasts.
Michiel Broek <mbroek@mbse.eu>
parents:
715
diff
changeset
|
90 | syslog(LOG_NOTICE, "db_inventory_water: missing arguments"); |
08c0343b622b
Improved error handling for inventory equipments, fermentables, hops, miscs, suppliers, water and yeasts.
Michiel Broek <mbroek@mbse.eu>
parents:
715
diff
changeset
|
91 | $response['error'] = true; |
08c0343b622b
Improved error handling for inventory equipments, fermentables, hops, miscs, suppliers, water and yeasts.
Michiel Broek <mbroek@mbse.eu>
parents:
715
diff
changeset
|
92 | $response['msg'] = "missing arguments"; |
08c0343b622b
Improved error handling for inventory equipments, fermentables, hops, miscs, suppliers, water and yeasts.
Michiel Broek <mbroek@mbse.eu>
parents:
715
diff
changeset
|
93 | echo json_encode($response); |
08c0343b622b
Improved error handling for inventory equipments, fermentables, hops, miscs, suppliers, water and yeasts.
Michiel Broek <mbroek@mbse.eu>
parents:
715
diff
changeset
|
94 | |
21
acb2d8098f19
Added inventory miscs and water sources.
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
95 | ?> |