www/js/recipes.js

changeset 57
bb9a06aa9acd
parent 56
d4f4762e59b3
child 58
83ccc36df675
equal deleted inserted replaced
56:d4f4762e59b3 57:bb9a06aa9acd
168 { name: 'f_added', type: 'string' }, 168 { name: 'f_added', type: 'string' },
169 { name: 'f_dissolved_protein', type: 'float' }, 169 { name: 'f_dissolved_protein', type: 'float' },
170 { name: 'f_recommend_mash', type: 'bool' }, 170 { name: 'f_recommend_mash', type: 'bool' },
171 { name: 'f_add_after_boil', type: 'bool' }, 171 { name: 'f_add_after_boil', type: 'bool' },
172 { name: 'f_adjust_to_total_100', type: 'bool' }, 172 { name: 'f_adjust_to_total_100', type: 'bool' },
173 { name: 'f_percentage', type: 'float' },
173 { name: 'f_di_ph', type: 'float' } 174 { name: 'f_di_ph', type: 'float' }
174 ], 175 ],
175 addrow: function (rowid, rowdata, position, commit) { 176 addrow: function (rowid, rowdata, position, commit) {
176 commit(true); 177 commit(true);
177 }, 178 },
185 var fermentableInvSource = { 186 var fermentableInvSource = {
186 datatype: "json", 187 datatype: "json",
187 datafields: [ 188 datafields: [
188 { name: 'record', type: 'number' }, 189 { name: 'record', type: 'number' },
189 { name: 'name', type: 'string' }, 190 { name: 'name', type: 'string' },
190 { name: 'cost', type: 'float' },
191 { name: 'type', type: 'string' }, 191 { name: 'type', type: 'string' },
192 { name: 'yield', type: 'float' }, 192 { name: 'yield', type: 'float' },
193 { name: 'color', type: 'float' }, 193 { name: 'color', type: 'float' },
194 { name: 'add_after_boil', type: 'bool' },
195 { name: 'origin', type: 'string' },
196 { name: 'supplier', type: 'string' },
194 { name: 'coarse_fine_diff', type: 'float' }, 197 { name: 'coarse_fine_diff', type: 'float' },
195 { name: 'moisture', type: 'float' }, 198 { name: 'moisture', type: 'float' },
196 { name: 'diastatic_power', type: 'float' }, 199 { name: 'diastatic_power', type: 'float' },
197 { name: 'protein', type: 'float' }, 200 { name: 'protein', type: 'float' },
198 { name: 'max_in_batch', type: 'float' }, 201 { name: 'max_in_batch', type: 'float' },
202 { name: 'recommend_mash', type: 'bool' },
199 { name: 'graintype', type: 'string' }, 203 { name: 'graintype', type: 'string' },
200 { name: 'added', type: 'string' }, 204 { name: 'di_ph', type: 'float' },
201 { name: 'dissolved_protein', type: 'float' }, 205 { name: 'inventory', type: 'float' },
202 { name: 'adjust_to_total_100', type: 'bool' }, 206 { name: 'cost', type: 'float' }
203 { name: 'di_ph', type: 'float' }
204 ], 207 ],
205 url: fermentableUrl, 208 url: fermentableUrl,
206 async: true 209 async: true
207 }; 210 };
208 var fermentablelist = new $.jqx.dataAdapter(fermentableInvSource); 211 var fermentablelist = new $.jqx.dataAdapter(fermentableInvSource);
219 showtoolbar: true, 222 showtoolbar: true,
220 rendertoolbar: function (toolbar) { 223 rendertoolbar: function (toolbar) {
221 var me = this; 224 var me = this;
222 var container = $("<div style='overflow: hidden; position: relative; margin: 5px;'></div>"); 225 var container = $("<div style='overflow: hidden; position: relative; margin: 5px;'></div>");
223 toolbar.append(container); 226 toolbar.append(container);
224 container.append('<div style="float: left; margin-left: 165px;" id="addrowbutton"></div>'); 227 container.append('<div style="float: left; margin-left: 165px;" id="faddrowbutton"></div>');
225 container.append('<input style="float: left; margin-left: 230px;" id="deleterowbutton" type="button" value="Verwijder mout" />'); 228 container.append('<input style="float: left; margin-left: 230px;" id="fdeleterowbutton" type="button" value="Verwijder mout" />');
226 // add fermentable from dropdownlist. 229 // add fermentable from dropdownlist.
227 $("#addrowbutton").jqxDropDownList({ 230 $("#faddrowbutton").jqxDropDownList({
228 placeHolder: "Kies mout:", 231 placeHolder: "Kies mout:",
229 theme: theme, 232 theme: theme,
230 source: fermentablelist, 233 source: fermentablelist,
231 displayMember: "name", 234 displayMember: "name",
232 width: 150, 235 width: 150,
233 height: 27, 236 height: 27,
234 dropDownWidth: 300 237 dropDownWidth: 300
235 }); 238 });
236 $("#addrowbutton").on('select', function (event) { 239 $("#faddrowbutton").on('select', function (event) {
237 if (event.args) { 240 if (event.args) {
238 var index = event.args.index; 241 var index = event.args.index;
239 var datarecord = fermentablelist.records[index]; 242 var datarecord = fermentablelist.records[index];
240 var row = {}; 243 var row = {};
241 row["f_name"] = datarecord.name; 244 row["f_name"] = datarecord.name;
245 row["f_origin"] = datarecord.origin;
246 row["f_supplier"] = datarecord.supplier;
242 row["f_amount"] = 0; 247 row["f_amount"] = 0;
243 row["f_cost"] = datarecord.cost; 248 row["f_cost"] = datarecord.cost;
249 row["f_type"] = datarecord.type;
250 row["f_yield"] = datarecord.yield;
251 row["f_color"] = datarecord.color;
252 row["f_coarse_fine_diff"] = datarecord.coarse_fine_diff;
253 row["f_moisture"] = datarecord.moisture;
254 row["f_diastatic_power"] = datarecord.diastatic_power;
255 row["f_protein"] = datarecord.protein;
256 row["f_max_in_batch"] = datarecord.max_in_batch;
257 row["f_graintype"] = datarecord.graintype;
258 if (datarecord.type == "Sugar") {
259 row["f_added"] = "Boil";
260 } else {
261 row["f_added"] = "Mash";
262 }
263 row["f_dissolved_protein"] = 0;
264 row["f_recommend_mash"] = datarecord.recommend_mash;
265 row["f_add_after_boil"] = datarecord.add_after_boil;
266 row["f_adjust_to_total_100"] = 0;
267 row["f_percentage"] = 0;
268 row["f_di_ph"] = datarecord.di_ph;
244 var commit = $("#fermentableGrid").jqxGrid('addrow', null, row); 269 var commit = $("#fermentableGrid").jqxGrid('addrow', null, row);
245 } 270 }
246 }); 271 });
247 272
248 // delete selected fermentable. 273 // delete selected fermentable.
249 // Precentage aanpassen basis mout. 274 // Precentage aanpassen basis mout.
250 $("#deleterowbutton").jqxButton({ theme: theme, height: 27, width: 150 }); 275 $("#fdeleterowbutton").jqxButton({ theme: theme, height: 27, width: 150 });
251 $("#deleterowbutton").on('click', function () { 276 $("#fdeleterowbutton").on('click', function () {
252 var selectedrowindex = $("#fermentableGrid").jqxGrid('getselectedrowindex'); 277 var selectedrowindex = $("#fermentableGrid").jqxGrid('getselectedrowindex');
253 var rowscount = $("#fermentableGrid").jqxGrid('getdatainformation').rowscount; 278 var rowscount = $("#fermentableGrid").jqxGrid('getdatainformation').rowscount;
254 if (selectedrowindex >= 0 && selectedrowindex < rowscount) { 279 if (selectedrowindex >= 0 && selectedrowindex < rowscount) {
255 var id = $("#fermentableGrid").jqxGrid('getrowid', selectedrowindex); 280 var id = $("#fermentableGrid").jqxGrid('getrowid', selectedrowindex);
256 var commit = $("#fermentableGrid").jqxGrid('deleterow', id); 281 var commit = $("#fermentableGrid").jqxGrid('deleterow', id);
258 }); 283 });
259 }, 284 },
260 columns: [ 285 columns: [
261 { text: 'Mout/suiker', editable: false, datafield: 'f_name' }, 286 { text: 'Mout/suiker', editable: false, datafield: 'f_name' },
262 { text: 'Type', editable: false, width: 100, datafield: 'f_type' }, 287 { text: 'Type', editable: false, width: 100, datafield: 'f_type' },
288 { text: 'Opbrengst', datafield: 'f_yield', width: 80, align: 'right', cellsalign: 'right', cellsformat: 'p1' },
263 { text: 'Gewicht', datafield: 'f_amount', width: 110, align: 'right', cellsalign: 'right', cellsformat: 'f3', 289 { text: 'Gewicht', datafield: 'f_amount', width: 110, align: 'right', cellsalign: 'right', cellsformat: 'f3',
264 columntype: 'numberinput', 290 columntype: 'numberinput',
265 validation: function (cell, value) { 291 validation: function (cell, value) {
266 if (value < 0 || value > 100000000000 ) { 292 if (value < 0 || value > 100000000000 ) {
267 return { result: false, message: "Volume moet 0-~ zijn" }; 293 return { result: false, message: "Volume moet 0-~ zijn" };
268 } 294 }
269 return true; 295 return true;
270 } 296 }
271 } 297 },
298 { text: 'Procent', datafield: 'f_percentage', width: 110, align: 'right', cellsalign: 'right', cellsformat: 'p3',
299 columntype: 'numberinput',
300 validation: function (cell, value) {
301 if (value < 0 || value > 100) {
302 return { result: false, message: "Percentage moet 0-100 zijn" };
303 }
304 return true;
305 }
306 },
307 { text: '100%', datafield: 'f_adjust_to_total_100', columntype: 'checkbox', width: 80 }
272 ] 308 ]
273 }) 309 })
274 }; 310 };
275 311
276 // Inline hops editor 312 // Inline hops editor
340 showtoolbar: true, 376 showtoolbar: true,
341 rendertoolbar: function (toolbar) { 377 rendertoolbar: function (toolbar) {
342 var me = this; 378 var me = this;
343 var container = $("<div style='overflow: hidden; position: relative; margin: 5px;'></div>"); 379 var container = $("<div style='overflow: hidden; position: relative; margin: 5px;'></div>");
344 toolbar.append(container); 380 toolbar.append(container);
345 container.append('<div style="float: left; margin-left: 165px;" id="addrowbutton"></div>'); 381 container.append('<div style="float: left; margin-left: 165px;" id="waddrowbutton"></div>');
346 container.append('<input style="float: left; margin-left: 230px;" id="deleterowbutton" type="button" value="Verwijder water" />'); 382 container.append('<input style="float: left; margin-left: 230px;" id="wdeleterowbutton" type="button" value="Verwijder water" />');
347 // add water from dropdownlist. 383 // add water from dropdownlist.
348 $("#addrowbutton").jqxDropDownList({ 384 $("#waddrowbutton").jqxDropDownList({
349 placeHolder: "Kies water:", 385 placeHolder: "Kies water:",
350 theme: theme, 386 theme: theme,
351 source: waterlist, 387 source: waterlist,
352 displayMember: "name", 388 displayMember: "name",
353 width: 150, 389 width: 150,
354 height: 27, 390 height: 27,
355 dropDownWidth: 300 391 dropDownWidth: 300
356 }); 392 });
357 $("#addrowbutton").on('select', function (event) { 393 $("#waddrowbutton").on('select', function (event) {
358 if (event.args) { 394 if (event.args) {
359 var index = event.args.index; 395 var index = event.args.index;
360 var datarecord = waterlist.records[index]; 396 var datarecord = waterlist.records[index];
361 var row = {}; 397 var row = {};
362 row["w_name"] = datarecord.name; 398 row["w_name"] = datarecord.name;
374 } 410 }
375 }); 411 });
376 412
377 // delete selected water. 413 // delete selected water.
378 // Overgebleven waters in volume verhogen met het verwijderde water. 414 // Overgebleven waters in volume verhogen met het verwijderde water.
379 $("#deleterowbutton").jqxButton({ theme: theme, height: 27, width: 150 }); 415 $("#wdeleterowbutton").jqxButton({ theme: theme, height: 27, width: 150 });
380 $("#deleterowbutton").on('click', function () { 416 $("#wdeleterowbutton").on('click', function () {
381 var selectedrowindex = $("#waterGrid").jqxGrid('getselectedrowindex'); 417 var selectedrowindex = $("#waterGrid").jqxGrid('getselectedrowindex');
382 var rowscount = $("#waterGrid").jqxGrid('getdatainformation').rowscount; 418 var rowscount = $("#waterGrid").jqxGrid('getdatainformation').rowscount;
383 if (selectedrowindex >= 0 && selectedrowindex < rowscount) { 419 if (selectedrowindex >= 0 && selectedrowindex < rowscount) {
384 var id = $("#waterGrid").jqxGrid('getrowid', selectedrowindex); 420 var id = $("#waterGrid").jqxGrid('getrowid', selectedrowindex);
385 var commit = $("#waterGrid").jqxGrid('deleterow', id); 421 var commit = $("#waterGrid").jqxGrid('deleterow', id);

mercurial