www/js/prod_edit.js

changeset 241
e95d2886f49f
parent 240
a85c1d4c4d12
child 244
3755db604432
--- a/www/js/prod_edit.js	Mon Feb 04 15:21:49 2019 +0100
+++ b/www/js/prod_edit.js	Mon Feb 04 20:30:41 2019 +0100
@@ -1094,22 +1094,22 @@
 	function calcStage() {
 
 		var	newstage = dataRecord.stage;
-
-		if (newstage < 1 && dataRecord.est_og > 1.005 && dataRecord.est_color > 3 && dataRecord.est_ibu > 3)
+		/* parseFloat$("#brew_date_start").val()) returns the year if it is a valid mysql style date. */
+		if (newstage == 0 && dataRecord.est_og > 1.005 && dataRecord.est_color > 3 && dataRecord.est_ibu > 3)
 			newstage = 1;
-		if (newstage < 2 && dataRecord.brew_date_start != '')
+		if (newstage == 1 && parseFloat($("#brew_date_start").val()) > 2000)
 			newstage = 2;	// Brewday
-		if (newstage < 3 && dataRecord.brew_date_end != '')
+		if (newstage == 2 && parseFloat($("#brew_date_end").val()) > 2000)
 			newstage = 3;	// Primary
-		if (newstage < 4 && dataRecord.primary_end_date != '')
+		if (newstage == 3 && parseFloat($("#primary_end_date").val()) > 2000)
 			newstage = 4;	// Secondary
-		if (newstage < 5 && dataRecord.secondary_end_date != '')
+		if (newstage == 4 && parseFloat($("#secondary_end_date").val()) > 2000)
 			newstage = 5;	// Tertiary
-		if (newstage < 6 && dataRecord.package_date != '')
+		if (newstage == 5 && parseFloat($("#package_date").val()) > 2000)
 			newstage = 6;	// Package
-		if (newstage >= 6 && newstage < 10) {
+		if (newstage >= 6 && newstage < 9) {
 			var d = new Date();
-			var date2 = dataRecord.package_date;
+			var date2 = $("#package_date").val();
 			date2 = date2.split('-');
 			// Now we convert the array to a Date object
 			date1 = new Date(d.getFullYear(), d.getMonth(), d.getDate());
@@ -1121,14 +1121,16 @@
 			var timeDifference = date1_unixtime - date2_unixtime;
 			var timeDifferenceInDays = timeDifference / 60 / 60 / 24;
 			console.log(date1+'  '+date2+' days: '+timeDifferenceInDays);
-			if (newstage < 7 && timeDifferenceInDays < 14)		// Carbonation period
-				newstage = 7;
-			else if (newstage < 8 && timeDifferenceInDays < 42)	// Mature 6 weeks
-				newstage = 8;
-			else
-				newstage = 9;
+			if (timeDifferenceInDays > 0) {			// At least one day
+				if (timeDifferenceInDays >= 42)		// 6 weeks
+					newstage = 9;			// Ready to taste
+				else if (timeDifferenceInDays >= 14)	// 14 days
+					newstage = 8;			// Mature
+				else
+					newstage = 7;			// Carbonation
+			}
 		}
-		if (newstage < 10 && dataRecord.taste_date != '')
+		if (newstage == 9 && parseFloat($("#taste_date").val()) > 2000)
 			newstage = 10;	// Ready
 
 		if (newstage > dataRecord.stage) {
@@ -1163,7 +1165,7 @@
 		} else {
 			$('#jqxTabs').jqxTabs('enableAt', 9);
 		}
-		if (dataRecord.stage < 4) { // At least primary
+		if (dataRecord.stage < 5) { // At least secondary
 			$('#jqxTabs').jqxTabs('disableAt', 10);	// Packaging tab
 		} else {
 			$('#jqxTabs').jqxTabs('enableAt', 10);
@@ -3555,6 +3557,7 @@
 			}
 			$("#mashGrid").jqxGrid('deleterow', rowIDs);
 			// Then add the new steps
+			var datarecord = mashlist.records[index];
 			$("#mash_name").val(datarecord.name);
 			for (var i = 0; i < datarecord.steps.length; i++) {
 				var data = datarecord.steps[i];
@@ -3866,25 +3869,42 @@
 	$("#sparge_acid_perc").jqxNumberInput({ symbol: '%', symbolPosition: 'right' });
 
 	// Tab 9, Brewday
-	$("#brew_date_start").jqxDateTimeInput({ theme: theme, width: 230, height: 23, formatString: 'yyyy-MM-dd HH:mm:ss', showTimeButton: true });
-	$("#brew_date_end").jqxDateTimeInput({ theme: theme, width: 230, height: 23, formatString: 'yyyy-MM-dd HH:mm:ss', showTimeButton: true });
+	$("#brew_date_start").jqxTooltip({ content: 'Brouw datum en tijd. Voor planning laat de tijd op 00:00:00 staan.' });
+	$("#brew_date_start").jqxDateTimeInput( DateTimeopts );
+	$('#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_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.' });
 	$("#brew_mash_ph").jqxNumberInput( SpinpH );
+	$("#est_mash_ph").jqxTooltip({ content: 'De gewenste pH tijdens het maischen.' });
 	$("#est_mash_ph").jqxNumberInput({ inputMode: 'simple', readOnly: true, theme: theme, width: 70, height: 23, decimalDigits: 1 });
+	$("#brew_preboil_ph").jqxTooltip({ content: 'De gemeten pH in de kookketel na het spoelen en voor de kook.' });
 	$("#brew_preboil_ph").jqxNumberInput( SpinpH );
 	// est_preboil_ph
+	$("#brew_aboil_ph").jqxTooltip({ content: 'De gemeten pH na het koken.' });
 	$("#brew_aboil_ph").jqxNumberInput( SpinpH );
 	// est_aboil_ph
+	$("#brew_mash_sg").jqxTooltip({ content: 'Het bereikte SG na het maischen.' });
 	$("#brew_mash_sg").jqxNumberInput( SGopts );
 	$("#brew_mash_sg").on('valueChanged', function () { calcMashEfficiency(); });
+	$("#est_mash_sg").jqxTooltip({ content: 'Het berekende verwachte SG na het maischen.' });
 	$("#est_mash_sg").jqxNumberInput({ inputMode: 'simple', readOnly: true, theme: theme, width: 70, height: 23, decimalDigits: 3 });
+	$("#brew_preboil_sg").jqxTooltip({ content: 'Het gemeten SG in de kookketel na het spoelen en voor het koken.' });
 	$("#brew_preboil_sg").jqxNumberInput( SGopts );
+	$("#brew_aboil_sg").jqxTooltip({ content: 'Het gemeten SG in de kookketel na het koken.' });
 	$("#brew_aboil_sg").jqxNumberInput( SGopts );
-	$("#est_og3").jqxTooltip({ content: 'Het geschatte begin SG van dit product.' });
+	$("#est_og3").jqxTooltip({ content: 'Het geschatte SG in de kookketel na het koken.' });
 	$("#est_og3").jqxNumberInput({ inputMode: 'simple', theme: theme, width: 70, height: 23, decimalDigits: 3, readOnly: true });
+	$("#brew_mash_efficiency").jqxTooltip({ content: 'Het behaalde maisch rendement.' });
 	$("#brew_mash_efficiency").jqxNumberInput({ inputMode: 'simple', readOnly: true, theme: theme, width: 90, height: 23, decimalDigits: 1 });
+	$("#brew_preboil_volume").jqxTooltip({ content: 'Het volume van het wort voor het koken.' });
 	$("#brew_preboil_volume").jqxNumberInput( Spin1dec5 );
+	$("#brew_aboil_volume").jqxTooltip({ content: 'Het volume van het wort na het koken.' });
 	$("#brew_aboil_volume").jqxNumberInput( Spin1dec5 );
+	$("#brew_preboil_efficiency").jqxTooltip({ content: 'Het berekende rendement voor het koken.' });
 	$("#brew_preboil_efficiency").jqxNumberInput({ inputMode: 'simple', readOnly: true, theme: theme, width: 90, height: 23, decimalDigits: 1 });
+	$("#brew_aboil_efficiency").jqxTooltip({ content: 'Het bereikte rendement na het koken.' });
 	$("#brew_aboil_efficiency").jqxNumberInput({ inputMode: 'simple', readOnly: true, theme: theme, width: 90, height: 23, decimalDigits: 1 });
 	$("#brew_sparge_temperature").jqxNumberInput( Spin1dec5 );
 	$("#brew_sparge_volume").jqxNumberInput( Spin1dec5 );
@@ -3945,9 +3965,11 @@
 	$("#primary_svg").jqxNumberInput({ inputMode: 'simple', readOnly: true, theme: theme, width: 70, height: 23, decimalDigits: 1 });
 	$("#primary_end_date").jqxTooltip({ content: 'De eind datum van de hoofdvergisting en eventueel overhevelen.' });
 	$("#primary_end_date").jqxDateTimeInput( Dateopts );
+	$('#primary_end_date').on('close', function (event) { calcStage(); });
 	$("#secondary_temp").jqxNumberInput( YeastT );
 	$("#secondary_end_date").jqxTooltip({ content: 'De eind datum van de navergisting en het begin van het lageren.' });
 	$("#secondary_end_date").jqxDateTimeInput( Dateopts );
+	$('#secondary_end_date').on('close', function (event) { calcStage(); });
 	$("#tertiary_temp").jqxNumberInput( YeastT );
 	$("#fg").jqxNumberInput({ inputMode: 'simple', spinMode: 'simple', theme: theme, width: 90, height: 23, min: 0, decimalDigits: 3, spinButtons: true, spinButtonsStep: 0.001 });
 	$("#final_abv").jqxNumberInput({ inputMode: 'simple', readOnly: true, theme: theme, width: 70, height: 23, decimalDigits: 1 });
@@ -3963,6 +3985,7 @@
 	// 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(); });
 	$("#st_carb_min2").jqxTooltip({ content: 'Het minimum aanbevolen koolzuur volume voor deze bierstijl.'});
 	$("#st_carb_min2").jqxNumberInput({ inputMode: 'simple', theme: theme, width: 50, height: 23, decimalDigits: 1, readOnly: true });
 	$("#st_carb_max2").jqxTooltip({ content: 'Het maximum aamnevolen koolzuur volume voor deze bierstijl.'});
@@ -4009,6 +4032,7 @@
 	// Tab 12, Tasting
 	$("#taste_date").jqxTooltip({ content: 'De proef datum van dit bier.' });
         $("#taste_date").jqxDateTimeInput( Dateopts );
+	$('#taste_date').on('close', function (event) { calcStage(); });
 	$("#taste_rate").jqxTooltip({ content: 'Het cijfer voor dit bier van 1 tot 10.' });
 	$("#taste_rate").jqxNumberInput( Spin1dec5 );
 	$("#taste_rate").jqxNumberInput({ max: 10 });

mercurial