www/js/recipes.js

Tue, 18 Sep 2018 23:16:14 +0200

author
Michiel Broek <mbroek@mbse.eu>
date
Tue, 18 Sep 2018 23:16:14 +0200
changeset 56
d4f4762e59b3
parent 55
3e29755638b6
child 57
bb9a06aa9acd
permissions
-rw-r--r--

Start inline fermentables editor

50
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
1 /*****************************************************************************
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
2 * Copyright (C) 2018
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
3 *
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
4 * Michiel Broek <mbroek at mbse dot eu>
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
5 *
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
6 * This file is part of BMS
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
7 *
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
8 * This is free software; you can redistribute it and/or modify it
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
9 * under the terms of the GNU General Public License as published by the
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
10 * Free Software Foundation; either version 2, or (at your option) any
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
11 * later version.
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
12 *
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
13 * BrewCloud is distributed in the hope that it will be useful, but
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
14 * WITHOUT ANY WARRANTY; without even the implied warranty of
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
15 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
16 * General Public License for more details.
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
17 *
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
18 * You should have received a copy of the GNU General Public License
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
19 * along with ThermFerm; see the file COPYING. If not, write to the Free
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
20 * Software Foundation, 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
21 *****************************************************************************/
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
22
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
23
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
24 function createDelElements() {
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
25 $('#eventWindow').jqxWindow({
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
26 theme: theme,
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
27 position: { x: 490, y: 210 },
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
28 width: 300,
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
29 height: 175,
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
30 resizable: false,
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
31 isModal: true,
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
32 modalOpacity: 0.4,
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
33 okButton: $('#delOk'),
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
34 cancelButton: $('#delCancel'),
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
35 initContent: function () {
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
36 $('#delOk').jqxButton({ width: '65px', theme: theme });
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
37 $('#delCancel').jqxButton({ width: '65px', theme: theme });
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
38 $('#delCancel').focus();
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
39 }
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
40 });
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
41 $('#eventWindow').jqxWindow('hide');
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
42 }
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
43
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
44
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
45 $(document).ready(function () {
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
46 var url = "includes/db_recipes.php";
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
47 // tooltips
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
48 $("#name").jqxTooltip({ content: 'De naam voor dit recept.' });
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
49 $("#notes").jqxTooltip({ content: 'De uitgebreide opmerkingen over dit recept.' });
51
7224109adfe1 More recipe editor changes
Michiel Broek <mbroek@mbse.eu>
parents: 50
diff changeset
50 $("#st_name").jqxTooltip({ content: 'De bierstijl naam voor dit recept.'});
50
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
51 $("#type").jqxTooltip({ content: 'Het brouw type van dit recept.' });
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
52 // prepare the data
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
53 var source = {
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
54 datatype: "json",
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
55 cache: false,
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
56 datafields: [
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
57 { name: 'record', type: 'number' },
51
7224109adfe1 More recipe editor changes
Michiel Broek <mbroek@mbse.eu>
parents: 50
diff changeset
58 { name: 'st_name', type: 'string' },
7224109adfe1 More recipe editor changes
Michiel Broek <mbroek@mbse.eu>
parents: 50
diff changeset
59 { name: 'st_letter', type: 'string' },
7224109adfe1 More recipe editor changes
Michiel Broek <mbroek@mbse.eu>
parents: 50
diff changeset
60 { name: 'st_guide', type: 'string' },
7224109adfe1 More recipe editor changes
Michiel Broek <mbroek@mbse.eu>
parents: 50
diff changeset
61 { name: 'st_og_min', type: 'float' },
7224109adfe1 More recipe editor changes
Michiel Broek <mbroek@mbse.eu>
parents: 50
diff changeset
62 { name: 'st_og_max', type: 'float' },
52
b1f2a893572f More progress on the recipes design
Michiel Broek <mbroek@mbse.eu>
parents: 51
diff changeset
63 { name: 'st_fg_min', type: 'float' },
b1f2a893572f More progress on the recipes design
Michiel Broek <mbroek@mbse.eu>
parents: 51
diff changeset
64 { name: 'st_fg_max', type: 'float' },
b1f2a893572f More progress on the recipes design
Michiel Broek <mbroek@mbse.eu>
parents: 51
diff changeset
65 { name: 'st_ibu_min', type: 'float' },
b1f2a893572f More progress on the recipes design
Michiel Broek <mbroek@mbse.eu>
parents: 51
diff changeset
66 { name: 'st_ibu_max', type: 'float' },
b1f2a893572f More progress on the recipes design
Michiel Broek <mbroek@mbse.eu>
parents: 51
diff changeset
67 { name: 'st_color_min', type: 'float' },
b1f2a893572f More progress on the recipes design
Michiel Broek <mbroek@mbse.eu>
parents: 51
diff changeset
68 { name: 'st_color_max', type: 'float' },
b1f2a893572f More progress on the recipes design
Michiel Broek <mbroek@mbse.eu>
parents: 51
diff changeset
69 { name: 'st_carb_min', type: 'float' },
b1f2a893572f More progress on the recipes design
Michiel Broek <mbroek@mbse.eu>
parents: 51
diff changeset
70 { name: 'st_carb_max', type: 'float' },
b1f2a893572f More progress on the recipes design
Michiel Broek <mbroek@mbse.eu>
parents: 51
diff changeset
71 { name: 'st_abv_min', type: 'float' },
b1f2a893572f More progress on the recipes design
Michiel Broek <mbroek@mbse.eu>
parents: 51
diff changeset
72 { name: 'st_abv_max', type: 'float' },
50
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
73 { name: 'name', type: 'string' },
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
74 { name: 'notes', type: 'string' },
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
75 { name: 'type', type: 'number' },
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
76 { name: 'batch_size', type: 'float' },
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
77 { name: 'boil_time', type: 'float' },
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
78 { name: 'efficiency', type: 'float' },
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
79 { name: 'est_og', type: 'float' },
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
80 { name: 'est_fg', type: 'float' },
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
81 { name: 'est_color', type: 'float' },
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
82 { name: 'color_method', type: 'string' },
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
83 { name: 'est_ibu', type: 'float' },
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
84 { name: 'ibu_method', type: 'string' },
51
7224109adfe1 More recipe editor changes
Michiel Broek <mbroek@mbse.eu>
parents: 50
diff changeset
85 { name: 'mash_sparge_temp', type: 'float' },
7224109adfe1 More recipe editor changes
Michiel Broek <mbroek@mbse.eu>
parents: 50
diff changeset
86 { name: 'mash_ph', type: 'float' },
7224109adfe1 More recipe editor changes
Michiel Broek <mbroek@mbse.eu>
parents: 50
diff changeset
87 { name: 'mash_name', type: 'string' },
7224109adfe1 More recipe editor changes
Michiel Broek <mbroek@mbse.eu>
parents: 50
diff changeset
88 { name: 'fermentables', type: 'string' },
7224109adfe1 More recipe editor changes
Michiel Broek <mbroek@mbse.eu>
parents: 50
diff changeset
89 { name: 'hops', type: 'string' },
7224109adfe1 More recipe editor changes
Michiel Broek <mbroek@mbse.eu>
parents: 50
diff changeset
90 { name: 'miscs', type: 'string' },
7224109adfe1 More recipe editor changes
Michiel Broek <mbroek@mbse.eu>
parents: 50
diff changeset
91 { name: 'yeasts', type: 'string' },
7224109adfe1 More recipe editor changes
Michiel Broek <mbroek@mbse.eu>
parents: 50
diff changeset
92 { name: 'waters', type: 'array' },
7224109adfe1 More recipe editor changes
Michiel Broek <mbroek@mbse.eu>
parents: 50
diff changeset
93 { name: 'mashs', type: 'string' }
50
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
94 ],
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
95 id: 'record',
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
96 url: url,
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
97 deleterow: function (rowid, commit) {
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
98 // synchronize with the server - send delete command
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
99 var data = "delete=true&" + $.param({ record: rowid });
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
100 $.ajax({
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
101 dataType: 'json',
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
102 url: url,
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
103 cache: false,
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
104 data: data,
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
105 success: function (data, status, xhr) {
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
106 // delete command is executed.
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
107 commit(true);
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
108 },
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
109 error: function (jqXHR, textStatus, errorThrown) {
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
110 commit(false);
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
111 }
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
112 });
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
113 },
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
114 addrow: function (rowid, rowdata, position, commit) {
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
115 var data = "insert=true&" + $.param(rowdata);
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
116 $.ajax({
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
117 dataType: 'json',
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
118 url: url,
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
119 cache: false,
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
120 data: data,
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
121 success: function (data, status, xhr) {
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
122 commit(true);
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
123 },
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
124 error: function(jqXHR, textStatus, errorThrown) {
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
125 commit(false);
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
126 }
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
127 });
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
128 },
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
129 updaterow: function (rowid, rowdata, commit) {
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
130 var data = "update=true&" + $.param(rowdata);
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
131 $.ajax({
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
132 dataType: 'json',
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
133 url: url,
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
134 cache: false,
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
135 data: data,
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
136 success: function (data, status, xhr) {
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
137 // update command is executed.
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
138 commit(true);
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
139 },
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
140 error: function(jqXHR, textStatus, errorThrown) {
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
141 commit(false);
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
142 }
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
143 });
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
144 }
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
145 };
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
146 var dataAdapter = new $.jqx.dataAdapter(source);
51
7224109adfe1 More recipe editor changes
Michiel Broek <mbroek@mbse.eu>
parents: 50
diff changeset
147
56
d4f4762e59b3 Start inline fermentables editor
Michiel Broek <mbroek@mbse.eu>
parents: 55
diff changeset
148 // Inline fermentables editor
d4f4762e59b3 Start inline fermentables editor
Michiel Broek <mbroek@mbse.eu>
parents: 55
diff changeset
149 var editFermentable = function (data) {
d4f4762e59b3 Start inline fermentables editor
Michiel Broek <mbroek@mbse.eu>
parents: 55
diff changeset
150 var fermentableSource = {
d4f4762e59b3 Start inline fermentables editor
Michiel Broek <mbroek@mbse.eu>
parents: 55
diff changeset
151 localdata: data.fermentables,
d4f4762e59b3 Start inline fermentables editor
Michiel Broek <mbroek@mbse.eu>
parents: 55
diff changeset
152 datatype: "local",
d4f4762e59b3 Start inline fermentables editor
Michiel Broek <mbroek@mbse.eu>
parents: 55
diff changeset
153 datafields: [
d4f4762e59b3 Start inline fermentables editor
Michiel Broek <mbroek@mbse.eu>
parents: 55
diff changeset
154 { name: 'f_name', type: 'string' },
d4f4762e59b3 Start inline fermentables editor
Michiel Broek <mbroek@mbse.eu>
parents: 55
diff changeset
155 { name: 'f_origin', type: 'string' },
d4f4762e59b3 Start inline fermentables editor
Michiel Broek <mbroek@mbse.eu>
parents: 55
diff changeset
156 { name: 'f_supplier', type: 'string' },
d4f4762e59b3 Start inline fermentables editor
Michiel Broek <mbroek@mbse.eu>
parents: 55
diff changeset
157 { name: 'f_amount', type: 'float' },
d4f4762e59b3 Start inline fermentables editor
Michiel Broek <mbroek@mbse.eu>
parents: 55
diff changeset
158 { name: 'f_cost', type: 'float' },
d4f4762e59b3 Start inline fermentables editor
Michiel Broek <mbroek@mbse.eu>
parents: 55
diff changeset
159 { name: 'f_type', type: 'string' },
d4f4762e59b3 Start inline fermentables editor
Michiel Broek <mbroek@mbse.eu>
parents: 55
diff changeset
160 { name: 'f_yield', type: 'float' },
d4f4762e59b3 Start inline fermentables editor
Michiel Broek <mbroek@mbse.eu>
parents: 55
diff changeset
161 { name: 'f_color', type: 'float' },
d4f4762e59b3 Start inline fermentables editor
Michiel Broek <mbroek@mbse.eu>
parents: 55
diff changeset
162 { name: 'f_coarse_fine_diff', type: 'float' },
d4f4762e59b3 Start inline fermentables editor
Michiel Broek <mbroek@mbse.eu>
parents: 55
diff changeset
163 { name: 'f_moisture', type: 'float' },
d4f4762e59b3 Start inline fermentables editor
Michiel Broek <mbroek@mbse.eu>
parents: 55
diff changeset
164 { name: 'f_diastatic_power', type: 'float' },
d4f4762e59b3 Start inline fermentables editor
Michiel Broek <mbroek@mbse.eu>
parents: 55
diff changeset
165 { name: 'f_protein', type: 'float' },
d4f4762e59b3 Start inline fermentables editor
Michiel Broek <mbroek@mbse.eu>
parents: 55
diff changeset
166 { name: 'f_max_in_batch', type: 'float' },
d4f4762e59b3 Start inline fermentables editor
Michiel Broek <mbroek@mbse.eu>
parents: 55
diff changeset
167 { name: 'f_graintype', type: 'string' },
d4f4762e59b3 Start inline fermentables editor
Michiel Broek <mbroek@mbse.eu>
parents: 55
diff changeset
168 { name: 'f_added', type: 'string' },
d4f4762e59b3 Start inline fermentables editor
Michiel Broek <mbroek@mbse.eu>
parents: 55
diff changeset
169 { name: 'f_dissolved_protein', type: 'float' },
d4f4762e59b3 Start inline fermentables editor
Michiel Broek <mbroek@mbse.eu>
parents: 55
diff changeset
170 { name: 'f_recommend_mash', type: 'bool' },
d4f4762e59b3 Start inline fermentables editor
Michiel Broek <mbroek@mbse.eu>
parents: 55
diff changeset
171 { name: 'f_add_after_boil', type: 'bool' },
d4f4762e59b3 Start inline fermentables editor
Michiel Broek <mbroek@mbse.eu>
parents: 55
diff changeset
172 { name: 'f_adjust_to_total_100', type: 'bool' },
d4f4762e59b3 Start inline fermentables editor
Michiel Broek <mbroek@mbse.eu>
parents: 55
diff changeset
173 { name: 'f_di_ph', type: 'float' }
d4f4762e59b3 Start inline fermentables editor
Michiel Broek <mbroek@mbse.eu>
parents: 55
diff changeset
174 ],
d4f4762e59b3 Start inline fermentables editor
Michiel Broek <mbroek@mbse.eu>
parents: 55
diff changeset
175 addrow: function (rowid, rowdata, position, commit) {
d4f4762e59b3 Start inline fermentables editor
Michiel Broek <mbroek@mbse.eu>
parents: 55
diff changeset
176 commit(true);
d4f4762e59b3 Start inline fermentables editor
Michiel Broek <mbroek@mbse.eu>
parents: 55
diff changeset
177 },
d4f4762e59b3 Start inline fermentables editor
Michiel Broek <mbroek@mbse.eu>
parents: 55
diff changeset
178 deleterow: function (rowid, commit) {
d4f4762e59b3 Start inline fermentables editor
Michiel Broek <mbroek@mbse.eu>
parents: 55
diff changeset
179 commit(true);
d4f4762e59b3 Start inline fermentables editor
Michiel Broek <mbroek@mbse.eu>
parents: 55
diff changeset
180 }
d4f4762e59b3 Start inline fermentables editor
Michiel Broek <mbroek@mbse.eu>
parents: 55
diff changeset
181 };
d4f4762e59b3 Start inline fermentables editor
Michiel Broek <mbroek@mbse.eu>
parents: 55
diff changeset
182 var fermentableAdapter = new $.jqx.dataAdapter(fermentableSource);
d4f4762e59b3 Start inline fermentables editor
Michiel Broek <mbroek@mbse.eu>
parents: 55
diff changeset
183 // dropdownlist datasource from inventory_fermentables
d4f4762e59b3 Start inline fermentables editor
Michiel Broek <mbroek@mbse.eu>
parents: 55
diff changeset
184 var fermentableUrl = "getfermentablesources.php";
d4f4762e59b3 Start inline fermentables editor
Michiel Broek <mbroek@mbse.eu>
parents: 55
diff changeset
185 var fermentableInvSource = {
d4f4762e59b3 Start inline fermentables editor
Michiel Broek <mbroek@mbse.eu>
parents: 55
diff changeset
186 datatype: "json",
d4f4762e59b3 Start inline fermentables editor
Michiel Broek <mbroek@mbse.eu>
parents: 55
diff changeset
187 datafields: [
d4f4762e59b3 Start inline fermentables editor
Michiel Broek <mbroek@mbse.eu>
parents: 55
diff changeset
188 { name: 'record', type: 'number' },
d4f4762e59b3 Start inline fermentables editor
Michiel Broek <mbroek@mbse.eu>
parents: 55
diff changeset
189 { name: 'name', type: 'string' },
d4f4762e59b3 Start inline fermentables editor
Michiel Broek <mbroek@mbse.eu>
parents: 55
diff changeset
190 { name: 'cost', type: 'float' },
d4f4762e59b3 Start inline fermentables editor
Michiel Broek <mbroek@mbse.eu>
parents: 55
diff changeset
191 { name: 'type', type: 'string' },
d4f4762e59b3 Start inline fermentables editor
Michiel Broek <mbroek@mbse.eu>
parents: 55
diff changeset
192 { name: 'yield', type: 'float' },
d4f4762e59b3 Start inline fermentables editor
Michiel Broek <mbroek@mbse.eu>
parents: 55
diff changeset
193 { name: 'color', type: 'float' },
d4f4762e59b3 Start inline fermentables editor
Michiel Broek <mbroek@mbse.eu>
parents: 55
diff changeset
194 { name: 'coarse_fine_diff', type: 'float' },
d4f4762e59b3 Start inline fermentables editor
Michiel Broek <mbroek@mbse.eu>
parents: 55
diff changeset
195 { name: 'moisture', type: 'float' },
d4f4762e59b3 Start inline fermentables editor
Michiel Broek <mbroek@mbse.eu>
parents: 55
diff changeset
196 { name: 'diastatic_power', type: 'float' },
d4f4762e59b3 Start inline fermentables editor
Michiel Broek <mbroek@mbse.eu>
parents: 55
diff changeset
197 { name: 'protein', type: 'float' },
d4f4762e59b3 Start inline fermentables editor
Michiel Broek <mbroek@mbse.eu>
parents: 55
diff changeset
198 { name: 'max_in_batch', type: 'float' },
d4f4762e59b3 Start inline fermentables editor
Michiel Broek <mbroek@mbse.eu>
parents: 55
diff changeset
199 { name: 'graintype', type: 'string' },
d4f4762e59b3 Start inline fermentables editor
Michiel Broek <mbroek@mbse.eu>
parents: 55
diff changeset
200 { name: 'added', type: 'string' },
d4f4762e59b3 Start inline fermentables editor
Michiel Broek <mbroek@mbse.eu>
parents: 55
diff changeset
201 { name: 'dissolved_protein', type: 'float' },
d4f4762e59b3 Start inline fermentables editor
Michiel Broek <mbroek@mbse.eu>
parents: 55
diff changeset
202 { name: 'adjust_to_total_100', type: 'bool' },
d4f4762e59b3 Start inline fermentables editor
Michiel Broek <mbroek@mbse.eu>
parents: 55
diff changeset
203 { name: 'di_ph', type: 'float' }
d4f4762e59b3 Start inline fermentables editor
Michiel Broek <mbroek@mbse.eu>
parents: 55
diff changeset
204 ],
d4f4762e59b3 Start inline fermentables editor
Michiel Broek <mbroek@mbse.eu>
parents: 55
diff changeset
205 url: fermentableUrl,
d4f4762e59b3 Start inline fermentables editor
Michiel Broek <mbroek@mbse.eu>
parents: 55
diff changeset
206 async: true
d4f4762e59b3 Start inline fermentables editor
Michiel Broek <mbroek@mbse.eu>
parents: 55
diff changeset
207 };
d4f4762e59b3 Start inline fermentables editor
Michiel Broek <mbroek@mbse.eu>
parents: 55
diff changeset
208 var fermentablelist = new $.jqx.dataAdapter(fermentableInvSource);
d4f4762e59b3 Start inline fermentables editor
Michiel Broek <mbroek@mbse.eu>
parents: 55
diff changeset
209
d4f4762e59b3 Start inline fermentables editor
Michiel Broek <mbroek@mbse.eu>
parents: 55
diff changeset
210 $("#fermentableGrid").jqxGrid({
d4f4762e59b3 Start inline fermentables editor
Michiel Broek <mbroek@mbse.eu>
parents: 55
diff changeset
211 width: 960,
d4f4762e59b3 Start inline fermentables editor
Michiel Broek <mbroek@mbse.eu>
parents: 55
diff changeset
212 height: 400,
d4f4762e59b3 Start inline fermentables editor
Michiel Broek <mbroek@mbse.eu>
parents: 55
diff changeset
213 source: fermentableAdapter,
d4f4762e59b3 Start inline fermentables editor
Michiel Broek <mbroek@mbse.eu>
parents: 55
diff changeset
214 theme: theme,
d4f4762e59b3 Start inline fermentables editor
Michiel Broek <mbroek@mbse.eu>
parents: 55
diff changeset
215 selectionmode: 'singlerow',
d4f4762e59b3 Start inline fermentables editor
Michiel Broek <mbroek@mbse.eu>
parents: 55
diff changeset
216 editmode: 'selectedrow',
d4f4762e59b3 Start inline fermentables editor
Michiel Broek <mbroek@mbse.eu>
parents: 55
diff changeset
217 editable: true,
d4f4762e59b3 Start inline fermentables editor
Michiel Broek <mbroek@mbse.eu>
parents: 55
diff changeset
218 localization: getLocalization(),
d4f4762e59b3 Start inline fermentables editor
Michiel Broek <mbroek@mbse.eu>
parents: 55
diff changeset
219 showtoolbar: true,
d4f4762e59b3 Start inline fermentables editor
Michiel Broek <mbroek@mbse.eu>
parents: 55
diff changeset
220 rendertoolbar: function (toolbar) {
d4f4762e59b3 Start inline fermentables editor
Michiel Broek <mbroek@mbse.eu>
parents: 55
diff changeset
221 var me = this;
d4f4762e59b3 Start inline fermentables editor
Michiel Broek <mbroek@mbse.eu>
parents: 55
diff changeset
222 var container = $("<div style='overflow: hidden; position: relative; margin: 5px;'></div>");
d4f4762e59b3 Start inline fermentables editor
Michiel Broek <mbroek@mbse.eu>
parents: 55
diff changeset
223 toolbar.append(container);
d4f4762e59b3 Start inline fermentables editor
Michiel Broek <mbroek@mbse.eu>
parents: 55
diff changeset
224 container.append('<div style="float: left; margin-left: 165px;" id="addrowbutton"></div>');
d4f4762e59b3 Start inline fermentables editor
Michiel Broek <mbroek@mbse.eu>
parents: 55
diff changeset
225 container.append('<input style="float: left; margin-left: 230px;" id="deleterowbutton" type="button" value="Verwijder mout" />');
d4f4762e59b3 Start inline fermentables editor
Michiel Broek <mbroek@mbse.eu>
parents: 55
diff changeset
226 // add fermentable from dropdownlist.
d4f4762e59b3 Start inline fermentables editor
Michiel Broek <mbroek@mbse.eu>
parents: 55
diff changeset
227 $("#addrowbutton").jqxDropDownList({
d4f4762e59b3 Start inline fermentables editor
Michiel Broek <mbroek@mbse.eu>
parents: 55
diff changeset
228 placeHolder: "Kies mout:",
d4f4762e59b3 Start inline fermentables editor
Michiel Broek <mbroek@mbse.eu>
parents: 55
diff changeset
229 theme: theme,
d4f4762e59b3 Start inline fermentables editor
Michiel Broek <mbroek@mbse.eu>
parents: 55
diff changeset
230 source: fermentablelist,
d4f4762e59b3 Start inline fermentables editor
Michiel Broek <mbroek@mbse.eu>
parents: 55
diff changeset
231 displayMember: "name",
d4f4762e59b3 Start inline fermentables editor
Michiel Broek <mbroek@mbse.eu>
parents: 55
diff changeset
232 width: 150,
d4f4762e59b3 Start inline fermentables editor
Michiel Broek <mbroek@mbse.eu>
parents: 55
diff changeset
233 height: 27,
d4f4762e59b3 Start inline fermentables editor
Michiel Broek <mbroek@mbse.eu>
parents: 55
diff changeset
234 dropDownWidth: 300
d4f4762e59b3 Start inline fermentables editor
Michiel Broek <mbroek@mbse.eu>
parents: 55
diff changeset
235 });
d4f4762e59b3 Start inline fermentables editor
Michiel Broek <mbroek@mbse.eu>
parents: 55
diff changeset
236 $("#addrowbutton").on('select', function (event) {
d4f4762e59b3 Start inline fermentables editor
Michiel Broek <mbroek@mbse.eu>
parents: 55
diff changeset
237 if (event.args) {
d4f4762e59b3 Start inline fermentables editor
Michiel Broek <mbroek@mbse.eu>
parents: 55
diff changeset
238 var index = event.args.index;
d4f4762e59b3 Start inline fermentables editor
Michiel Broek <mbroek@mbse.eu>
parents: 55
diff changeset
239 var datarecord = fermentablelist.records[index];
d4f4762e59b3 Start inline fermentables editor
Michiel Broek <mbroek@mbse.eu>
parents: 55
diff changeset
240 var row = {};
d4f4762e59b3 Start inline fermentables editor
Michiel Broek <mbroek@mbse.eu>
parents: 55
diff changeset
241 row["f_name"] = datarecord.name;
d4f4762e59b3 Start inline fermentables editor
Michiel Broek <mbroek@mbse.eu>
parents: 55
diff changeset
242 row["f_amount"] = 0;
d4f4762e59b3 Start inline fermentables editor
Michiel Broek <mbroek@mbse.eu>
parents: 55
diff changeset
243 row["f_cost"] = datarecord.cost;
d4f4762e59b3 Start inline fermentables editor
Michiel Broek <mbroek@mbse.eu>
parents: 55
diff changeset
244 var commit = $("#fermentableGrid").jqxGrid('addrow', null, row);
d4f4762e59b3 Start inline fermentables editor
Michiel Broek <mbroek@mbse.eu>
parents: 55
diff changeset
245 }
d4f4762e59b3 Start inline fermentables editor
Michiel Broek <mbroek@mbse.eu>
parents: 55
diff changeset
246 });
d4f4762e59b3 Start inline fermentables editor
Michiel Broek <mbroek@mbse.eu>
parents: 55
diff changeset
247
d4f4762e59b3 Start inline fermentables editor
Michiel Broek <mbroek@mbse.eu>
parents: 55
diff changeset
248 // delete selected fermentable.
d4f4762e59b3 Start inline fermentables editor
Michiel Broek <mbroek@mbse.eu>
parents: 55
diff changeset
249 // Precentage aanpassen basis mout.
d4f4762e59b3 Start inline fermentables editor
Michiel Broek <mbroek@mbse.eu>
parents: 55
diff changeset
250 $("#deleterowbutton").jqxButton({ theme: theme, height: 27, width: 150 });
d4f4762e59b3 Start inline fermentables editor
Michiel Broek <mbroek@mbse.eu>
parents: 55
diff changeset
251 $("#deleterowbutton").on('click', function () {
d4f4762e59b3 Start inline fermentables editor
Michiel Broek <mbroek@mbse.eu>
parents: 55
diff changeset
252 var selectedrowindex = $("#fermentableGrid").jqxGrid('getselectedrowindex');
d4f4762e59b3 Start inline fermentables editor
Michiel Broek <mbroek@mbse.eu>
parents: 55
diff changeset
253 var rowscount = $("#fermentableGrid").jqxGrid('getdatainformation').rowscount;
d4f4762e59b3 Start inline fermentables editor
Michiel Broek <mbroek@mbse.eu>
parents: 55
diff changeset
254 if (selectedrowindex >= 0 && selectedrowindex < rowscount) {
d4f4762e59b3 Start inline fermentables editor
Michiel Broek <mbroek@mbse.eu>
parents: 55
diff changeset
255 var id = $("#fermentableGrid").jqxGrid('getrowid', selectedrowindex);
d4f4762e59b3 Start inline fermentables editor
Michiel Broek <mbroek@mbse.eu>
parents: 55
diff changeset
256 var commit = $("#fermentableGrid").jqxGrid('deleterow', id);
d4f4762e59b3 Start inline fermentables editor
Michiel Broek <mbroek@mbse.eu>
parents: 55
diff changeset
257 }
d4f4762e59b3 Start inline fermentables editor
Michiel Broek <mbroek@mbse.eu>
parents: 55
diff changeset
258 });
d4f4762e59b3 Start inline fermentables editor
Michiel Broek <mbroek@mbse.eu>
parents: 55
diff changeset
259 },
d4f4762e59b3 Start inline fermentables editor
Michiel Broek <mbroek@mbse.eu>
parents: 55
diff changeset
260 columns: [
d4f4762e59b3 Start inline fermentables editor
Michiel Broek <mbroek@mbse.eu>
parents: 55
diff changeset
261 { text: 'Mout/suiker', editable: false, datafield: 'f_name' },
d4f4762e59b3 Start inline fermentables editor
Michiel Broek <mbroek@mbse.eu>
parents: 55
diff changeset
262 { text: 'Type', editable: false, width: 100, datafield: 'f_type' },
d4f4762e59b3 Start inline fermentables editor
Michiel Broek <mbroek@mbse.eu>
parents: 55
diff changeset
263 { text: 'Gewicht', datafield: 'f_amount', width: 110, align: 'right', cellsalign: 'right', cellsformat: 'f3',
d4f4762e59b3 Start inline fermentables editor
Michiel Broek <mbroek@mbse.eu>
parents: 55
diff changeset
264 columntype: 'numberinput',
d4f4762e59b3 Start inline fermentables editor
Michiel Broek <mbroek@mbse.eu>
parents: 55
diff changeset
265 validation: function (cell, value) {
d4f4762e59b3 Start inline fermentables editor
Michiel Broek <mbroek@mbse.eu>
parents: 55
diff changeset
266 if (value < 0 || value > 100000000000 ) {
d4f4762e59b3 Start inline fermentables editor
Michiel Broek <mbroek@mbse.eu>
parents: 55
diff changeset
267 return { result: false, message: "Volume moet 0-~ zijn" };
d4f4762e59b3 Start inline fermentables editor
Michiel Broek <mbroek@mbse.eu>
parents: 55
diff changeset
268 }
d4f4762e59b3 Start inline fermentables editor
Michiel Broek <mbroek@mbse.eu>
parents: 55
diff changeset
269 return true;
d4f4762e59b3 Start inline fermentables editor
Michiel Broek <mbroek@mbse.eu>
parents: 55
diff changeset
270 }
d4f4762e59b3 Start inline fermentables editor
Michiel Broek <mbroek@mbse.eu>
parents: 55
diff changeset
271 }
d4f4762e59b3 Start inline fermentables editor
Michiel Broek <mbroek@mbse.eu>
parents: 55
diff changeset
272 ]
d4f4762e59b3 Start inline fermentables editor
Michiel Broek <mbroek@mbse.eu>
parents: 55
diff changeset
273 })
d4f4762e59b3 Start inline fermentables editor
Michiel Broek <mbroek@mbse.eu>
parents: 55
diff changeset
274 };
d4f4762e59b3 Start inline fermentables editor
Michiel Broek <mbroek@mbse.eu>
parents: 55
diff changeset
275
d4f4762e59b3 Start inline fermentables editor
Michiel Broek <mbroek@mbse.eu>
parents: 55
diff changeset
276 // Inline hops editor
d4f4762e59b3 Start inline fermentables editor
Michiel Broek <mbroek@mbse.eu>
parents: 55
diff changeset
277
d4f4762e59b3 Start inline fermentables editor
Michiel Broek <mbroek@mbse.eu>
parents: 55
diff changeset
278 // Inline miscs editor
d4f4762e59b3 Start inline fermentables editor
Michiel Broek <mbroek@mbse.eu>
parents: 55
diff changeset
279
d4f4762e59b3 Start inline fermentables editor
Michiel Broek <mbroek@mbse.eu>
parents: 55
diff changeset
280 // Inline yeasts editor
d4f4762e59b3 Start inline fermentables editor
Michiel Broek <mbroek@mbse.eu>
parents: 55
diff changeset
281
51
7224109adfe1 More recipe editor changes
Michiel Broek <mbroek@mbse.eu>
parents: 50
diff changeset
282 // Inline waters editor
7224109adfe1 More recipe editor changes
Michiel Broek <mbroek@mbse.eu>
parents: 50
diff changeset
283 var editWater = function (data) {
7224109adfe1 More recipe editor changes
Michiel Broek <mbroek@mbse.eu>
parents: 50
diff changeset
284 var waterSource = {
7224109adfe1 More recipe editor changes
Michiel Broek <mbroek@mbse.eu>
parents: 50
diff changeset
285 localdata: data.waters,
50
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
286 datatype: "local",
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
287 datafields: [
51
7224109adfe1 More recipe editor changes
Michiel Broek <mbroek@mbse.eu>
parents: 50
diff changeset
288 { name: 'w_name', type: 'string' },
7224109adfe1 More recipe editor changes
Michiel Broek <mbroek@mbse.eu>
parents: 50
diff changeset
289 { name: 'w_amount', type: 'float' },
7224109adfe1 More recipe editor changes
Michiel Broek <mbroek@mbse.eu>
parents: 50
diff changeset
290 { name: 'w_calcium', type: 'float' },
7224109adfe1 More recipe editor changes
Michiel Broek <mbroek@mbse.eu>
parents: 50
diff changeset
291 { name: 'w_sulfate', type: 'float' },
7224109adfe1 More recipe editor changes
Michiel Broek <mbroek@mbse.eu>
parents: 50
diff changeset
292 { name: 'w_chloride', type: 'float' },
7224109adfe1 More recipe editor changes
Michiel Broek <mbroek@mbse.eu>
parents: 50
diff changeset
293 { name: 'w_sodium', type: 'float' },
7224109adfe1 More recipe editor changes
Michiel Broek <mbroek@mbse.eu>
parents: 50
diff changeset
294 { name: 'w_magnesium', type: 'float' },
7224109adfe1 More recipe editor changes
Michiel Broek <mbroek@mbse.eu>
parents: 50
diff changeset
295 { name: 'w_ph', type: 'float' },
7224109adfe1 More recipe editor changes
Michiel Broek <mbroek@mbse.eu>
parents: 50
diff changeset
296 { name: 'w_total_alkalinity', type: 'float' },
7224109adfe1 More recipe editor changes
Michiel Broek <mbroek@mbse.eu>
parents: 50
diff changeset
297 { name: 'w_cost', type: 'float' },
7224109adfe1 More recipe editor changes
Michiel Broek <mbroek@mbse.eu>
parents: 50
diff changeset
298 { name: 'w_default_water', type: 'bool' }
50
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
299 ],
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
300 addrow: function (rowid, rowdata, position, commit) {
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
301 commit(true);
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
302 },
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
303 deleterow: function (rowid, commit) {
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
304 commit(true);
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
305 }
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
306 };
51
7224109adfe1 More recipe editor changes
Michiel Broek <mbroek@mbse.eu>
parents: 50
diff changeset
307 var waterAdapter = new $.jqx.dataAdapter(waterSource);
55
3e29755638b6 Add and delete water completed.
Michiel Broek <mbroek@mbse.eu>
parents: 54
diff changeset
308 // dropdownlist datasource from inventory_waters
54
294dda7f1779 Beginning of water totals and selecting
Michiel Broek <mbroek@mbse.eu>
parents: 53
diff changeset
309 var waterUrl = "getwatersources.php";
294dda7f1779 Beginning of water totals and selecting
Michiel Broek <mbroek@mbse.eu>
parents: 53
diff changeset
310 var waterInvSource = {
294dda7f1779 Beginning of water totals and selecting
Michiel Broek <mbroek@mbse.eu>
parents: 53
diff changeset
311 datatype: "json",
294dda7f1779 Beginning of water totals and selecting
Michiel Broek <mbroek@mbse.eu>
parents: 53
diff changeset
312 datafields: [
294dda7f1779 Beginning of water totals and selecting
Michiel Broek <mbroek@mbse.eu>
parents: 53
diff changeset
313 { name: 'record', type: 'number' },
294dda7f1779 Beginning of water totals and selecting
Michiel Broek <mbroek@mbse.eu>
parents: 53
diff changeset
314 { name: 'name', type: 'string' },
294dda7f1779 Beginning of water totals and selecting
Michiel Broek <mbroek@mbse.eu>
parents: 53
diff changeset
315 { name: 'unlimited_stock', type: 'bool' },
294dda7f1779 Beginning of water totals and selecting
Michiel Broek <mbroek@mbse.eu>
parents: 53
diff changeset
316 { name: 'calcium', type: 'float' },
294dda7f1779 Beginning of water totals and selecting
Michiel Broek <mbroek@mbse.eu>
parents: 53
diff changeset
317 { name: 'sulfate', type: 'float' },
294dda7f1779 Beginning of water totals and selecting
Michiel Broek <mbroek@mbse.eu>
parents: 53
diff changeset
318 { name: 'chloride', type: 'float' },
294dda7f1779 Beginning of water totals and selecting
Michiel Broek <mbroek@mbse.eu>
parents: 53
diff changeset
319 { name: 'sodium', type: 'float' },
294dda7f1779 Beginning of water totals and selecting
Michiel Broek <mbroek@mbse.eu>
parents: 53
diff changeset
320 { name: 'magnesium', type: 'float' },
294dda7f1779 Beginning of water totals and selecting
Michiel Broek <mbroek@mbse.eu>
parents: 53
diff changeset
321 { name: 'ph', type: 'float' },
294dda7f1779 Beginning of water totals and selecting
Michiel Broek <mbroek@mbse.eu>
parents: 53
diff changeset
322 { name: 'total_alkalinity', type: 'float' },
294dda7f1779 Beginning of water totals and selecting
Michiel Broek <mbroek@mbse.eu>
parents: 53
diff changeset
323 { name: 'cost', type: 'float' },
294dda7f1779 Beginning of water totals and selecting
Michiel Broek <mbroek@mbse.eu>
parents: 53
diff changeset
324 { name: 'default_water', type: 'bool' }
294dda7f1779 Beginning of water totals and selecting
Michiel Broek <mbroek@mbse.eu>
parents: 53
diff changeset
325 ],
294dda7f1779 Beginning of water totals and selecting
Michiel Broek <mbroek@mbse.eu>
parents: 53
diff changeset
326 url: waterUrl,
294dda7f1779 Beginning of water totals and selecting
Michiel Broek <mbroek@mbse.eu>
parents: 53
diff changeset
327 async: true
294dda7f1779 Beginning of water totals and selecting
Michiel Broek <mbroek@mbse.eu>
parents: 53
diff changeset
328 };
294dda7f1779 Beginning of water totals and selecting
Michiel Broek <mbroek@mbse.eu>
parents: 53
diff changeset
329 var waterlist = new $.jqx.dataAdapter(waterInvSource);
294dda7f1779 Beginning of water totals and selecting
Michiel Broek <mbroek@mbse.eu>
parents: 53
diff changeset
330
51
7224109adfe1 More recipe editor changes
Michiel Broek <mbroek@mbse.eu>
parents: 50
diff changeset
331 $("#waterGrid").jqxGrid({
7224109adfe1 More recipe editor changes
Michiel Broek <mbroek@mbse.eu>
parents: 50
diff changeset
332 width: 960,
7224109adfe1 More recipe editor changes
Michiel Broek <mbroek@mbse.eu>
parents: 50
diff changeset
333 height: 200,
7224109adfe1 More recipe editor changes
Michiel Broek <mbroek@mbse.eu>
parents: 50
diff changeset
334 source: waterAdapter,
50
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
335 theme: theme,
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
336 selectionmode: 'singlerow',
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
337 editmode: 'selectedrow',
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
338 editable: true,
56
d4f4762e59b3 Start inline fermentables editor
Michiel Broek <mbroek@mbse.eu>
parents: 55
diff changeset
339 localization: getLocalization(),
50
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
340 showtoolbar: true,
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
341 rendertoolbar: function (toolbar) {
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
342 var me = this;
55
3e29755638b6 Add and delete water completed.
Michiel Broek <mbroek@mbse.eu>
parents: 54
diff changeset
343 var container = $("<div style='overflow: hidden; position: relative; margin: 5px;'></div>");
50
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
344 toolbar.append(container);
55
3e29755638b6 Add and delete water completed.
Michiel Broek <mbroek@mbse.eu>
parents: 54
diff changeset
345 container.append('<div style="float: left; margin-left: 165px;" id="addrowbutton"></div>');
3e29755638b6 Add and delete water completed.
Michiel Broek <mbroek@mbse.eu>
parents: 54
diff changeset
346 container.append('<input style="float: left; margin-left: 230px;" id="deleterowbutton" type="button" value="Verwijder water" />');
3e29755638b6 Add and delete water completed.
Michiel Broek <mbroek@mbse.eu>
parents: 54
diff changeset
347 // add water from dropdownlist.
54
294dda7f1779 Beginning of water totals and selecting
Michiel Broek <mbroek@mbse.eu>
parents: 53
diff changeset
348 $("#addrowbutton").jqxDropDownList({
294dda7f1779 Beginning of water totals and selecting
Michiel Broek <mbroek@mbse.eu>
parents: 53
diff changeset
349 placeHolder: "Kies water:",
294dda7f1779 Beginning of water totals and selecting
Michiel Broek <mbroek@mbse.eu>
parents: 53
diff changeset
350 theme: theme,
294dda7f1779 Beginning of water totals and selecting
Michiel Broek <mbroek@mbse.eu>
parents: 53
diff changeset
351 source: waterlist,
294dda7f1779 Beginning of water totals and selecting
Michiel Broek <mbroek@mbse.eu>
parents: 53
diff changeset
352 displayMember: "name",
294dda7f1779 Beginning of water totals and selecting
Michiel Broek <mbroek@mbse.eu>
parents: 53
diff changeset
353 width: 150,
55
3e29755638b6 Add and delete water completed.
Michiel Broek <mbroek@mbse.eu>
parents: 54
diff changeset
354 height: 27,
54
294dda7f1779 Beginning of water totals and selecting
Michiel Broek <mbroek@mbse.eu>
parents: 53
diff changeset
355 dropDownWidth: 300
294dda7f1779 Beginning of water totals and selecting
Michiel Broek <mbroek@mbse.eu>
parents: 53
diff changeset
356 });
294dda7f1779 Beginning of water totals and selecting
Michiel Broek <mbroek@mbse.eu>
parents: 53
diff changeset
357 $("#addrowbutton").on('select', function (event) {
55
3e29755638b6 Add and delete water completed.
Michiel Broek <mbroek@mbse.eu>
parents: 54
diff changeset
358 if (event.args) {
3e29755638b6 Add and delete water completed.
Michiel Broek <mbroek@mbse.eu>
parents: 54
diff changeset
359 var index = event.args.index;
3e29755638b6 Add and delete water completed.
Michiel Broek <mbroek@mbse.eu>
parents: 54
diff changeset
360 var datarecord = waterlist.records[index];
3e29755638b6 Add and delete water completed.
Michiel Broek <mbroek@mbse.eu>
parents: 54
diff changeset
361 var row = {};
3e29755638b6 Add and delete water completed.
Michiel Broek <mbroek@mbse.eu>
parents: 54
diff changeset
362 row["w_name"] = datarecord.name;
3e29755638b6 Add and delete water completed.
Michiel Broek <mbroek@mbse.eu>
parents: 54
diff changeset
363 row["w_amount"] = 0;
3e29755638b6 Add and delete water completed.
Michiel Broek <mbroek@mbse.eu>
parents: 54
diff changeset
364 row["w_calcium"] = datarecord.calcium;
3e29755638b6 Add and delete water completed.
Michiel Broek <mbroek@mbse.eu>
parents: 54
diff changeset
365 row["w_sulfate"] = datarecord.sulfate;
3e29755638b6 Add and delete water completed.
Michiel Broek <mbroek@mbse.eu>
parents: 54
diff changeset
366 row["w_chloride"] = datarecord.chloride;
3e29755638b6 Add and delete water completed.
Michiel Broek <mbroek@mbse.eu>
parents: 54
diff changeset
367 row["w_sodium"] = datarecord.sodium;
3e29755638b6 Add and delete water completed.
Michiel Broek <mbroek@mbse.eu>
parents: 54
diff changeset
368 row["w_magnesium"] = datarecord.magnesium;
3e29755638b6 Add and delete water completed.
Michiel Broek <mbroek@mbse.eu>
parents: 54
diff changeset
369 row["w_ph"] = datarecord.ph;
3e29755638b6 Add and delete water completed.
Michiel Broek <mbroek@mbse.eu>
parents: 54
diff changeset
370 row["w_total_alkalinity"] = datarecord.total_alkalinity;
3e29755638b6 Add and delete water completed.
Michiel Broek <mbroek@mbse.eu>
parents: 54
diff changeset
371 row["w_default_water"] = datarecord.default_water;
3e29755638b6 Add and delete water completed.
Michiel Broek <mbroek@mbse.eu>
parents: 54
diff changeset
372 row["w_cost"] = datarecord.cost;
3e29755638b6 Add and delete water completed.
Michiel Broek <mbroek@mbse.eu>
parents: 54
diff changeset
373 var commit = $("#waterGrid").jqxGrid('addrow', null, row);
3e29755638b6 Add and delete water completed.
Michiel Broek <mbroek@mbse.eu>
parents: 54
diff changeset
374 }
3e29755638b6 Add and delete water completed.
Michiel Broek <mbroek@mbse.eu>
parents: 54
diff changeset
375 });
54
294dda7f1779 Beginning of water totals and selecting
Michiel Broek <mbroek@mbse.eu>
parents: 53
diff changeset
376
55
3e29755638b6 Add and delete water completed.
Michiel Broek <mbroek@mbse.eu>
parents: 54
diff changeset
377 // delete selected water.
3e29755638b6 Add and delete water completed.
Michiel Broek <mbroek@mbse.eu>
parents: 54
diff changeset
378 // Overgebleven waters in volume verhogen met het verwijderde water.
3e29755638b6 Add and delete water completed.
Michiel Broek <mbroek@mbse.eu>
parents: 54
diff changeset
379 $("#deleterowbutton").jqxButton({ theme: theme, height: 27, width: 150 });
3e29755638b6 Add and delete water completed.
Michiel Broek <mbroek@mbse.eu>
parents: 54
diff changeset
380 $("#deleterowbutton").on('click', function () {
3e29755638b6 Add and delete water completed.
Michiel Broek <mbroek@mbse.eu>
parents: 54
diff changeset
381 var selectedrowindex = $("#waterGrid").jqxGrid('getselectedrowindex');
3e29755638b6 Add and delete water completed.
Michiel Broek <mbroek@mbse.eu>
parents: 54
diff changeset
382 var rowscount = $("#waterGrid").jqxGrid('getdatainformation').rowscount;
3e29755638b6 Add and delete water completed.
Michiel Broek <mbroek@mbse.eu>
parents: 54
diff changeset
383 if (selectedrowindex >= 0 && selectedrowindex < rowscount) {
3e29755638b6 Add and delete water completed.
Michiel Broek <mbroek@mbse.eu>
parents: 54
diff changeset
384 var id = $("#waterGrid").jqxGrid('getrowid', selectedrowindex);
3e29755638b6 Add and delete water completed.
Michiel Broek <mbroek@mbse.eu>
parents: 54
diff changeset
385 var commit = $("#waterGrid").jqxGrid('deleterow', id);
3e29755638b6 Add and delete water completed.
Michiel Broek <mbroek@mbse.eu>
parents: 54
diff changeset
386 }
54
294dda7f1779 Beginning of water totals and selecting
Michiel Broek <mbroek@mbse.eu>
parents: 53
diff changeset
387 });
50
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
388 },
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
389 columns: [
51
7224109adfe1 More recipe editor changes
Michiel Broek <mbroek@mbse.eu>
parents: 50
diff changeset
390 { text: 'Water bron', editable: false, datafield: 'w_name' },
7224109adfe1 More recipe editor changes
Michiel Broek <mbroek@mbse.eu>
parents: 50
diff changeset
391 { text: 'Volume', datafield: 'w_amount', width: 80, align: 'right', cellsalign: 'right', cellsformat: 'f1',
7224109adfe1 More recipe editor changes
Michiel Broek <mbroek@mbse.eu>
parents: 50
diff changeset
392 columntype: 'numberinput',
50
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
393 validation: function (cell, value) {
51
7224109adfe1 More recipe editor changes
Michiel Broek <mbroek@mbse.eu>
parents: 50
diff changeset
394 if (value < 0 || value > 100000000000 ) {
7224109adfe1 More recipe editor changes
Michiel Broek <mbroek@mbse.eu>
parents: 50
diff changeset
395 return { result: false, message: "Volume moet 0-~ zijn" };
50
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
396 }
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
397 return true;
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
398 }
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
399 },
51
7224109adfe1 More recipe editor changes
Michiel Broek <mbroek@mbse.eu>
parents: 50
diff changeset
400 // TODO: validator test max is hoeveelheid maischwater. Dan water verdelen voor totaal.
7224109adfe1 More recipe editor changes
Michiel Broek <mbroek@mbse.eu>
parents: 50
diff changeset
401 { text: 'Ca', editable: false, datafield: 'w_calcium', width: 80, align: 'right', cellsalign: 'right', cellsformat: 'f1' },
7224109adfe1 More recipe editor changes
Michiel Broek <mbroek@mbse.eu>
parents: 50
diff changeset
402 { text: 'Mg', editable: false, datafield: 'w_magnesium', width: 80, align: 'right', cellsalign: 'right', cellsformat: 'f1' },
7224109adfe1 More recipe editor changes
Michiel Broek <mbroek@mbse.eu>
parents: 50
diff changeset
403 { text: 'Na', editable: false, datafield: 'w_sodium', width: 80, align: 'right', cellsalign: 'right', cellsformat: 'f1' },
7224109adfe1 More recipe editor changes
Michiel Broek <mbroek@mbse.eu>
parents: 50
diff changeset
404 { text: 'Tot Alk', editable: false, datafield: 'w_total_alkalinity', width: 80, align: 'right', cellsalign: 'right', cellsformat: 'f1' },
7224109adfe1 More recipe editor changes
Michiel Broek <mbroek@mbse.eu>
parents: 50
diff changeset
405 { text: 'CaSO4', editable: false, datafield: 'w_sulfate', width: 80, align: 'right', cellsalign: 'right', cellsformat: 'f1' },
7224109adfe1 More recipe editor changes
Michiel Broek <mbroek@mbse.eu>
parents: 50
diff changeset
406 { text: 'Cl', editable: false, datafield: 'w_chloride', width: 80, align: 'right', cellsalign: 'right', cellsformat: 'f1' },
7224109adfe1 More recipe editor changes
Michiel Broek <mbroek@mbse.eu>
parents: 50
diff changeset
407 { text: 'pH', editable: false, datafield: 'w_ph', width: 80, align: 'right', cellsalign: 'right', cellsformat: 'f1' }
50
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
408 ]
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
409 });
51
7224109adfe1 More recipe editor changes
Michiel Broek <mbroek@mbse.eu>
parents: 50
diff changeset
410 }; // editWater = function (data) {
7224109adfe1 More recipe editor changes
Michiel Broek <mbroek@mbse.eu>
parents: 50
diff changeset
411
56
d4f4762e59b3 Start inline fermentables editor
Michiel Broek <mbroek@mbse.eu>
parents: 55
diff changeset
412 // inline mash editor
d4f4762e59b3 Start inline fermentables editor
Michiel Broek <mbroek@mbse.eu>
parents: 55
diff changeset
413
50
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
414 // initialize the input fields.
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
415 var srcType = [ "All Grain", "Partial Mash", "Extract" ];
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
416 var srcColor = [ "Morey", "Mosher", "Daniels" ];
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
417 var srcIBU = [ "Tinseth", "Rager", "Garetz", "Daniels", "Mosher", "Noonan" ];
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
418 $("#name").jqxInput({ theme: theme, width: 640, height: 23 });
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
419 $("#notes").jqxInput({ theme: theme, width: 960, height: 200 });
51
7224109adfe1 More recipe editor changes
Michiel Broek <mbroek@mbse.eu>
parents: 50
diff changeset
420 $("#st_name").jqxInput({ theme: theme, width: 250, height: 23 });
7224109adfe1 More recipe editor changes
Michiel Broek <mbroek@mbse.eu>
parents: 50
diff changeset
421 $("#st_letter").jqxInput({ theme: theme, width: 100, height: 23 });
7224109adfe1 More recipe editor changes
Michiel Broek <mbroek@mbse.eu>
parents: 50
diff changeset
422 $("#st_guide").jqxInput({ theme: theme, width: 250, height: 23 });
50
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
423 $("#type").jqxDropDownList({ theme: theme, source: srcType, width: 125, height: 23, dropDownHeight: 95 });
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
424 $("#batch_size").jqxNumberInput({ inputMode: 'simple', spinMode: 'simple', theme: theme, width: 100, height: 23, min: 4, decimalDigits: 1, spinButtons: true, spinButtonsStep: 0.1, symbol: 'L', symbolPosition: 'right' });
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
425 $("#boil_time").jqxNumberInput({ inputMode: 'simple', spinMode: 'simple', template: "success", theme: theme, width: 100, height: 23, min: 4, max: 360, decimalDigits: 0, spinButtons: true });
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
426 $("#efficiency").jqxNumberInput({ inputMode: 'simple', spinMode: 'simple', theme: theme, width: 100, height: 23, min: 40, max: 100, decimalDigits: 0, spinButtons: true, symbol: '%', symbolPosition: 'right' });
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
427 $("#est_og").jqxNumberInput({ inputMode: 'simple', spinMode: 'simple', theme: theme, width: 100, height: 23, min: 1, max: 1.9, decimalDigits: 3, spinButtons: true, spinButtonsStep: 0.001 });
51
7224109adfe1 More recipe editor changes
Michiel Broek <mbroek@mbse.eu>
parents: 50
diff changeset
428 $("#st_og_min").jqxNumberInput({ disabled: true, inputMode: 'simple', width: 50, height: 23, decimalDigits: 3, readOnly: true });
7224109adfe1 More recipe editor changes
Michiel Broek <mbroek@mbse.eu>
parents: 50
diff changeset
429 $("#st_og_max").jqxNumberInput({ inputMode: 'simple', theme: theme, width: 50, height: 23, decimalDigits: 3, readOnly: true });
50
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
430 $("#est_fg").jqxNumberInput({ inputMode: 'simple', theme: theme, width: 100, height: 23, min: 0.980, max: 1.040, decimalDigits: 3, readOnly: true });
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
431 $("#est_color").jqxNumberInput({ inputMode: 'simple', spinMode: 'simple', theme: theme, width: 100, height: 23, min: 1, max: 200, decimalDigits: 0, spinButtons: true });
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
432 $("#color_method").jqxDropDownList({ theme: theme, source: srcColor, width: 125, height: 23, dropDownHeight: 95 });
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
433 $("#est_ibu").jqxNumberInput({ inputMode: 'simple', spinMode: 'simple', theme: theme, width: 100, height: 23, min: 0, max: 200, decimalDigits: 0, spinButtons: true });
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
434 $("#ibu_method").jqxDropDownList({ theme: theme, source: srcIBU, width: 125, height: 23, dropDownHeight: 180 });
51
7224109adfe1 More recipe editor changes
Michiel Broek <mbroek@mbse.eu>
parents: 50
diff changeset
435 $("#mash_name").jqxInput({ theme: theme, width: 320, height: 23 });
7224109adfe1 More recipe editor changes
Michiel Broek <mbroek@mbse.eu>
parents: 50
diff changeset
436 $("#mash_ph").jqxNumberInput({ inputMode: 'simple', spinMode: 'simple', theme: theme, width: 100, height: 23, min: 4, max: 8, decimalDigits: 1, spinButtons: true, spinButtonsStep: 0.1 });
52
b1f2a893572f More progress on the recipes design
Michiel Broek <mbroek@mbse.eu>
parents: 51
diff changeset
437 $("#mash_sparge_temp").jqxNumberInput({ inputMode: 'simple', spinMode: 'simple', theme: theme, width: 100, height: 23, min: 70, max: 98, decimalDigits: 1, spinButtons: true, spinButtonsStep: 0.5 });
50
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
438 var editrow = -1;
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
439 // initialize jqxGrid
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
440 $("#jqxgrid").jqxGrid({
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
441 width: 1280,
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
442 height: 630,
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
443 source: dataAdapter,
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
444 groupable: true,
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
445 theme: theme,
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
446 showstatusbar: true,
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
447 localization: getLocalization(),
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
448 renderstatusbar: function (statusbar) {
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
449 var container = $("<div style='overflow: hidden; position: relative; margin: 5px;'></div>");
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
450 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;'>Add</span></div>");
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
451 container.append(addButton);
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
452 statusbar.append(container);
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
453 addButton.jqxButton({ theme: theme, width: 120, height: 20 });
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
454 // add new row.
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
455 addButton.click(function (event) {
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
456 editrow = -1;
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
457 $("#popupWindow").jqxWindow({ position: { x: 40, y: 20 } });
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
458 $("#name").val('');
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
459 $("#notes").val('');
51
7224109adfe1 More recipe editor changes
Michiel Broek <mbroek@mbse.eu>
parents: 50
diff changeset
460 $("#st_name").val('');
7224109adfe1 More recipe editor changes
Michiel Broek <mbroek@mbse.eu>
parents: 50
diff changeset
461 $("#st_letter").val('');
52
b1f2a893572f More progress on the recipes design
Michiel Broek <mbroek@mbse.eu>
parents: 51
diff changeset
462 $("#st_guide").val('BKG 2015');
50
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
463 $("#type").val('All Grain');
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
464 $("#batch_size").val(20);
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
465 $("#boil_time").val(90);
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
466 $("#efficiency").val(75);
52
b1f2a893572f More progress on the recipes design
Michiel Broek <mbroek@mbse.eu>
parents: 51
diff changeset
467 $("#est_og").val(1.052);
50
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
468 $("#est_fg").val(1.000);
52
b1f2a893572f More progress on the recipes design
Michiel Broek <mbroek@mbse.eu>
parents: 51
diff changeset
469 $("#est_color").val(20);
50
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
470 $("#color_method").val('Morey');
52
b1f2a893572f More progress on the recipes design
Michiel Broek <mbroek@mbse.eu>
parents: 51
diff changeset
471 $("#est_ibu").val(40);
50
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
472 $("#ibu_method").val('Tinseth');
52
b1f2a893572f More progress on the recipes design
Michiel Broek <mbroek@mbse.eu>
parents: 51
diff changeset
473 $("#mash_sparge_temp").val(78);
b1f2a893572f More progress on the recipes design
Michiel Broek <mbroek@mbse.eu>
parents: 51
diff changeset
474 $("#mash_ph").val(5.4);
b1f2a893572f More progress on the recipes design
Michiel Broek <mbroek@mbse.eu>
parents: 51
diff changeset
475 $("#mash_name").val('');
56
d4f4762e59b3 Start inline fermentables editor
Michiel Broek <mbroek@mbse.eu>
parents: 55
diff changeset
476 editFermentable('');
51
7224109adfe1 More recipe editor changes
Michiel Broek <mbroek@mbse.eu>
parents: 50
diff changeset
477 editWater('');
50
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
478 $("#popupWindow").jqxWindow('open');
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
479 });
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
480 },
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
481 filterable: true,
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
482 filtermode: 'excel',
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
483 columns: [
51
7224109adfe1 More recipe editor changes
Michiel Broek <mbroek@mbse.eu>
parents: 50
diff changeset
484 { text: 'Stijlgids', datafield: 'st_guide', width: 120 },
7224109adfe1 More recipe editor changes
Michiel Broek <mbroek@mbse.eu>
parents: 50
diff changeset
485 { text: 'Letter', datafield: 'st_letter', width: 60 },
7224109adfe1 More recipe editor changes
Michiel Broek <mbroek@mbse.eu>
parents: 50
diff changeset
486 { text: 'Stijl', datafield: 'st_name', width: 150 },
50
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
487 { text: 'Naam', datafield: 'name' },
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
488 { text: 'OG', datafield: 'est_og', width: 60, align: 'right', cellsalign: 'right', cellsformat: 'f3' },
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
489 { text: 'EBC', datafield: 'est_color', width: 60, align: 'right', cellsalign: 'right', cellsformat: 'f0' },
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
490 { text: 'IBU', datafield: 'est_ibu', width: 60, align: 'right', cellsalign: 'right', cellsformat: 'f0' },
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
491 { text: 'Wijzig', datafield: 'Edit', width: 120, align: 'center', columntype: 'button', cellsrenderer: function () {
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
492 return "Wijzig";
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
493 }, buttonclick: function (row) {
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
494 // open the popup window when the user clicks a button.
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
495 editrow = row;
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
496 $("#popupWindow").jqxWindow({ position: { x: 40, y: 20 } });
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
497 // get the clicked row's data and initialize the input fields.
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
498 var dataRecord = $("#jqxgrid").jqxGrid('getrowdata', editrow);
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
499 $("#name").val(dataRecord.name);
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
500 $("#notes").val(dataRecord.notes);
51
7224109adfe1 More recipe editor changes
Michiel Broek <mbroek@mbse.eu>
parents: 50
diff changeset
501 $("#st_name").val(dataRecord.st_name);
7224109adfe1 More recipe editor changes
Michiel Broek <mbroek@mbse.eu>
parents: 50
diff changeset
502 $("#st_letter").val(dataRecord.st_letter);
7224109adfe1 More recipe editor changes
Michiel Broek <mbroek@mbse.eu>
parents: 50
diff changeset
503 $("#st_guide").val(dataRecord.st_guide);
50
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
504 $("#type").val(dataRecord.type);
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
505 $("#batch_size").val(dataRecord.batch_size);
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
506 $("#boil_time").val(dataRecord.boil_time);
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
507 $("#efficiency").val(dataRecord.efficiency);
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
508 $("#est_og").val(dataRecord.est_og);
51
7224109adfe1 More recipe editor changes
Michiel Broek <mbroek@mbse.eu>
parents: 50
diff changeset
509 $("#st_og_min").val(dataRecord.st_og_min);
7224109adfe1 More recipe editor changes
Michiel Broek <mbroek@mbse.eu>
parents: 50
diff changeset
510 $("#st_og_max").val(dataRecord.st_og_max);
50
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
511 $("#est_fg").val(dataRecord.est_fg);
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
512 $("#est_color").val(dataRecord.est_color);
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
513 $("#color_method").val(dataRecord.color_method);
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
514 $("#est_ibu").val(dataRecord.est_ibu);
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
515 $("#ibu_method").val(dataRecord.ibu_method);
51
7224109adfe1 More recipe editor changes
Michiel Broek <mbroek@mbse.eu>
parents: 50
diff changeset
516 $("#mash_name").val(dataRecord.mash_name);
7224109adfe1 More recipe editor changes
Michiel Broek <mbroek@mbse.eu>
parents: 50
diff changeset
517 $("#mash_ph").val(dataRecord.mash_ph);
52
b1f2a893572f More progress on the recipes design
Michiel Broek <mbroek@mbse.eu>
parents: 51
diff changeset
518 $("#mash_sparge_temp").val(dataRecord.mash_sparge_temp);
56
d4f4762e59b3 Start inline fermentables editor
Michiel Broek <mbroek@mbse.eu>
parents: 55
diff changeset
519 editFermentable(dataRecord);
51
7224109adfe1 More recipe editor changes
Michiel Broek <mbroek@mbse.eu>
parents: 50
diff changeset
520 editWater(dataRecord);
50
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
521 // show the popup window.
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
522 $("#popupWindow").jqxWindow('open');
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
523 }
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
524 }
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
525 ],
51
7224109adfe1 More recipe editor changes
Michiel Broek <mbroek@mbse.eu>
parents: 50
diff changeset
526 groups: ['st_guide','st_letter' ]
50
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
527 });
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
528
52
b1f2a893572f More progress on the recipes design
Michiel Broek <mbroek@mbse.eu>
parents: 51
diff changeset
529
50
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
530 // initialize the popup window and buttons.
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
531 $("#popupWindow").jqxWindow({
53
a17c644a0510 Added waters total table
Michiel Broek <mbroek@mbse.eu>
parents: 52
diff changeset
532 width: 1202,
a17c644a0510 Added waters total table
Michiel Broek <mbroek@mbse.eu>
parents: 52
diff changeset
533 height: 622,
50
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
534 resizable: false,
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
535 theme: theme,
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
536 isModal: true,
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
537 autoOpen: false,
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
538 cancelButton: $("#Cancel"),
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
539 modalOpacity: 0.40
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
540 });
52
b1f2a893572f More progress on the recipes design
Michiel Broek <mbroek@mbse.eu>
parents: 51
diff changeset
541 $("#popupWindow").on('open', function () {
b1f2a893572f More progress on the recipes design
Michiel Broek <mbroek@mbse.eu>
parents: 51
diff changeset
542 $("#name").jqxInput('selectAll');
b1f2a893572f More progress on the recipes design
Michiel Broek <mbroek@mbse.eu>
parents: 51
diff changeset
543 });
50
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
544
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
545 // Tabs inside the popup window.
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
546 $('#jqxTabs').jqxTabs({
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
547 theme: theme,
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
548 autoHeight: false,
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
549 height: 580,
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
550 position: 'top'
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
551 });
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
552
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
553 $("#Delete").jqxButton({ width: '90px', theme: theme });
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
554 $("#Delete").click(function () {
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
555 if (editrow >= 0) {
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
556 // Open a popup to confirm this action.
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
557 $('#eventWindow').jqxWindow('open');
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
558 $("#delOk").click(function () {
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
559 var rowID = $('#jqxgrid').jqxGrid('getrowid', editrow);
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
560 $("#jqxgrid").jqxGrid('deleterow', rowID);
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
561 });
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
562 }
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
563 $("#popupWindow").jqxWindow('hide');
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
564 });
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
565 $("#Cancel").jqxButton({ width: '90px', theme: theme });
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
566 $("#Save").jqxButton({ width: '90px', theme: theme });
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
567 // update the edited row when the user clicks the 'Save' button.
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
568 $("#Save").click(function () {
56
d4f4762e59b3 Start inline fermentables editor
Michiel Broek <mbroek@mbse.eu>
parents: 55
diff changeset
569 var fermentablerow = $('#fermentableGrid').jqxGrid('getrows');
52
b1f2a893572f More progress on the recipes design
Michiel Broek <mbroek@mbse.eu>
parents: 51
diff changeset
570 var waterrow = $('#waterGrid').jqxGrid('getrows');
50
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
571 if (editrow >= 0) {
52
b1f2a893572f More progress on the recipes design
Michiel Broek <mbroek@mbse.eu>
parents: 51
diff changeset
572 var rowRecord = $("#jqxgrid").jqxGrid('getrowdata', editrow);
50
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
573 var rowID = $('#jqxgrid').jqxGrid('getrowid', editrow);
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
574 var row = {
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
575 record: rowID,
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
576 name: $("#name").val(),
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
577 notes: $("#notes").val(),
51
7224109adfe1 More recipe editor changes
Michiel Broek <mbroek@mbse.eu>
parents: 50
diff changeset
578 st_name: $('#st_name').val(),
7224109adfe1 More recipe editor changes
Michiel Broek <mbroek@mbse.eu>
parents: 50
diff changeset
579 st_letter: $('#st_letter').val(),
7224109adfe1 More recipe editor changes
Michiel Broek <mbroek@mbse.eu>
parents: 50
diff changeset
580 st_guide: $('#st_guide').val(),
52
b1f2a893572f More progress on the recipes design
Michiel Broek <mbroek@mbse.eu>
parents: 51
diff changeset
581 st_og_min: rowRecord.st_og_min,
b1f2a893572f More progress on the recipes design
Michiel Broek <mbroek@mbse.eu>
parents: 51
diff changeset
582 st_og_max: rowRecord.st_og_max,
b1f2a893572f More progress on the recipes design
Michiel Broek <mbroek@mbse.eu>
parents: 51
diff changeset
583 st_fg_min: rowRecord.st_fg_min,
b1f2a893572f More progress on the recipes design
Michiel Broek <mbroek@mbse.eu>
parents: 51
diff changeset
584 st_fg_max: rowRecord.st_fg_max,
b1f2a893572f More progress on the recipes design
Michiel Broek <mbroek@mbse.eu>
parents: 51
diff changeset
585 st_ibu_min: rowRecord.st_ibu_min,
b1f2a893572f More progress on the recipes design
Michiel Broek <mbroek@mbse.eu>
parents: 51
diff changeset
586 st_ibu_max: rowRecord.st_ibu_max,
b1f2a893572f More progress on the recipes design
Michiel Broek <mbroek@mbse.eu>
parents: 51
diff changeset
587 st_color_min: rowRecord.st_color_min,
b1f2a893572f More progress on the recipes design
Michiel Broek <mbroek@mbse.eu>
parents: 51
diff changeset
588 st_color_max: rowRecord.st_color_max,
b1f2a893572f More progress on the recipes design
Michiel Broek <mbroek@mbse.eu>
parents: 51
diff changeset
589 st_carb_min: rowRecord.st_carb_min,
b1f2a893572f More progress on the recipes design
Michiel Broek <mbroek@mbse.eu>
parents: 51
diff changeset
590 st_carb_max: rowRecord.st_carb_max,
b1f2a893572f More progress on the recipes design
Michiel Broek <mbroek@mbse.eu>
parents: 51
diff changeset
591 st_abv_min: rowRecord.st_abv_min,
b1f2a893572f More progress on the recipes design
Michiel Broek <mbroek@mbse.eu>
parents: 51
diff changeset
592 st_abv_max: rowRecord.st_abv_max,
50
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
593 type: $("#type").val(),
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
594 batch_size: parseFloat($("#batch_size").jqxNumberInput('decimal')),
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
595 boil_time: parseFloat($("#boil_time").jqxNumberInput('decimal')),
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
596 efficiency: parseFloat($("#efficiency").jqxNumberInput('decimal')),
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
597 est_og: parseFloat($("#est_og").jqxNumberInput('decimal')),
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
598 est_fg: parseFloat($("#est_fg").jqxNumberInput('decimal')),
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
599 est_color: parseFloat($("#est_color").jqxNumberInput('decimal')),
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
600 color_method: $("#color_method").val(),
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
601 est_ibu: parseFloat($("#est_ibu").jqxNumberInput('decimal')),
51
7224109adfe1 More recipe editor changes
Michiel Broek <mbroek@mbse.eu>
parents: 50
diff changeset
602 ibu_method: $("#ibu_method").val(),
7224109adfe1 More recipe editor changes
Michiel Broek <mbroek@mbse.eu>
parents: 50
diff changeset
603 mash_name: $("#mash_name").val(),
52
b1f2a893572f More progress on the recipes design
Michiel Broek <mbroek@mbse.eu>
parents: 51
diff changeset
604 mash_ph: parseFloat($("#mash_ph").jqxNumberInput('decimal')),
b1f2a893572f More progress on the recipes design
Michiel Broek <mbroek@mbse.eu>
parents: 51
diff changeset
605 mash_sparge_temp: parseFloat($("#mash_sparge_temp").jqxNumberInput('decimal')),
56
d4f4762e59b3 Start inline fermentables editor
Michiel Broek <mbroek@mbse.eu>
parents: 55
diff changeset
606 fermentables: fermentablerow,
52
b1f2a893572f More progress on the recipes design
Michiel Broek <mbroek@mbse.eu>
parents: 51
diff changeset
607 waters: waterrow
50
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
608 };
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
609 $('#jqxgrid').jqxGrid('updaterow', rowID, row);
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
610 $("#popupWindow").jqxWindow('hide');
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
611 } else {
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
612 // Insert a record
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
613 var newrow = {
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
614 record: -1,
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
615 name: $("#name").val(),
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
616 notes: $("#notes").val(),
51
7224109adfe1 More recipe editor changes
Michiel Broek <mbroek@mbse.eu>
parents: 50
diff changeset
617 st_name: $('#st_name').val(),
7224109adfe1 More recipe editor changes
Michiel Broek <mbroek@mbse.eu>
parents: 50
diff changeset
618 st_letter: $('#st_letter').val(),
7224109adfe1 More recipe editor changes
Michiel Broek <mbroek@mbse.eu>
parents: 50
diff changeset
619 st_guide: $('#st_guide').val(),
52
b1f2a893572f More progress on the recipes design
Michiel Broek <mbroek@mbse.eu>
parents: 51
diff changeset
620 st_og_min: 1.025,
b1f2a893572f More progress on the recipes design
Michiel Broek <mbroek@mbse.eu>
parents: 51
diff changeset
621 st_og_max: 1.110,
b1f2a893572f More progress on the recipes design
Michiel Broek <mbroek@mbse.eu>
parents: 51
diff changeset
622 st_fg_min: 1.000,
b1f2a893572f More progress on the recipes design
Michiel Broek <mbroek@mbse.eu>
parents: 51
diff changeset
623 st_fg_max: 1.025,
b1f2a893572f More progress on the recipes design
Michiel Broek <mbroek@mbse.eu>
parents: 51
diff changeset
624 st_ibu_min: 15,
b1f2a893572f More progress on the recipes design
Michiel Broek <mbroek@mbse.eu>
parents: 51
diff changeset
625 st_ibu_max: 150,
b1f2a893572f More progress on the recipes design
Michiel Broek <mbroek@mbse.eu>
parents: 51
diff changeset
626 st_color_min: 5,
b1f2a893572f More progress on the recipes design
Michiel Broek <mbroek@mbse.eu>
parents: 51
diff changeset
627 st_color_max: 50,
b1f2a893572f More progress on the recipes design
Michiel Broek <mbroek@mbse.eu>
parents: 51
diff changeset
628 st_carb_min: 1,
b1f2a893572f More progress on the recipes design
Michiel Broek <mbroek@mbse.eu>
parents: 51
diff changeset
629 st_carb_max: 3,
b1f2a893572f More progress on the recipes design
Michiel Broek <mbroek@mbse.eu>
parents: 51
diff changeset
630 st_abv_min: 2,
b1f2a893572f More progress on the recipes design
Michiel Broek <mbroek@mbse.eu>
parents: 51
diff changeset
631 st_abv_max: 14,
50
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
632 type: $("#type").val(),
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
633 batch_size: parseFloat($("#batch_size").jqxNumberInput('decimal')),
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
634 boil_time: parseFloat($("#boil_time").jqxNumberInput('decimal')),
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
635 efficiency: parseFloat($("#efficiency").jqxNumberInput('decimal')),
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
636 est_og: parseFloat($("#est_og").jqxNumberInput('decimal')),
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
637 est_fg: parseFloat($("#est_fg").jqxNumberInput('decimal')),
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
638 est_color: parseFloat($("#est_color").jqxNumberInput('decimal')),
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
639 color_method: $("#color_method").val(),
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
640 est_ibu: parseFloat($("#est_ibu").jqxNumberInput('decimal')),
51
7224109adfe1 More recipe editor changes
Michiel Broek <mbroek@mbse.eu>
parents: 50
diff changeset
641 ibu_method: $("#ibu_method").val(),
7224109adfe1 More recipe editor changes
Michiel Broek <mbroek@mbse.eu>
parents: 50
diff changeset
642 mash_name: $("#mash_name").val(),
52
b1f2a893572f More progress on the recipes design
Michiel Broek <mbroek@mbse.eu>
parents: 51
diff changeset
643 mash_ph: parseFloat($("#mash_ph").jqxNumberInput('decimal')),
b1f2a893572f More progress on the recipes design
Michiel Broek <mbroek@mbse.eu>
parents: 51
diff changeset
644 mash_sparge_temp: parseFloat($("#mash_sparge_temp").jqxNumberInput('decimal')),
56
d4f4762e59b3 Start inline fermentables editor
Michiel Broek <mbroek@mbse.eu>
parents: 55
diff changeset
645 fermentables: fermentablerow,
52
b1f2a893572f More progress on the recipes design
Michiel Broek <mbroek@mbse.eu>
parents: 51
diff changeset
646 waters: waterrow
50
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
647 };
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
648 $('#jqxgrid').jqxGrid('addrow', null, newrow);
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
649 $("#popupWindow").jqxWindow('hide');
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
650 }
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
651 });
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
652 createDelElements();
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
653 });
6d94167c2697 Next steps to implement a recipe editor
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
654

mercurial