487 lines
15 KiB
HTML
487 lines
15 KiB
HTML
<!DOCTYPE html>
|
|
<html lang="en">
|
|
|
|
<head>
|
|
<meta charset="UTF-8">
|
|
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
|
<title>Contact Us - Plugin Compass</title>
|
|
<link rel="icon" type="image/png" href="/assets/Plugin.png">
|
|
<link rel="stylesheet" href="styles.css">
|
|
<link rel="preconnect" href="https://fonts.googleapis.com">
|
|
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
|
|
<link
|
|
href="https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600&family=Space+Grotesk:wght@500;700&display=swap"
|
|
rel="stylesheet">
|
|
<style>
|
|
body {
|
|
background-color: #f6f6f7;
|
|
color: #202223;
|
|
font-family: 'Inter', sans-serif;
|
|
margin: 0;
|
|
display: flex;
|
|
flex-direction: column;
|
|
min-height: 100vh;
|
|
}
|
|
|
|
.header {
|
|
background: white;
|
|
padding: 1rem 2rem;
|
|
display: flex;
|
|
align-items: center;
|
|
justify-content: space-between;
|
|
border-bottom: 1px solid #e1e3e5;
|
|
}
|
|
|
|
.logo {
|
|
display: flex;
|
|
align-items: center;
|
|
gap: 0.5rem;
|
|
text-decoration: none;
|
|
color: #008060;
|
|
font-family: 'Space Grotesk', sans-serif;
|
|
font-weight: 700;
|
|
font-size: 1.25rem;
|
|
}
|
|
|
|
.logo img {
|
|
height: 32px;
|
|
width: auto;
|
|
}
|
|
|
|
.container {
|
|
flex: 1;
|
|
display: flex;
|
|
align-items: center;
|
|
justify-content: center;
|
|
padding: 2rem;
|
|
}
|
|
|
|
.contact-card {
|
|
background: white;
|
|
padding: 3rem;
|
|
border-radius: 12px;
|
|
box-shadow: 0 4px 12px rgba(0, 0, 0, 0.05);
|
|
max-width: 500px;
|
|
width: 100%;
|
|
text-align: center;
|
|
}
|
|
|
|
h1 {
|
|
font-family: 'Space Grotesk', sans-serif;
|
|
font-size: 2rem;
|
|
margin-bottom: 1.5rem;
|
|
color: #004c3f;
|
|
}
|
|
|
|
p {
|
|
line-height: 1.6;
|
|
color: #6d7175;
|
|
margin-bottom: 2rem;
|
|
}
|
|
|
|
.email-link {
|
|
display: inline-block;
|
|
background: linear-gradient(135deg, #008060 0%, #004c3f 100%);
|
|
color: white;
|
|
text-decoration: none;
|
|
padding: 1rem 2rem;
|
|
border-radius: 8px;
|
|
font-weight: 600;
|
|
transition: opacity 0.2s;
|
|
}
|
|
|
|
.email-link:hover {
|
|
opacity: 0.9;
|
|
}
|
|
|
|
.footer {
|
|
background: white;
|
|
padding: 2rem;
|
|
text-align: center;
|
|
border-top: 1px solid #e1e3e5;
|
|
color: #6d7175;
|
|
font-size: 0.875rem;
|
|
}
|
|
|
|
.footer a {
|
|
color: #008060;
|
|
text-decoration: none;
|
|
margin: 0 0.5rem;
|
|
}
|
|
|
|
.footer-grid {
|
|
display: grid;
|
|
grid-template-columns: repeat(auto-fit, minmax(140px, 1fr));
|
|
gap: 2rem;
|
|
max-width: 1200px;
|
|
margin: 0 auto;
|
|
text-align: left;
|
|
}
|
|
|
|
.footer-brand {
|
|
grid-column: span 2;
|
|
max-width: 280px;
|
|
}
|
|
|
|
.footer-brand .logo-text {
|
|
display: flex;
|
|
align-items: center;
|
|
gap: 0.5rem;
|
|
margin-bottom: 1rem;
|
|
font-weight: 700;
|
|
font-size: 1.25rem;
|
|
color: #1a1a1a;
|
|
}
|
|
|
|
.footer-brand .logo-text img {
|
|
height: 32px;
|
|
width: auto;
|
|
}
|
|
|
|
.footer-brand p {
|
|
color: #6b7280;
|
|
font-size: 0.875rem;
|
|
line-height: 1.6;
|
|
margin-bottom: 0;
|
|
}
|
|
|
|
.footer h4 {
|
|
font-weight: 600;
|
|
color: #1a1a1a;
|
|
margin-bottom: 1rem;
|
|
font-size: 0.875rem;
|
|
}
|
|
|
|
.footer ul {
|
|
list-style: none;
|
|
padding: 0;
|
|
margin: 0;
|
|
}
|
|
|
|
.footer li {
|
|
margin-bottom: 0.75rem;
|
|
}
|
|
|
|
.footer li a {
|
|
color: #6b7280;
|
|
font-size: 0.875rem;
|
|
transition: color 0.2s;
|
|
}
|
|
|
|
.footer li a:hover {
|
|
color: #008060;
|
|
}
|
|
|
|
.footer-newsletter {
|
|
max-width: 280px;
|
|
}
|
|
|
|
.footer-newsletter p {
|
|
color: #6b7280;
|
|
font-size: 0.875rem;
|
|
margin-bottom: 1rem;
|
|
}
|
|
|
|
.footer-newsletter form {
|
|
display: flex;
|
|
flex-direction: column;
|
|
gap: 0.5rem;
|
|
}
|
|
|
|
.footer-newsletter input[type="email"] {
|
|
padding: 0.75rem 1rem;
|
|
border: 1px solid #e5e7eb;
|
|
border-radius: 8px;
|
|
font-size: 0.875rem;
|
|
width: 100%;
|
|
}
|
|
|
|
.footer-newsletter button {
|
|
background: #008060;
|
|
color: white;
|
|
border: none;
|
|
padding: 0.75rem 1rem;
|
|
border-radius: 8px;
|
|
font-weight: 600;
|
|
font-size: 0.875rem;
|
|
cursor: pointer;
|
|
transition: background 0.2s;
|
|
}
|
|
|
|
.footer-newsletter button:hover {
|
|
background: #006B3D;
|
|
}
|
|
|
|
.footer-bottom {
|
|
border-top: 1px solid #e5e7eb;
|
|
margin-top: 2rem;
|
|
padding-top: 1.5rem;
|
|
text-align: center;
|
|
}
|
|
|
|
.footer-bottom p {
|
|
color: #9ca3af;
|
|
font-size: 0.75rem;
|
|
margin: 0;
|
|
}
|
|
|
|
.contact-form {
|
|
text-align: left;
|
|
margin-top: 1.5rem;
|
|
}
|
|
|
|
.contact-form .form-group {
|
|
margin-bottom: 1rem;
|
|
}
|
|
|
|
.contact-form label {
|
|
display: block;
|
|
font-weight: 500;
|
|
margin-bottom: 0.5rem;
|
|
color: #374151;
|
|
font-size: 0.875rem;
|
|
}
|
|
|
|
.contact-form input,
|
|
.contact-form textarea {
|
|
width: 100%;
|
|
padding: 0.75rem 1rem;
|
|
border: 1px solid #e5e7eb;
|
|
border-radius: 8px;
|
|
font-size: 0.875rem;
|
|
font-family: inherit;
|
|
transition: border-color 0.2s, box-shadow 0.2s;
|
|
}
|
|
|
|
.contact-form input:focus,
|
|
.contact-form textarea:focus {
|
|
outline: none;
|
|
border-color: #008060;
|
|
box-shadow: 0 0 0 3px rgba(0, 128, 96, 0.1);
|
|
}
|
|
|
|
.contact-form textarea {
|
|
min-height: 120px;
|
|
resize: vertical;
|
|
}
|
|
|
|
.contact-form button {
|
|
background: linear-gradient(135deg, #008060 0%, #004c3f 100%);
|
|
color: white;
|
|
border: none;
|
|
padding: 1rem 2rem;
|
|
border-radius: 8px;
|
|
font-weight: 600;
|
|
cursor: pointer;
|
|
transition: opacity 0.2s;
|
|
width: 100%;
|
|
}
|
|
|
|
.contact-form button:hover {
|
|
opacity: 0.9;
|
|
}
|
|
|
|
.contact-form button:disabled {
|
|
opacity: 0.6;
|
|
cursor: not-allowed;
|
|
}
|
|
|
|
.form-message {
|
|
padding: 0.75rem 1rem;
|
|
border-radius: 8px;
|
|
margin-top: 1rem;
|
|
font-size: 0.875rem;
|
|
display: none;
|
|
}
|
|
|
|
.form-message.success {
|
|
background: #d1fae5;
|
|
color: #065f46;
|
|
display: block;
|
|
}
|
|
|
|
.form-message.error {
|
|
background: #fee2e2;
|
|
color: #991b1b;
|
|
display: block;
|
|
}
|
|
</style>
|
|
|
|
<!-- PostHog Analytics -->
|
|
<script src="/posthog.js"></script>
|
|
</head>
|
|
|
|
<body>
|
|
<header class="header">
|
|
<a href="/" class="logo">
|
|
<img src="/assets/Plugin.png" alt="Plugin Compass Logo">
|
|
<span>Plugin Compass</span>
|
|
</a>
|
|
</header>
|
|
|
|
<main class="container">
|
|
<div class="contact-card">
|
|
<h1>Get in Touch</h1>
|
|
<p>Have questions or need support? We're here to help you build the perfect WordPress Plugin.</p>
|
|
<p>Please fill out the form below and we'll get back to you as soon as possible.</p>
|
|
<form id="contact-form" class="contact-form">
|
|
<div class="form-group">
|
|
<label for="contact-name">Your Name</label>
|
|
<input type="text" id="contact-name" name="name" placeholder="John Doe" required>
|
|
</div>
|
|
<div class="form-group">
|
|
<label for="contact-email">Email Address</label>
|
|
<input type="email" id="contact-email" name="email" placeholder="john@example.com" required>
|
|
</div>
|
|
<div class="form-group">
|
|
<label for="contact-subject">Subject</label>
|
|
<input type="text" id="contact-subject" name="subject" placeholder="How can we help?" required>
|
|
</div>
|
|
<div class="form-group">
|
|
<label for="contact-message">Message</label>
|
|
<textarea id="contact-message" name="message" placeholder="Tell us more about your project..." required></textarea>
|
|
</div>
|
|
<button type="submit" id="contact-submit">Send Message</button>
|
|
<div id="contact-message-display" class="form-message"></div>
|
|
</form>
|
|
</div>
|
|
</main>
|
|
|
|
<footer class="footer">
|
|
<div class="footer-grid">
|
|
<div class="footer-brand">
|
|
<div class="logo-text">
|
|
<img src="/assets/Plugin.png" alt="Plugin Compass">
|
|
<span>Plugin Compass</span>
|
|
</div>
|
|
<p>The smart way for WordPress site owners to replace expensive plugin subscriptions with custom solutions. Save thousands monthly.</p>
|
|
</div>
|
|
<div>
|
|
<h4>Product</h4>
|
|
<ul>
|
|
<li><a href="/features">Features</a></li>
|
|
<li><a href="/pricing">Pricing</a></li>
|
|
<li><a href="#">Templates</a></li>
|
|
</ul>
|
|
</div>
|
|
<div>
|
|
<h4>Resources</h4>
|
|
<ul>
|
|
<li><a href="/docs">Documentation</a></li>
|
|
<li><a href="/faq">FAQ</a></li>
|
|
</ul>
|
|
</div>
|
|
<div>
|
|
<h4>Legal</h4>
|
|
<ul>
|
|
<li><a href="/privacy.html">Privacy Policy</a></li>
|
|
<li><a href="/terms">Terms of Service</a></li>
|
|
<li><a href="/contact">Contact Us</a></li>
|
|
</ul>
|
|
</div>
|
|
<div class="footer-newsletter">
|
|
<h4>Stay Updated</h4>
|
|
<p>Get the latest updates and WordPress tips.</p>
|
|
<form id="footer-signup-form">
|
|
<input type="email" name="email" placeholder="Your email" required>
|
|
<button type="submit">Subscribe</button>
|
|
</form>
|
|
<div id="signup-message" class="form-message"></div>
|
|
</div>
|
|
</div>
|
|
<div class="footer-bottom">
|
|
<p>© 2026 Plugin Compass. All rights reserved.</p>
|
|
</div>
|
|
</footer>
|
|
<script>
|
|
const contactForm = document.getElementById('contact-form');
|
|
const contactSubmit = document.getElementById('contact-submit');
|
|
const contactMessage = document.getElementById('contact-message-display');
|
|
|
|
if (contactForm) {
|
|
contactForm.addEventListener('submit', async (e) => {
|
|
e.preventDefault();
|
|
|
|
contactSubmit.disabled = true;
|
|
contactSubmit.textContent = 'Sending...';
|
|
|
|
const formData = {
|
|
name: document.getElementById('contact-name').value,
|
|
email: document.getElementById('contact-email').value,
|
|
subject: document.getElementById('contact-subject').value,
|
|
message: document.getElementById('contact-message').value
|
|
};
|
|
|
|
try {
|
|
const response = await fetch('/api/contact', {
|
|
method: 'POST',
|
|
headers: {
|
|
'Content-Type': 'application/json'
|
|
},
|
|
body: JSON.stringify(formData)
|
|
});
|
|
|
|
const result = await response.json();
|
|
|
|
if (response.ok) {
|
|
contactMessage.textContent = 'Thank you for your message! We\'ll get back to you soon.';
|
|
contactMessage.className = 'form-message success';
|
|
contactForm.reset();
|
|
} else {
|
|
throw new Error(result.error || 'Failed to send message');
|
|
}
|
|
} catch (error) {
|
|
contactMessage.textContent = error.message || 'Failed to send message. Please try again.';
|
|
contactMessage.className = 'form-message error';
|
|
} finally {
|
|
contactSubmit.disabled = false;
|
|
contactSubmit.textContent = 'Send Message';
|
|
}
|
|
});
|
|
}
|
|
|
|
const signupForm = document.getElementById('footer-signup-form');
|
|
const signupMessage = document.getElementById('signup-message');
|
|
|
|
if (signupForm) {
|
|
signupForm.addEventListener('submit', async (e) => {
|
|
e.preventDefault();
|
|
const email = signupForm.querySelector('input[name="email"]').value;
|
|
const button = signupForm.querySelector('button');
|
|
|
|
button.disabled = true;
|
|
button.textContent = 'Subscribing...';
|
|
|
|
try {
|
|
const response = await fetch('https://emailmarketing.modelrailway3d.co.uk/api/webhooks/incoming/wh_0Z49zi_DGj4-lKJMOPO8-g', {
|
|
method: 'POST',
|
|
headers: {
|
|
'Content-Type': 'application/json',
|
|
},
|
|
body: JSON.stringify({
|
|
email: email,
|
|
source: 'plugin_compass_footer',
|
|
timestamp: new Date().toISOString()
|
|
})
|
|
});
|
|
|
|
if (response.ok) {
|
|
signupMessage.textContent = 'Successfully subscribed!';
|
|
signupMessage.className = 'form-message success';
|
|
signupForm.reset();
|
|
} else {
|
|
throw new Error('Failed to subscribe');
|
|
}
|
|
} catch (error) {
|
|
signupMessage.textContent = 'Failed to subscribe. Please try again.';
|
|
signupMessage.className = 'form-message error';
|
|
} finally {
|
|
button.disabled = false;
|
|
button.textContent = 'Subscribe';
|
|
}
|
|
});
|
|
}
|
|
</script>
|
|
</body>
|
|
|
|
</html> |