| const dishes = { |
| "rice": ["Biryani", "Fried Rice", "Pulao"], |
| "milk": ["Kheer", "Milkshake", "Payasam"], |
| "chicken": ["Chicken Curry", "Grilled Chicken", "Chicken Salad"], |
| "paneer": ["Paneer Butter Masala", "Paneer Tikka", "Palak Paneer"], |
| "potatoes": ["Aloo Gobi", "Aloo Tikki", "Mashed Potatoes"], |
| }; |
|
|
| function sendMessage() { |
| const userInput = document.getElementById('user-input').value.toLowerCase(); |
| if (userInput.trim() === "") return; |
| |
| displayMessage(userInput, 'user'); |
|
|
| const ingredients = userInput.split(' ').map(ingredient => ingredient.trim()); |
| const suggestedDishes = getDishSuggestions(ingredients); |
|
|
| setTimeout(() => { |
| displayBotMessage(suggestedDishes); |
| }, 1000); |
|
|
| document.getElementById('user-input').value = ''; |
| } |
|
|
| function displayMessage(message, sender) { |
| const messageElement = document.createElement('div'); |
| messageElement.classList.add('message', sender === 'bot' ? 'bot-message' : 'user-message'); |
| messageElement.textContent = message; |
| document.getElementById('chatbox-body').appendChild(messageElement); |
| document.getElementById('chatbox-body').scrollTop = document.getElementById('chatbox-body').scrollHeight; |
| } |
|
|
| function displayBotMessage(dishes) { |
| let botMessage = 'Here are some dishes I suggest based on the ingredients you provided:\n\n'; |
| if (dishes.length === 0) { |
| botMessage += 'Sorry, I couldn\'t find any dishes for the given ingredients.'; |
| } else { |
| dishes.forEach(dish => { |
| botMessage += `- ${dish}\n`; |
| }); |
| } |
|
|
| displayMessage(botMessage, 'bot'); |
| displayFoodItems(dishes); |
| } |
|
|
| function getDishSuggestions(ingredients) { |
| let suggestedDishes = []; |
| ingredients.forEach(ingredient => { |
| if (dishes[ingredient]) { |
| suggestedDishes = [...suggestedDishes, ...dishes[ingredient]]; |
| } |
| }); |
| return [...new Set(suggestedDishes)]; |
| } |
|
|
| function displayFoodItems(dishes) { |
| const foodItemsContainer = document.getElementById('food-items'); |
| foodItemsContainer.innerHTML = ''; |
| foodItemsContainer.style.display = dishes.length > 0 ? 'block' : 'none'; |
|
|
| dishes.forEach(dish => { |
| const dishElement = document.createElement('div'); |
| dishElement.textContent = dish; |
| dishElement.onclick = () => showFoodDescription(dish); |
| foodItemsContainer.appendChild(dishElement); |
| }); |
| } |
|
|
| function showFoodDescription(dish) { |
| alert(`You selected: ${dish}\nHere is a brief description of ${dish}: ...`); |
| } |
|
|