www/js/log_brew.js

Sat, 25 Sep 2021 10:42:54 +0200

author
Michiel Broek <mbroek@mbse.eu>
date
Sat, 25 Sep 2021 10:42:54 +0200
changeset 778
e64fd38c469c
parent 527
9dfefad3ae1d
permissions
-rw-r--r--

If during styles import the CATEGORY_NUMBER is empty, insert 0 in the database instead.

294
1e09d1d102a8 Updated crontask to check for fermentation logs and update the products. Added initial brew log graph.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
1 /*****************************************************************************
1e09d1d102a8 Updated crontask to check for fermentation logs and update the products. Added initial brew log graph.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
2 * Copyright (C) 2019
1e09d1d102a8 Updated crontask to check for fermentation logs and update the products. Added initial brew log graph.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
3 *
1e09d1d102a8 Updated crontask to check for fermentation logs and update the products. Added initial brew log graph.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
4 * Michiel Broek <mbroek at mbse dot eu>
1e09d1d102a8 Updated crontask to check for fermentation logs and update the products. Added initial brew log graph.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
5 *
1e09d1d102a8 Updated crontask to check for fermentation logs and update the products. Added initial brew log graph.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
6 * This file is part of BMS
1e09d1d102a8 Updated crontask to check for fermentation logs and update the products. Added initial brew log graph.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
7 *
1e09d1d102a8 Updated crontask to check for fermentation logs and update the products. Added initial brew log graph.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
8 * This is free software; you can redistribute it and/or modify it
1e09d1d102a8 Updated crontask to check for fermentation logs and update the products. Added initial brew log graph.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
9 * under the terms of the GNU General Public License as published by the
1e09d1d102a8 Updated crontask to check for fermentation logs and update the products. Added initial brew log graph.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
10 * Free Software Foundation; either version 2, or (at your option) any
1e09d1d102a8 Updated crontask to check for fermentation logs and update the products. Added initial brew log graph.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
11 * later version.
1e09d1d102a8 Updated crontask to check for fermentation logs and update the products. Added initial brew log graph.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
12 *
1e09d1d102a8 Updated crontask to check for fermentation logs and update the products. Added initial brew log graph.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
13 * Brewery Managment System is distributed in the hope that it will be useful,
1e09d1d102a8 Updated crontask to check for fermentation logs and update the products. Added initial brew log graph.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
14 * but WITHOUT ANY WARRANTY; without even the implied warranty of
1e09d1d102a8 Updated crontask to check for fermentation logs and update the products. Added initial brew log graph.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
15 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
1e09d1d102a8 Updated crontask to check for fermentation logs and update the products. Added initial brew log graph.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
16 * General Public License for more details.
1e09d1d102a8 Updated crontask to check for fermentation logs and update the products. Added initial brew log graph.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
17 *
1e09d1d102a8 Updated crontask to check for fermentation logs and update the products. Added initial brew log graph.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
18 * You should have received a copy of the GNU General Public License
1e09d1d102a8 Updated crontask to check for fermentation logs and update the products. Added initial brew log graph.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
19 * along with ThermFerm; see the file COPYING. If not, write to the Free
1e09d1d102a8 Updated crontask to check for fermentation logs and update the products. Added initial brew log graph.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
20 * Software Foundation, 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
1e09d1d102a8 Updated crontask to check for fermentation logs and update the products. Added initial brew log graph.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
21 *****************************************************************************/
1e09d1d102a8 Updated crontask to check for fermentation logs and update the products. Added initial brew log graph.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
22
1e09d1d102a8 Updated crontask to check for fermentation logs and update the products. Added initial brew log graph.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
23
527
9dfefad3ae1d Code cleanup and manual compress
Michiel Broek <mbroek@mbse.eu>
parents: 494
diff changeset
24 $(document).ready(function() {
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: 294
diff changeset
25
527
9dfefad3ae1d Code cleanup and manual compress
Michiel Broek <mbroek@mbse.eu>
parents: 494
diff changeset
26 $('#jqxMenu').jqxMenu('destroy');
9dfefad3ae1d Code cleanup and manual compress
Michiel Broek <mbroek@mbse.eu>
parents: 494
diff changeset
27 $('#jqxLoader').jqxLoader({
9dfefad3ae1d Code cleanup and manual compress
Michiel Broek <mbroek@mbse.eu>
parents: 494
diff changeset
28 width: 250,
9dfefad3ae1d Code cleanup and manual compress
Michiel Broek <mbroek@mbse.eu>
parents: 494
diff changeset
29 height: 150,
9dfefad3ae1d Code cleanup and manual compress
Michiel Broek <mbroek@mbse.eu>
parents: 494
diff changeset
30 isModal: true,
9dfefad3ae1d Code cleanup and manual compress
Michiel Broek <mbroek@mbse.eu>
parents: 494
diff changeset
31 text: 'Opmaken grafiek ...',
9dfefad3ae1d Code cleanup and manual compress
Michiel Broek <mbroek@mbse.eu>
parents: 494
diff changeset
32 theme: theme
9dfefad3ae1d Code cleanup and manual compress
Michiel Broek <mbroek@mbse.eu>
parents: 494
diff changeset
33 });
9dfefad3ae1d Code cleanup and manual compress
Michiel Broek <mbroek@mbse.eu>
parents: 494
diff changeset
34 $('#jqxLoader').jqxLoader('open');
294
1e09d1d102a8 Updated crontask to check for fermentation logs and update the products. Added initial brew log graph.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
35
527
9dfefad3ae1d Code cleanup and manual compress
Michiel Broek <mbroek@mbse.eu>
parents: 494
diff changeset
36 function getExportServer() {
9dfefad3ae1d Code cleanup and manual compress
Michiel Broek <mbroek@mbse.eu>
parents: 494
diff changeset
37 return 'https://www.jqwidgets.com/export_server/export.php';
9dfefad3ae1d Code cleanup and manual compress
Michiel Broek <mbroek@mbse.eu>
parents: 494
diff changeset
38 }
294
1e09d1d102a8 Updated crontask to check for fermentation logs and update the products. Added initial brew log graph.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
39
527
9dfefad3ae1d Code cleanup and manual compress
Michiel Broek <mbroek@mbse.eu>
parents: 494
diff changeset
40 var sourceA = {
9dfefad3ae1d Code cleanup and manual compress
Michiel Broek <mbroek@mbse.eu>
parents: 494
diff changeset
41 datatype: 'json',
9dfefad3ae1d Code cleanup and manual compress
Michiel Broek <mbroek@mbse.eu>
parents: 494
diff changeset
42 datafields: [
9dfefad3ae1d Code cleanup and manual compress
Michiel Broek <mbroek@mbse.eu>
parents: 494
diff changeset
43 { name: 'date', type: 'date', format: 'yyyy-MM-dd HH:mm' },
9dfefad3ae1d Code cleanup and manual compress
Michiel Broek <mbroek@mbse.eu>
parents: 494
diff changeset
44 { name: 'version', type: 'int' },
9dfefad3ae1d Code cleanup and manual compress
Michiel Broek <mbroek@mbse.eu>
parents: 494
diff changeset
45 { name: 'code', type: 'string' },
9dfefad3ae1d Code cleanup and manual compress
Michiel Broek <mbroek@mbse.eu>
parents: 494
diff changeset
46 { name: 'name', type: 'string' },
9dfefad3ae1d Code cleanup and manual compress
Michiel Broek <mbroek@mbse.eu>
parents: 494
diff changeset
47 { name: 'pv_mlt', type: 'float' },
9dfefad3ae1d Code cleanup and manual compress
Michiel Broek <mbroek@mbse.eu>
parents: 494
diff changeset
48 { name: 'pv_hlt', type: 'float' },
9dfefad3ae1d Code cleanup and manual compress
Michiel Broek <mbroek@mbse.eu>
parents: 494
diff changeset
49 { name: 'pv_room', type: 'float' },
9dfefad3ae1d Code cleanup and manual compress
Michiel Broek <mbroek@mbse.eu>
parents: 494
diff changeset
50 { name: 'sp_mlt', type: 'float' },
9dfefad3ae1d Code cleanup and manual compress
Michiel Broek <mbroek@mbse.eu>
parents: 494
diff changeset
51 { name: 'sp_hlt', type: 'float' },
9dfefad3ae1d Code cleanup and manual compress
Michiel Broek <mbroek@mbse.eu>
parents: 494
diff changeset
52 { name: 'pwm_mlt', type: 'int' },
9dfefad3ae1d Code cleanup and manual compress
Michiel Broek <mbroek@mbse.eu>
parents: 494
diff changeset
53 { name: 'pwm_hlt', type: 'int' },
9dfefad3ae1d Code cleanup and manual compress
Michiel Broek <mbroek@mbse.eu>
parents: 494
diff changeset
54 { name: 'event', type: 'string' }
9dfefad3ae1d Code cleanup and manual compress
Michiel Broek <mbroek@mbse.eu>
parents: 494
diff changeset
55 ],
9dfefad3ae1d Code cleanup and manual compress
Michiel Broek <mbroek@mbse.eu>
parents: 494
diff changeset
56 url: 'getbrewlog.php?code=' + my_code
9dfefad3ae1d Code cleanup and manual compress
Michiel Broek <mbroek@mbse.eu>
parents: 494
diff changeset
57 },
9dfefad3ae1d Code cleanup and manual compress
Michiel Broek <mbroek@mbse.eu>
parents: 494
diff changeset
58 dataAdapter = new $.jqx.dataAdapter(sourceA, {
9dfefad3ae1d Code cleanup and manual compress
Michiel Broek <mbroek@mbse.eu>
parents: 494
diff changeset
59 autoBind: true,
9dfefad3ae1d Code cleanup and manual compress
Michiel Broek <mbroek@mbse.eu>
parents: 494
diff changeset
60 async: false,
9dfefad3ae1d Code cleanup and manual compress
Michiel Broek <mbroek@mbse.eu>
parents: 494
diff changeset
61 loadComplete: function() {
9dfefad3ae1d Code cleanup and manual compress
Michiel Broek <mbroek@mbse.eu>
parents: 494
diff changeset
62 $('#jqxLoader').jqxLoader('close');
9dfefad3ae1d Code cleanup and manual compress
Michiel Broek <mbroek@mbse.eu>
parents: 494
diff changeset
63 },
9dfefad3ae1d Code cleanup and manual compress
Michiel Broek <mbroek@mbse.eu>
parents: 494
diff changeset
64 loadError: function(jqXHR, status, error) {
9dfefad3ae1d Code cleanup and manual compress
Michiel Broek <mbroek@mbse.eu>
parents: 494
diff changeset
65 }
9dfefad3ae1d Code cleanup and manual compress
Michiel Broek <mbroek@mbse.eu>
parents: 494
diff changeset
66 }),
9dfefad3ae1d Code cleanup and manual compress
Michiel Broek <mbroek@mbse.eu>
parents: 494
diff changeset
67 settings = {
9dfefad3ae1d Code cleanup and manual compress
Michiel Broek <mbroek@mbse.eu>
parents: 494
diff changeset
68 title: my_code + ' "' + my_name + '"',
9dfefad3ae1d Code cleanup and manual compress
Michiel Broek <mbroek@mbse.eu>
parents: 494
diff changeset
69 description: '',
9dfefad3ae1d Code cleanup and manual compress
Michiel Broek <mbroek@mbse.eu>
parents: 494
diff changeset
70 source: dataAdapter,
9dfefad3ae1d Code cleanup and manual compress
Michiel Broek <mbroek@mbse.eu>
parents: 494
diff changeset
71 xAxis: {
9dfefad3ae1d Code cleanup and manual compress
Michiel Broek <mbroek@mbse.eu>
parents: 494
diff changeset
72 dataField: 'date',
9dfefad3ae1d Code cleanup and manual compress
Michiel Broek <mbroek@mbse.eu>
parents: 494
diff changeset
73 type: 'date',
9dfefad3ae1d Code cleanup and manual compress
Michiel Broek <mbroek@mbse.eu>
parents: 494
diff changeset
74 formatFunction: function(value) {
9dfefad3ae1d Code cleanup and manual compress
Michiel Broek <mbroek@mbse.eu>
parents: 494
diff changeset
75 return value.getHours() + ':' + value.getMinutes();
9dfefad3ae1d Code cleanup and manual compress
Michiel Broek <mbroek@mbse.eu>
parents: 494
diff changeset
76 },
9dfefad3ae1d Code cleanup and manual compress
Michiel Broek <mbroek@mbse.eu>
parents: 494
diff changeset
77 toolTipFormatFunction: function(value) {
9dfefad3ae1d Code cleanup and manual compress
Michiel Broek <mbroek@mbse.eu>
parents: 494
diff changeset
78 var h = value.getHours(), m = value.getMinutes();
9dfefad3ae1d Code cleanup and manual compress
Michiel Broek <mbroek@mbse.eu>
parents: 494
diff changeset
79 return value.getDate() + '-' + (value.getMonth() + 1) + '-' + value.getFullYear() +
9dfefad3ae1d Code cleanup and manual compress
Michiel Broek <mbroek@mbse.eu>
parents: 494
diff changeset
80 ' ' + (h < 10 ? '0' + h : h) + ':' + (m < 10 ? '0' + m : m);
9dfefad3ae1d Code cleanup and manual compress
Michiel Broek <mbroek@mbse.eu>
parents: 494
diff changeset
81 },
9dfefad3ae1d Code cleanup and manual compress
Michiel Broek <mbroek@mbse.eu>
parents: 494
diff changeset
82 textRotationAngle: 300,
9dfefad3ae1d Code cleanup and manual compress
Michiel Broek <mbroek@mbse.eu>
parents: 494
diff changeset
83 },
9dfefad3ae1d Code cleanup and manual compress
Michiel Broek <mbroek@mbse.eu>
parents: 494
diff changeset
84 colorScheme: 'scheme01',
9dfefad3ae1d Code cleanup and manual compress
Michiel Broek <mbroek@mbse.eu>
parents: 494
diff changeset
85 seriesGroups: [{
9dfefad3ae1d Code cleanup and manual compress
Michiel Broek <mbroek@mbse.eu>
parents: 494
diff changeset
86 type: 'spline',
9dfefad3ae1d Code cleanup and manual compress
Michiel Broek <mbroek@mbse.eu>
parents: 494
diff changeset
87 valueAxis: {
9dfefad3ae1d Code cleanup and manual compress
Michiel Broek <mbroek@mbse.eu>
parents: 494
diff changeset
88 minValue: 0,
9dfefad3ae1d Code cleanup and manual compress
Michiel Broek <mbroek@mbse.eu>
parents: 494
diff changeset
89 description: 'Graden C'
9dfefad3ae1d Code cleanup and manual compress
Michiel Broek <mbroek@mbse.eu>
parents: 494
diff changeset
90 },
9dfefad3ae1d Code cleanup and manual compress
Michiel Broek <mbroek@mbse.eu>
parents: 494
diff changeset
91 series: [
9dfefad3ae1d Code cleanup and manual compress
Michiel Broek <mbroek@mbse.eu>
parents: 494
diff changeset
92 { dataField: 'pv_mlt', lineWidth: 2, displayText: 'MLT' },
9dfefad3ae1d Code cleanup and manual compress
Michiel Broek <mbroek@mbse.eu>
parents: 494
diff changeset
93 { dataField: 'sp_mlt', lineWidth: 1, displayText: 'mlt', opacity: 0.7 },
9dfefad3ae1d Code cleanup and manual compress
Michiel Broek <mbroek@mbse.eu>
parents: 494
diff changeset
94 { dataField: 'pv_hlt', lineWidth: 1, displayText: 'HLT' },
9dfefad3ae1d Code cleanup and manual compress
Michiel Broek <mbroek@mbse.eu>
parents: 494
diff changeset
95 { dataField: 'sp_hlt', lineWidth: 1, displayText: 'hlt', opacity: 0.7 },
9dfefad3ae1d Code cleanup and manual compress
Michiel Broek <mbroek@mbse.eu>
parents: 494
diff changeset
96 { dataField: 'pv_room', lineWidth: 1, displayText: 'Ruimte', opacity: 0.5 }
9dfefad3ae1d Code cleanup and manual compress
Michiel Broek <mbroek@mbse.eu>
parents: 494
diff changeset
97 ]
9dfefad3ae1d Code cleanup and manual compress
Michiel Broek <mbroek@mbse.eu>
parents: 494
diff changeset
98 }]
9dfefad3ae1d Code cleanup and manual compress
Michiel Broek <mbroek@mbse.eu>
parents: 494
diff changeset
99 };
9dfefad3ae1d Code cleanup and manual compress
Michiel Broek <mbroek@mbse.eu>
parents: 494
diff changeset
100 $('#brew_chart').jqxChart(settings);
294
1e09d1d102a8 Updated crontask to check for fermentation logs and update the products. Added initial brew log graph.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
101
527
9dfefad3ae1d Code cleanup and manual compress
Michiel Broek <mbroek@mbse.eu>
parents: 494
diff changeset
102 $('#print').click(function() {
9dfefad3ae1d Code cleanup and manual compress
Michiel Broek <mbroek@mbse.eu>
parents: 494
diff changeset
103 var content = $('#brew_chart')[0].outerHTML,
9dfefad3ae1d Code cleanup and manual compress
Michiel Broek <mbroek@mbse.eu>
parents: 494
diff changeset
104 newWindow = window.open('', '', 'width=865, height=425'),
9dfefad3ae1d Code cleanup and manual compress
Michiel Broek <mbroek@mbse.eu>
parents: 494
diff changeset
105 document = newWindow.document.open(),
9dfefad3ae1d Code cleanup and manual compress
Michiel Broek <mbroek@mbse.eu>
parents: 494
diff changeset
106 pageContent =
9dfefad3ae1d Code cleanup and manual compress
Michiel Broek <mbroek@mbse.eu>
parents: 494
diff changeset
107 '<!DOCTYPE html>' +
9dfefad3ae1d Code cleanup and manual compress
Michiel Broek <mbroek@mbse.eu>
parents: 494
diff changeset
108 '<html>' +
9dfefad3ae1d Code cleanup and manual compress
Michiel Broek <mbroek@mbse.eu>
parents: 494
diff changeset
109 '<head>' +
9dfefad3ae1d Code cleanup and manual compress
Michiel Broek <mbroek@mbse.eu>
parents: 494
diff changeset
110 '<link rel="stylesheet" href="jqwidgets/styles/jqx.base.css" type="text/css" />' +
9dfefad3ae1d Code cleanup and manual compress
Michiel Broek <mbroek@mbse.eu>
parents: 494
diff changeset
111 '<meta charset="utf-8" />' +
9dfefad3ae1d Code cleanup and manual compress
Michiel Broek <mbroek@mbse.eu>
parents: 494
diff changeset
112 '<title>' + my_code + ' ' + my_name + ' brouwdag</title>' +
9dfefad3ae1d Code cleanup and manual compress
Michiel Broek <mbroek@mbse.eu>
parents: 494
diff changeset
113 '</head>' +
9dfefad3ae1d Code cleanup and manual compress
Michiel Broek <mbroek@mbse.eu>
parents: 494
diff changeset
114 '<body>' + content + '</body></html>';
9dfefad3ae1d Code cleanup and manual compress
Michiel Broek <mbroek@mbse.eu>
parents: 494
diff changeset
115 document.write(pageContent);
9dfefad3ae1d Code cleanup and manual compress
Michiel Broek <mbroek@mbse.eu>
parents: 494
diff changeset
116 document.close();
9dfefad3ae1d Code cleanup and manual compress
Michiel Broek <mbroek@mbse.eu>
parents: 494
diff changeset
117 newWindow.print();
9dfefad3ae1d Code cleanup and manual compress
Michiel Broek <mbroek@mbse.eu>
parents: 494
diff changeset
118 });
9dfefad3ae1d Code cleanup and manual compress
Michiel Broek <mbroek@mbse.eu>
parents: 494
diff changeset
119 $('#print').jqxButton({ template: 'primary', width: 125, theme: theme });
294
1e09d1d102a8 Updated crontask to check for fermentation logs and update the products. Added initial brew log graph.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
120
527
9dfefad3ae1d Code cleanup and manual compress
Michiel Broek <mbroek@mbse.eu>
parents: 494
diff changeset
121 $('#pdfButton').click(function() {
9dfefad3ae1d Code cleanup and manual compress
Michiel Broek <mbroek@mbse.eu>
parents: 494
diff changeset
122 $('#brew_chart').jqxChart('saveAsPDF', 'brouw_' + my_code + '.pdf', getExportServer());
9dfefad3ae1d Code cleanup and manual compress
Michiel Broek <mbroek@mbse.eu>
parents: 494
diff changeset
123 });
9dfefad3ae1d Code cleanup and manual compress
Michiel Broek <mbroek@mbse.eu>
parents: 494
diff changeset
124 $('#pdfButton').jqxButton({ template: 'primary', width: 125, theme: theme });
294
1e09d1d102a8 Updated crontask to check for fermentation logs and update the products. Added initial brew log graph.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
125
527
9dfefad3ae1d Code cleanup and manual compress
Michiel Broek <mbroek@mbse.eu>
parents: 494
diff changeset
126 $('#pngButton').click(function() {
9dfefad3ae1d Code cleanup and manual compress
Michiel Broek <mbroek@mbse.eu>
parents: 494
diff changeset
127 $('#brew_chart').jqxChart('saveAsPNG', 'brouw_' + my_code + '.png', getExportServer());
9dfefad3ae1d Code cleanup and manual compress
Michiel Broek <mbroek@mbse.eu>
parents: 494
diff changeset
128 });
9dfefad3ae1d Code cleanup and manual compress
Michiel Broek <mbroek@mbse.eu>
parents: 494
diff changeset
129 $('#pngButton').jqxButton({ template: 'primary', width: 125, theme: theme });
294
1e09d1d102a8 Updated crontask to check for fermentation logs and update the products. Added initial brew log graph.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
130
527
9dfefad3ae1d Code cleanup and manual compress
Michiel Broek <mbroek@mbse.eu>
parents: 494
diff changeset
131 $('#Close').jqxButton({ template: 'success', width: 125, theme: theme });
9dfefad3ae1d Code cleanup and manual compress
Michiel Broek <mbroek@mbse.eu>
parents: 494
diff changeset
132 $('#Close').click(function() {
9dfefad3ae1d Code cleanup and manual compress
Michiel Broek <mbroek@mbse.eu>
parents: 494
diff changeset
133 window.close();
9dfefad3ae1d Code cleanup and manual compress
Michiel Broek <mbroek@mbse.eu>
parents: 494
diff changeset
134 });
294
1e09d1d102a8 Updated crontask to check for fermentation logs and update the products. Added initial brew log graph.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
135 });
1e09d1d102a8 Updated crontask to check for fermentation logs and update the products. Added initial brew log graph.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
136

mercurial