# HG changeset patch # User Michiel Broek # Date 1544046439 -3600 # Node ID f2c79ed6423a0cdec480e891c7d9a15209b7f229 # Parent b5a9eaca766e7b116d001dc3c9788ad055078d70 Fixes and improvements for hops editing and calculations. diff -r b5a9eaca766e -r f2c79ed6423a www/js/rec_edit.js --- a/www/js/rec_edit.js Wed Dec 05 17:03:30 2018 +0100 +++ b/www/js/rec_edit.js Wed Dec 05 22:47:19 2018 +0100 @@ -44,6 +44,7 @@ $(document).ready(function () { + var dataRecord = {}; var preboil_sg = 0; var sugarsm = 0; // Sugars after mash var sugarsf = 0; // Sugars after boil @@ -60,7 +61,7 @@ pcara = 0; var colorw = 0; // Colors working - var rows = $('#fermentableGrid').jqxGrid('getboundrows'); + var rows = $('#fermentableGrid').jqxGrid('getrows'); for (var i = 0; i < rows.length; i++) { var row = rows[i]; if (row.f_type == "Sugar") @@ -81,26 +82,15 @@ }; function calcIBUs() { - console.log("calcIBUs()"); - var total_ibus = 0; - var rows = $('#hopGrid').jqxGrid('getboundrows'); + var rows = $('#hopGrid').jqxGrid('getrows'); for (var i = 0; i < rows.length; i++) { var row = rows[i]; - - total_ibus += toIBU(row.h_useat, - row.h_form, - preboil_sg, - parseFloat($("#batch_size").jqxNumberInput('decimal')), - parseFloat(row.h_amount), - parseFloat(row.h_time), - parseFloat(row.h_alpha), - $("#ibu_method").val() - ); + total_ibus += toIBU(row.h_useat, row.h_form, preboil_sg, parseFloat($("#batch_size").jqxNumberInput('decimal')), + parseFloat(row.h_amount), parseFloat(row.h_time), parseFloat(row.h_alpha), $("#ibu_method").val()); } - console.log("IBUs: " + total_ibus); + console.log("calcIBUs(): " + total_ibus); $('#est_ibu').val(total_ibus); - $('#hopGrid').jqxGrid('render'); }; function calcInit () { @@ -190,7 +180,6 @@ } }); - var dataReecord = {}; var url = "includes/db_recipes.php"; // tooltips $("#name").jqxTooltip({ content: 'De naam voor dit recept.' }); @@ -605,7 +594,7 @@ source: hopAdapter, theme: theme, selectionmode: 'singlerow', - editmode: 'selectedrow', + editmode: 'selectedcell', editable: true, localization: getLocalization(), showtoolbar: true, @@ -667,7 +656,6 @@ }); }, ready: function() { - calcIBUs(); $('#jqxTabs').jqxTabs('next'); }, columns: [ @@ -677,6 +665,9 @@ { text: 'Alpha', datafield: 'h_alpha', width: 80, align: 'right', cellsalign: 'right', cellsformat: 'p1' }, { text: 'Gewicht', datafield: 'h_amount', width: 110, align: 'right', cellsalign: 'right', cellsformat: 'f3', columntype: 'numberinput', + initeditor: function (row, cellvalue, editor, celltext, pressedChar) { + editor.jqxNumberInput({ decimalDigits: 3, min: 0, spinButtons: false }); + }, validation: function (cell, value) { if (value < 0 || value > 100000000000 ) { return { result: false, message: "Volume moet 0-~ zijn" }; @@ -687,9 +678,13 @@ { text: 'Gebruik', width: 110, align: 'center', cellsalign: 'center', datafield: 'h_useat' }, { text: 'Tijd', datafield: 'h_time', width: 70, align: 'right', cellsalign: 'right', cellsformat: 'f0', columntype: 'numberinput', + initeditor: function (row, cellvalue, editor, celltext, pressedChar) { + editor.jqxNumberInput({ decimalDigits: 0, digits: 3, min: 0 }); + }, validation: function (cell, value) { - if (value < 0 || value > 100000000000 ) { - return { result: false, message: "De tijd moet 0-~ zijn" }; + var high = parseFloat($("#boil_time").jqxNumberInput('decimal')); + if (value < 0 || value > high ) { + return { result: false, message: "De tijd moet 0-"+high+" zijn" }; } return true; } // TODO: Only enable editing if Boil, else use fixed values. @@ -699,22 +694,21 @@ var ibu = toIBU(rowdata.h_useat, rowdata.h_form, preboil_sg, - /*parseFloat($("#est_og").jqxNumberInput('decimal')),*/ parseFloat($("#batch_size").jqxNumberInput('decimal')), parseFloat(rowdata.h_amount), parseFloat(rowdata.h_time), parseFloat(rowdata.h_alpha), $("#ibu_method").val() ); + calcIBUs(); return "
" + dataAdapter.formatNumber(ibu, "f1") + "
"; } } ] }); - $("#hopGrid").on('cellendedit', function (event) { - //calcIBUs(); - //$('#hopGrid').jqxGrid('sortby', 'f_amount', 'desc'); - }); +// $("#hopGrid").on('cellendedit', function (event) { +// //$('#hopGrid').jqxGrid('sortby', 'f_amount', 'desc'); +// }); }; // Inline miscs editor