webupdate
This commit is contained in:
@@ -25,10 +25,10 @@
|
||||
/>
|
||||
|
||||
<!-- Modern Theme CSS -->
|
||||
<link rel="stylesheet" href="/assets/css/modern-theme.css?v=fix33" />
|
||||
<link rel="stylesheet" href="/assets/css/modern-theme.css?v=fix35" />
|
||||
<link
|
||||
rel="stylesheet"
|
||||
href="/assets/css/mobile-fixes.css?v=20260118fix10"
|
||||
href="/assets/css/mobile-fixes.css?v=20260120fix2"
|
||||
/>
|
||||
|
||||
<style>
|
||||
@@ -671,7 +671,7 @@
|
||||
</div>
|
||||
|
||||
<div class="footer-bottom">
|
||||
<p>© 2026 Sky Art Shop. All rights reserved.</p>
|
||||
<p>© 2026 PromptTech-Solution. Designed and Developed by: PromptTech-Solution</p>
|
||||
<p>
|
||||
Made with
|
||||
<i class="bi bi-heart-fill" style="color: var(--primary-pink)"></i>
|
||||
@@ -835,16 +835,62 @@
|
||||
|
||||
document
|
||||
.getElementById("contactForm")
|
||||
.addEventListener("submit", function (e) {
|
||||
.addEventListener("submit", async function (e) {
|
||||
e.preventDefault();
|
||||
|
||||
// Show success notification
|
||||
SkyArtShop.showNotification(
|
||||
"Message sent successfully! We'll get back to you soon.",
|
||||
);
|
||||
const form = this;
|
||||
const submitBtn = form.querySelector('button[type="submit"]');
|
||||
const originalBtnText = submitBtn.innerHTML;
|
||||
|
||||
// Reset form
|
||||
this.reset();
|
||||
// Get form data
|
||||
const name = document.getElementById("name").value.trim();
|
||||
const email = document.getElementById("email").value.trim();
|
||||
const subject = document.getElementById("subject").value.trim();
|
||||
const message = document.getElementById("message").value.trim();
|
||||
|
||||
// Validation
|
||||
if (!name || !email || !subject || !message) {
|
||||
SkyArtShop.showNotification("Please fill in all fields.", "error");
|
||||
return;
|
||||
}
|
||||
|
||||
// Disable button and show loading
|
||||
submitBtn.disabled = true;
|
||||
submitBtn.innerHTML =
|
||||
'<i class="bi bi-hourglass-split"></i> Sending...';
|
||||
|
||||
try {
|
||||
const response = await fetch("/api/contact", {
|
||||
method: "POST",
|
||||
headers: { "Content-Type": "application/json" },
|
||||
body: JSON.stringify({ name, email, subject, message }),
|
||||
});
|
||||
|
||||
const data = await response.json();
|
||||
|
||||
if (data.success) {
|
||||
SkyArtShop.showNotification(
|
||||
data.message ||
|
||||
"Message sent successfully! We'll get back to you soon.",
|
||||
"success",
|
||||
);
|
||||
form.reset();
|
||||
} else {
|
||||
SkyArtShop.showNotification(
|
||||
data.message || "Failed to send message. Please try again.",
|
||||
"error",
|
||||
);
|
||||
}
|
||||
} catch (error) {
|
||||
console.error("Contact form error:", error);
|
||||
SkyArtShop.showNotification(
|
||||
"Failed to send message. Please try again later.",
|
||||
"error",
|
||||
);
|
||||
} finally {
|
||||
submitBtn.disabled = false;
|
||||
submitBtn.innerHTML = originalBtnText;
|
||||
}
|
||||
});
|
||||
</script>
|
||||
<script src="/assets/js/accessibility.js"></script>
|
||||
|
||||
Reference in New Issue
Block a user