Tue, 19 May 2020 15:09:31 +0200
Removed some debug log messages. Fixed beer select during offline mode. Fixed block show temperature after offline.
111
8c4ba91adf58
Basic screens for brew products.
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
1 | /***************************************************************************** |
235
0a063ac5d7f5
Recipes in progress loading uses indexes. Recipe from database has added inventory information for the ingredients.
Michiel Broek <mbroek@mbse.eu>
parents:
151
diff
changeset
|
2 | * Copyright (C) 2018-2019 |
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 | showstatusbar: true, |
8bbc5730aaa8
Code cleanup and manual compress
Michiel Broek <mbroek@mbse.eu>
parents:
467
diff
changeset
|
49 | renderstatusbar: function(statusbar) { |
8bbc5730aaa8
Code cleanup and manual compress
Michiel Broek <mbroek@mbse.eu>
parents:
467
diff
changeset
|
50 | var container, addButton; |
8bbc5730aaa8
Code cleanup and manual compress
Michiel Broek <mbroek@mbse.eu>
parents:
467
diff
changeset
|
51 | container = $('<div style="overflow: hidden; position: relative; margin: 5px;"></div>'); |
8bbc5730aaa8
Code cleanup and manual compress
Michiel Broek <mbroek@mbse.eu>
parents:
467
diff
changeset
|
52 | addButton = $('<div style="float: right; margin-right: 15px;"><img style="position: relative; margin-top: 2px;" ' + |
8bbc5730aaa8
Code cleanup and manual compress
Michiel Broek <mbroek@mbse.eu>
parents:
467
diff
changeset
|
53 | 'src="images/add.png"/><span style="margin-left: 4px; position: relative; top: -3px;">Add</span></div>'); |
8bbc5730aaa8
Code cleanup and manual compress
Michiel Broek <mbroek@mbse.eu>
parents:
467
diff
changeset
|
54 | container.append(addButton); |
8bbc5730aaa8
Code cleanup and manual compress
Michiel Broek <mbroek@mbse.eu>
parents:
467
diff
changeset
|
55 | statusbar.append(container); |
8bbc5730aaa8
Code cleanup and manual compress
Michiel Broek <mbroek@mbse.eu>
parents:
467
diff
changeset
|
56 | addButton.jqxButton({ theme: theme, width: 90, height: 20 }); |
8bbc5730aaa8
Code cleanup and manual compress
Michiel Broek <mbroek@mbse.eu>
parents:
467
diff
changeset
|
57 | // add new recipe. |
8bbc5730aaa8
Code cleanup and manual compress
Michiel Broek <mbroek@mbse.eu>
parents:
467
diff
changeset
|
58 | addButton.click(function(event) { |
8bbc5730aaa8
Code cleanup and manual compress
Michiel Broek <mbroek@mbse.eu>
parents:
467
diff
changeset
|
59 | window.location.href = 'prod_new.php?return=prod_inprod.php'; |
8bbc5730aaa8
Code cleanup and manual compress
Michiel Broek <mbroek@mbse.eu>
parents:
467
diff
changeset
|
60 | }); |
8bbc5730aaa8
Code cleanup and manual compress
Michiel Broek <mbroek@mbse.eu>
parents:
467
diff
changeset
|
61 | }, |
8bbc5730aaa8
Code cleanup and manual compress
Michiel Broek <mbroek@mbse.eu>
parents:
467
diff
changeset
|
62 | columns: [ |
8bbc5730aaa8
Code cleanup and manual compress
Michiel Broek <mbroek@mbse.eu>
parents:
467
diff
changeset
|
63 | { text: 'Datum', datafield: 'birth', width: 120 }, |
8bbc5730aaa8
Code cleanup and manual compress
Michiel Broek <mbroek@mbse.eu>
parents:
467
diff
changeset
|
64 | { text: 'Code', datafield: 'code', width: 120 }, |
8bbc5730aaa8
Code cleanup and manual compress
Michiel Broek <mbroek@mbse.eu>
parents:
467
diff
changeset
|
65 | { text: 'Naam', datafield: 'name' }, |
8bbc5730aaa8
Code cleanup and manual compress
Michiel Broek <mbroek@mbse.eu>
parents:
467
diff
changeset
|
66 | { text: 'Fase', datafield: 'stage', width: 200, |
8bbc5730aaa8
Code cleanup and manual compress
Michiel Broek <mbroek@mbse.eu>
parents:
467
diff
changeset
|
67 | cellsrenderer: function(index, datafield, value, defaultvalue, column, rowdata) { |
8bbc5730aaa8
Code cleanup and manual compress
Michiel Broek <mbroek@mbse.eu>
parents:
467
diff
changeset
|
68 | 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
|
69 | // 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
|
70 | fase = StageData[value].nl; |
8bbc5730aaa8
Code cleanup and manual compress
Michiel Broek <mbroek@mbse.eu>
parents:
467
diff
changeset
|
71 | if (value == 2) { |
8bbc5730aaa8
Code cleanup and manual compress
Michiel Broek <mbroek@mbse.eu>
parents:
467
diff
changeset
|
72 | fase = StageData[value].nl + ' op ' + rowdata.brew_date; |
8bbc5730aaa8
Code cleanup and manual compress
Michiel Broek <mbroek@mbse.eu>
parents:
467
diff
changeset
|
73 | } |
8bbc5730aaa8
Code cleanup and manual compress
Michiel Broek <mbroek@mbse.eu>
parents:
467
diff
changeset
|
74 | if (value == 7 || value == 8) { |
8bbc5730aaa8
Code cleanup and manual compress
Michiel Broek <mbroek@mbse.eu>
parents:
467
diff
changeset
|
75 | d = new Date(); |
8bbc5730aaa8
Code cleanup and manual compress
Michiel Broek <mbroek@mbse.eu>
parents:
467
diff
changeset
|
76 | date2 = rowdata.package_date; |
8bbc5730aaa8
Code cleanup and manual compress
Michiel Broek <mbroek@mbse.eu>
parents:
467
diff
changeset
|
77 | date2 = date2.split('-'); |
8bbc5730aaa8
Code cleanup and manual compress
Michiel Broek <mbroek@mbse.eu>
parents:
467
diff
changeset
|
78 | // Now we convert the array to a Date object |
8bbc5730aaa8
Code cleanup and manual compress
Michiel Broek <mbroek@mbse.eu>
parents:
467
diff
changeset
|
79 | date1 = new Date(d.getFullYear(), d.getMonth(), d.getDate()); |
8bbc5730aaa8
Code cleanup and manual compress
Michiel Broek <mbroek@mbse.eu>
parents:
467
diff
changeset
|
80 | 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
|
81 | // We use the getTime() method and get the unixtime |
8bbc5730aaa8
Code cleanup and manual compress
Michiel Broek <mbroek@mbse.eu>
parents:
467
diff
changeset
|
82 | date1_unixtime = parseInt(date1.getTime() / 1000); |
8bbc5730aaa8
Code cleanup and manual compress
Michiel Broek <mbroek@mbse.eu>
parents:
467
diff
changeset
|
83 | date2_unixtime = parseInt(date2.getTime() / 1000); |
8bbc5730aaa8
Code cleanup and manual compress
Michiel Broek <mbroek@mbse.eu>
parents:
467
diff
changeset
|
84 | // This is the calculated difference in seconds |
8bbc5730aaa8
Code cleanup and manual compress
Michiel Broek <mbroek@mbse.eu>
parents:
467
diff
changeset
|
85 | timeDifference = date1_unixtime - date2_unixtime; |
8bbc5730aaa8
Code cleanup and manual compress
Michiel Broek <mbroek@mbse.eu>
parents:
467
diff
changeset
|
86 | // 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
|
87 | timeDifferenceInDays = Math.round(timeDifference / 60 / 60 / 24); |
8bbc5730aaa8
Code cleanup and manual compress
Michiel Broek <mbroek@mbse.eu>
parents:
467
diff
changeset
|
88 | if (timeDifferenceInDays >= 14) |
8bbc5730aaa8
Code cleanup and manual compress
Michiel Broek <mbroek@mbse.eu>
parents:
467
diff
changeset
|
89 | fase = StageData[value].nl + ' dag ' + (timeDifferenceInDays - 14) + ' van 28'; |
8bbc5730aaa8
Code cleanup and manual compress
Michiel Broek <mbroek@mbse.eu>
parents:
467
diff
changeset
|
90 | else |
8bbc5730aaa8
Code cleanup and manual compress
Michiel Broek <mbroek@mbse.eu>
parents:
467
diff
changeset
|
91 | fase = StageData[value].nl + ' dag ' + timeDifferenceInDays + ' van 14'; |
8bbc5730aaa8
Code cleanup and manual compress
Michiel Broek <mbroek@mbse.eu>
parents:
467
diff
changeset
|
92 | } |
8bbc5730aaa8
Code cleanup and manual compress
Michiel Broek <mbroek@mbse.eu>
parents:
467
diff
changeset
|
93 | 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
|
94 | } |
8bbc5730aaa8
Code cleanup and manual compress
Michiel Broek <mbroek@mbse.eu>
parents:
467
diff
changeset
|
95 | }, |
8bbc5730aaa8
Code cleanup and manual compress
Michiel Broek <mbroek@mbse.eu>
parents:
467
diff
changeset
|
96 | { text: '', datafield: 'Edit', width: 100, align: 'center', columntype: 'button', cellsrenderer: function() { |
8bbc5730aaa8
Code cleanup and manual compress
Michiel Broek <mbroek@mbse.eu>
parents:
467
diff
changeset
|
97 | return 'Wijzig'; |
8bbc5730aaa8
Code cleanup and manual compress
Michiel Broek <mbroek@mbse.eu>
parents:
467
diff
changeset
|
98 | }, buttonclick: function(row) { |
8bbc5730aaa8
Code cleanup and manual compress
Michiel Broek <mbroek@mbse.eu>
parents:
467
diff
changeset
|
99 | var datarecord = dataAdapter.records[row]; |
8bbc5730aaa8
Code cleanup and manual compress
Michiel Broek <mbroek@mbse.eu>
parents:
467
diff
changeset
|
100 | window.location.href = 'prod_edit.php?record=' + datarecord.record + '&select=inprod&return=prod_inprod.php'; |
8bbc5730aaa8
Code cleanup and manual compress
Michiel Broek <mbroek@mbse.eu>
parents:
467
diff
changeset
|
101 | } |
8bbc5730aaa8
Code cleanup and manual compress
Michiel Broek <mbroek@mbse.eu>
parents:
467
diff
changeset
|
102 | } |
8bbc5730aaa8
Code cleanup and manual compress
Michiel Broek <mbroek@mbse.eu>
parents:
467
diff
changeset
|
103 | ], |
8bbc5730aaa8
Code cleanup and manual compress
Michiel Broek <mbroek@mbse.eu>
parents:
467
diff
changeset
|
104 | }); |
111
8c4ba91adf58
Basic screens for brew products.
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
105 | }); |