|
|
@@ -10,40 +10,42 @@ class Ingredient{
|
|
|
|
|
|
convert(unit){
|
|
|
let converted = 0;
|
|
|
+ let parentIngredient;
|
|
|
+
|
|
|
+ for(let i = 0; i < this.parent.ingredients.length; i++){
|
|
|
+ if(this === this.parent.ingredients[i].ingredient){
|
|
|
+ parentIngredient = this.parent.ingredients[i];
|
|
|
+ break;
|
|
|
+ }
|
|
|
+ }
|
|
|
|
|
|
if(this.unitType === "mass"){
|
|
|
- //change to grams
|
|
|
switch(this.unit){
|
|
|
- case "mm": converted = quantity / 1000; break;
|
|
|
- case "cm": converted = quantity / 100; break;
|
|
|
- case "m": converted = quantity; break;
|
|
|
- case "in": converted = quantity / 39.3701; break;
|
|
|
- case "ft": converted = quantity / 3.2808; break;
|
|
|
+ case "g": converted = parentIngredient.quantity; break;
|
|
|
+ case "kg": converted = parentIngredient.quantity * 1000; break;
|
|
|
+ case "oz": converted = parentIngredient.quantity * 28.3495; break;
|
|
|
+ case "lb": converted = parentIngredient.quantity * 453.5924; break;
|
|
|
}
|
|
|
|
|
|
- //change to new unit
|
|
|
switch(unit){
|
|
|
- case "mm": converted *= 1000; break;
|
|
|
- case "cm": converted *= 100; break;
|
|
|
- case "m": break;
|
|
|
- case "in": converted *= 39.3701; break;
|
|
|
- case "ft": converted *= 3.2808; break;
|
|
|
+ case "g": break;
|
|
|
+ case "kg": converted = converted / 1000; break;
|
|
|
+ case "oz": converted = converted / 28.3495; break;
|
|
|
+ case "lb": converted = converted / 453.5924; break;
|
|
|
}
|
|
|
}else if(this.unitType === "volume"){
|
|
|
- //change to liters
|
|
|
switch(this.unit){
|
|
|
- case "ml": converted = quantity / 1000; break;
|
|
|
- case "l": converted = quantity; break;
|
|
|
- case "tsp": converted = quantity / 202.8842; break;
|
|
|
- case "tbsp": converted = quantity / 67.6278; break;
|
|
|
- case "ozfl": converted = quantity / 33.8141; break;
|
|
|
- case "cup": converted = quantity / 4.1667; break;
|
|
|
- case "pt": converted = quantity / 2.1134; break;
|
|
|
- case "qt": converted = quantity / 1.0567; break;
|
|
|
- case "gal": converted = quantity * 3.7854; break;
|
|
|
+ case "ml": converted = parentIngredient.quantity / 1000; break;
|
|
|
+ case "l": converted = parentIngredient.quantity; break;
|
|
|
+ case "tsp": converted = parentIngredient.quantity / 202.8842; break;
|
|
|
+ case "tbsp": converted = parentIngredient.quantity / 67.6278; break;
|
|
|
+ case "ozfl": converted = parentIngredient.quantity / 33.8141; break;
|
|
|
+ case "cup": converted = parentIngredient.quantity / 4.1667; break;
|
|
|
+ case "pt": converted = parentIngredient.quantity / 2.1134; break;
|
|
|
+ case "qt": converted = parentIngredient.quantity / 1.0567; break;
|
|
|
+ case "gal": converted = parentIngredient.quantity * 3.7854; break;
|
|
|
}
|
|
|
|
|
|
- //change to new unit
|
|
|
switch(unit){
|
|
|
case "ml": converted *= 1000; break;
|
|
|
case "l": break;
|
|
|
@@ -56,30 +58,30 @@ class Ingredient{
|
|
|
case "gal": converted /= 3.7854; break;
|
|
|
}
|
|
|
}else if(this.unitType === "length"){
|
|
|
- //change to meters
|
|
|
switch(this.unit){
|
|
|
- case "g": converted = quantity; break;
|
|
|
- case "kg": converted = quantity * 1000; break;
|
|
|
- case "oz": converted = quantity * 28.3495; break;
|
|
|
- case "lb": converted = quantity * 453.5924; break;
|
|
|
+ case "mm": converted = parentIngredient.quantity / 1000; break;
|
|
|
+ case "cm": converted = parentIngredient.quantity / 100; break;
|
|
|
+ case "m": converted = parentIngredient.quantity; break;
|
|
|
+ case "in": converted = parentIngredient.quantity / 39.3701; break;
|
|
|
+ case "ft": converted = parentIngredient.quantity / 3.2808; break;
|
|
|
}
|
|
|
|
|
|
- //change to new unit
|
|
|
switch(unit){
|
|
|
- case "g": break;
|
|
|
- case "kg": converted = converted / 1000; break;
|
|
|
- case "oz": converted = converted / 28.3495; break;
|
|
|
- case "lb": converted = converted / 453.5924; break;
|
|
|
+ case "mm": converted *= 1000; break;
|
|
|
+ case "cm": converted *= 100; break;
|
|
|
+ case "m": break;
|
|
|
+ case "in": converted *= 39.3701; break;
|
|
|
+ case "ft": converted *= 3.2808; break;
|
|
|
}
|
|
|
}
|
|
|
|
|
|
- for(let i = 0; i < this.parent.ingredients.length; i++){
|
|
|
- if(this === this.parent.ingredients[i]){
|
|
|
- this.parent.ingredients[i].quantity = converted;
|
|
|
- break;
|
|
|
- }
|
|
|
- }
|
|
|
+ parentIngredient.quantity = converted;
|
|
|
this.unit = unit;
|
|
|
+
|
|
|
+ homeStrandObj.drawInventoryCheckCard();
|
|
|
+ ingredientsStrandObj.populateByProperty("category");
|
|
|
+ addIngredientsComp.isPopulated = false;
|
|
|
+ document.getElementById("ingredientStock").innerText = `${converted.toFixed(2)} ${this.unit.toUpperCase()}`;
|
|
|
}
|
|
|
}
|
|
|
|
|
|
@@ -156,6 +158,11 @@ class Merchant{
|
|
|
this.recipes = [];
|
|
|
this.transactions = [];
|
|
|
this.orders = [];
|
|
|
+ this.units = {
|
|
|
+ mass: ["g", "kg", "oz", "lb"],
|
|
|
+ volume: ["ml", "l", "tsp", "tbsp", "ozfl", "cup", "pt", "qt", "gal"],
|
|
|
+ length: ["mm", "cm", "m", "in", "foot"]
|
|
|
+ }
|
|
|
|
|
|
for(let i = 0; i < oldMerchant.inventory.length; i++){
|
|
|
this.ingredients.push({
|