Home Movies Trending Latest Rent Movies Rent
LUCKNOWI PARINDEY
LUCKNOWI PARINDEY
UA 0.0

LUCKNOWI PARINDEY

2026 · Familly Movie

More Like This

document.getElementById('share-movie')?.addEventListener('click', function () { const url = this.dataset.url; const title = this.dataset.title; if (navigator.share) { navigator.share({ title, url }); } else { navigator.clipboard.writeText(url); alert('Link copied to clipboard!'); } }); (function () { const modal = document.getElementById('trailerModal'); const player = document.getElementById('trailer-player'); if (!modal || !player) return; modal.addEventListener('show.bs.modal', function () { document.body.classList.add('trailer-modal-open'); const src = player.dataset.src; if (src) { if (player.tagName === 'IFRAME' && !player.src) { player.src = src.includes('?') ? src + '&autoplay=1' : src + '?autoplay=1'; } else if (player.tagName === 'VIDEO') { if (!player.src) { player.src = src; } player.load(); } } }); modal.addEventListener('shown.bs.modal', function () { if (player.tagName === 'VIDEO') { player.play().catch(() => {}); } }); modal.addEventListener('hidden.bs.modal', function () { document.body.classList.remove('trailer-modal-open'); if (player.tagName === 'VIDEO') { player.pause(); return; } player.src = ''; }); if (player.tagName === 'VIDEO') { const controls = modal.querySelector('.trailer-controls'); const playBtn = controls?.querySelector('.trailer-play'); const backBtn = controls?.querySelector('.trailer-back'); const forwardBtn = controls?.querySelector('.trailer-forward'); const muteBtn = controls?.querySelector('.trailer-mute'); const volume = controls?.querySelector('.trailer-volume'); const progress = controls?.querySelector('.trailer-progress'); const time = controls?.querySelector('.trailer-time'); const speed = controls?.querySelector('.trailer-speed'); const fullscreen = controls?.querySelector('.trailer-fullscreen'); const formatTime = (seconds) => { if (!Number.isFinite(seconds)) return '0:00'; const mins = Math.floor(seconds / 60); const secs = Math.floor(seconds % 60).toString().padStart(2, '0'); return `${mins}:${secs}`; }; const sync = () => { if (playBtn) { playBtn.innerHTML = player.paused ? '' : ''; } if (progress && player.duration) { progress.value = String((player.currentTime / player.duration) * 100); progress.style.setProperty('--progress', `${progress.value}%`); } if (time) { time.textContent = `${formatTime(player.currentTime)} / ${formatTime(player.duration)}`; } }; playBtn?.addEventListener('click', () => { if (player.paused) player.play().catch(() => {}); else player.pause(); }); backBtn?.addEventListener('click', () => { player.currentTime = Math.max(0, player.currentTime - 10); }); forwardBtn?.addEventListener('click', () => { player.currentTime = Math.min(player.duration || Infinity, player.currentTime + 10); }); muteBtn?.addEventListener('click', () => { player.muted = !player.muted; muteBtn.innerHTML = player.muted ? '' : ''; }); volume?.addEventListener('input', () => { player.volume = parseFloat(volume.value); player.muted = player.volume === 0; if (muteBtn) muteBtn.innerHTML = player.muted ? '' : ''; }); progress?.addEventListener('input', () => { if (!player.duration) return; player.currentTime = (parseFloat(progress.value) / 100) * player.duration; }); speed?.addEventListener('change', () => { player.playbackRate = parseFloat(speed.value); }); fullscreen?.addEventListener('click', () => { const target = modal.querySelector('.trailer-player-frame'); if (document.fullscreenElement) document.exitFullscreen().catch(() => {}); else target?.requestFullscreen?.().catch(() => {}); }); player.addEventListener('click', () => playBtn?.click()); player.addEventListener('timeupdate', sync); player.addEventListener('play', sync); player.addEventListener('pause', sync); player.addEventListener('loadedmetadata', sync); sync(); } })();