www/js/profile_fermentation.js

Fri, 11 Jan 2019 22:34:19 +0100

author
Michiel Broek <mbroek@mbse.eu>
date
Fri, 11 Jan 2019 22:34:19 +0100
changeset 186
a7c2c61a01ad
child 189
6470e5c6a001
permissions
-rw-r--r--

Added profile fermentation editor.

186
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
1 /*****************************************************************************
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
2 * Copyright (C) 2019
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
3 *
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
4 * Michiel Broek <mbroek at mbse dot eu>
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
5 *
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
6 * This file is part of BMS
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
7 *
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
8 * This is free software; you can redistribute it and/or modify it
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
9 * under the terms of the GNU General Public License as published by the
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
10 * Free Software Foundation; either version 2, or (at your option) any
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
11 * later version.
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
12 *
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
13 * Brewery Management System is distributed in the hope that it will be useful,
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
14 * but WITHOUT ANY WARRANTY; without even the implied warranty of
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
15 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
16 * General Public License for more details.
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
17 *
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
18 * You should have received a copy of the GNU General Public License
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
19 * along with ThermFerm; see the file COPYING. If not, write to the Free
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
20 * Software Foundation, 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
21 *****************************************************************************/
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
22
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
23
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
24 function createDelElements() {
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
25 $('#eventWindow').jqxWindow({
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
26 theme: theme,
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
27 position: { x: 490, y: 210 },
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
28 width: 300,
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
29 height: 175,
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
30 resizable: false,
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
31 isModal: true,
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
32 modalOpacity: 0.4,
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
33 okButton: $('#delOk'),
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
34 cancelButton: $('#delCancel'),
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
35 initContent: function () {
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
36 $('#delOk').jqxButton({ template: "danger", width: '65px', theme: theme });
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
37 $('#delCancel').jqxButton({ template: "success", width: '65px', theme: theme });
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
38 $('#delCancel').focus();
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
39 }
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
40 });
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
41 $('#eventWindow').jqxWindow('hide');
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
42 }
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
43
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
44
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
45 $(document).ready(function () {
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
46
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
47 var dataRecord = {};
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
48 var url = "includes/db_profile_fermentation.php";
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
49 // tooltips
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
50 $("#name").jqxTooltip({ content: 'De naam voor dit vergisting profiel.' });
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
51 $("#inittemp_lo").jqxTooltip({ content: 'De minimale begin temperatuur van dit profiel.' });
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
52 $("#inittemp_hi").jqxTooltip({ content: 'De maximale begin temperatuur van dit profiel.' });
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
53 // $("#fridgemode").jqxTooltip({ content: 'Wanneer deze actief is dan wordt geregeld als koelkast op de lucht temperatuur sensor in plaats van op de bier sensor.' });
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
54 $("#grid").jqxTooltip({ content: 'De maisch stappen in dit profiel.'});
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
55 // prepare the data
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
56 var source = {
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
57 datatype: "json",
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
58 cache: false,
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
59 datafields: [
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
60 { name: 'record', type: 'number' },
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
61 { name: 'uuid', type: 'string' },
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
62 { name: 'name', type: 'string' },
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
63 { name: 'inittemp_lo', type: 'float' },
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
64 { name: 'inittemp_hi', type: 'float' },
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
65 { name: 'fridgemode', type: 'bool' },
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
66 { name: 'totalsteps', type: 'int' },
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
67 { name: 'duration', type: 'int' },
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
68 { name: 'steps', type: 'array' }
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
69 ],
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
70 id: 'record',
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
71 url: url,
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
72 deleterow: function (rowid, commit) {
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
73 // synchronize with the server - send delete command
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
74 var data = "delete=true&" + $.param({ record: rowid });
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
75 $.ajax({
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
76 dataType: 'json',
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
77 url: url,
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
78 cache: false,
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
79 data: data,
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
80 success: function (data, status, xhr) {
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
81 // delete command is executed.
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
82 commit(true);
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
83 },
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
84 error: function (jqXHR, textStatus, errorThrown) {
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
85 commit(false);
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
86 }
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
87 });
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
88 },
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
89 addrow: function (rowid, rowdata, position, commit) {
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
90 var data = "insert=true&" + $.param(rowdata);
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
91 $.ajax({
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
92 dataType: 'json',
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
93 url: url,
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
94 cache: false,
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
95 data: data,
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
96 success: function (data, status, xhr) {
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
97 commit(true);
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
98 },
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
99 error: function(jqXHR, textStatus, errorThrown) {
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
100 commit(false);
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
101 }
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
102 });
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
103 },
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
104 updaterow: function (rowid, rowdata, commit) {
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
105 var data = "update=true&" + $.param(rowdata);
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
106 $.ajax({
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
107 dataType: 'json',
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
108 url: url,
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
109 cache: false,
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
110 data: data,
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
111 success: function (data, status, xhr) {
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
112 // update command is executed.
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
113 commit(true);
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
114 },
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
115 error: function(jqXHR, textStatus, errorThrown) {
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
116 commit(false);
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
117 }
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
118 });
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
119 }
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
120 };
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
121 var dataAdapter = new $.jqx.dataAdapter(source);
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
122
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
123 // Inline steps editor
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
124 var editsteps = function (data) {
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
125 var generaterow = function () {
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
126 var row = {};
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
127 row["name"] = "Stap 1";
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
128 row['steptime'] = 12;
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
129 row['resttime'] = 24;
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
130 row['target_lo'] = 22.0;
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
131 row['target_hi'] = 23.0;
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
132 row['fridgemode'] = 0;
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
133 return row;
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
134 }
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
135 var stepSource = {
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
136 localdata: data.steps,
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
137 datatype: "local",
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
138 datafields: [
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
139 { name: 'name', type: 'string' },
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
140 { name: 'steptime', type: 'float' },
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
141 { name: 'resttime', type: 'float' },
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
142 { name: 'target_lo', type: 'float' },
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
143 { name: 'target_hi', type: 'float' },
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
144 { name: 'fridgemode', type: 'int' }
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
145 ],
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
146 addrow: function (rowid, rowdata, position, commit) {
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
147 commit(true);
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
148 },
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
149 deleterow: function (rowid, commit) {
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
150 commit(true);
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
151 }
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
152 };
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
153 var stepAdapter = new $.jqx.dataAdapter(stepSource);
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
154 $("#grid").jqxGrid({
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
155 width: 800,
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
156 height: 330,
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
157 source: stepAdapter,
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
158 theme: theme,
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
159 selectionmode: 'singlerow',
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
160 editmode: 'selectedcell',
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
161 editable: true,
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
162 showtoolbar: true,
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
163 rendertoolbar: function (toolbar) {
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
164 var me = this;
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
165 var container = $("<div style='margin: 5px;'></div>");
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
166 toolbar.append(container);
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
167 container.append('<input style="margin-left: 100px;" id="addrowbutton" type="button" value="Nieuwe stap" />');
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
168 container.append('<input style="margin-left: 290px;" id="deleterowbutton" type="button" value="Verwijder stap" />');
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
169 $("#addrowbutton").jqxButton({ theme: theme, width: 150 });
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
170 $("#deleterowbutton").jqxButton({ theme: theme, width: 150 });
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
171 // create new row.
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
172 $("#addrowbutton").on('click', function () {
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
173 var datarow = generaterow();
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
174 var commit = $("#grid").jqxGrid('addrow', null, datarow);
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
175 });
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
176 // delete row.
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
177 $("#deleterowbutton").on('click', function () {
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
178 var selectedrowindex = $("#grid").jqxGrid('getselectedrowindex');
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
179 var rowscount = $("#grid").jqxGrid('getdatainformation').rowscount;
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
180 if (selectedrowindex >= 0 && selectedrowindex < rowscount) {
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
181 var id = $("#grid").jqxGrid('getrowid', selectedrowindex);
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
182 var commit = $("#grid").jqxGrid('deleterow', id);
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
183 }
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
184 });
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
185 },
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
186 columns: [
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
187 { text: 'Stap naam', datafield: 'name' },
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
188 { text: 'Min temperatuur', datafield: 'target_lo', width: 100, align: 'right', cellsalign: 'right', cellsformat: 'f1',
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
189 validation: function (cell, value) {
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
190 if (value < 0 || value > 40) {
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
191 return { result: false, message: "De temperatuur moet tussen 0 en 40 zijn." };
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
192 }
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
193 return true;
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
194 }
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
195 },
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
196 { text: 'Max temperatuur', datafield: 'target_hi', width: 100, align: 'right', cellsalign: 'right', cellsformat: 'f1',
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
197 validation: function (cell, value) {
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
198 if (value < 0 || value > 40) {
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
199 return { result: false, message: "De temperatuur moet tussen 0 en 40 zijn." };
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
200 }
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
201 return true;
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
202 }
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
203 },
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
204 { text: 'Koelkast', datafield: 'fridgemode', columntype: 'checkbox', width: 80 },
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
205 { text: 'Stap tijd', datafield: 'steptime', width: 80, align: 'right', cellsalign: 'right',
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
206 validation: function (cell, value) {
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
207 if (value < 0 || value > 14400) {
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
208 return { result: false, message: "De tijd moet tussen 0 en 14400 zijn." };
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
209 }
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
210 return true;
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
211 }
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
212 },
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
213 { text: 'Rust tijd', datafield: 'resttime', width: 80, align: 'right', cellsalign: 'right',
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
214 validation: function (cell, value) {
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
215 if (value < 0 || value > 14400) {
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
216 return { result: false, message: "De tijd moet tussen 0 en 14400 zijn." };
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
217 }
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
218 return true;
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
219 }
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
220 }
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
221 ]
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
222 });
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
223 // $("#grid").on('cellendedit', function (event) {
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
224 // $('#grid').jqxGrid('sortby', 'step_temp', 'asc');
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
225 // });
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
226 };
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
227
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
228 // initialize the input fields.
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
229 $("#name").jqxInput({ theme: theme, width: 640, height: 23 });
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
230 $("#inittemp_lo").jqxNumberInput({ inputMode: 'simple', spinMode: 'simple', theme: theme, width: 110, height: 23, min: 0, max: 40, decimalDigits: 1, spinButtons: true, spinButtonsStep: 0.1 });
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
231 $("#inittemp_hi").jqxNumberInput({ inputMode: 'simple', spinMode: 'simple', theme: theme, width: 110, height: 23, min: 0, max: 40, decimalDigits: 1, spinButtons: true, spinButtonsStep: 0.1 });
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
232 $("#fridgemode").jqxCheckBox({ theme: theme, height: 23, enableContainerClick: false });
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
233
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
234 var editrow = -1;
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
235 // initialize jqxGrid
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
236 $("#jqxgrid").jqxGrid({
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
237 width: 1280,
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
238 height: 630,
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
239 source: dataAdapter,
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
240 theme: theme,
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
241 showstatusbar: true,
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
242 localization: getLocalization(),
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
243 renderstatusbar: function (statusbar) {
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
244 var container = $("<div style='overflow: hidden; position: relative; margin: 5px;'></div>");
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
245 var addButton = $("<div style='float: right; margin-right: 15px;'><img style='position: relative; margin-top: 2px;' src='images/add.png'/><span style='margin-left: 4px; position: relative; top: -3px;'>Nieuw</span></div>");
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
246 container.append(addButton);
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
247 statusbar.append(container);
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
248 addButton.jqxButton({ theme: theme, width: 120, height: 20 });
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
249 // add new row.
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
250 addButton.click(function (event) {
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
251 editrow = -1;
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
252 $("#popupWindow").jqxWindow({ position: { x: 110, y: 40 } });
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
253 $("#name").val('');
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
254 dataRecord.uuid = '';
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
255 $("#inittemp_lo").val('20.0');
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
256 $("#inittemp_hi").val('20.0');
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
257 $("#fridgemode").val('0');
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
258 dataRecord.totalsteps = 0;
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
259 dataRecord.duration = 0;
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
260 editsteps('');
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
261 $("#popupWindow").jqxWindow('open');
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
262 });
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
263 },
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
264 filterable: true,
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
265 filtermode: 'excel',
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
266 columns: [
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
267 { text: 'Vergisting profiel', datafield: 'name' },
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
268 { text: 'Min. temperatuur', datafield: 'inittemp_lo', width: 150, align: 'right', cellsalign: 'right', cellsformat: 'f1' },
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
269 { text: 'Max. temperatuur', datafield: 'inittemp_hi', width: 150, align: 'right', cellsalign: 'right', cellsformat: 'f1' },
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
270 { text: 'Stappen', datafield: 'totalsteps', width: 80, align: 'right', cellsalign: 'right' },
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
271 { text: 'Tijdsduur', datafield: 'duration', width: 150, align: 'right', cellsalign: 'right',
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
272 cellsrenderer: function (row, columnfield, value, defaulthtml, columnproperties) {
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
273 //var rowData = $("#fermentableGrid").jqxGrid('getrowdata', row);
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
274 if (value < 24) {
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
275 var show = value+" uur";
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
276 } else {
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
277 var days = Math.floor(value / 24);
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
278 var hours = value % 24;
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
279 if (days == 1)
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
280 var show = days+" dag, "+hours+" uur";
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
281 else
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
282 var show = days+" dagen, "+hours+" uur";
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
283 }
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
284 return "<span style='margin: 3px; margin-top: 6px; float: "+columnproperties.cellsalign+"'>"+show+"</span>";
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
285 }
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
286 },
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
287 { text: 'Wijzig', datafield: 'Edit', width: 120, align: 'center', columntype: 'button', cellsrenderer: function () {
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
288 return "Wijzig";
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
289 }, buttonclick: function (row) {
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
290 // open the popup window when the user clicks a button.
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
291 editrow = row;
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
292 $("#popupWindow").jqxWindow({ position: { x: 110, y: 40 } });
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
293 // get the clicked row's data and initialize the input fields.
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
294 dataRecord = $("#jqxgrid").jqxGrid('getrowdata', editrow);
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
295 $("#name").val(dataRecord.name);
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
296 $("#inittemp_lo").val(parseFloat(dataRecord.inittemp_lo));
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
297 $("#inittemp_hi").val(parseFloat(dataRecord.inittemp_hi));
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
298 $("#fridgemode").val(parseFloat(dataRecord.fridgemode));
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
299 editsteps(dataRecord);
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
300 // show the popup window.
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
301 $("#popupWindow").jqxWindow('open');
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
302 }
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
303 }
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
304 ]
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
305 });
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
306 // initialize the popup window and buttons.
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
307 $("#popupWindow").jqxWindow({
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
308 width: 1050,
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
309 height: 550,
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
310 resizable: false,
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
311 theme: theme,
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
312 isModal: true,
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
313 autoOpen: false,
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
314 cancelButton: $("#Cancel"),
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
315 modalOpacity: 0.40
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
316 });
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
317 $("#popupWindow").on('open', function () {
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
318 $("#name").jqxInput('selectAll');
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
319 });
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
320 $("#Delete").jqxButton({ template: "danger", width: '90px', theme: theme });
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
321 $("#Delete").click(function () {
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
322 if (editrow >= 0) {
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
323 // Open a popup to confirm this action.
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
324 $('#eventWindow').jqxWindow('open');
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
325 $("#delOk").click(function () {
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
326 var rowID = $('#jqxgrid').jqxGrid('getrowid', editrow);
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
327 $("#jqxgrid").jqxGrid('deleterow', rowID);
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
328 });
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
329 }
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
330 $("#popupWindow").jqxWindow('hide');
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
331 });
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
332 $("#Cancel").jqxButton({ template: "primary", width: '90px', theme: theme });
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
333 $("#Save").jqxButton({ template: "success", width: '90px', theme: theme });
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
334 // update the edited row when the user clicks the 'Save' button.
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
335 $("#Save").click(function () {
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
336 var steprows = $('#grid').jqxGrid('getrows');
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
337 var rowID = -1;
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
338 if (editrow >= 0) {
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
339 var rowID = $('#jqxgrid').jqxGrid('getrowid', editrow);
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
340 }
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
341 var row = {
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
342 record: rowID,
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
343 uuid: dataRecord.uuid,
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
344 name: $("#name").val(),
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
345 inittemp_lo: parseFloat($("#inittemp_lo").jqxNumberInput('decimal')),
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
346 inittemp_hi: parseFloat($("#inittemp_hi").jqxNumberInput('decimal')),
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
347 fridgemode: $("#fridgemode").val(),
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
348 steps: steprows
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
349 };
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
350 if (editrow >= 0) {
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
351 $('#jqxgrid').jqxGrid('updaterow', rowID, row);
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
352 } else {
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
353 $('#jqxgrid').jqxGrid('addrow', null, row);
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
354 }
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
355 $("#popupWindow").jqxWindow('hide');
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
356 location.reload( true ); // reload ourself.
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
357 });
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
358 createDelElements();
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
359 });
a7c2c61a01ad Added profile fermentation editor.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
360

mercurial