![]() Server : Apache/2 System : Linux server-15-235-50-60 5.15.0-164-generic #174-Ubuntu SMP Fri Nov 14 20:25:16 UTC 2025 x86_64 User : gositeme ( 1004) PHP Version : 8.2.29 Disable Function : exec,system,passthru,shell_exec,proc_close,proc_open,dl,popen,show_source,posix_kill,posix_mkfifo,posix_getpwuid,posix_setpgid,posix_setsid,posix_setuid,posix_setgid,posix_seteuid,posix_setegid,posix_uname Directory : /home/gositeme/.cursor-server/data/User/History/-4a8fb7e8/ |
<?php
session_start();
require_once 'includes/translations.php';
require_once 'config/database.php';
require_once 'config/email.php';
$current_page = 'contact';
$page_title = t('contact.page_title');
$page_description = t('contact.page_description');
$contact_errors = [];
$contact_success = false;
$form_data = [
'name' => '',
'email' => '',
'subject' => '',
'message' => '',
'topic' => 'support'
];
$recipient_map = [
'support' => [
'email' => 'support@soundstudiopro.com',
'label' => t('contact.form_topic_support')
],
'licensing' => [
'email' => 'licensing@soundstudiopro.com',
'label' => t('contact.form_topic_licensing')
],
'partnerships' => [
'email' => 'partners@soundstudiopro.com',
'label' => t('contact.form_topic_partnerships')
]
];
if ($_SERVER['REQUEST_METHOD'] === 'POST') {
$form_data['name'] = trim($_POST['name'] ?? '');
$form_data['email'] = trim($_POST['email'] ?? '');
$form_data['subject'] = trim($_POST['subject'] ?? '');
$form_data['message'] = trim($_POST['message'] ?? '');
$form_data['topic'] = isset($_POST['topic'], $recipient_map[$_POST['topic']]) ? $_POST['topic'] : 'support';
if ($form_data['name'] === '') {
$contact_errors[] = t('contact.error_name_required');
}
if ($form_data['email'] === '' || !filter_var($form_data['email'], FILTER_VALIDATE_EMAIL)) {
$contact_errors[] = t('contact.error_email_invalid');
}
if ($form_data['subject'] === '') {
$contact_errors[] = t('contact.error_subject_required');
}
if ($form_data['message'] === '') {
$contact_errors[] = t('contact.error_message_required');
}
if (empty($contact_errors)) {
$recipient = $recipient_map[$form_data['topic']];
$subject = '[SoundStudioPro] ' . $recipient['label'] . ' - ' . $form_data['subject'];
$html_body = '
<h2>New contact request</h2>
<p><strong>Name:</strong> ' . htmlspecialchars($form_data['name'], ENT_QUOTES, 'UTF-8') . '</p>
<p><strong>Email:</strong> ' . htmlspecialchars($form_data['email'], ENT_QUOTES, 'UTF-8') . '</p>
<p><strong>Topic:</strong> ' . htmlspecialchars($recipient['label'], ENT_QUOTES, 'UTF-8') . '</p>
<p><strong>Message:</strong><br>' . nl2br(htmlspecialchars($form_data['message'], ENT_QUOTES, 'UTF-8')) . '</p>
<hr>
<p><strong>Submitted from:</strong> ' . ($_SERVER['HTTP_HOST'] ?? 'soundstudiopro.com') . '</p>
<p><strong>IP:</strong> ' . ($_SERVER['REMOTE_ADDR'] ?? 'unknown') . '</p>
<p><strong>User Agent:</strong> ' . ($_SERVER['HTTP_USER_AGENT'] ?? 'unknown') . '</p>
';
$text_body = "New contact request\n"
. "Name: {$form_data['name']}\n"
. "Email: {$form_data['email']}\n"
. "Topic: {$recipient['label']}\n"
. "Message:\n{$form_data['message']}\n\n"
. "IP: " . ($_SERVER['REMOTE_ADDR'] ?? 'unknown') . "\n"
. "User Agent: " . ($_SERVER['HTTP_USER_AGENT'] ?? 'unknown');
$email_sent = sendEmail(
$recipient['email'],
$recipient['label'] . ' - SoundStudioPro',
$subject,
$html_body,
$text_body,
'contact_form'
);
if ($email_sent) {
$contact_success = true;
$form_data = [
'name' => '',
'email' => '',
'subject' => '',
'message' => '',
'topic' => 'support'
];
} else {
$contact_errors[] = t('contact.error_send_failed');
}
}
}
include 'includes/header.php';
?>
<div class="contact-page">
<div class="container">
<section class="contact-hero">
<span class="contact-badge"><?= t('contact.hero_badge') ?></span>
<h1><?= htmlspecialchars($page_title) ?></h1>
<p><?= t('contact.hero_subtitle') ?></p>
<div class="contact-meta">
<span><i class="fas fa-clock"></i> <?= t('contact.response_time') ?></span>
<span><i class="fas a-globe"></i> <?= t('contact.support_hours') ?></span>
</div>
</section>
<?php if ($contact_success): ?>
<div class="contact-alert contact-alert-success">
<i class="fas fa-check-circle"></i> <?= t('contact.form_success') ?>
</div>
<?php elseif (!empty($contact_errors)): ?>
<div class="contact-alert contact-alert-error">
<i class="fas fa-exclamation-triangle"></i>
<div>
<?php foreach ($contact_errors as $error): ?>
<p><?= htmlspecialchars($error) ?></p>
<?php endforeach; ?>
</div>
</div>
<?php endif; ?>
<section class="contact-grid">
<article class="contact-card">
<h2><i class="fas fa-headset"></i> <?= t('contact.card_support_title') ?></h2>
<p><?= t('contact.card_support_desc') ?></p>
<ul>
<li><?= t('contact.card_support_item_1') ?></li>
<li><?= t('contact.card_support_item_2') ?></li>
<li><?= t('contact.card_support_item_3') ?></li>
</ul>
<a class="contact-link" href="mailto:support@soundstudiopro.com">
<i class="fas fa-envelope"></i> support@soundstudiopro.com
</a>
</article>
<article class="contact-card">
<h2><i class="fas fa-file-contract"></i> <?= t('contact.card_licensing_title') ?></h2>
<p><?= t('contact.card_licensing_desc') ?></p>
<ul>
<li><?= t('contact.card_licensing_item_1') ?></li>
<li><?= t('contact.card_licensing_item_2') ?></li>
<li><?= t('contact.card_licensing_item_3') ?></li>
</ul>
<a class="contact-link" href="mailto:licensing@soundstudiopro.com">
<i class="fas fa-envelope"></i> licensing@soundstudiopro.com
</a>
</article>
<article class="contact-card">
<h2><i class="fas fa-handshake"></i> <?= t('contact.card_partnerships_title') ?></h2>
<p><?= t('contact.card_partnerships_desc') ?></p>
<ul>
<li><?= t('contact.card_partnerships_item_1') ?></li>
<li><?= t('contact.card_partnerships_item_2') ?></li>
<li><?= t('contact.card_partnerships_item_3') ?></li>
</ul>
<a class="contact-link" href="mailto:partners@soundstudiopro.com">
<i class="fas fa-envelope"></i> partners@soundstudiopro.com
</a>
</article>
</section>
<section class="contact-form-section">
<div class="contact-form-copy">
<h2><?= t('contact.form_title') ?></h2>
<p><?= t('contact.form_subtitle') ?></p>
<div class="contact-form-highlights">
<span><i class="fas fa-shield-alt"></i> <?= t('contact.form_highlight_privacy') ?></span>
<span><i class="fas fa-bolt"></i> <?= t('contact.form_highlight_priority') ?></span>
<span><i class="fas fa-user-check"></i> <?= t('contact.form_highlight_followup') ?></span>
</div>
</div>
<form class="contact-form" method="post" action="">
<label>
<?= t('contact.form_name_label') ?>
<input type="text" name="name" value="<?= htmlspecialchars($form_data['name'], ENT_QUOTES, 'UTF-8') ?>" placeholder="<?= t('contact.form_name_placeholder') ?>" required>
</label>
<label>
<?= t('contact.form_email_label') ?>
<input type="email" name="email" value="<?= htmlspecialchars($form_data['email'], ENT_QUOTES, 'UTF-8') ?>" placeholder="<?= t('contact.form_email_placeholder') ?>" required>
</label>
<label>
<?= t('contact.form_subject_label') ?>
<input type="text" name="subject" value="<?= htmlspecialchars($form_data['subject'], ENT_QUOTES, 'UTF-8') ?>" placeholder="<?= t('contact.form_subject_placeholder') ?>" required>
</label>
<label>
<?= t('contact.form_topic_label') ?>
<select name="topic" required>
<option value="support" <?= $form_data['topic'] === 'support' ? 'selected' : '' ?>><?= t('contact.form_topic_support') ?></option>
<option value="licensing" <?= $form_data['topic'] === 'licensing' ? 'selected' : '' ?>><?= t('contact.form_topic_licensing') ?></option>
<option value="partnerships" <?= $form_data['topic'] === 'partnerships' ? 'selected' : '' ?>><?= t('contact.form_topic_partnerships') ?></option>
</select>
</label>
<label>
<?= t('contact.form_message_label') ?>
<textarea name="message" rows="5" placeholder="<?= t('contact.form_message_placeholder') ?>" required><?= htmlspecialchars($form_data['message'], ENT_QUOTES, 'UTF-8') ?></textarea>
</label>
<button type="submit" class="contact-submit">
<i class="fas fa-paper-plane"></i> <?= t('contact.form_submit') ?>
</button>
<p class="contact-form-note"><?= t('contact.form_note') ?></p>
</form>
</section>
</div>
</div>
<style>
.contact-page {
background: radial-gradient(circle at top, rgba(102,126,234,0.1), transparent 60%), #05050a;
color: #f5f5fb;
padding: 80px 0 120px;
}
.contact-page .container {
max-width: 1100px;
}
.contact-hero {
text-align: center;
margin-bottom: 50px;
}
.contact-badge {
display: inline-flex;
align-items: center;
gap: 8px;
padding: 8px 18px;
border-radius: 999px;
border: 1px solid rgba(255,255,255,0.15);
background: rgba(255,255,255,0.05);
color: #a3b8ff;
font-size: 1rem;
margin-bottom: 15px;
}
.contact-hero h1 {
font-size: 2.5rem;
margin-bottom: 15px;
}
.contact-hero p {
max-width: 680px;
margin: 0 auto;
color: #d6d6e8;
}
.contact-meta {
margin-top: 18px;
display: flex;
justify-content: center;
gap: 20px;
color: #a3b8ff;
font-size: 0.95rem;
}
.contact-grid {
display: grid;
grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
gap: 24px;
margin-bottom: 60px;
}
.contact-card {
background: rgba(255,255,255,0.04);
border: 1px solid rgba(255,255,255,0.1);
border-radius: 18px;
padding: 24px;
display: flex;
flex-direction: column;
gap: 14px;
box-shadow: 0 10px 30px rgba(0,0,0,0.25);
}
.contact-card h2 {
font-size: 1.3rem;
display: flex;
align-items: center;
gap: 10px;
}
.contact-card p {
color: #d6d6e8;
margin: 0;
}
.contact-card ul {
list-style: none;
margin: 0;
padding: 0;
display: flex;
flex-direction: column;
gap: 8px;
color: #c0c0d9;
}
.contact-card li::before {
content: '•';
color: #667eea;
margin-right: 8px;
}
.contact-link {
margin-top: auto;
color: #a3b8ff;
text-decoration: none;
font-weight: 600;
display: inline-flex;
align-items: center;
gap: 8px;
}
.contact-form-section {
background: rgba(255,255,255,0.03);
border: 1px solid rgba(255,255,255,0.08);
border-radius: 24px;
padding: 40px;
display: grid;
grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
gap: 30px;
}
.contact-form-copy h2 {
margin-bottom: 12px;
}
.contact-form-copy p {
color: #d6d6e8;
margin-bottom: 20px;
}
.contact-form-highlights {
display: flex;
flex-wrap: wrap;
gap: 10px;
}
.contact-form-highlights span {
display: inline-flex;
align-items: center;
gap: 6px;
padding: 8px 14px;
border-radius: 999px;
background: rgba(255,255,255,0.05);
border: 1px solid rgba(255,255,255,0.08);
font-size: 0.9rem;
color: #a3b8ff;
}
.contact-form {
display: flex;
flex-direction: column;
gap: 18px;
}
.contact-alert {
display: flex;
align-items: flex-start;
gap: 12px;
padding: 16px 20px;
border-radius: 16px;
margin-bottom: 30px;
font-size: 0.95rem;
}
.contact-alert i {
font-size: 1.3rem;
}
.contact-alert-success {
background: rgba(34, 197, 94, 0.12);
border: 1px solid rgba(34, 197, 94, 0.4);
color: #90f0b4;
}
.contact-alert-error {
background: rgba(252, 129, 129, 0.12);
border: 1px solid rgba(252, 129, 129, 0.4);
color: #fecaca;
}
.contact-alert-error p {
margin: 0;
}
.contact-form label {
display: flex;
flex-direction: column;
gap: 8px;
font-size: 0.95rem;
color: #d6d6e8;
}
.contact-form input,
.contact-form textarea {
background: rgba(0,0,0,0.4);
border: 1px solid rgba(255,255,255,0.1);
border-radius: 12px;
padding: 12px 14px;
color: #fff;
font-size: 1rem;
}
.contact-submit {
background: linear-gradient(135deg, #667eea, #764ba2);
border: none;
border-radius: 12px;
color: #fff;
padding: 14px 20px;
font-size: 1rem;
font-weight: 600;
cursor: pointer;
display: inline-flex;
align-items: center;
justify-content: center;
gap: 10px;
}
.contact-form-note {
font-size: 0.85rem;
color: #a3b8ff;
margin: 0;
}
@media (max-width: 600px) {
.contact-hero h1 {
font-size: 2rem;
}
.contact-form-section {
padding: 24px;
}
.contact-meta {
flex-direction: column;
}
}
</style>
<?php include 'includes/footer.php'; ?>