Header

CVR Audio — Demo Mirror

Landing Page

/* ProSound — front-end interactions */ document.addEventListener('DOMContentLoaded', () => { // Header shadow on scroll const header = document.getElementById('site-header'); window.addEventListener('scroll', () => { if (window.scrollY > 10) { header.style.boxShadow = '0 6px 20px rgba(0,0,0,0.45)'; } else { header.style.boxShadow = 'none'; } }); // Mobile burger menu toggle const burger = document.getElementById('burger'); const mobileMenu = document.getElementById('mobile-menu'); burger.addEventListener('click', () => { const expanded = burger.getAttribute('aria-expanded') === 'true'; burger.setAttribute('aria-expanded', String(!expanded)); mobileMenu.setAttribute('aria-hidden', String(expanded)); }); // Product detail button (simple modal-ish alert) document.querySelectorAll('[data-product]').forEach(btn => { btn.addEventListener('click', (e) => { const name = e.currentTarget.getAttribute('data-product'); alert(`Permintaan: Lihat detail produk\n\nProduk: ${name}\n\nSilakan hubungi kami via formulir kontak untuk penawaran.`) }); }); // Contact form: simple client-side validation & fake submit const form = document.getElementById('contact-form'); const formMsg = document.getElementById('form-msg'); const sendBtn = document.getElementById('send-quote'); form.addEventListener('submit', (e) => { e.preventDefault(); const name = document.getElementById('name').value.trim(); const email = document.getElementById('email').value.trim(); const message = document.getElementById('message').value.trim(); if (!name || !email || !message) { formMsg.textContent = 'Mohon isi semua field yang wajib.'; return; } // Fake sending (no backend) — provide copy-paste payload const payload = { name, email, date: document.getElementById('date').value || null, message }; formMsg.textContent = 'Permintaan siap dikirim. Salin payload berikut dan kirim via WhatsApp / email kami:'; const pre = document.createElement('pre'); pre.style.background = 'rgba(255,255,255,0.02)'; pre.style.padding = '8px'; pre.style.borderRadius = '8px'; pre.textContent = JSON.stringify(payload, null, 2); // clear previous pre if exists const existing = document.querySelector('.contact-form pre'); if (existing) existing.remove(); form.appendChild(pre); }); // Footer year document.getElementById('year').textContent = new Date().getFullYear(); // Audio demo — set sample srcs (placeholders) const audioSrc = document.getElementById('audio-src'); const audioPlayer = document.getElementById('audio-player'); const demoSelect = document.getElementById('demo-select'); // NOTE: sample URLs below are placeholders. Replace with real demo mp3 files hosted on your server. const demos = { demo1: 'https://cdn.freesound.org/previews/456/456789_12345-lq.mp3', demo2: 'https://cdn.freesound.org/previews/456/456788_12345-lq.mp3', demo3: 'https://cdn.freesound.org/previews/456/456787_12345-lq.mp3' }; function setDemo(key){ const src = demos[key]; if (!src) { audioPlayer.pause(); audioSrc.src = ''; audioPlayer.load(); return; } audioSrc.src = src; audioPlayer.load(); // do not autoplay; user must press play } demoSelect.addEventListener('change', (e) => setDemo(e.target.value)); // set default setDemo(demoSelect.value); // Accessibility: close mobile menu when clicking a link mobileMenu.querySelectorAll('a').forEach(a => { a.addEventListener('click', () => { burger.setAttribute('aria-expanded','false'); mobileMenu.setAttribute('aria-hidden','true'); }); }); });

Formulir Kontak

Nama

Email *

Pesan *

Song