Improved float precision for databases import.

Fri, 30 Nov 2018 22:11:47 +0100

author
Michiel Broek <mbroek@mbse.eu>
date
Fri, 30 Nov 2018 22:11:47 +0100
changeset 118
07daa505d309
parent 117
9e378e37f20f
child 119
ae5e8d740173

Improved float precision for databases import.

www/import/from_brouwhulp.php file | annotate | diff | comparison | revisions
--- a/www/import/from_brouwhulp.php	Fri Nov 30 21:05:13 2018 +0100
+++ b/www/import/from_brouwhulp.php	Fri Nov 30 22:11:47 2018 +0100
@@ -52,7 +52,7 @@
 		$sql  = "INSERT INTO inventory_fermentables SET name='" . mysqli_real_escape_string($db, $fermentable->NAME);
 		$sql .= "', type='" . $fermentable->TYPE;
 		if ($fermentable->YIELD)
-			$sql .= "', yield='" . $fermentable->YIELD;
+			$sql .= "', yield='" . floatval($fermentable->YIELD);
 		if ($fermentable->COLOR) {
 			$srm = floatval($fermentable->COLOR);
 			$ebc = srm_to_ebc($srm);
@@ -63,18 +63,18 @@
 		$sql .= "', supplier='" . mysqli_real_escape_string($db, $fermentable->SUPPLIER);
 		$sql .= "', notes='" . mysqli_real_escape_string($db, $fermentable->NOTES);
 		if ($fermentable->COARSE_FINE_DIFF)
-			$sql .= "', coarse_fine_diff='" . $fermentable->COARSE_FINE_DIFF;
+			$sql .= "', coarse_fine_diff='" . floatval($fermentable->COARSE_FINE_DIFF);
 		if ($fermentable->MOISTURE)
-			$sql .= "', moisture='" . $fermentable->MOISTURE;
+			$sql .= "', moisture='" . floatval($fermentable->MOISTURE);
 		if ($fermentable->DIASTATIC_POWER)
-			$sql .= "', diastatic_power='" . $fermentable->DIASTATIC_POWER;
+			$sql .= "', diastatic_power='" . floatval($fermentable->DIASTATIC_POWER);
 		if ($fermentable->PROTEIN)
-			$sql .= "', protein='" . $fermentable->PROTEIN;
+			$sql .= "', protein='" . floatval($fermentable->PROTEIN);
 		if ($fermentable->MAX_IN_BATCH)
-			$sql .= "', max_in_batch='" . $fermentable->MAX_IN_BATCH;
+			$sql .= "', max_in_batch='" . floatval($fermentable->MAX_IN_BATCH);
 		($fermentable->RECOMMEND_MASH == "TRUE") ? $sql .= "', recommend_mash='1" : $sql .= "', recommend_mash='0";
 		if ($fermentable->IBU_GAL_PER_LB)
-			$sql .= "', ibu_gal_per_lb='" . $fermentable->IBU_GAL_PER_LB;
+			$sql .= "', ibu_gal_per_lb='" . floatval($fermentable->IBU_GAL_PER_LB);
 		($fermentable->ALWAYS_ON_STOCK == "TRUE") ? $sql .= "', always_on_stock='1" : $sql .= "', always_on_stock='0";
 		if ($fermentable->INVENTORY)
 			$sql .= "', inventory='" . floatval($fermentable->INVENTORY);
@@ -84,9 +84,9 @@
 		 * These are not beerxml standard:
 		 */
 		if ($fermentable->DI_pH)
-			$sql .= "', di_ph='" . $fermentable->DI_pH;
+			$sql .= "', di_ph='" . floatval($fermentable->DI_pH);
 		if ($fermentable->{'ACID_TO_pH_5.7'})
-			$sql .= "', acid_to_ph_57='" . $fermentable->{'ACID_TO_pH_5.7'};
+			$sql .= "', acid_to_ph_57='" . floatval($fermentable->{'ACID_TO_pH_5.7'});
 		$sql .= "', graintype='" . $fermentable->GRAINTYPE;
 		$sql .= "';";
 		if (! $result = mysqli_query($db, $sql)) {
@@ -112,19 +112,19 @@
 
 		$sql  = "INSERT INTO inventory_hops SET name='" . mysqli_real_escape_string($db, $hop->NAME);
 		if ($hop->ALPHA)
-			$sql .= "', alpha='" . $hop->ALPHA;
+			$sql .= "', alpha='" . floatval($hop->ALPHA);
 		if ($hop->BETA)
-			$sql .= "', beta='" . $hop->BETA;
+			$sql .= "', beta='" . floatval($hop->BETA);
 		if ($hop->HUMULENE)
-			$sql .= "', humulene='" . $hop->HUMULENE;
+			$sql .= "', humulene='" . floatval($hop->HUMULENE);
 		if ($hop->CARYOPHYLLENE)
-			$sql .= "', caryophyllene='" . $hop->CARYOPHYLLENE;
+			$sql .= "', caryophyllene='" . floatval($hop->CARYOPHYLLENE);
 		if ($hop->COHUMULONE)
-			$sql .= "', cohumulone='" . $hop->COHUMULONE;
+			$sql .= "', cohumulone='" . floatval($hop->COHUMULONE);
 		if ($hop->MYCRENE)
-			$sql .= "', myrcene='" . $hop->MYCRENE;
+			$sql .= "', myrcene='" . floatval($hop->MYCRENE);
 		if ($hop->HSI)
-			$sql .= "', hsi='" . $hop->HSI;
+			$sql .= "', hsi='" . floatval($hop->HSI);
 		$sql .= "', useat='Boil";	// brouwhulp says Aroma always :)
 		$sql .= "', type='" . $hop->TYPE;
 		$sql .= "', form='" . $hop->FORM;
@@ -137,7 +137,7 @@
 		if ($hop->COST)
 			$sql .= "', cost='" . floatval($hop->COST);
 		if ($hop->TOTAL_OIL)
-			$sql .= "', total_oil='" . $hop->TOTAL_OIL;
+			$sql .= "', total_oil='" . floatval($hop->TOTAL_OIL);
 		$sql .= "';";
 		if (! $result = mysqli_query($db, $sql)) {
 			printf("Error: %s\n", mysqli_error($db));
@@ -168,12 +168,12 @@
 		$sql .= "', laboratory='" . mysqli_real_escape_string($db, $yeast->LABORATORY);
 		$sql .= "', product_id='" . mysqli_real_escape_string($db, $yeast->PRODUCT_ID);
 		if ($yeast->MIN_TEMPERATURE)
-			$sql .= "', min_temperature='" . $yeast->MIN_TEMPERATURE;
+			$sql .= "', min_temperature='" . floatval($yeast->MIN_TEMPERATURE);
 		if ($yeast->MAX_TEMPERATURE)
-			$sql .= "', max_temperature='" . $yeast->MAX_TEMPERATURE;
+			$sql .= "', max_temperature='" . floatval($yeast->MAX_TEMPERATURE);
 		$sql .= "', flocculation='" . $yeast->FLOCCULATION;
 		if ($yeast->ATTENUATION)
-			$sql .= "', attenuation='" . $yeast->ATTENUATION;
+			$sql .= "', attenuation='" . floatval($yeast->ATTENUATION);
 		$sql .= "', notes='" . mysqli_real_escape_string($db, $yeast->NOTES);
 		$sql .= "', best_for='" . mysqli_real_escape_string($db, $yeast->BEST_FOR);
 		if ($yeast->MAX_REUSE)
@@ -223,15 +223,15 @@
 
 		if ($water->NOTES)
 			$sql .= "', notes='" . mysqli_real_escape_string($db, $water->NOTES);
-		$sql .= "', calcium='" . $water->CALCIUM;
-		$sql .= "', bicarbonate='" . $water->BICARBONATE;
-		$sql .= "', sulfate='" . $water->SULFATE;
-		$sql .= "', chloride='" . $water->CHLORIDE;
-		$sql .= "', sodium='" . $water->SODIUM;
-		$sql .= "', magnesium='" . $water->MAGNESIUM;
-		$sql .= "', ph='" . $water->PH;
+		$sql .= "', calcium='" . floatval($water->CALCIUM);
+		$sql .= "', bicarbonate='" . floatval($water->BICARBONATE);
+		$sql .= "', sulfate='" . floatval($water->SULFATE);
+		$sql .= "', chloride='" . floatval($water->CHLORIDE);
+		$sql .= "', sodium='" . floatval($water->SODIUM);
+		$sql .= "', magnesium='" . floatval($water->MAGNESIUM);
+		$sql .= "', ph='" . floatval($water->PH);
 		if ($water->TOTAL_ALKALINITY)
-			$sql .= "', total_alkalinity='" . $water->TOTAL_ALKALINITY;
+			$sql .= "', total_alkalinity='" . floatval($water->TOTAL_ALKALINITY);
 		$sql .= "';";
 		if (! $result = mysqli_query($db, $sql)) {
 			printf("Error: %s\n", mysqli_error($db));
@@ -294,37 +294,35 @@
 	foreach ($equipments->EQUIPMENT as $equipment) {
 
 		$sql  = "INSERT INTO inventory_equipments SET name='" . mysqli_real_escape_string($db, $equipment->NAME);
-		$sql .= "', boil_size='" . $equipment->BOIL_SIZE;
-		$sql .= "', batch_size='" . $equipment->BATCH_SIZE;
-		$sql .= "', tun_volume='" . $equipment->TUN_VOLUME;
-		$sql .= "', tun_weight='" . $equipment->TUN_WEIGHT;
-		$sql .= "', tun_specific_heat='" . $equipment->TUN_SPECIFIC_HEAT;
-		$sql .= "', top_up_water='" . $equipment->TOP_UP_WATER;
-		$sql .= "', trub_chiller_loss='" . $equipment->TRUB_CHILLER_LOSS;
+		$sql .= "', boil_size='" . floatval($equipment->BOIL_SIZE);
+		$sql .= "', batch_size='" . floatval($equipment->BATCH_SIZE);
+		$sql .= "', tun_volume='" . floatval($equipment->TUN_VOLUME);
+		$sql .= "', tun_weight='" . floatval($equipment->TUN_WEIGHT);
+		$sql .= "', tun_specific_heat='" . floatval($equipment->TUN_SPECIFIC_HEAT);
+		$sql .= "', tun_material='" . mysqli_real_escape_string($db, $equipment->TUN_MATERIAL);
+		$sql .= "', tun_height='" . floatval($equipment->TUN_HEIGHT);
+		$sql .= "', top_up_water='" . floatval($equipment->TOP_UP_WATER);
+		$sql .= "', trub_chiller_loss='" . floatval($equipment->TRUB_CHILLER_LOSS);
 		/*
 		 * Brouwhulp uses a percentage for the evaporation rate. This is wrong
 		 * but was made so because the beerxml standard requires this. What we
 		 * do is calculate the actual evaporation and store that.
 		 * This is what we use. Brouwhulp calculates this on the fly.
 		 */
-		$sql .= "', evap_rate='" . ($equipment->EVAP_RATE * $equipment->BOIL_SIZE) / 100.0;
-		$sql .= "', boil_time='" . $equipment->BOIL_TIME;
+		$sql .= "', evap_rate='" . (floatval($equipment->EVAP_RATE) * floatval($equipment->BOIL_SIZE)) / 100.0;
+		$sql .= "', boil_time='" . floatval($equipment->BOIL_TIME);
 		($equipment->CALC_BOIL_VOLUME == 'TRUE') ? $sql .= "', calc_boil_volume='1" : $sql .= "', calc_boil_volume='0";
-		$sql .= "', lauter_deadspace='" . $equipment->LAUTER_DEADSPACE;
-		$sql .= "', top_up_kettle='" . $equipment->TOP_UP_KETTLE;
-		$sql .= "', hop_utilization='" . $equipment->HOP_UTILIZATION;
+		$sql .= "', top_up_kettle='" . floatval($equipment->TOP_UP_KETTLE);
+		$sql .= "', hop_utilization='" . floatval($equipment->HOP_UTILIZATION);
 		if ($equipment->NOTES)
 			$sql .= "', notes='" . mysqli_real_escape_string($db, $equipment->NOTES);
-		$sql .= "', lauter_volume='" . $equipment->LAUTER_VOLUME;
-		$sql .= "', kettle_volume='" . $equipment->KETTLE_VOLUME;
-		if ($equipment->TUN_MATERIAL)
-			$sql .= "', tun_material='" . mysqli_real_escape_string($db, $equipment->TUN_MATERIAL);
-		$sql .= "', tun_height='" . $equipment->TUN_HEIGHT;
-		$sql .= "', kettle_height='" . $equipment->KETTLE_HEIGHT;
-		$sql .= "', lauter_height='" . $equipment->LAUTER_HEIGHT;
-		$sql .= "', mash_volume='" . $equipment->MASH_VOLUME;
-		$sql .= "', efficiency='" . $equipment->EFFICIENCY;
-
+		$sql .= "', lauter_volume='" . floatval($equipment->LAUTER_VOLUME);
+		$sql .= "', lauter_height='" . floatval($equipment->LAUTER_HEIGHT);
+		$sql .= "', lauter_deadspace='" . floatval($equipment->LAUTER_DEADSPACE);
+		$sql .= "', kettle_volume='" . floatval($equipment->KETTLE_VOLUME);
+		$sql .= "', kettle_height='" . floatval($equipment->KETTLE_HEIGHT);
+		$sql .= "', mash_volume='" . floatval($equipment->MASH_VOLUME);
+		$sql .= "', efficiency='" . floatval($equipment->EFFICIENCY);
 		$sql .= "';";
 		if (! $result = mysqli_query($db, $sql)) {
 			printf("Error: %s\n", mysqli_error($db));
@@ -421,16 +419,16 @@
 					$steps .= ',"step_type":"' . $step->TYPE . '"';
 				}
 				if ($step->STEP_TEMP) {
-					$steps .= ',"step_temp":"' . $step->STEP_TEMP . '"';
+					$steps .= ',"step_temp":"' . floatval($step->STEP_TEMP) . '"';
 				}
 				if ($step->STEP_TIME) {
-					$steps .= ',"step_time":"' . $step->STEP_TIME . '"';
+					$steps .= ',"step_time":"' . floatval($step->STEP_TIME) . '"';
 				}
 				if ($step->RAMP_TIME) {
-					$steps .= ',"ramp_time":"' . $step->RAMP_TIME . '"';
+					$steps .= ',"ramp_time":"' . floatval($step->RAMP_TIME) . '"';
 				}
 				if ($step->END_TEMP) {
-					$steps .= ',"end_temp":"' . $step->END_TEMP . '"';
+					$steps .= ',"end_temp":"' . floatval($step->END_TEMP) . '"';
 				}
 				$steps .= "}";
 			}

mercurial