-
Notifications
You must be signed in to change notification settings - Fork 175
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
pizza-pasta-salad #141
base: main
Are you sure you want to change the base?
pizza-pasta-salad #141
Changes from 10 commits
bdfa64b
0ba4388
172f409
a20dd05
c566cf5
6128a11
76088ca
6feb1d6
6a909ee
66c1b98
ac0dc28
9f7171f
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,11 +1,12 @@ | ||
# Project Name | ||
# Pizza-bot-Project | ||
|
||
Replace this readme with your own information about your project. Start by briefly describing the assignment in a sentence or two. Keep it short and to the point. | ||
In this project I have been built a Javascript Pizzeria. | ||
|
||
## The problem | ||
|
||
Describe how you approached to problem, and what tools and techniques you used to solve it. How did you plan? What technologies did you use? If you had more time, what would be next? | ||
To interact with the user, I used the prompt() and alert() methods. | ||
I used if, else-if and else statements to make choices and I used while statements to make sure that the given information by the user is valid. | ||
Challenging for me was to think through the different options and how to organize and write them in a good way. | ||
|
||
## View it live | ||
|
||
Have you deployed your project somewhere? Be sure to include the link to the deployed project so that the viewer can click around and see what it's all about | ||
https://pizza-pasta-salad.netlify.app/ |
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,18 +1,26 @@ | ||
<!DOCTYPE html> | ||
<html lang="en"> | ||
<head> | ||
<meta charset="UTF-8" /> | ||
<meta name="viewport" content="width=device-width, initial-scale=1.0" /> | ||
<title>Javascript Pizzeria</title> | ||
<link rel="stylesheet" href="./style.css" /> | ||
<link | ||
href="https://fonts.googleapis.com/css2?family=Montserrat:ital,wght@0,100;0,200;0,300;0,400;0,500;0,600;0,700;0,800;0,900;1,100;1,200;1,300;1,400;1,500;1,600;1,700;1,800;1,900&display=swap" | ||
rel="stylesheet" | ||
/> | ||
</head> | ||
<body> | ||
<h1>Javascript Pizzeria</h1> | ||
<p>Logic is executed automatically</p> | ||
<script src="./script.js"></script> | ||
</body> | ||
</html> | ||
|
||
<head> | ||
<meta charset="UTF-8" /> | ||
<meta name="viewport" content="width=device-width, initial-scale=1.0" /> | ||
<title>Javascript Pizzeria</title> | ||
<link rel="stylesheet" href="./style.css" /> | ||
<link | ||
href="https://fonts.googleapis.com/css2?family=Montserrat:ital,wght@0,100;0,200;0,300;0,400;0,500;0,600;0,700;0,800;0,900;1,100;1,200;1,300;1,400;1,500;1,600;1,700;1,800;1,900&display=swap" | ||
rel="stylesheet" /> | ||
</head> | ||
|
||
<body> | ||
<h1>Javascript Pizzeria</h1> | ||
<p>Logic is executed automatically</p> | ||
<!-- First script with if & else if --> | ||
<script src="./script.js"></script> | ||
|
||
<!-- Second script with switch method --> | ||
<script src="./switch.js"></script> | ||
|
||
|
||
</body> | ||
|
||
</html> |
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,19 +1,147 @@ | ||
// Start here | ||
|
||
// Step 1 - Welcome and introduction | ||
// Your code goes here | ||
|
||
// Welcome | ||
alert( | ||
`Welcome to our Javascript Pizzeria. Ready to Start? - Click 'OK' to begin.` | ||
) | ||
|
||
// Step 2 - Food choice | ||
// Your code goes here | ||
//Ask for the name | ||
const name = prompt(`Please enter your name:`) | ||
|
||
//Introduction | ||
alert( | ||
`Hallo, ${name}! Are you ready to order? - Click 'OK'.` | ||
) | ||
|
||
// Submit food choice | ||
|
||
let firstOrder = '' | ||
while (firstOrder !== '1' && firstOrder !== '2' && firstOrder !== '3') { | ||
firstOrder = prompt(`What would you like to order? Please enter the number: | ||
1 - Pizza | ||
2 - Pasta | ||
3 - Salad`) | ||
if (firstOrder !== '1' && firstOrder !== '2' && firstOrder !== '3') { | ||
alert(`Please enter a valid number: 1, 2, or 3`) | ||
} | ||
} | ||
|
||
//The first order confirmation | ||
|
||
if (firstOrder === '1') { | ||
firstOrder = 'Pizza' | ||
} | ||
else if (firstOrder === '2') { | ||
firstOrder = 'Pasta' | ||
} | ||
else if (firstOrder === '3') { | ||
firstOrder = 'Salad' | ||
} | ||
|
||
alert( | ||
`You would like to have ${firstOrder}. Is that correct?` | ||
) | ||
|
||
// The second order | ||
|
||
//Pizza Type | ||
secondOrder = '' | ||
if (firstOrder === 'Pizza') { | ||
while (secondOrder !== '1' && secondOrder !== '2' && secondOrder !== '3') { | ||
secondOrder = prompt(`What type of Pizza would you like to order? Please write the number: | ||
1 - Pizza Margherita | ||
2 - Pizza Pepperoni | ||
3 - Pizza Hawaiian`) | ||
if (secondOrder !== '1' && secondOrder !== '2' && secondOrder !== '3') { | ||
alert(`Pease enter a valid number: 1, 2, or 3`) | ||
} | ||
} | ||
|
||
|
||
if (secondOrder === '1') { | ||
secondOrder = 'Pizza Margherita' | ||
} | ||
|
||
// Step 3 - Subtype choice | ||
// Your code goes here | ||
else if (secondOrder === '2') { | ||
secondOrder = 'Pizza Pepperoni' | ||
} | ||
|
||
else if (secondOrder === '3') { | ||
secondOrder = 'Pizza Hawaiian' | ||
} | ||
} | ||
|
||
|
||
// Pasta Type | ||
|
||
else if (firstOrder === 'Pasta') { | ||
while (secondOrder !== '1' && secondOrder !== '2' && secondOrder !== '3') { | ||
secondOrder = prompt(`What kind of Pasta would you like to order today? Please write the number: | ||
1 - Spaghetti | ||
2 - Carbonara | ||
3 - Lasagna`) | ||
if (secondOrder !== '1' && secondOrder !== '2' && secondOrder !== '3') { | ||
alert(`Please enter a valid number: 1, 2, or 3!`) | ||
} | ||
} | ||
|
||
if (secondOrder === '1') { | ||
secondOrder = 'Spaghetti' | ||
} | ||
else if (secondOrder === '2') { | ||
secondOrder = 'Carbonara' | ||
} | ||
else if (secondOrder === '3') { | ||
secondOrder = 'Lasagna' | ||
} | ||
} | ||
|
||
// Salad Type | ||
|
||
else if (firstOrder === 'Salad') { | ||
while (secondOrder !== '1' && secondOrder !== '2' && secondOrder !== '3') { | ||
secondOrder = prompt(`What kind of Salad would you love to order today? Please write the number: | ||
1 - Greek Salad | ||
2 - Fish Salad | ||
3 - Chicken Salad`) | ||
if (secondOrder !== '1' && secondOrder !== '2' && secondOrder !== '3') { | ||
alert(`Please enter a valid number: 1, 2, or 3!`) | ||
} | ||
} | ||
|
||
|
||
if (secondOrder === '1') { | ||
secondOrder = 'Greek Salad' | ||
} | ||
else if (secondOrder === '2') { | ||
secondOrder = 'Fish Salad' | ||
} | ||
else if (secondOrder === '3') { | ||
secondOrder = 'Chicken Salad' | ||
} | ||
} | ||
|
||
alert( | ||
`${secondOrder}, great choice!` | ||
) | ||
|
||
// Step 4 - Age | ||
// Your code goes here | ||
let age = prompt(`To know the right size of your meal one last question: How old are you, ${name}?`) | ||
|
||
// Check if age is not a number | ||
while (isNaN(age)) { | ||
alert(`Please enter a valid number`) | ||
age = prompt(`Enter your age:`) | ||
} | ||
//Order | ||
if (age >= 13) { | ||
alert(`Thank you! You like to order ${secondOrder} regular size. Click 'Ok' to order.`) | ||
} | ||
else if (age < 13) { | ||
alert(`Thank you.You like to order a kid's ${secondOrder}. Click 'ok' to order`) | ||
} | ||
|
||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. The only thing I found which maybe could have an improvement at this stage is that you could parse the age value and validate against potential edge cases (e.g., negative or unrealistic ages). let age = parseInt(prompt( There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Thank you, Kelly! That's a good tipp! |
||
|
||
// Order confirmation | ||
|
||
// Step 5 - Order confirmation | ||
// Your code goes here | ||
alert(`Thank you for your order!`) |
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,66 @@ | ||
// Start | ||
alert(`Please click 'ok' to start your order.`) | ||
|
||
// Getting the name | ||
let name = prompt(`Please enter you name:`) | ||
|
||
// First order | ||
let firstOrder = prompt(`Hi ${name}, welcome to the Café. Let's start with your order! What would you like to drink? | ||
1 - Coffee | ||
2 - Limonade | ||
3 - Juice | ||
Please enter the number!`) | ||
|
||
// Second order | ||
switch (firstOrder) { | ||
case '1': | ||
secondOrder = prompt(`You have selected Coffee. Please select the Coffee by writing the assigned number: | ||
1 - Café Latte Macchiato | ||
2 - Espresso | ||
3 - Cappuccino`) | ||
break | ||
case '2': | ||
secondOrder = prompt(`You have selected Limonade. Please select the Limonade by typing 1, 2 or 3: | ||
1 - Coke | ||
2 - Fanta | ||
3 - Sprite`) | ||
break | ||
case '3': | ||
secondOrder = prompt(`You have selected Juice. Please select the Juice: | ||
1 - Apple Juice | ||
2 - Tomato Juice | ||
3 - Orange Juice`) | ||
break | ||
|
||
default: | ||
alert(`Sorry, something went wrong. Please refresh and try again`) | ||
break | ||
} | ||
|
||
let age = prompt(`How old are you?`) | ||
|
||
// Order confirmation | ||
let orderConfirmation = '' | ||
if (firstOrder === '1') { | ||
if (secondOrder === '1') orderConfirmation = 'Café Latte Macciato' | ||
else if (secondOrder === '2') orderConfirmation = 'Espresso' | ||
else if (secondOrder === '3') orderConfirmation = 'Cappuccino' | ||
} else if (firstOrder === '2') { | ||
if (secondOrder === '1') orderConfirmation = 'Coke' | ||
else if (secondOrder === '2') orderConfirmation = 'Fanta' | ||
else if (secondOrder === '3') orderConfirmation = 'Sprite' | ||
} else if (firstOrder === '3') { | ||
if (secondOrder === '1') orderConfirmation = 'Apple Juice' | ||
else if (secondOrder === '2') orderConfirmation = 'Tomato Juice' | ||
else if (secondOrder === '3') orderConfirmation = 'Orange Juice' | ||
} | ||
|
||
// Ask for age of the user & send out confirmation of order | ||
if (age <= 13) { | ||
alert(`You like to order a small ${orderConfirmation}. Click 'ok' to confirm your order!`) | ||
} else { | ||
alert(`You like to order a big ${orderConfirmation}. Click 'ok' to confirm your order`) | ||
} | ||
|
||
|
||
alert(`Thank you for your order!`) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
You should probably just have one of these linked at once 👀