Parcourir la source

Require at least one ingredient to be created for a new merchant. Remove submission bug for new merchant.

Lee Morgan il y a 6 ans
Parent
commit
646ce9880f

+ 1 - 1
controllers/merchantData.js

@@ -214,7 +214,7 @@ module.exports = {
                     displayMessage: errorMessage,
                     error: err
                 });
-                error.save();
+                error.save()
 
                 return;
             });

+ 5 - 1
views/landingPage/landing.ejs

@@ -60,8 +60,12 @@
                 <label>Password:
                     <input name="password" type="password" required>
                 </label>
+                
+                <div>
+                    <input class="button" type="submit" value="Log In">
 
-                <input type="submit" value="Log In">
+                    <button class="button" onclick="loginObj.cancel()">Cancel</button>
+                </div>
             </form>
         </div>
 

+ 6 - 0
views/landingPage/login.js

@@ -2,5 +2,11 @@ let loginObj = {
     display: function(){
         controller.clearScreen();
         controller.loginStrand.style.display = "flex";
+    },
+
+    cancel: function(){
+        event.preventDefault();
+        
+        publicObj.display();
     }
 }

+ 33 - 24
views/merchantSetupPage/createIngredients.js

@@ -113,34 +113,43 @@ let createIngredientsObj = {
             }
         }
 
-        if(isValid  && axiosIngredients.length > 0){
-            axios.post("/ingredients/create", axiosIngredients)
-                .then((response)=>{
-                    if(typeof(response.data) === "string"){
-                        banner.createError(response.data);
-                        return;
-                    }else{
-                        for(let ingredient of newIngredients){
-                            for(let createdIngredient of response.data){
-                                if(createdIngredient.name === ingredient.ingredient.name){
-                                    ingredient.ingredient.id = createdIngredient._id;
-                                    break;
+        if(controller.data.inventory.length <= 0 && axiosIngredients.length <= 0){
+            banner.createError("You must add at least one ingredient to your inventory");
+            isValid = false;
+        }
+
+        if(isValid){
+            if(axiosIngredients.length > 0){
+                axios.post("/ingredients/create", axiosIngredients)
+                    .then((response)=>{
+                        if(typeof(response.data) === "string"){
+                            banner.createError(response.data);
+                            return;
+                        }else{
+                            for(let ingredient of newIngredients){
+                                for(let createdIngredient of response.data){
+                                    if(createdIngredient.name === ingredient.ingredient.name){
+                                        ingredient.ingredient.id = createdIngredient._id; //changed id a bit here
+                                        break;
+                                    }
                                 }
+                    
+                                controller.data.inventory.push(ingredient);
                             }
-                
-                            controller.data.inventory.push(ingredient);
                         }
-                    }
-                })
-                .catch((err)=>{
-                    banner.createError("There has been an error and your ingredients have not been saved");
-                });
-        }
+                    })
+                    .catch((err)=>{
+                        banner.createError("There has been an error and your ingredients have not been saved");
+                    });
+            }
 
-        if(recipes){
-            createRecipesObj.display();
-        }else{
-            nameRecipesObj.display();
+            if(recipes){
+                createRecipesObj.display();
+            }else{
+                nameRecipesObj.display();
+            }
         }
+
+        
     }
 }

+ 1 - 0
views/merchantSetupPage/createRecipes.js

@@ -194,6 +194,7 @@ let createRecipesObj = {
         let form = document.createElement("form");
         form.method = "post";
         form.action = recipes ? "/merchant/clover/create" : "/merchant/none/create";
+        form.style.display = "none";
         
         let dataInput = document.createElement("input");
         dataInput.type = "hidden";