www/js/prod_edit.js

changeset 826
4e681bc073bd
parent 825
8b87ad5bd3c3
child 827
5df0d11ca02b
equal deleted inserted replaced
825:8b87ad5bd3c3 826:4e681bc073bd
470 $('#brew_sparge_temperature').val(dataRecord.sparge_temp); 470 $('#brew_sparge_temperature').val(dataRecord.sparge_temp);
471 $('#brew_sparge_volume').val(dataRecord.sparge_volume); 471 $('#brew_sparge_volume').val(dataRecord.sparge_volume);
472 $('#brew_sparge_est').val(dataRecord.brew_sparge_est); 472 $('#brew_sparge_est').val(dataRecord.brew_sparge_est);
473 $('#brew_sparge_ph').val(dataRecord.brew_sparge_ph); 473 $('#brew_sparge_ph').val(dataRecord.brew_sparge_ph);
474 // Header Beluchten 474 // Header Beluchten
475 $('#brew_aeration_type').val(dataRecord.brew_aeration_type); 475 $('#brew_aeration_type').val(AerationTypeData[dataRecord.brew_aeration_type].nl);
476 $('#brew_aeration_time').val(dataRecord.brew_aeration_time); 476 $('#brew_aeration_time').val(dataRecord.brew_aeration_time);
477 $('#brew_aeration_speed').val(dataRecord.brew_aeration_speed); 477 $('#brew_aeration_speed').val(dataRecord.brew_aeration_speed);
478 478
479 $('#brew_preboil_ph').val(dataRecord.brew_preboil_ph); 479 $('#brew_preboil_ph').val(dataRecord.brew_preboil_ph);
480 $('#brew_preboil_sg').val(dataRecord.brew_preboil_sg); 480 $('#brew_preboil_sg').val(dataRecord.brew_preboil_sg);
498 $('#brew_aboil_sg').val(dataRecord.brew_aboil_sg); 498 $('#brew_aboil_sg').val(dataRecord.brew_aboil_sg);
499 $('#brew_aboil_volume').val(dataRecord.brew_aboil_volume); 499 $('#brew_aboil_volume').val(dataRecord.brew_aboil_volume);
500 $('#brew_aboil_efficiency').val(dataRecord.brew_aboil_efficiency); 500 $('#brew_aboil_efficiency').val(dataRecord.brew_aboil_efficiency);
501 // Header Koelen en whirlpoolen 501 // Header Koelen en whirlpoolen
502 $('#brew_cooling_to').val(dataRecord.brew_cooling_to); 502 $('#brew_cooling_to').val(dataRecord.brew_cooling_to);
503 $('#brew_cooling_method').val(dataRecord.brew_cooling_method); 503 $('#brew_cooling_method').val(CoolingTypeData[dataRecord.brew_cooling_method].nl);
504 $('#brew_cooling_time').val(dataRecord.brew_cooling_time); 504 $('#brew_cooling_time').val(dataRecord.brew_cooling_time);
505 // Niks 505 // Niks
506 $('#brew_date_end').val(dataRecord.brew_date_end); 506 $('#brew_date_end').val(dataRecord.brew_date_end);
507 $('#og').val(dataRecord.og); 507 $('#og').val(dataRecord.og);
508 $('#fg').val(dataRecord.fg); 508 $('#fg').val(dataRecord.fg);
1143 calcMash(); 1143 calcMash();
1144 calcWater(); 1144 calcWater();
1145 calcIBUs(); 1145 calcIBUs();
1146 whirlpoolHops(); 1146 whirlpoolHops();
1147 calcMiscs(); 1147 calcMiscs();
1148 // calcViability(); 1148 calcViability();
1149 // showStarter(); 1149 calcYeast();
1150 // calcYeast(); 1150 kookTijd();
1151 // calcInit(); 1151 // calcInit();
1152 // kookTijd();
1153 console.log('calculations ready'); 1152 console.log('calculations ready');
1154 $('#jqxLoader').jqxLoader('close'); 1153 $('#jqxLoader').jqxLoader('close');
1155 $('#jqxTabs').jqxTabs('first'); 1154 $('#jqxTabs').jqxTabs('first');
1156 }, 1155 },
1157 columns: [ 1156 columns: [
2108 maybe_starter = 0; 2107 maybe_starter = 0;
2109 //console.log('calcYeast() pitchrate:' + dataRecord.yeast_pitchrate + ' start:' + initcells + ' needed:' + needed + ' volume:' + volume + ' maybe_starter:' + maybe_starter); 2108 //console.log('calcYeast() pitchrate:' + dataRecord.yeast_pitchrate + ' start:' + initcells + ' needed:' + needed + ' volume:' + volume + ' maybe_starter:' + maybe_starter);
2110 2109
2111 if (maybe_starter != dataRecord.starter_enable) { 2110 if (maybe_starter != dataRecord.starter_enable) {
2112 dataRecord.starter_enable = maybe_starter; 2111 dataRecord.starter_enable = maybe_starter;
2113 showStarter(); 2112 }
2114 } 2113 if (maybe_starter)
2114 $('#propagator').show();
2115 else
2116 $('#propagator').hide();
2115 2117
2116 if (dataRecord.starter_enable) { 2118 if (dataRecord.starter_enable) {
2117 2119
2118 calcSteps(dataRecord.starter_type, initcells, needed); 2120 calcSteps(dataRecord.starter_type, initcells, needed);
2119 2121
2163 if (rowscount == 0) 2165 if (rowscount == 0)
2164 return; 2166 return;
2165 for (i = 0; i < rowscount; i++) { 2167 for (i = 0; i < rowscount; i++) {
2166 row = dataRecord.miscs[i]; 2168 row = dataRecord.miscs[i];
2167 if ((((dataRecord.inventory_reduced <= 2) && (row.m_use_use <= 2)) || // Starter, Mash, Boil 2169 if ((((dataRecord.inventory_reduced <= 2) && (row.m_use_use <= 2)) || // Starter, Mash, Boil
2170 ((dataRecord.inventory_reduced <= 2) && (row.m_use_use == 6)) || // Sparge
2168 ((dataRecord.inventory_reduced <= 3) && (row.m_use_use == 3)) || // Primary 2171 ((dataRecord.inventory_reduced <= 3) && (row.m_use_use == 3)) || // Primary
2169 ((dataRecord.inventory_reduced <= 5) && (row.m_use_use == 4)) || // Secondary, Teriary 2172 ((dataRecord.inventory_reduced <= 5) && (row.m_use_use == 4)) || // Secondary, Teriary
2170 ((dataRecord.inventory_reduced <= 6) && (row.m_use_use == 5))) && // Bottle 2173 ((dataRecord.inventory_reduced <= 6) && (row.m_use_use == 5))) && // Bottle
2171 (row.m_inventory < row.m_amount)) { 2174 (row.m_inventory < row.m_amount)) {
2172 ok_miscs = 0; 2175 ok_miscs = 0;
2985 $('#jqxTabs').jqxTabs((state) ? 'disableAt':'enableAt', 8); // Brewday tab 2988 $('#jqxTabs').jqxTabs((state) ? 'disableAt':'enableAt', 8); // Brewday tab
2986 } 2989 }
2987 2990
2988 function en_stage_afterbrew(state) { 2991 function en_stage_afterbrew(state) {
2989 $('#jqxTabs').jqxTabs((state) ? 'enableAt':'disableAt', 9); // Fermentation tab 2992 $('#jqxTabs').jqxTabs((state) ? 'enableAt':'disableAt', 9); // Fermentation tab
2990 }
2991
2992 function en_stage_afterprimary(istate) {
2993
2994 var state = istate;
2995 var onval = { disabled: (state) ? true:false };
2996 var spinstate = { spinButtons: (state) ? false:true, readOnly: (state) ? true:false, width: (state) ? 90:110 };
2997
2998 $('#brew_date_start').jqxDateTimeInput(onval);
2999 $('#brew_date_end').jqxDateTimeInput(onval);
3000 $('#brew_mash_ph').jqxNumberInput(spinstate);
3001 $('#brew_mash_sg').jqxNumberInput(spinstate);
3002 $('#brew_whirlpool9').jqxNumberInput(spinstate);
3003 $('#brew_cooling_to').jqxNumberInput(spinstate);
3004 $('#brew_whirlpool7').jqxNumberInput(spinstate);
3005 $('#brew_cooling_method').jqxDropDownList(onval);
3006 $('#brew_whirlpool6').jqxNumberInput(spinstate);
3007 $('#brew_cooling_time').jqxNumberInput(spinstate);
3008 $('#brew_sparge_ph').jqxNumberInput(spinstate);
3009 $('#brew_whirlpool2').jqxNumberInput(spinstate);
3010 $('#brew_aeration_type').jqxDropDownList(onval);
3011 $('#brew_fermenter_tcloss').jqxNumberInput(spinstate);
3012 $('#brew_aeration_time').jqxNumberInput(spinstate);
3013 $('#brew_fermenter_extrawater').jqxNumberInput(spinstate);
3014 $('#brew_aeration_speed').jqxNumberInput(spinstate);
3015
3016 if (! state) {
3017 state = (dataRecord.boil_time == 0);
3018 }
3019 onval = { disabled: (state) ? true:false };
3020 spinstate = { spinButtons: (state) ? false:true, readOnly: (state) ? true:false, width: (state) ? 90:110 };
3021 $('#brew_preboil_ph').jqxNumberInput(spinstate);
3022 $('#brew_aboil_ph').jqxNumberInput(spinstate);
3023 $('#brew_preboil_sg').jqxNumberInput(spinstate);
3024 $('#brew_aboil_sg').jqxNumberInput(spinstate);
3025 $('#brew_preboil_volume').jqxNumberInput(spinstate);
3026 $('#brew_aboil_volume').jqxNumberInput(spinstate);
3027 $('#but_pre_boil').jqxButton(onval);
3028 $('#but_after_boil').jqxButton(onval);
3029 } 2993 }
3030 2994
3031 function en_stage_tertiary(state) { 2995 function en_stage_tertiary(state) {
3032 $('#package_date').jqxDateTimeInput({ disabled: (state) ? false:true }); 2996 $('#package_date').jqxDateTimeInput({ disabled: (state) ? false:true });
3033 } 2997 }
3155 /* 3119 /*
3156 * Enable or disable parts of the screens. 3120 * Enable or disable parts of the screens.
3157 */ 3121 */
3158 en_stage_brewday(dataRecord.stage < 1); // Planning, no ingredients 3122 en_stage_brewday(dataRecord.stage < 1); // Planning, no ingredients
3159 en_stage_afterbrew(dataRecord.stage > 2); // After the brew 3123 en_stage_afterbrew(dataRecord.stage > 2); // After the brew
3160 en_stage_afterprimary(dataRecord.stage > 3); // Primary fermentation done
3161 en_stage_tertiary(dataRecord.stage == 5); // Tertiary, allow packaging 3124 en_stage_tertiary(dataRecord.stage == 5); // Tertiary, allow packaging
3162 en_stage_aftertertiary(dataRecord.stage >= 5); // After all fermentation steps 3125 en_stage_aftertertiary(dataRecord.stage >= 5); // After all fermentation steps
3163 en_stage_afterpackaging(dataRecord.stage >= 6); // After packaging 3126 en_stage_afterpackaging(dataRecord.stage >= 6); // After packaging
3164 en_stage_b4taste(dataRecord.stage < 9); // Taste when at least Mature. 3127 en_stage_b4taste(dataRecord.stage < 9); // Taste when at least Mature.
3165 en_stage_locked(dataRecord.stage == 11); // Locked. 3128 en_stage_locked(dataRecord.stage == 11); // Locked.
3166 }
3167
3168 function showStarter() {
3169
3170 if (dataRecord.starter_enable) {
3171 $('#propagator').show();
3172 } else {
3173 $('#propagator').hide();
3174 }
3175 } 3129 }
3176 3130
3177 function calcInit() { 3131 function calcInit() {
3178 3132
3179 console.log('** calcInit() start'); 3133 console.log('** calcInit() start');
3533 $('#brew_preboil_efficiency').jqxTooltip({ content: 'Het berekende rendement voor het koken.' }); 3487 $('#brew_preboil_efficiency').jqxTooltip({ content: 'Het berekende rendement voor het koken.' });
3534 $('#brew_aboil_efficiency').jqxTooltip({ content: 'Het bereikte rendement na het koken.' }); 3488 $('#brew_aboil_efficiency').jqxTooltip({ content: 'Het bereikte rendement na het koken.' });
3535 $('#brew_sparge_temperature').jqxTooltip({ content: 'De spoelwater temperatuur, in te stellen in de Water tab.' }); 3489 $('#brew_sparge_temperature').jqxTooltip({ content: 'De spoelwater temperatuur, in te stellen in de Water tab.' });
3536 $('#brew_sparge_volume').jqxTooltip({ content: 'Het spoelwater voorraad volume, in te stellen in de Water tab.' }); 3490 $('#brew_sparge_volume').jqxTooltip({ content: 'Het spoelwater voorraad volume, in te stellen in de Water tab.' });
3537 $('#brew_date_start,#brew_date_end').jqxDateTimeInput(DateTimeopts); 3491 $('#brew_date_start,#brew_date_end').jqxDateTimeInput(DateTimeopts);
3538 $('#brew_date_start,#brew_date_end').on('close', function(event) { calcStage(); }); 3492 $('#brew_date_start,#brew_date_end').jqxDateTimeInput({ disabled: true });
3539 $('#est_mash_ph').jqxNumberInput(Show2wat); 3493 $('#est_mash_ph').jqxNumberInput(Show2wat);
3540 $('#brew_mash_ph,#brew_preboil_ph,#brew_aboil_ph').jqxNumberInput(Spin2pH); 3494 $('#brew_mash_ph,#brew_preboil_ph,#brew_aboil_ph').jqxNumberInput(Show2dec);
3541 $('#brew_mash_sg').on('valueChanged', function() { calcMashEfficiency(); }); 3495 $('#brew_mash_sg,#brew_preboil_sg,#brew_aboil_sg').jqxNumberInput(Show3dec);
3542 $('#brew_preboil_sg').on('valueChanged', function(event) {
3543 dataRecord.brew_preboil_sg = event.args.value;
3544 calcEfficiencyBeforeBoil();
3545 });
3546 $('#brew_mash_sg,#brew_preboil_sg,#brew_aboil_sg').jqxNumberInput(SGopts);
3547 $('#est_mash_sg,#est_pre_sg,#est_og3').jqxNumberInput(Show3wat); 3496 $('#est_mash_sg,#est_pre_sg,#est_og3').jqxNumberInput(Show3wat);
3548 $('#brew_mash_efficiency').jqxNumberInput(Show1dec); 3497 $('#brew_mash_efficiency').jqxNumberInput(Show1dec);
3549 $('#brew_preboil_volume').on('valueChanged', function(event) { 3498 $('#brew_preboil_volume,#brew_aboil_volume').jqxNumberInput(Show1dec);
3550 dataRecord.brew_preboil_volume = event.args.value;
3551 calcEfficiencyBeforeBoil();
3552 });
3553 $('#brew_preboil_volume,#brew_aboil_volume').jqxNumberInput(Spin1dec);
3554 $('#ketel_volume').jqxNumberInput(Show1dec); 3499 $('#ketel_volume').jqxNumberInput(Show1dec);
3555 $('#ketel_cm').jqxNumberInput(Spin1dec); 3500 $('#ketel_cm').jqxNumberInput(Show1dec);
3556 $('#volumeReady').jqxButton({ template: 'success', width: '90px', theme: theme });
3557 $('#volumeReady').click(function() {
3558 /* Is it pre or after boil */
3559 console.log('volumeReady ' + k_what + ' volume: ' + Round(k_vol, 1));
3560 if (k_what == 0) {
3561 dataRecord.brew_preboil_volume = Round(k_vol, 1);
3562 $('#brew_preboil_volume').val(Round(k_vol, 1));
3563 } else if (k_what == 1) {
3564 dataRecord.brew_aboil_volume = Round(k_vol, 1);
3565 $('#brew_aboil_volume').val(Round(k_vol, 1));
3566 }
3567 });
3568 $('#but_pre_boil').jqxButton({ template: 'success', width: '23px', height: 23, theme: theme });
3569 $('#but_pre_boil').bind('click', function() {
3570 /* If we already have measured a value, use that. Else use the estimated value. */
3571 if (dataRecord.brew_preboil_volume > 0)
3572 k_cm = kettle_cm(dataRecord.brew_preboil_volume, dataRecord.eq_kettle_volume, dataRecord.eq_kettle_height);
3573 else
3574 k_cm = kettle_cm(dataRecord.boil_size * 1.04, dataRecord.eq_kettle_volume, dataRecord.eq_kettle_height);
3575 k_vol = kettle_vol(k_cm, dataRecord.eq_kettle_volume, dataRecord.eq_kettle_height);
3576 k_what = 0;
3577 $('#ketel_cm').val(k_cm);
3578 $('#ketel_volume').val(k_vol);
3579 $('#volumeWindow').jqxWindow('open');
3580 });
3581 $('#but_after_boil').jqxButton({ template: 'success', width: 23, height: 23, theme: theme });
3582 $('#but_after_boil').bind('click', function() {
3583 if (dataRecord.brew_aboil_volume > 0)
3584 k_cm = kettle_cm(dataRecord.brew_aboil_volume, dataRecord.eq_kettle_volume, dataRecord.eq_kettle_height);
3585 else
3586 k_cm = kettle_cm(dataRecord.batch_size * 1.04, dataRecord.eq_kettle_volume, dataRecord.eq_kettle_height);
3587 k_vol = kettle_vol(k_cm, dataRecord.eq_kettle_volume, dataRecord.eq_kettle_height);
3588 k_what = 1;
3589 $('#ketel_cm').val(k_cm);
3590 $('#ketel_volume').val(k_vol);
3591 $('#volumeWindow').jqxWindow('open');
3592 });
3593 $('#est_pre_vol,#est_a_vol').jqxNumberInput(Show1wat); 3501 $('#est_pre_vol,#est_a_vol').jqxNumberInput(Show1wat);
3594 $('#brew_preboil_efficiency,#brew_aboil_efficiency,#brew_sparge_temperature,#brew_sparge_volume,#brew_sparge_est').jqxNumberInput(Show1dec); 3502 $('#brew_preboil_efficiency,#brew_aboil_efficiency,#brew_sparge_temperature,#brew_sparge_volume,#brew_sparge_est').jqxNumberInput(Show1dec);
3595 $('#brew_cooling_to').jqxNumberInput(Spin1dec); 3503 $('#brew_cooling_to').jqxNumberInput(Show1dec);
3596 $('#brew_sparge_ph').jqxNumberInput(Spin2pH); 3504 $('#brew_sparge_ph').jqxNumberInput(Show2dec);
3597 $('#brew_cooling_method').jqxDropDownList({ 3505 $('#brew_cooling_method').jqxInput({ theme: theme, width: 180, height: 23 });
3598 theme: theme, 3506 $('#brew_cooling_time,#brew_whirlpool9,#brew_whirlpool7,#brew_whirlpool6,#brew_whirlpool2,#brew_aeration_time,#brew_aeration_speed').jqxNumberInput(Show0dec);
3599 source: CoolingTypeAdapter, 3507 $('#brew_aeration_type').jqxInput({ theme: theme, width: 180, height: 23 });
3600 valueMember: 'id',
3601 displayMember: 'nl',
3602 width: 180,
3603 height: 23,
3604 autoDropDownHeight: true
3605 });
3606 $('#brew_cooling_time,#brew_whirlpool9,#brew_whirlpool7,#brew_whirlpool6,#brew_whirlpool2,#brew_aeration_time,#brew_aeration_speed').jqxNumberInput(PosInt);
3607 $('#brew_cooling_time,#brew_aeration_time,#brew_aeration_speed').jqxNumberInput({ max: 1440 });
3608 $('#brew_whirlpool9,#brew_whirlpool7,#brew_whirlpool6,#brew_whirlpool2').jqxNumberInput({ max: 120 });
3609 $('#brew_aeration_type').jqxDropDownList({
3610 theme: theme,
3611 source: AerationTypeAdapter,
3612 valueMember: 'id',
3613 displayMember: 'nl',
3614 width: 180,
3615 height: 23,
3616 autoDropDownHeight: true
3617 });
3618 $('#brew_fermenter_volume').jqxNumberInput(Show1dec); 3508 $('#brew_fermenter_volume').jqxNumberInput(Show1dec);
3619 $('#brew_fermenter_sg').jqxNumberInput(Show3dec); 3509 $('#brew_fermenter_sg').jqxNumberInput(Show3dec);
3620 $('#brew_fermenter_extrawater,#brew_fermenter_tcloss').jqxNumberInput(Spin1dec); 3510 $('#brew_fermenter_extrawater,#brew_fermenter_tcloss').jqxNumberInput(Show1dec);
3621 $('#brew_fermenter_ibu,#brew_fermenter_color').jqxNumberInput(Show0dec); 3511 $('#brew_fermenter_ibu,#brew_fermenter_color').jqxNumberInput(Show0dec);
3622 $('#BLog').jqxButton({ template: 'info', width: '150px', theme: theme });
3623 $('#BLog').click(function() {
3624 // Open log in a new tab.
3625 window.open('log_brew.php?code=' + dataRecord.code + '&name=' + dataRecord.name);
3626 });
3627 3512
3628 // Tab 10, Fermentation 3513 // Tab 10, Fermentation
3629 // Note, fermentation temps changes must do calcCarbonation() 3514 // Note, fermentation temps changes must do calcCarbonation()
3630 $('#brew_fermenter_sg2').jqxTooltip({ content: 'Het behaalde SG in het gistvat, overgenomen van de brouwdag.' }); 3515 $('#brew_fermenter_sg2').jqxTooltip({ content: 'Het behaalde SG in het gistvat, overgenomen van de brouwdag.' });
3631 $('#primary_start_temp').jqxTooltip({ content: 'De begintemperatuur van de hoofdvergisting.' }); 3516 $('#primary_start_temp').jqxTooltip({ content: 'De begintemperatuur van de hoofdvergisting.' });

mercurial