Selaa lähdekoodia

Change backend to hold the bottle count in quantity for ingredients rather than the base unit.

Lee Morgan 5 vuotta sitten
vanhempi
sitoutus
47a8f82be8

+ 3 - 2
controllers/recipeData.js

@@ -7,6 +7,7 @@ const helper = require("./helper.js");
 const axios = require("axios");
 const xlsx = require("xlsx");
 const fs = require("fs");
+const { Console } = require("console");
 
 module.exports = {
     /*
@@ -386,7 +387,7 @@ module.exports = {
                     let exists = false;
                     for(let j = 0; j < ingredients.length; j++){
                         if(ingredients[j].name === array[i][locations.ingredient]){
-                            if(ingrediens[j].specialUnit = "bottle"){
+                            if(ingredients[j].specialUnit = "bottle"){
                                 currentRecipe.ingredients.push({
                                     ingredient: ingredients[j].id,
                                     quantity: array[i][locations.amount]
@@ -429,7 +430,7 @@ module.exports = {
                 if(err.name === "ValidationError"){
                     return res.json(err.errors[Object.keys(err.errors)[0]].properties.message);
                 }
-                return res.json("ERROR: UNABLE TO CREATE YOUR INGREDIENTS");
+                return res.json("ERROR: UNABLE TO CREATE YOUR RECIPES");
             });
     },
 

+ 26 - 10
views/dashboardPage/bundle.js

@@ -1041,7 +1041,7 @@ class RecipeIngredient{
 
     get quantity(){
         if(this._ingredient.specialUnit === "bottle"){
-            return this._quantity / this._ingredient.unitSize;
+            return this._quantity;
         }
 
         switch(this._ingredient.unit){
@@ -1856,21 +1856,31 @@ let editRecipe = {
         let ingredients = document.getElementById("editRecipeIngList").children;
         for(let i = 0; i < ingredients.length; i++){
             const quantity = parseFloat(ingredients[i].children[3].value);
+            let newIngredient = {};
+            let ingredient = {};
 
             if(ingredients[i].children[1].style.display === "none"){
                 let selector = ingredients[i].children[2];
-                let ingredient = selector.options[selector.selectedIndex].ingredient;
+                ingredient = selector.options[selector.selectedIndex].ingredient;
 
-                data.ingredients.push({
+                newIngredient = {
                     ingredient: ingredient.ingredient.id,
                     quantity: ingredient.convertToBase(quantity)
-                });
+                };
             }else{
-                data.ingredients.push({
-                    ingredient: ingredients[i].ingredient.ingredient.id,
+                ingredient = ingredients[i].ingredient;
+
+                newIngredient = {
+                    ingredient: ingredient.ingredient.id,
                     quantity: ingredients[i].ingredient.convertToBase(quantity)
-                });
+                };
+            }
+
+            if(ingredient.ingredient.specialUnit === "bottle"){
+                newIngredient.quantity = quantity;
             }
+
+            data.ingredients.push(newIngredient);
         }
 
         let loader = document.getElementById("loaderContainer");
@@ -2378,10 +2388,16 @@ let newRecipe = {
             let sel = inputs[i].children[1].children[0];
             let ingredient = sel.options[sel.selectedIndex].ingredient;
 
-            newRecipe.ingredients.push({
+            let newIngredient = {
                 ingredient: ingredient.ingredient.id,
                 quantity: ingredient.convertToBase(inputs[i].children[2].children[0].value)
-            });
+            };
+
+            if(ingredient.ingredient.specialUnit === "bottle"){
+                newIngredient.quantity = inputs[i].children[2].children[0].value;
+            }
+
+            newRecipe.ingredients.push(newIngredient);
         }
 
         let loader = document.getElementById("loaderContainer");
@@ -2449,7 +2465,7 @@ let newRecipe = {
         })
             .then(response => response.json())
             .then((response)=>{
-                if(typeof(response) === "String"){
+                if(typeof(response) === "string"){
                     controller.createBanner(response, "error");
                 }else{
                     for(let i = 0; i < response.length; i++){

+ 1 - 1
views/dashboardPage/js/classes/Recipe.js

@@ -14,7 +14,7 @@ class RecipeIngredient{
 
     get quantity(){
         if(this._ingredient.specialUnit === "bottle"){
-            return this._quantity / this._ingredient.unitSize;
+            return this._quantity;
         }
 
         switch(this._ingredient.unit){

+ 16 - 6
views/dashboardPage/js/sidebars/editRecipe.js

@@ -75,21 +75,31 @@ let editRecipe = {
         let ingredients = document.getElementById("editRecipeIngList").children;
         for(let i = 0; i < ingredients.length; i++){
             const quantity = parseFloat(ingredients[i].children[3].value);
+            let newIngredient = {};
+            let ingredient = {};
 
             if(ingredients[i].children[1].style.display === "none"){
                 let selector = ingredients[i].children[2];
-                let ingredient = selector.options[selector.selectedIndex].ingredient;
+                ingredient = selector.options[selector.selectedIndex].ingredient;
 
-                data.ingredients.push({
+                newIngredient = {
                     ingredient: ingredient.ingredient.id,
                     quantity: ingredient.convertToBase(quantity)
-                });
+                };
             }else{
-                data.ingredients.push({
-                    ingredient: ingredients[i].ingredient.ingredient.id,
+                ingredient = ingredients[i].ingredient;
+
+                newIngredient = {
+                    ingredient: ingredient.ingredient.id,
                     quantity: ingredients[i].ingredient.convertToBase(quantity)
-                });
+                };
             }
+
+            if(ingredient.ingredient.specialUnit === "bottle"){
+                newIngredient.quantity = quantity;
+            }
+
+            data.ingredients.push(newIngredient);
         }
 
         let loader = document.getElementById("loaderContainer");

+ 9 - 3
views/dashboardPage/js/sidebars/newRecipe.js

@@ -74,10 +74,16 @@ let newRecipe = {
             let sel = inputs[i].children[1].children[0];
             let ingredient = sel.options[sel.selectedIndex].ingredient;
 
-            newRecipe.ingredients.push({
+            let newIngredient = {
                 ingredient: ingredient.ingredient.id,
                 quantity: ingredient.convertToBase(inputs[i].children[2].children[0].value)
-            });
+            };
+
+            if(ingredient.ingredient.specialUnit === "bottle"){
+                newIngredient.quantity = inputs[i].children[2].children[0].value;
+            }
+
+            newRecipe.ingredients.push(newIngredient);
         }
 
         let loader = document.getElementById("loaderContainer");
@@ -145,7 +151,7 @@ let newRecipe = {
         })
             .then(response => response.json())
             .then((response)=>{
-                if(typeof(response) === "String"){
+                if(typeof(response) === "string"){
                     controller.createBanner(response, "error");
                 }else{
                     for(let i = 0; i < response.length; i++){