# HG changeset patch # User Michiel Broek # Date 1584368202 -3600 # Node ID ec4601ab3ed2a1d942f92fc394a1431df4d4a80a # Parent 8a2f2e76c727dc652f0d3a27c22fb02ca2ba1b63 Fixed loading of the product edit page. A bit faster loading. diff -r 8a2f2e76c727 -r ec4601ab3ed2 www/js/prod_edit.js --- a/www/js/prod_edit.js Wed Mar 11 14:29:28 2020 +0100 +++ b/www/js/prod_edit.js Mon Mar 16 15:16:42 2020 +0100 @@ -724,10 +724,7 @@ calcIBUs(); }); }, - ready: function() { - calcFermentables(); - $('#jqxTabs').jqxTabs('next'); - }, + ready: function() { $('#jqxTabs').jqxTabs('next'); }, columns: [ { text: 'Vergistbaar ingrediënt', datafield: 'f_name', cellsrenderer: function(index, datafield, value, defaultvalue, column, rowdata) { @@ -922,11 +919,7 @@ calcIBUs(); }); }, - ready: function() { - whirlpoolHops(); - calcIBUs(); - $('#jqxTabs').jqxTabs('next'); - }, + ready: function() { $('#jqxTabs').jqxTabs('next'); }, columns: [ { text: 'Hop', datafield: 'h_name', cellsrenderer: function(index, datafield, value, defaultvalue, column, rowdata) { @@ -1180,10 +1173,7 @@ } }); }, - ready: function() { - calcMiscs(); - $('#jqxTabs').jqxTabs('next'); - }, + ready: function() { $('#jqxTabs').jqxTabs('next'); }, columns: [ { text: 'Ingredient', datafield: 'm_name' }, { text: 'Type', width: 140, datafield: 'm_type', @@ -1390,12 +1380,7 @@ } }); }, - ready: function() { - calcFermentables(); - showStarter(); - calcYeast(); - $('#jqxTabs').jqxTabs('next'); - }, + ready: function() { $('#jqxTabs').jqxTabs('next'); }, columns: [ { text: 'Gist', datafield: 'y_name' }, { text: 'Laboratorium', width: 150, datafield: 'y_laboratory' }, @@ -1570,6 +1555,13 @@ }); }, ready: function() { + /* Calculate the whole recipe */ + calcFermentables(); + whirlpoolHops(); + calcIBUs(); + calcMiscs(); + showStarter(); + calcYeast(); calcInit(); calcMash(); $('#jqxLoader').jqxLoader('close'); @@ -1771,9 +1763,12 @@ if (mashtime > 5) mashtime -= 5; //Correct last ramp > 75 mashtemp = Round(mashtemp / mashtime, 2); + } else { + console.log("calcFermentables() mashGrid not loaded"); } if (!(rows = $('#fermentableGrid').jqxGrid('getrows'))) { + console.log("calcFermentables() fermentableGrid not loaded"); return; // grid not yet loaded. } @@ -1833,7 +1828,7 @@ fermentableInit = 0; $('#ferm_lintner').val(Math.round(parseFloat(lintner / mashkg))); $('#mash_kg').val(mashkg); - console.log('calcFermentables() supplies:' + ok_fermentables + ' moutsuiker:' + sugarsm + '/' + sugarsf); + console.log('calcFermentables() supplies:' + ok_fermentables + ' moutsuiker:' + Round(sugarsm, 3) + '/' + Round(sugarsf, 3)); to_100 = my_100; if (to_100) { $('#wf_amount').jqxNumberInput({ width: 90, readOnly: true, spinButtons: false }); @@ -2178,7 +2173,6 @@ ncells = Round(egrams * grate, 1), totcells = parseFloat(ncells) + start; - //console.log('svol:' + svol + ' start:' + start + ' irate:' + irate + ' egrams:' + egrams + ' grate:' + grate + ' ncells:' + ncells); return { svol: svol, irate: irate, @@ -2209,26 +2203,16 @@ parseFloat($('#prop3_volume').jqxNumberInput('decimal')) + parseFloat($('#prop4_volume').jqxNumberInput('decimal'))) == 0) { // clear by default for (i = 1; i < 5; i++) { - $('#prop' + i + '_type').hide(); + $('#prop' + i + '_type,#prop' + i + '_volume,#prop' + i + '_irate,#prop' + i + '_ncells,#prop' + i + '_tcells,#prop' + i + '_growf').hide(); $('#r' + i + '_pmpt').show(); $('#prop' + i + '_type').val(stype); - $('#prop' + i + '_volume').hide(); $('#prop' + i + '_volume').val(0); - $('#prop' + i + '_irate').hide(); - $('#prop' + i + '_ncells').hide(); - $('#prop' + i + '_tcells').hide(); - $('#prop' + i + '_growf').hide(); } if (start > needed) { return; // no starter needed } - $('#prop1_type').show(); + $('#prop1_type,#prop1_volume,#prop1_irate,#prop1_ncells,#prop1_tcells,#prop1_growf').show(); $('#r1_pmpt').hide(); - $('#prop1_volume').show(); - $('#prop1_irate').show(); - $('#prop1_ncells').show(); - $('#prop1_tcells').show(); - $('#prop1_growf').show(); for (i = lasti; i <= mvols; i++) { lasti = i; svol = uvols[lasti]; @@ -2255,12 +2239,7 @@ // second stage $('#r2_pmpt').hide(); $('#prop2_type').val(stype); - $('#prop2_type').show(); - $('#prop2_volume').show(); - $('#prop2_irate').show(); - $('#prop2_ncells').show(); - $('#prop2_tcells').show(); - $('#prop2_growf').show(); + $('#prop2_type,#prop2_volume,#prop2_irate,#prop2_ncells,#prop2_tcells,#prop2_growf').show(); for (i = lasti; i <= mvols; i++) { lasti = i; svol = uvols[lasti]; @@ -2286,12 +2265,7 @@ // third stage $('#r3_pmpt').hide(); $('#prop3_type').val(stype); - $('#prop3_type').show(); - $('#prop3_volume').show(); - $('#prop3_irate').show(); - $('#prop3_ncells').show(); - $('#prop3_tcells').show(); - $('#prop3_growf').show(); + $('#prop3_type,#prop3_volume,#prop3_irate,#prop3_ncells,#prop3_tcells,#prop3_growf').show(); for (i = lasti; i <= mvols; i++) { lasti = i; svol = uvols[lasti]; @@ -2317,12 +2291,7 @@ // fourth stage $('#r4_pmpt').hide(); $('#prop4_type').val(stype); - $('#prop4_type').show(); - $('#prop4_volume').show(); - $('#prop4_irate').show(); - $('#prop4_ncells').show(); - $('#prop4_tcells').show(); - $('#prop4_growf').show(); + $('#prop4_type,#prop4_volume,#prop4_irate,#prop4_ncells,#prop4_tcells,#prop4_growf').show(); for (i = lasti; i <= mvols; i++) { lasti = i; svol = uvols[lasti]; @@ -2340,12 +2309,7 @@ // recalculate if (dataRecord.prop1_volume > 0) { $('#r1_pmpt').hide(); - $('#prop1_type').show(); - $('#prop1_volume').show(); - $('#prop1_irate').show(); - $('#prop1_ncells').show(); - $('#prop1_tcells').show(); - $('#prop1_growf').show(); + $('#prop1_type,#prop1_volume,#prop1_irate,#prop1_ncells,#prop1_tcells,#prop1_growf').show(); result = calcStep($('#prop1_volume').val() * 1000, dataRecord.prop1_type, start); $('#prop1_irate').val(result.prate); $('#prop1_ncells').val(result.ncells); @@ -2354,12 +2318,7 @@ } if (dataRecord.prop2_volume > 0) { $('#r2_pmpt').hide(); - $('#prop2_type').show(); - $('#prop2_volume').show(); - $('#prop2_irate').show(); - $('#prop2_ncells').show(); - $('#prop2_tcells').show(); - $('#prop2_growf').show(); + $('#prop2_type,#prop2_volume,#prop2_irate,#prop2_ncells,#prop2_tcells,#prop2_growf').show(); result = calcStep($('#prop2_volume').val() * 1000, dataRecord.prop2_type, $('#prop1_tcells').val()); $('#prop2_irate').val(result.prate); $('#prop2_ncells').val(result.ncells); @@ -2368,12 +2327,7 @@ } if (dataRecord.prop3_volume > 0) { $('#r3_pmpt').hide(); - $('#prop3_type').show(); - $('#prop3_volume').show(); - $('#prop3_irate').show(); - $('#prop3_ncells').show(); - $('#prop3_tcells').show(); - $('#prop3_growf').show(); + $('#prop3_type,#prop3_volume,#prop3_irate,#prop3_ncells,#prop3_tcells,#prop3_growf').show(); result = calcStep($('#prop3_volume').val() * 1000, dataRecord.prop3_type, $('#prop2_tcells').val()); $('#prop3_irate').val(result.prate); $('#prop3_ncells').val(result.ncells); @@ -2382,12 +2336,7 @@ } if (dataRecord.prop4_volume > 0) { $('#r4_pmpt').hide(); - $('#prop4_type').show(); - $('#prop4_volume').show(); - $('#prop4_irate').show(); - $('#prop4_ncells').show(); - $('#prop4_tcells').show(); - $('#prop4_growf').show(); + $('#prop4_type,#prop4_volume,#prop4_irate,#prop4_ncells,#prop4_tcells,#prop4_growf').show(); result = calcStep($('#prop4_volume').val() * 1000, dataRecord.prop4_type, $('#prop3_tcells').val()); $('#prop4_irate').val(result.prate); $('#prop4_ncells').val(result.ncells); @@ -2505,6 +2454,7 @@ function whirlpoolHops() { var row, i, time, rowscount; + console.log('whirlpoolHops()'); if (!(rowscount = $('#hopGrid').jqxGrid('getdatainformation').rowscount)) return; if (rowscount == 0) @@ -3425,7 +3375,7 @@ if (P < 0) P = 0; P = Round(P * 1.01325, 2); // atm to bar - console.log("GetPressure(" + CO2 + ", " + T1 + ", " + T2 + ") V:" + V + " Bar: " + P); + console.log("GetPressure(" + CO2 + ", " + T1 + ", " + T2 + ") V:" + V + " Bar: " + P + " ignored ResCO2: " + Round(ResCO2(CO2, T1), 2)); return P; } @@ -3736,17 +3686,13 @@ } function calcInit() { - console.log('calcInit()'); calcMashEfficiency(); calcEfficiencyBeforeBoil(); calcEfficiencyAfterBoil(); $('#starter_try').click(function() { - $('#prop1_volume').val(0); - $('#prop2_volume').val(0); - $('#prop3_volume').val(0); - $('#prop4_volume').val(0); + $('#prop1_volume,#prop2_volume,#prop3_volume,#prop4_volume').val(0); calcYeast(); }); $('#starter_type').on('change', function(event) { @@ -3844,7 +3790,7 @@ }); $('#wa_cacl2').on('change', function(event) { if (event.args) { - setWaterAgent('CaCl2', 0); // This can prevent double entries. + setWaterAgent('CaCl2', 0); // This prevents double entries. setWaterAgent('CaCl2', event.args.value); calcWater(); } @@ -4540,13 +4486,46 @@ // initialize the input fields. // Tab 1, Algemeen $('#name').jqxTooltip({ content: 'De naam voor dit product.' }); - $('#name').jqxInput({ theme: theme, width: 640, height: 23 }); $('#code').jqxTooltip({ content: 'Product code nummer.' }); - $('#code').jqxInput({ theme: theme, width: 100, height: 23 }); $('#birth').jqxTooltip({ content: 'De ontwerp datum van dit product.' }); - $('#birth').jqxInput({ theme: theme, width: 120, height: 23 }); $('#stage').jqxTooltip({ content: 'De productie fase van dit product.' }); - $('#stage').jqxInput({ theme: theme, width: 100, height: 23 }); + $('#divide_batch').jqxTooltip({ content: 'Het aantal extra gesplitste batches.' }); + $('#divide_type').jqxTooltip({ content: 'Het splitsing moment in het productie proces.' }); + $('#notes').jqxTooltip({ content: 'De uitgebreide opmerkingen over dit product.' }); + $('#type').jqxTooltip({ content: 'Het brouw type van dit recept.' }); + $('#efficiency').jqxTooltip({ content: 'Het rendement van maischen en koken.' }); + $('#batch_size').jqxTooltip({ content: 'Het volume van het gekoelde wort na het koken.' }); + $('#boil_time').jqxTooltip({ content: 'De kooktijd in minuten.' }); + $('#boil_size').jqxTooltip({ content: 'Het volume van het wort voor het koken.' }); + $('#st_guide').jqxTooltip({ content: 'De bierstijl gids voor dit recept.'}); + $('#st_name').jqxTooltip({ content: 'De bierstijl naam voor dit recept.'}); + $('#st_letter').jqxTooltip({ content: 'De bierstijl letter voor dit recept.'}); + $('#st_letter').jqxInput({ theme: theme, width: 90, height: 23 }); + $('#st_type').jqxTooltip({ content: 'Het bierstijl type.'}); + $('#st_category').jqxTooltip({ content: 'De Amerikaanse bierstijl categorie.'}); + $('#st_category_number').jqxTooltip({ content: 'De Amerikaanse bierstijl categorie sub nummer.'}); + $('#est_og').jqxTooltip({ content: 'Het begin SG wat je wilt bereiken. De moutstort wordt automatisch herberekend.' }); + $('#st_og_min').jqxTooltip({ content: 'Het minimum begin SG voor deze bierstijl.'}); + $('#st_og_max').jqxTooltip({ content: 'Het maximum begin SG voor deze bierstijl.'}); + $('#est_fg').jqxTooltip({ content: 'Het verwachte eind SG. Dit wordt automatisch berekend.' }); + $('#st_fg_min').jqxTooltip({ content: 'Het minimum eind SG voor deze bierstijl.'}); + $('#st_fg_max').jqxTooltip({ content: 'Het maximum eind SG voor deze bierstijl.'}); + $('#est_abv').jqxTooltip({ content: 'Alcohol volume %. Dit wordt automatisch berekend.' }); + $('#st_abv_min').jqxTooltip({ content: 'Het minimum alcohol volume % voor deze bierstijl.'}); + $('#st_abv_max').jqxTooltip({ content: 'Het maximum alcohol volume % voor deze bierstijl.'}); + $('#est_color').jqxTooltip({ content: 'De kleur in EBC. Dit wordt automatisch berekend.' }); + $('#st_color_min').jqxTooltip({ content: 'De minimum kleur voor deze bierstijl.'}); + $('#st_color_max').jqxTooltip({ content: 'De maximum kleur voor deze bierstijl.'}); + $('#est_ibu').jqxTooltip({ content: 'De bitterheid in IBU. Dit wordt automatisch berekend.' }); + $('#st_ibu_min').jqxTooltip({ content: 'De minimum bitterheid voor deze bierstijl.'}); + $('#st_ibu_max').jqxTooltip({ content: 'De maximum bitterheid voor deze bierstijl.'}); + $('#kcal').jqxTooltip({ content: 'Energie-inhoud in kcal/liter.' }); + $('#est_carb').jqxTooltip({ content: 'Koolzuur volume. Dit wordt automatisch berekend.' }); + $('#st_carb_min').jqxTooltip({ content: 'Het minimum koolzuur volume voor deze bierstijl.'}); + $('#st_carb_max').jqxTooltip({ content: 'Het maximum koolzuur volume voor deze bierstijl.'}); + + $('#name').jqxInput({ theme: theme, width: 640, height: 23 }); + $('#code, #stage').jqxInput({ theme: theme, width: 100, height: 23 }); $('#locked').jqxCheckBox({ theme: theme, width: 120, height: 23, disabled: true }); $('#locked').on('checked', function(event) { if (dataRecord.stage >= 10) { @@ -4562,13 +4541,8 @@ calcStage(); } }); - $('#divide_batch').jqxTooltip({ content: 'Het aantal extra gesplitste batches.' }); - $('#divide_type').jqxTooltip({ content: 'Het splitsing moment in het productie proces.' }); - $('#divide_batch,#divide_type').jqxInput({ theme: theme, width: 120, height: 23 }); - - $('#notes').jqxTooltip({ content: 'De uitgebreide opmerkingen over dit product.' }); + $('#birth,#divide_batch,#divide_type').jqxInput({ theme: theme, width: 120, height: 23 }); $('#notes').jqxInput({ theme: theme, width: 960, height: 100 }); - $('#type').jqxTooltip({ content: 'Het brouw type van dit recept.' }); $('#type').jqxDropDownList({ theme: theme, source: RecipeTypeAdapter, @@ -4578,48 +4552,17 @@ height: 23, autoDropDownHeight: true }); - $('#efficiency').jqxTooltip({ content: 'Het rendement van maischen en koken.' }); $('#efficiency').jqxNumberInput(Perc1dec); - $('#batch_size').jqxTooltip({ content: 'Het volume van het gekoelde wort na het koken.' }); $('#batch_size').jqxNumberInput(Spin1dec); $('#batch_size').jqxNumberInput({ min: 4 }); - $('#boil_time').jqxTooltip({ content: 'De kooktijd in minuten.' }); $('#boil_time').jqxNumberInput(PosInt); $('#boil_time').jqxNumberInput({ min: 4, max: 360 }); - $('#boil_size').jqxTooltip({ content: 'Het volume van het wort voor het koken.' }); $('#boil_size').jqxNumberInput({ inputMode: 'simple', theme: theme, width: 90, height: 23, decimalDigits: 2, readOnly: true }); - - $('#st_guide').jqxTooltip({ content: 'De bierstijl gids voor dit recept.'}); - $('#st_name').jqxTooltip({ content: 'De bierstijl naam voor dit recept.'}); - $('#st_letter').jqxTooltip({ content: 'De bierstijl letter voor dit recept.'}); - $('#st_letter').jqxInput({ theme: theme, width: 90, height: 23 }); - $('#st_type').jqxTooltip({ content: 'Het bierstijl type.'}); - $('#st_category').jqxTooltip({ content: 'De Amerikaanse bierstijl categorie.'}); - $('#st_category_number').jqxTooltip({ content: 'De Amerikaanse bierstijl categorie sub nummer.'}); $('#st_guide,#st_name,#st_type,#st_category').jqxInput({ theme: theme, width: 250, height: 23 }); - $('#st_category_number').jqxNumberInput(Smal0dec); - - $('#est_og').jqxTooltip({ content: 'Het begin SG wat je wilt bereiken. De moutstort wordt automatisch herberekend.' }); $('#est_og').jqxNumberInput(SGopts); - $('#st_og_min').jqxTooltip({ content: 'Het minimum begin SG voor deze bierstijl.'}); - $('#st_og_max').jqxTooltip({ content: 'Het maximum begin SG voor deze bierstijl.'}); - - $('#est_fg').jqxTooltip({ content: 'Het verwachte eind SG. Dit wordt automatisch berekend.' }); $('#est_fg').jqxNumberInput(Show3dec); - $('#st_fg_min').jqxTooltip({ content: 'Het minimum eind SG voor deze bierstijl.'}); - $('#st_fg_max').jqxTooltip({ content: 'Het maximum eind SG voor deze bierstijl.'}); $('#st_og_min,#st_og_max,#st_fg_min,#st_fg_max').jqxNumberInput({ inputMode: 'simple', theme: theme, width: 50, height: 23, decimalDigits: 3, readOnly: true }); - - $('#est_abv').jqxTooltip({ content: 'Alcohol volume %. Dit wordt automatisch berekend.' }); - $('#st_abv_min').jqxTooltip({ content: 'Het minimum alcohol volume % voor deze bierstijl.'}); - $('#st_abv_max').jqxTooltip({ content: 'Het maximum alcohol volume % voor deze bierstijl.'}); - $('#est_abv,#st_abv_min,#st_abv_max').jqxNumberInput(Smal1dec); - - $('#est_color').jqxTooltip({ content: 'De kleur in EBC. Dit wordt automatisch berekend.' }); - $('#est_color').jqxNumberInput(Show0dec); - $('#st_color_min').jqxTooltip({ content: 'De minimum kleur voor deze bierstijl.'}); - $('#st_color_max').jqxTooltip({ content: 'De maximum kleur voor deze bierstijl.'}); - $('#st_color_min,#st_color_max').jqxNumberInput(Smal0dec); + $('#est_ibu,#est_color').jqxNumberInput(Show0dec); $('#color_method').jqxDropDownList({ theme: theme, source: ColorMethodAdapter, @@ -4629,11 +4572,7 @@ height: 23, autoDropDownHeight: true }); - $('#est_ibu').jqxTooltip({ content: 'De bitterheid in IBU. Dit wordt automatisch berekend.' }); - $('#est_ibu').jqxNumberInput(Show0dec); - $('#st_ibu_min').jqxTooltip({ content: 'De minimum bitterheid voor deze bierstijl.'}); - $('#st_ibu_max').jqxTooltip({ content: 'De maximum bitterheid voor deze bierstijl.'}); - $('#st_ibu_min,#st_ibu_max').jqxNumberInput(Smal0dec); + $('#st_color_min,#st_color_max,#st_category_number,#st_ibu_min,#st_ibu_max,#kcal').jqxNumberInput(Smal0dec); $('#ibu_method').jqxDropDownList({ theme: theme, source: IBUmethodAdapter, @@ -4644,105 +4583,61 @@ autoDropDownHeight: true, dropDownVerticalAlignment: 'top' }); - $('#kcal').jqxTooltip({ content: 'Energie-inhoud in kcal/liter.' }); - $('#kcal').jqxNumberInput(Smal0dec); - $('#est_carb').jqxTooltip({ content: 'Koolzuur volume. Dit wordt automatisch berekend.' }); - $('#st_carb_min').jqxTooltip({ content: 'Het minimum koolzuur volume voor deze bierstijl.'}); - $('#st_carb_max').jqxTooltip({ content: 'Het maximum koolzuur volume voor deze bierstijl.'}); - $('#est_carb,#st_carb_min,#st_carb_max').jqxNumberInput(Smal1dec); + $('#est_abv,#st_abv_min,#st_abv_max,#est_carb,#st_carb_min,#st_carb_max').jqxNumberInput(Smal1dec); // Tab 2, Equipment $('#eq_name').jqxTooltip({ content: 'De naam van deze brouw apparatuur.' }); - $('#eq_name').jqxInput({ theme: theme, width: 250, height: 23 }); $('#eq_boil_size').jqxTooltip({ content: 'Normaal kook volume in liters' }); $('#eq_batch_size').jqxTooltip({ content: 'Berekende batch grootte in liters aan het eind van de kook.' }); $('#eq_tun_volume').jqxTooltip({ content: 'Maisch ketel volume.' }); $('#eq_top_up_water').jqxTooltip({ content: 'Extra water in het gistvat.' }); $('#eq_trub_chiller_loss').jqxTooltip({ content: 'Standaard verlies bij het overbrengen naar het gistvat.' }); $('#eq_evap_rate').jqxTooltip({ content: 'Verdamping in liters per uur.' }); - $('#eq_evap_rate').jqxNumberInput(Show2dec); $('#eq_boil_time').jqxTooltip({ content: 'Normale kooktijd in minuten.' }); $('#eq_top_up_kettle').jqxTooltip({ content: 'Extra water toevoegen tijdens de kook.' }); $('#eq_hop_utilization').jqxTooltip({ content: '100% voor kleine installaties, hoger voor grote brouwerijen.' }); - $('#eq_boil_time,#eq_hop_utilization').jqxNumberInput(Show0dec); $('#eq_notes').jqxTooltip({ content: 'Opmerkingen over deze apparatuur.' }); - $('#eq_notes').jqxInput({ theme: theme, width: 960, height: 200 }); $('#eq_lauter_volume').jqxTooltip({ content: 'Filterkuip volume.' }); $('#eq_lauter_deadspace').jqxTooltip({ content: 'Filterkuip verlies in liters.' }); $('#eq_kettle_volume').jqxTooltip({ content: 'Kook ketel volume in liters.' }); $('#eq_mash_volume').jqxTooltip({ content: 'Maisch water voor de eerste stap.' }); $('#eq_mash_max').jqxTooltip({ content: 'De maximale moutstort in Kg.' }); $('#eq_efficiency').jqxTooltip({ content: 'Gemiddeld brouwzaal rendement.' }); + + $('#eq_name').jqxInput({ theme: theme, width: 250, height: 23 }); + $('#eq_evap_rate').jqxNumberInput(Show2dec); + $('#eq_boil_time,#eq_hop_utilization').jqxNumberInput(Show0dec); + $('#eq_notes').jqxInput({ theme: theme, width: 960, height: 200 }); $('#eq_boil_size,#eq_batch_size,#eq_tun_volume,#eq_top_up_water,#eq_trub_chiller_loss,#eq_top_up_kettle').jqxNumberInput(Show1dec); $('#eq_lauter_volume,#eq_lauter_deadspace,#eq_kettle_volume,#eq_mash_volume,#eq_mash_max,#eq_efficiency').jqxNumberInput(Show1dec); // Tab 3, Fermentables $('#est_color2').jqxTooltip({ content: 'De kleur in EBC. Dit wordt automatisch berekend.' }); - $('#est_color2').jqxNumberInput(Show0dec); $('#est_og2').jqxTooltip({ content: 'Het geschatte begin SG van dit product.' }); $('#mash_kg').jqxTooltip({ content: 'Het gewicht van alle mouten in de maisch.' }); + + $('#est_color2').jqxNumberInput(Show0dec); $('#est_og2,#mash_kg').jqxNumberInput(Show3dec); + $('#perc_malts').jqxProgressBar({ - width: 300, - height: 23, - theme: theme, - showText: true, - max: 120, - animationDuration: 0, - colorRanges: [ - { stop: 90, color: '#008C00' }, - { stop: 100, color: '#EB7331' }, - { stop: 120, color: '#FF0000' } - ], - renderText: function(text) { - return (Math.round(parseInt(text) * 1.2)) + '%'; - } + width: 300, height: 23, theme: theme, showText: true, max: 120, animationDuration: 0, + colorRanges: [{ stop: 90, color: '#008C00' },{ stop: 100, color: '#EB7331' },{ stop: 120, color: '#FF0000' }], + renderText: function(text) { return (Math.round(parseInt(text) * 1.2)) + '%'; } }); $('#perc_sugars').jqxProgressBar({ - width: 300, - height: 23, - theme: theme, - showText: true, - max: 50, - animationDuration: 0, - colorRanges: [ - { stop: 20, color: '#008C00' }, - { stop: 50, color: '#FF0000' } - ], - renderText: function(text) { - return (Math.round(parseInt(text) * 5) / 10) + '%'; - } + width: 300, height: 23, theme: theme, showText: true, max: 50, animationDuration: 0, + colorRanges: [{ stop: 20, color: '#008C00' },{ stop: 50, color: '#FF0000' }], + renderText: function(text) { return (Math.round(parseInt(text) * 5) / 10) + '%'; } }); $('#perc_cara').jqxProgressBar({ - width: 300, - height: 23, - theme: theme, - showText: true, - max: 50, - animationDuration: 0, - colorRanges: [ - { stop: 25, color: '#008C00' }, - { stop: 50, color: '#FF0000' } - ], - renderText: function(text) { - return (Math.round(parseInt(text) * 5) / 10) + '%'; - } + width: 300, height: 23, theme: theme, showText: true, max: 50, animationDuration: 0, + colorRanges: [{ stop: 25, color: '#008C00' },{ stop: 50, color: '#FF0000' }], + renderText: function(text) { return (Math.round(parseInt(text) * 5) / 10) + '%'; } }); $('#ferm_lintner').jqxProgressBar({ - width: 300, - height: 23, - theme: theme, - showText: true, - max: 200, - animationDuration: 0, - colorRanges: [ - { stop: 30, color: '#FF0000' }, - { stop: 40, color: '#EB7331' }, - { stop: 200, color: '#008C00' } - ], - renderText: function(text) { - return (parseInt(text) * 2) + ' lintner'; - } + width: 300, height: 23, theme: theme, showText: true, max: 200, animationDuration: 0, + colorRanges: [{ stop: 30, color: '#FF0000' },{ stop: 40, color: '#EB7331' },{ stop: 200, color: '#008C00' }], + renderText: function(text) { return (parseInt(text) * 2) + ' lintner'; } }); $('#popupFermentable').jqxWindow({ width: 800, @@ -4965,11 +4860,7 @@ $('#est_ibu2').jqxTooltip({ content: 'De bitterheid in IBU. Dit wordt automatisch berekend.' }); $('#est_ibu2').jqxNumberInput(Smal0dec); $('#hop_flavour').jqxProgressBar({ - width: 300, - height: 23, - theme: theme, - showText: true, - animationDuration: 0, + width: 300, height: 23, theme: theme, showText: true, animationDuration: 0, colorRanges: [ { stop: 20, color: '#004D00' }, { stop: 40, color: '#008C00' }, @@ -4992,8 +4883,7 @@ } }); $('#hop_aroma').jqxProgressBar({ - width: 300, height: 23, theme: theme, showText: true, - animationDuration: 0, + width: 300, height: 23, theme: theme, showText: true, animationDuration: 0, colorRanges: [ { stop: 20, color: '#004D00' }, { stop: 40, color: '#008C00' }, @@ -5272,16 +5162,15 @@ // Tab 6, Yeasts $('#est_fg2').jqxTooltip({ content: 'Het verwachte eind SG. Dit wordt automatisch berekend.' }); - $('#est_fg2').jqxNumberInput(Show3dec); $('#est_abv2').jqxTooltip({ content: 'Verwacht alcohol volume %. Dit wordt automatisch berekend.' }); - $('#est_abv2').jqxNumberInput(Show2dec); $('#yeast_cells').jqxTooltip({ content: 'Het aantal miljard beschikbare gistcellen zonder eventuele starter.' }); - $('#yeast_cells').jqxNumberInput(Show1dec); $('#need_cells').jqxTooltip({ content: 'Het aantal miljard nodige cellen is afhankelijk van het begin SG, biertype en volume.' }); - $('#need_cells').jqxNumberInput(Show1dec); $('#plato_cells').jqxTooltip({ content: 'De berekende pitchrate in miljard cellen per ml per graad Plato.' }); - $('#plato_cells').jqxNumberInput(Show2dec); $('#yeast_prod_date').jqxTooltip({ content: 'Bij korrelgisten is meestal "best voor" datum op het zakje gedrukt.
Gebruik die datum maar dan twee jaar eerder als productie datum.
Bij White Labs is de productie datum vier maanden voor de "Best by" datum die geprint op het buisje.
Bij Wyeast is dit de "manufacture date" die op het pak geprint is.
Voor schuine buis, slurry, opkweek en gedroogd is dit de datum dat je de gist geoogst hebt.' }); + + $('#est_fg2,#plato_cells').jqxNumberInput(Show3dec); + $('#est_abv2').jqxNumberInput(Show2dec); + $('#yeast_cells,#need_cells').jqxNumberInput(Show1dec); $('#yeast_prod_date').jqxDateTimeInput(Dateopts); $('#yeast_prod_date').on('close', function(event) { calcViability(); @@ -5420,6 +5309,12 @@ } }); for (i = 1; i < 5; i++) { + $('#prop' + i + '_volume').jqxTooltip({ content: 'Het volume van deze starter stap.' }); + $('#prop' + i + '_irate').jqxTooltip({ content: 'Voor de beste gistgroei, houd de injectie factor tussen de 25 en 100 miljoen cellen per ml.' }); + $('#prop' + i + '_ncells').jqxTooltip({ content: 'Het aantal miljard nieuwe gistcellen in deze stap.' }); + $('#prop' + i + '_tcells').jqxTooltip({ content: 'Het totaal aantal miljard gistcellen na deze stap.' }); + $('#prop' + i + '_growf').jqxTooltip({ content: 'De groeifactor, minstens 1. Ongeroerde starters komen meestal niet boven de 3.' }); + $('#prop' + i + '_type').jqxDropDownList({ theme: theme, source: StarterTypeAdapter, @@ -5429,20 +5324,10 @@ height: 23, autoDropDownHeight: true }); - $('#prop' + i + '_type').hide(); - $('#prop' + i + '_volume').jqxTooltip({ content: 'Het volume van deze starter stap.' }); $('#prop' + i + '_volume').jqxNumberInput(Spin3dec); - $('#prop' + i + '_volume').hide(); - $('#prop' + i + '_irate').jqxTooltip({ content: 'Voor de beste gistgroei, houd de injectie factor tussen de 25 en 100 miljoen cellen per ml.' }); - $('#prop' + i + '_irate').hide(); - $('#prop' + i + '_ncells').jqxTooltip({ content: 'Het aantal miljard nieuwe gistcellen in deze stap.' }); - $('#prop' + i + '_ncells').hide(); - $('#prop' + i + '_tcells').jqxTooltip({ content: 'Het totaal aantal miljard gistcellen na deze stap.' }); $('#prop' + i + '_irate,#prop' + i + '_ncells,#prop' + i + '_tcells').jqxNumberInput(Show1dec); - $('#prop' + i + '_tcells').hide(); - $('#prop' + i + '_growf').jqxTooltip({ content: 'De groeifactor, minstens 1. Ongeroerde starters komen meestal niet boven de 3.' }); $('#prop' + i + '_growf').jqxNumberInput(Show2dec); - $('#prop' + i + '_growf').hide(); + $('#prop' + i + '_type,#prop' + i + '_volume,#prop' + i + '_irate,#prop' + i + '_ncells,#prop' + i + '_tcells,#prop' + i + '_growf').hide(); } $('#starter_type').jqxTooltip({ content: 'starter_type' }); $('#starter_type').jqxDropDownList({ @@ -5454,7 +5339,6 @@ height: 23, autoDropDownHeight: true }); -// $('#starter_type').jqxTooltip({ content: 'starter_type' }); $('#starter_sg').jqxTooltip({ content: 'Het ideale starter SG moet tussen de 1.030 en 1.040 zijn. Optimaal is 1.037.' }); $('#starter_sg').jqxNumberInput(SGopts); $('#starter_viability').jqxTooltip({ content: 'De gist conditie.' }); @@ -5758,7 +5642,7 @@ height: 23, autoDropDownHeight: true }); - $('#wa_base').jqxNumberInput(Spin2dec); + $('#wa_base,#wa_acid').jqxNumberInput(Spin2dec); $('#wa_base').jqxNumberInput({ symbol: ' gr', symbolPosition: 'right' }); $('#wa_acid_name').jqxDropDownList({ theme: theme, @@ -5769,9 +5653,8 @@ height: 23, autoDropDownHeight: true }); - $('#wa_acid').jqxNumberInput(Spin2dec); $('#wa_acid').jqxNumberInput({ symbol: ' ml', symbolPosition: 'right' }); - $('#wa_acid_perc').jqxNumberInput(Perc0); + $('#wa_acid_perc,#sparge_acid_perc').jqxNumberInput(Perc0); $('#wa_acid_perc').jqxNumberInput({ width: 70, symbol: '%', symbolPosition: 'right' }); // Sparge water $('#sparge_temp,#sparge_volume').jqxNumberInput(Spin1dec); @@ -5796,33 +5679,39 @@ height: 23, autoDropDownHeight: true }); - $('#sparge_acid_perc').jqxNumberInput(Perc0); $('#sparge_acid_perc').jqxNumberInput({ symbol: '%', symbolPosition: 'right' }); // Tab 9, Brewday $('#brew_date_start').jqxTooltip({ content: 'Brouw datum en tijd. Voor planning laat de tijd op 00:00:00 staan.' }); - $('#brew_date_start').on('close', function(event) { calcStage(); }); $('#brew_date_end').jqxTooltip({ content: 'End datum en tijd van de brouw. Leeg laten als er nog niet gebrouwen is.' }); - $('#brew_date_start,#brew_date_end').jqxDateTimeInput(DateTimeopts); - $('#brew_date_end').on('close', function(event) { calcStage(); }); $('#brew_mash_ph').jqxTooltip({ content: 'De gemeten pH tijdens het maischen eventueel na correctie.' }); $('#est_mash_ph').jqxTooltip({ content: 'De gewenste pH tijdens het maischen.' }); - $('#est_mash_ph').jqxNumberInput(Show1wat); $('#brew_preboil_ph').jqxTooltip({ content: 'De gemeten pH in de kookketel na het spoelen en voor de kook.' }); - // est_preboil_ph $('#brew_aboil_ph').jqxTooltip({ content: 'De gemeten pH na het koken.' }); - $('#brew_mash_ph,#brew_preboil_ph,#brew_aboil_ph').jqxNumberInput(SpinpH); - // est_aboil_ph $('#brew_mash_sg').jqxTooltip({ content: 'Het bereikte SG na het maischen.' }); - $('#brew_mash_sg').on('valueChanged', function() { calcMashEfficiency(); }); $('#est_mash_sg').jqxTooltip({ content: 'Het berekende verwachte SG na het maischen.' }); $('#brew_preboil_sg').jqxTooltip({ content: 'Het gemeten SG in de kookketel na het spoelen en voor het koken.' }); + $('#est_pre_sg').jqxTooltip({ content: 'Het berekende SG in de kookketel na het spoelen en voor het koken.' }); + $('#brew_aboil_sg').jqxTooltip({ content: 'Het gemeten SG in de kookketel na het koken.' }); + $('#est_og3').jqxTooltip({ content: 'Het gewenste SG in de kookketel na het koken zonder eventuele suikers die tijdens de vergisting toegevoegd worden.' }); + $('#brew_mash_efficiency').jqxTooltip({ content: 'Het behaalde maisch rendement.' }); + $('#brew_preboil_volume').jqxTooltip({ content: 'Het gemeten volume van het wort voor het koken.' }); + $('#est_pre_vol').jqxTooltip({ content: 'Het berekende volume van het wort voor het koken.' }); + $('#brew_aboil_volume').jqxTooltip({ content: 'Het gemeten volume van het wort na het koken.' }); + $('#est_a_vol').jqxTooltip({ content: 'Het gewenste volume na het koken.' }); + $('#brew_preboil_efficiency').jqxTooltip({ content: 'Het berekende rendement voor het koken.' }); + $('#brew_aboil_efficiency').jqxTooltip({ content: 'Het bereikte rendement na het koken.' }); + $('#brew_sparge_temperature').jqxTooltip({ content: 'De spoelwater temperatuur, in te stellen in de Water tab.' }); + $('#brew_sparge_volume').jqxTooltip({ content: 'Het spoelwater voorraad volume, in te stellen in de Water tab.' }); + $('#brew_date_start,#brew_date_end').jqxDateTimeInput(DateTimeopts); + $('#brew_date_start,#brew_date_end').on('close', function(event) { calcStage(); }); + $('#est_mash_ph').jqxNumberInput(Show1wat); + $('#brew_mash_ph,#brew_preboil_ph,#brew_aboil_ph').jqxNumberInput(SpinpH); + $('#brew_mash_sg').on('valueChanged', function() { calcMashEfficiency(); }); $('#brew_preboil_sg').on('valueChanged', function(event) { dataRecord.brew_preboil_sg = event.args.value; calcEfficiencyBeforeBoil(); }); - $('#est_pre_sg').jqxTooltip({ content: 'Het berekende SG in de kookketel na het spoelen en voor het koken.' }); - $('#brew_aboil_sg').jqxTooltip({ content: 'Het gemeten SG in de kookketel na het koken.' }); $('#brew_mash_sg,#brew_preboil_sg,#brew_aboil_sg').jqxNumberInput(SGopts); $('#brew_aboil_sg').on('valueChanged', function(event) { dataRecord.brew_aboil_sg = event.args.value; @@ -5830,17 +5719,12 @@ calcFermentables(); calcIBUs(); }); - $('#est_og3').jqxTooltip({ content: 'Het gewenste SG in de kookketel na het koken zonder eventuele suikers die tijdens de vergisting toegevoegd worden.' }); $('#est_mash_sg,#est_pre_sg,#est_og3').jqxNumberInput(Show3wat); - $('#brew_mash_efficiency').jqxTooltip({ content: 'Het behaalde maisch rendement.' }); $('#brew_mash_efficiency').jqxNumberInput(Show1dec); - $('#brew_preboil_volume').jqxTooltip({ content: 'Het gemeten volume van het wort voor het koken.' }); $('#brew_preboil_volume').on('valueChanged', function(event) { dataRecord.brew_preboil_volume = event.args.value; calcEfficiencyBeforeBoil(); }); - $('#est_pre_vol').jqxTooltip({ content: 'Het berekende volume van het wort voor het koken.' }); - $('#brew_aboil_volume').jqxTooltip({ content: 'Het gemeten volume van het wort na het koken.' }); $('#brew_preboil_volume,#brew_aboil_volume').jqxNumberInput(Spin1dec); $('#brew_aboil_volume').on('valueChanged', function(event) { dataRecord.brew_aboil_volume = event.args.value; @@ -5848,12 +5732,7 @@ calcFermentables(); calcIBUs(); }); - $('#est_a_vol').jqxTooltip({ content: 'Het gewenste volume na het koken.' }); $('#est_pre_vol,#est_a_vol').jqxNumberInput(Show1wat); - $('#brew_preboil_efficiency').jqxTooltip({ content: 'Het berekende rendement voor het koken.' }); - $('#brew_aboil_efficiency').jqxTooltip({ content: 'Het bereikte rendement na het koken.' }); - $('#brew_sparge_temperature').jqxTooltip({ content: 'De spoelwater temperatuur, in te stellen in de Water tab.' }); - $('#brew_sparge_volume').jqxTooltip({ content: 'Het spoelwater voorraad volume, in te stellen in de Water tab.' }); $('#brew_preboil_efficiency,#brew_aboil_efficiency,#brew_sparge_temperature,#brew_sparge_volume,#brew_sparge_est').jqxNumberInput(Show1dec); $('#brew_cooling_to').jqxNumberInput(Spin1dec); $('#brew_sparge_ph').jqxNumberInput(SpinpH); @@ -5866,9 +5745,8 @@ height: 23, autoDropDownHeight: true }); - $('#brew_cooling_time').jqxNumberInput(PosInt); - $('#brew_cooling_time').jqxNumberInput({ max: 1440 }); - $('#brew_whirlpool9,#brew_whirlpool7,#brew_whirlpool6,#brew_whirlpool2').jqxNumberInput(PosInt); + $('#brew_cooling_time,#brew_whirlpool9,#brew_whirlpool7,#brew_whirlpool6,#brew_whirlpool2,#brew_aeration_time,#brew_aeration_speed').jqxNumberInput(PosInt); + $('#brew_cooling_time,#brew_aeration_time,#brew_aeration_speed').jqxNumberInput({ max: 1440 }); $('#brew_whirlpool9,#brew_whirlpool7,#brew_whirlpool6,#brew_whirlpool2').jqxNumberInput({ max: 120 }); $('#brew_aeration_type').jqxDropDownList({ theme: theme, @@ -5879,8 +5757,6 @@ height: 23, autoDropDownHeight: true }); - $('#brew_aeration_time,#brew_aeration_speed').jqxNumberInput(PosInt); - $('#brew_aeration_time,#brew_aeration_speed').jqxNumberInput({ max: 1440 }); $('#brew_fermenter_volume').jqxNumberInput(Show1dec); $('#brew_fermenter_sg').jqxNumberInput(Show3dec); $('#brew_fermenter_extrawater,#brew_fermenter_tcloss').jqxNumberInput(Spin1dec); @@ -5898,21 +5774,20 @@ $('#primary_max_temp').jqxTooltip({ content: 'De hoogst bereikte piek temperatuur tijdens de hoofgvergisting.' }); $('#primary_end_temp').jqxTooltip({ content: 'De eind temperatuur van de hoofdvergisting.' }); $('#primary_end_sg').jqxTooltip({ content: 'Het gemeten SG aan het eind van de hoofdvergisting.' }); - $('#primary_end_brix').jqxTooltip({ content: 'Hulpfinctie: de afgelezen °Brix RI waarde met een refractometer.' }); + $('#primary_end_brix,#secondary_end_brix,#final_brix').jqxTooltip({ content: 'Hulpfinctie: de afgelezen °Brix RI waarde met een refractometer.' }); $('#primary_svg').jqxTooltip({ content: 'De schijnbare vergisting graad behaald na de hoofdgisting.' }); $('#primary_end_date').jqxTooltip({ content: 'De eind datum van de hoofdvergisting en eventueel overhevelen.' }); $('#secondary_end_sg').jqxTooltip({ content: 'Het gemeten SG aan het eind van de navergisting.' }); - $('#primary_end_sg,#secondary_end_sg').jqxNumberInput(SGopts); - $('#secondary_end_brix').jqxTooltip({ content: 'Hulpfinctie: de afgelezen °Brix RI waarde met een refractometer.' }); $('#secondary_svg').jqxTooltip({ content: 'De schijnbare vergisting graad behaald na de nagisting.' }); $('#secondary_end_date').jqxTooltip({ content: 'De eind datum van de navergisting en het begin van het lageren.' }); + $('#est_fg3').jqxTooltip({ content: 'Het verwachte eind SG. Dit wordt automatisch berekend.' }); + + $('#primary_end_sg,#secondary_end_sg').jqxNumberInput(SGopts); $('#primary_end_date,#secondary_end_date').jqxDateTimeInput(Dateopts); $('#primary_end_date,#secondary_end_date').on('close', function(event) { calcStage(); }); $('#primary_start_temp,#primary_max_temp,#primary_end_temp,#secondary_temp,#tertiary_temp').jqxNumberInput(YeastT); $('#fg').jqxNumberInput(Spin3dec); - $('#est_fg3').jqxTooltip({ content: 'Het verwachte eind SG. Dit wordt automatisch berekend.' }); $('#brew_fermenter_sg2,#est_fg3').jqxNumberInput(Show3dec); - $('#final_brix').jqxTooltip({ content: 'Hulpfinctie: de afgelezen °Brix RI waarde met een refractometer.' }); $('#primary_end_brix,#secondary_end_brix,#final_brix').jqxNumberInput(Spin1dec); $('#final_abv').jqxNumberInput(Show2dec); $('#primary_svg,#secondary_svg,#final_svg').jqxNumberInput(Show1dec); @@ -5930,26 +5805,28 @@ // Tab 11, Packaging // TODO: high gravity packaging, extra water and recalc abv, color and ibu. $('#package_date').jqxTooltip({ content: 'De verpakkings datum van dit bier.' }); - $('#package_date').jqxDateTimeInput(Dateopts); - $('#package_date').on('close', function(event) { calcStage(); }); $('#package_volume').jqxTooltip({ content: 'Het beschikbare volume om te bottelen of op fust te zetten.' }); $('#package_infuse_amount').jqxTooltip({ content: 'De hoeveelheid water of drank extra toe te voegen.' }); - $('#package_infuse_amount').jqxNumberInput(Spin3dec); $('#package_infuse_abv').jqxTooltip({ content: 'De hoeveelheid alcohol in de drank, of 0.0 als het water is.' }); $('#package_infuse_notes').jqxTooltip({ content: 'Omschrijving van de extra toevoeging.' }); - $('#package_infuse_notes').jqxInput({ theme: theme, width: 640, height: 23 }); $('#package_abv').jqxTooltip({ content: 'De uiteindelijke hoeveelheid alcohol volume %.' }); - $('#package_abv').jqxNumberInput(Show2dec); $('#package_ph').jqxTooltip({ content: 'De gemeten pH vlak voor het verpakken.' }); - $('#package_ph').jqxNumberInput(SpinpH); $('#st_carb_min2').jqxTooltip({ content: 'Het minimum aanbevolen koolzuur volume voor deze bierstijl.'}); $('#st_carb_max2').jqxTooltip({ content: 'Het maximum aamnevolen koolzuur volume voor deze bierstijl.'}); - $('#st_carb_min2,#st_carb_max2').jqxNumberInput(Smal1dec); $('#bottle_amount').jqxTooltip({ content: 'De totale hoeveelheid te bottelen bier.' }); $('#keg_amount').jqxTooltip({ content: 'De totale hoeveelheid op fust te zetten bier.' }); - $('#package_volume,#package_infuse_abv,#bottle_amount,#keg_amount').jqxNumberInput(Spin1dec); $('#bottle_carbonation').jqxTooltip({ content: 'Het gewenste CO2 volume in de flessen.' }); $('#keg_carbonation').jqxTooltip({ content: 'Het gewenste CO2 volume door de suiker in de fusten.' }); + $('#bottle_priming_water,#keg_priming_water').jqxTooltip({ content: 'De hoeveelheid water om de suiker op te lossen.' }); + $('#bottle_pressure').jqxTooltip({ content: 'De maximaal te verwachten druk tijdens het hergisten.' }); + $('#package_date').jqxDateTimeInput(Dateopts); + $('#package_date').on('close', function(event) { calcStage(); }); + $('#package_infuse_amount').jqxNumberInput(Spin3dec); + $('#package_infuse_notes').jqxInput({ theme: theme, width: 640, height: 23 }); + $('#package_abv').jqxNumberInput(Show2dec); + $('#package_ph').jqxNumberInput(SpinpH); + $('#st_carb_min2,#st_carb_max2').jqxNumberInput(Smal1dec); + $('#package_volume,#package_infuse_abv,#bottle_amount,#keg_amount').jqxNumberInput(Spin1dec); $('#bottle_carbonation,#keg_carbonation').jqxNumberInput(Spin2dec); $('#bottle_carbonation,#keg_carbonation').jqxNumberInput({ max: 5 }); $('#bottle_priming_sugar').jqxDropDownList({ @@ -6058,9 +5935,7 @@ calcCarbonation(); } }); - $('#bottle_priming_water,#keg_priming_water').jqxTooltip({ content: 'De hoeveelheid water om de suiker op te lossen.' }); $('#bottle_priming_water,#keg_priming_water').jqxNumberInput(Spin3dec); - $('#bottle_pressure').jqxTooltip({ content: 'De maximaal te verwachten druk tijdens het hergisten.' }); $('#keg_forced_carb').jqxCheckBox({ theme: theme, width: 120, height: 23 }); $('#bottle_priming_amount,#keg_priming_amount,#bottle_priming_total,#bottle_pressure,#keg_priming_total,#keg_pressure').jqxNumberInput(Show1dec); $('#bottle_abv,#keg_abv').jqxNumberInput(Show2dec);