-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathcontact.html
More file actions
116 lines (97 loc) · 3.89 KB
/
contact.html
File metadata and controls
116 lines (97 loc) · 3.89 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>Contact Us</title>
<link rel="stylesheet" href="style.css" />
<script src="'https://jtwldauigxdgwivrrgxz.supabase.co'"></script>
</head>
<body>
<section class="contact-section">
<div class="contact-container">
<h1 class="title">Get in Touch</h1>
<p class="subtitle">
Have questions or want to collaborate? Fill out the form below — we’ll get back to you soon.
</p>
<!-- Contact Form with Supabase -->
<form id="contactForm" class="contact-form">
<div class="form-group">
<label for="name">Full Name</label>
<input type="text" id="name" placeholder="Enter your full name" required />
</div>
<div class="form-group">
<label for="email">Email Address</label>
<input type="email" id="email" placeholder="Enter your email" required />
</div>
<div class="form-group">
<label for="subject">Subject</label>
<input type="text" id="subject" placeholder="Subject" required />
</div>
<div class="form-group">
<label for="message">Message</label>
<textarea id="message" rows="6" placeholder="Write your message..." required></textarea>
</div>
<button type="submit" class="btn">Send Message</button>
</form>
<!-- Messages Display -->
<section class="comments" style="margin-top:2rem;">
<h3>Messages Sent</h3>
<div id="messagesList"></div>
</section>
<div class="map-container">
<h2>Find Us Here</h2>
<iframe
src="https://www.google.com/maps/embed?pb=!1m18!1m12!1m3!1d3916.475859043593!2d75.784!3d12.914!2m3!1f0!2f0!3f0!3m2!1i1024!2i768!4f13.1!3m3!1m2!1s0x0%3A0x0!2zMTLCsDU0JzUwLjQiTiA3NcKwNDcnMDIuOCJF!5e0!3m2!1sen!2sin!4v1689600000000!5m2!1sen!2sin"
allowfullscreen=""
loading="lazy"
referrerpolicy="no-referrer-when-downgrade">
</iframe>
</div>
</div>
</section>
<script>
// Replace with your Supabase project details
const SUPABASE_URL = "https://jtwldauigxdgwivrrgxz.supabase.co";
const SUPABASE_ANON_KEY = "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJzdXBhYmFzZSIsInJlZiI6Imp0d2xkYXVpZ3hkZ3dpdnJyZ3h6Iiwicm9sZSI6ImFub24iLCJpYXQiOjE3NjM4MDg3NDYsImV4cCI6MjA3OTM4NDc0Nn0.FVMXpH991RSfK43ZUwTbCCyiFJxvhvMUp0DOhtqdci4";
const supabase = supabase.createClient(SUPABASE_URL, SUPABASE_ANON_KEY);
// Fetch messages
async function fetchMessages() {
const { data, error } = await supabase
.from("messages")
.select("*")
.order("created_at", { ascending: true });
const list = document.getElementById("messagesList");
list.innerHTML = "";
if (data) {
data.forEach(m => {
const div = document.createElement("div");
div.classList.add("comment-item");
div.innerHTML = `<strong>${m.username}</strong> (${m.email}) <br> <em>${m.subject}</em>: ${m.message}`;
list.appendChild(div);
});
}
}
fetchMessages();
// Submit message
const form = document.getElementById("contactForm");
form.addEventListener("submit", async (e) => {
e.preventDefault();
const username = document.getElementById("name").value;
const email = document.getElementById("email").value;
const subject = document.getElementById("subject").value;
const message = document.getElementById("message").value;
const { data, error } = await supabase
.from("messages")
.insert([{ username, email, subject, message }]);
if (!error) {
form.reset();
fetchMessages(); // Refresh list
alert("Message sent successfully!");
} else {
alert("Failed to send message.");
}
});
</script>
</body>
</html>