Thu, 12 Oct 2023 14:19:46 +0200
Version 0.3.44. Moved iSpindel Plato calculation from the php script to bmsd. This uses calibration data in the mon_ispindels table. Setup of this data will be done by the bmsapp applications. Default settings are stored in MySQL. From now on you don't need to store calibration data in the iSpindel.
111
8c4ba91adf58
Basic screens for brew products.
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
1 | /***************************************************************************** |
816 | 2 | * Copyright (C) 2018-2022 |
111
8c4ba91adf58
Basic screens for brew products.
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
3 | * |
8c4ba91adf58
Basic screens for brew products.
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
4 | * Michiel Broek <mbroek at mbse dot eu> |
8c4ba91adf58
Basic screens for brew products.
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
5 | * |
8c4ba91adf58
Basic screens for brew products.
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
6 | * This file is part of BMS |
8c4ba91adf58
Basic screens for brew products.
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
7 | * |
8c4ba91adf58
Basic screens for brew products.
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
8 | * This is free software; you can redistribute it and/or modify it |
8c4ba91adf58
Basic screens for brew products.
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
9 | * under the terms of the GNU General Public License as published by the |
8c4ba91adf58
Basic screens for brew products.
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
10 | * Free Software Foundation; either version 2, or (at your option) any |
8c4ba91adf58
Basic screens for brew products.
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
11 | * later version. |
8c4ba91adf58
Basic screens for brew products.
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
12 | * |
8c4ba91adf58
Basic screens for brew products.
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
13 | * BrewCloud is distributed in the hope that it will be useful, but |
8c4ba91adf58
Basic screens for brew products.
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
14 | * WITHOUT ANY WARRANTY; without even the implied warranty of |
8c4ba91adf58
Basic screens for brew products.
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
15 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU |
8c4ba91adf58
Basic screens for brew products.
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
16 | * General Public License for more details. |
8c4ba91adf58
Basic screens for brew products.
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
17 | * |
8c4ba91adf58
Basic screens for brew products.
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
18 | * You should have received a copy of the GNU General Public License |
8c4ba91adf58
Basic screens for brew products.
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
19 | * along with ThermFerm; see the file COPYING. If not, write to the Free |
8c4ba91adf58
Basic screens for brew products.
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
20 | * Software Foundation, 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA. |
8c4ba91adf58
Basic screens for brew products.
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
21 | *****************************************************************************/ |
8c4ba91adf58
Basic screens for brew products.
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
22 | |
8c4ba91adf58
Basic screens for brew products.
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
23 | |
525
8bbc5730aaa8
Code cleanup and manual compress
Michiel Broek <mbroek@mbse.eu>
parents:
467
diff
changeset
|
24 | $(document).ready(function() { |
8bbc5730aaa8
Code cleanup and manual compress
Michiel Broek <mbroek@mbse.eu>
parents:
467
diff
changeset
|
25 | var source = { |
8bbc5730aaa8
Code cleanup and manual compress
Michiel Broek <mbroek@mbse.eu>
parents:
467
diff
changeset
|
26 | datatype: 'json', |
8bbc5730aaa8
Code cleanup and manual compress
Michiel Broek <mbroek@mbse.eu>
parents:
467
diff
changeset
|
27 | cache: false, |
8bbc5730aaa8
Code cleanup and manual compress
Michiel Broek <mbroek@mbse.eu>
parents:
467
diff
changeset
|
28 | datafields: [ |
8bbc5730aaa8
Code cleanup and manual compress
Michiel Broek <mbroek@mbse.eu>
parents:
467
diff
changeset
|
29 | { name: 'record', type: 'number' }, |
8bbc5730aaa8
Code cleanup and manual compress
Michiel Broek <mbroek@mbse.eu>
parents:
467
diff
changeset
|
30 | { name: 'name', type: 'string' }, |
8bbc5730aaa8
Code cleanup and manual compress
Michiel Broek <mbroek@mbse.eu>
parents:
467
diff
changeset
|
31 | { name: 'code', type: 'string' }, |
8bbc5730aaa8
Code cleanup and manual compress
Michiel Broek <mbroek@mbse.eu>
parents:
467
diff
changeset
|
32 | { name: 'birth', type: 'string' }, |
8bbc5730aaa8
Code cleanup and manual compress
Michiel Broek <mbroek@mbse.eu>
parents:
467
diff
changeset
|
33 | { name: 'stage', type: 'int' }, |
8bbc5730aaa8
Code cleanup and manual compress
Michiel Broek <mbroek@mbse.eu>
parents:
467
diff
changeset
|
34 | { name: 'brew_date', type: 'string' }, |
8bbc5730aaa8
Code cleanup and manual compress
Michiel Broek <mbroek@mbse.eu>
parents:
467
diff
changeset
|
35 | { name: 'package_date', type: 'string' }, |
8bbc5730aaa8
Code cleanup and manual compress
Michiel Broek <mbroek@mbse.eu>
parents:
467
diff
changeset
|
36 | ], |
8bbc5730aaa8
Code cleanup and manual compress
Michiel Broek <mbroek@mbse.eu>
parents:
467
diff
changeset
|
37 | id: 'record', |
8bbc5730aaa8
Code cleanup and manual compress
Michiel Broek <mbroek@mbse.eu>
parents:
467
diff
changeset
|
38 | url: 'includes/db_product.php?select=inprod' |
8bbc5730aaa8
Code cleanup and manual compress
Michiel Broek <mbroek@mbse.eu>
parents:
467
diff
changeset
|
39 | }, |
8bbc5730aaa8
Code cleanup and manual compress
Michiel Broek <mbroek@mbse.eu>
parents:
467
diff
changeset
|
40 | dataAdapter = new $.jqx.dataAdapter(source); |
467
f8d16480a6a7
Code optimisation for compressed javascript
Michiel Broek <mbroek@mbse.eu>
parents:
339
diff
changeset
|
41 | |
525
8bbc5730aaa8
Code cleanup and manual compress
Michiel Broek <mbroek@mbse.eu>
parents:
467
diff
changeset
|
42 | // initialize jqxGrid |
8bbc5730aaa8
Code cleanup and manual compress
Michiel Broek <mbroek@mbse.eu>
parents:
467
diff
changeset
|
43 | $('#jqxgrid').jqxGrid({ |
8bbc5730aaa8
Code cleanup and manual compress
Michiel Broek <mbroek@mbse.eu>
parents:
467
diff
changeset
|
44 | width: 1280, |
8bbc5730aaa8
Code cleanup and manual compress
Michiel Broek <mbroek@mbse.eu>
parents:
467
diff
changeset
|
45 | height: 630, |
8bbc5730aaa8
Code cleanup and manual compress
Michiel Broek <mbroek@mbse.eu>
parents:
467
diff
changeset
|
46 | source: dataAdapter, |
8bbc5730aaa8
Code cleanup and manual compress
Michiel Broek <mbroek@mbse.eu>
parents:
467
diff
changeset
|
47 | theme: theme, |
8bbc5730aaa8
Code cleanup and manual compress
Michiel Broek <mbroek@mbse.eu>
parents:
467
diff
changeset
|
48 | columns: [ |
8bbc5730aaa8
Code cleanup and manual compress
Michiel Broek <mbroek@mbse.eu>
parents:
467
diff
changeset
|
49 | { text: 'Datum', datafield: 'birth', width: 120 }, |
8bbc5730aaa8
Code cleanup and manual compress
Michiel Broek <mbroek@mbse.eu>
parents:
467
diff
changeset
|
50 | { text: 'Code', datafield: 'code', width: 120 }, |
8bbc5730aaa8
Code cleanup and manual compress
Michiel Broek <mbroek@mbse.eu>
parents:
467
diff
changeset
|
51 | { text: 'Naam', datafield: 'name' }, |
8bbc5730aaa8
Code cleanup and manual compress
Michiel Broek <mbroek@mbse.eu>
parents:
467
diff
changeset
|
52 | { text: 'Fase', datafield: 'stage', width: 200, |
8bbc5730aaa8
Code cleanup and manual compress
Michiel Broek <mbroek@mbse.eu>
parents:
467
diff
changeset
|
53 | cellsrenderer: function(index, datafield, value, defaultvalue, column, rowdata) { |
8bbc5730aaa8
Code cleanup and manual compress
Michiel Broek <mbroek@mbse.eu>
parents:
467
diff
changeset
|
54 | var fase, d, date1, date2, date1_unixtime, date2_unixtime, timeDifference, timeDifferenceInDays; |
8bbc5730aaa8
Code cleanup and manual compress
Michiel Broek <mbroek@mbse.eu>
parents:
467
diff
changeset
|
55 | // 2 = brew, 6 = package, 7 = carbonation, 8 = mature, 9 = taste |
8bbc5730aaa8
Code cleanup and manual compress
Michiel Broek <mbroek@mbse.eu>
parents:
467
diff
changeset
|
56 | fase = StageData[value].nl; |
8bbc5730aaa8
Code cleanup and manual compress
Michiel Broek <mbroek@mbse.eu>
parents:
467
diff
changeset
|
57 | if (value == 2) { |
8bbc5730aaa8
Code cleanup and manual compress
Michiel Broek <mbroek@mbse.eu>
parents:
467
diff
changeset
|
58 | fase = StageData[value].nl + ' op ' + rowdata.brew_date; |
8bbc5730aaa8
Code cleanup and manual compress
Michiel Broek <mbroek@mbse.eu>
parents:
467
diff
changeset
|
59 | } |
8bbc5730aaa8
Code cleanup and manual compress
Michiel Broek <mbroek@mbse.eu>
parents:
467
diff
changeset
|
60 | if (value == 7 || value == 8) { |
8bbc5730aaa8
Code cleanup and manual compress
Michiel Broek <mbroek@mbse.eu>
parents:
467
diff
changeset
|
61 | d = new Date(); |
8bbc5730aaa8
Code cleanup and manual compress
Michiel Broek <mbroek@mbse.eu>
parents:
467
diff
changeset
|
62 | date2 = rowdata.package_date; |
8bbc5730aaa8
Code cleanup and manual compress
Michiel Broek <mbroek@mbse.eu>
parents:
467
diff
changeset
|
63 | date2 = date2.split('-'); |
8bbc5730aaa8
Code cleanup and manual compress
Michiel Broek <mbroek@mbse.eu>
parents:
467
diff
changeset
|
64 | // Now we convert the array to a Date object |
8bbc5730aaa8
Code cleanup and manual compress
Michiel Broek <mbroek@mbse.eu>
parents:
467
diff
changeset
|
65 | date1 = new Date(d.getFullYear(), d.getMonth(), d.getDate()); |
8bbc5730aaa8
Code cleanup and manual compress
Michiel Broek <mbroek@mbse.eu>
parents:
467
diff
changeset
|
66 | date2 = new Date(date2[0], date2[1] - 1, date2[2]); |
8bbc5730aaa8
Code cleanup and manual compress
Michiel Broek <mbroek@mbse.eu>
parents:
467
diff
changeset
|
67 | // We use the getTime() method and get the unixtime |
8bbc5730aaa8
Code cleanup and manual compress
Michiel Broek <mbroek@mbse.eu>
parents:
467
diff
changeset
|
68 | date1_unixtime = parseInt(date1.getTime() / 1000); |
8bbc5730aaa8
Code cleanup and manual compress
Michiel Broek <mbroek@mbse.eu>
parents:
467
diff
changeset
|
69 | date2_unixtime = parseInt(date2.getTime() / 1000); |
8bbc5730aaa8
Code cleanup and manual compress
Michiel Broek <mbroek@mbse.eu>
parents:
467
diff
changeset
|
70 | // This is the calculated difference in seconds |
8bbc5730aaa8
Code cleanup and manual compress
Michiel Broek <mbroek@mbse.eu>
parents:
467
diff
changeset
|
71 | timeDifference = date1_unixtime - date2_unixtime; |
8bbc5730aaa8
Code cleanup and manual compress
Michiel Broek <mbroek@mbse.eu>
parents:
467
diff
changeset
|
72 | // Round the result for brews that overlap summer/wintertime changes. |
8bbc5730aaa8
Code cleanup and manual compress
Michiel Broek <mbroek@mbse.eu>
parents:
467
diff
changeset
|
73 | timeDifferenceInDays = Math.round(timeDifference / 60 / 60 / 24); |
8bbc5730aaa8
Code cleanup and manual compress
Michiel Broek <mbroek@mbse.eu>
parents:
467
diff
changeset
|
74 | if (timeDifferenceInDays >= 14) |
8bbc5730aaa8
Code cleanup and manual compress
Michiel Broek <mbroek@mbse.eu>
parents:
467
diff
changeset
|
75 | fase = StageData[value].nl + ' dag ' + (timeDifferenceInDays - 14) + ' van 28'; |
8bbc5730aaa8
Code cleanup and manual compress
Michiel Broek <mbroek@mbse.eu>
parents:
467
diff
changeset
|
76 | else |
8bbc5730aaa8
Code cleanup and manual compress
Michiel Broek <mbroek@mbse.eu>
parents:
467
diff
changeset
|
77 | fase = StageData[value].nl + ' dag ' + timeDifferenceInDays + ' van 14'; |
8bbc5730aaa8
Code cleanup and manual compress
Michiel Broek <mbroek@mbse.eu>
parents:
467
diff
changeset
|
78 | } |
8bbc5730aaa8
Code cleanup and manual compress
Michiel Broek <mbroek@mbse.eu>
parents:
467
diff
changeset
|
79 | return '<span style="margin: 3px; margin-top: 6px; float: left;">' + fase + '</span>'; |
8bbc5730aaa8
Code cleanup and manual compress
Michiel Broek <mbroek@mbse.eu>
parents:
467
diff
changeset
|
80 | } |
8bbc5730aaa8
Code cleanup and manual compress
Michiel Broek <mbroek@mbse.eu>
parents:
467
diff
changeset
|
81 | }, |
8bbc5730aaa8
Code cleanup and manual compress
Michiel Broek <mbroek@mbse.eu>
parents:
467
diff
changeset
|
82 | { text: '', datafield: 'Edit', width: 100, align: 'center', columntype: 'button', cellsrenderer: function() { |
832
2641860ad61d
Renamed prod_edit to prod_view.
Michiel Broek <mbroek@mbse.eu>
parents:
816
diff
changeset
|
83 | return 'Bekijk'; |
525
8bbc5730aaa8
Code cleanup and manual compress
Michiel Broek <mbroek@mbse.eu>
parents:
467
diff
changeset
|
84 | }, buttonclick: function(row) { |
8bbc5730aaa8
Code cleanup and manual compress
Michiel Broek <mbroek@mbse.eu>
parents:
467
diff
changeset
|
85 | var datarecord = dataAdapter.records[row]; |
832
2641860ad61d
Renamed prod_edit to prod_view.
Michiel Broek <mbroek@mbse.eu>
parents:
816
diff
changeset
|
86 | window.location.href = 'prod_view.php?record=' + datarecord.record + '&select=inprod&return=prod_inprod.php'; |
525
8bbc5730aaa8
Code cleanup and manual compress
Michiel Broek <mbroek@mbse.eu>
parents:
467
diff
changeset
|
87 | } |
8bbc5730aaa8
Code cleanup and manual compress
Michiel Broek <mbroek@mbse.eu>
parents:
467
diff
changeset
|
88 | } |
8bbc5730aaa8
Code cleanup and manual compress
Michiel Broek <mbroek@mbse.eu>
parents:
467
diff
changeset
|
89 | ], |
8bbc5730aaa8
Code cleanup and manual compress
Michiel Broek <mbroek@mbse.eu>
parents:
467
diff
changeset
|
90 | }); |
111
8c4ba91adf58
Basic screens for brew products.
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
91 | }); |