-
AI Copilot
- -
-
+
+
+
+
+
+
+
+
-
-
@@ -144,8 +207,9 @@ require_once 'db/config.php';
let welcomeMessageCleared = false;
function addMessage(sender, content) {
- if (!welcomeMessageCleared) {
- chatMessages.innerHTML = '';
+ if (welcomeScreen && !welcomeMessageCleared) {
+ welcomeScreen.style.display = 'none';
+ chatMessages.innerHTML = ''; // Clear any lingering welcome message content if needed
welcomeMessageCleared = true;
}
@@ -154,7 +218,11 @@ require_once 'db/config.php';
const bubble = document.createElement('div');
bubble.classList.add('p-3', 'rounded-lg', 'message-bubble');
- bubble.textContent = content;
+
+ const contentContainer = document.createElement('div');
+ contentContainer.textContent = content;
+ bubble.appendChild(contentContainer);
+
if (sender === 'user') {
messageWrapper.classList.add('justify-end');
@@ -169,8 +237,8 @@ require_once 'db/config.php';
chatMessages.scrollTop = chatMessages.scrollHeight;
}
- async function sendMessage() {
- const message = userInput.value.trim();
+ async function sendMessage(messageOverride) {
+ const message = messageOverride || userInput.value.trim();
if (!message) return;
addMessage('user', message);
@@ -202,27 +270,29 @@ require_once 'db/config.php';
}
}
- function handleSuggestionClick(event) {
- const button = event.target.closest('.suggestion-card');
- if (button) {
- const text = button.querySelector('p').textContent;
- userInput.value = text;
- userInput.focus();
- }
- }
-
- sendBtn.addEventListener('click', sendMessage);
+ sendBtn.addEventListener('click', () => sendMessage());
userInput.addEventListener('keypress', (e) => {
if (e.key === 'Enter') {
e.preventDefault();
sendMessage();
}
});
-
+
document.querySelectorAll('.suggestion-card').forEach(card => {
- card.addEventListener('click', handleSuggestionClick);
+ card.addEventListener('click', (e) => {
+ e.preventDefault();
+ const suggestion = e.currentTarget.dataset.suggestion;
+ sendMessage(suggestion);
+ });
+ });
+
+ document.querySelectorAll('.suggestion-btn').forEach(button => {
+ button.addEventListener('click', (e) => {
+ const suggestion = e.currentTarget.dataset.suggestion;
+ sendMessage(suggestion);
+ });
});
-
-
- Hi, I'm FinMox AI.
-How can I help you today?
-
-
Here are a few suggestions:
-
-
-
-
+
-
+
+
+
+
Hi, I'm FinMox AI.
+Here are a few suggestions to get you started:
+
+
+
+
AI is thinking...
-
-
@@ -84,51 +90,108 @@ require_once 'db/config.php';