Spaces:
Running
Running
async function getDets() { | |
let randPage = Math.floor(1 + Math.random() * 100) | |
const apiKey = '6abcb6bb99fb77f33c37016a28866ed2'; | |
let apiArr = [`https://api.themoviedb.org/3/movie/popular?api_key=${apiKey}&language=hin-US&page=${randPage}`, `https://api.themoviedb.org/3/trending/movie/day?api_key=${apiKey}&language=hin-US&page=${randPage}`, `https://api.themoviedb.org/3/movie/now_playing?api_key=${apiKey}&language=hin-US&page=${randPage}`] | |
let ArrRanIndex = Math.floor(Math.random() * apiArr.length) | |
let apiUrl = apiArr[ArrRanIndex] | |
let movieCont = document.querySelector('.movieSug') | |
let img = document.querySelector('.movieimg img') | |
let movieDets = document.querySelector('.movieDets') | |
let movieDetsMini = document.querySelector('.movieDets-mini') | |
let data = await fetch(apiUrl) | |
let resData = await data.json() | |
let ranIndex = Math.floor(Math.random() * resData.results.length) | |
let movie = resData.results[ranIndex] | |
movieDets.innerHTML = ` | |
<h3>Must-see blockbuster film!</h3> | |
<h4><span>Title:</span> ${movie.title}</h4> | |
<h4><span>movie overview:</span> ${movie.overview}</h4> | |
<h4><span>Release Date:</span> ${movie.release_date}</h4> | |
<h4><span>Rating:</span> ${movie.vote_average.toFixed(1)} / 10</h4> | |
` | |
movieDetsMini.innerHTML = ` | |
<h3><span>Title:</span> ${movie.title}</h3> | |
<h3><span>Release Date:</span> ${movie.release_date}</h3> | |
<h3><span>Rating:</span> ${movie.vote_average.toFixed(1)} / 10</h3> | |
` | |
img.src = `https://image.tmdb.org/t/p/w1280/${movie.poster_path}` | |
movieCont.style.backgroundImage = `url(https://image.tmdb.org/t/p/w1280/${movie.backdrop_path})`; | |
} | |
window.addEventListener("load", getDets()) | |
let homeBtn = document.querySelector(".home-btn") | |
let abtBtn = document.querySelector(".about-btn") | |
let dldBtn_outer = document.querySelector(".downloadBtn") | |
let file_name = document.querySelector(".file-name") | |
let about_nav = document.querySelector(".about-nav") | |
let contact_btn = document.querySelector('.contact-btn') | |
let links = document.querySelectorAll('.links a') | |
let chnl_link = document.querySelectorAll('.chnl-link a') | |
let abt_chnl = document.querySelector('.abt-chnl') | |
let contact = document.querySelectorAll('.contact a') | |
let footer = document.querySelector('footer') | |
let timer = 0 | |
if (document.getElementById("heading").classList.contains("title")) { | |
document.querySelector(".title").textContent = 'FILE STREAM' | |
} | |
// adding under in home btn at first | |
homeBtn.classList.add('active'); | |
// when clicking about | |
abtBtn.addEventListener("click", () => { | |
dldBtn_outer.style.display = "none"; | |
file_name.style.display = "none"; | |
footer.style.display = "none"; | |
about_nav.style.display = "block" | |
about_nav.style.display = "block" | |
about_nav.style.animation = "strtLoad 1s ease 0s forwards" | |
}) | |
// when clicking home | |
homeBtn.addEventListener("click", () => { | |
dldBtn_outer.style.display = "flex"; | |
file_name.style.display = "block"; | |
footer.style.display = "block"; | |
window.location.href = "#main"; | |
about_nav.style.animation = "strtLoad 1s ease 0s forwards" | |
about_nav.style.display = "none" | |
}) | |
abt_chnl.addEventListener("click", () => { | |
timer = 1 | |
chnl_link.forEach((i) => { | |
i.style.animation = `strtLoad 1s ease ${timer}s forwards, linksBtnAn 2s ease ${timer}s infinite ` | |
timer += 0.3; | |
}); | |
timer = 0 | |
}); | |
function bot_btn_clicked() { | |
var about_btn = document.querySelector(".about-btn") | |
timer = 1; | |
bot_links.forEach((i) => { | |
i.style.animation = `linksBtnAn 2s ease ${timer}s infinite ,strtLoad 1s ease ${timer}s forwards`; | |
timer += 0.3; | |
}); | |
timer = 0; | |
dldBtn_outer.style.display = "none"; | |
file_name.style.display = "none"; | |
footer.style.display = "none"; | |
about_nav.style.display = "block" | |
about_nav.style.display = "block" | |
about_nav.style.animation = "strtLoad 1s ease 0s forwards" | |
var links = document.querySelectorAll('.nryt a'); | |
links.forEach(function (link) { | |
link.classList.remove('active'); | |
}); | |
about_btn.classList.add('active'); | |
var links = document.querySelectorAll('.about-nav a'); | |
links.forEach(function (link) { | |
link.classList.remove('active'); | |
}); | |
let wlcm = document.querySelector(".wlcm") | |
wlcm.classList.add('active'); | |
var links = document.querySelectorAll('.about-nav a'); | |
links.forEach(function (link) { | |
link.classList.remove('active'); | |
}); | |
bot_btn.classList.add('active'); | |
}; | |
footer_btn_clicked = () => { | |
timer = 1; | |
contact.forEach((i) => { | |
i.style.animation = `linksBtnAn 2s ease ${timer}s infinite ,strtLoad 1s ease ${timer}s forwards`; | |
timer += 0.3; | |
}); | |
timer = 0; | |
var about_btn = document.querySelector(".about-btn") | |
timer = 1; | |
bot_links.forEach((i) => { | |
i.style.animation = `linksBtnAn 2s ease ${timer}s infinite ,strtLoad 1s ease ${timer}s forwards`; | |
timer += 0.3; | |
}); | |
timer = 0; | |
dldBtn_outer.style.display = "none"; | |
file_name.style.display = "none"; | |
footer.style.display = "none"; | |
about_nav.style.display = "block" | |
about_nav.style.display = "block" | |
about_nav.style.animation = "strtLoad 1s ease 0s forwards" | |
var links = document.querySelectorAll('.nryt a'); | |
links.forEach(function (link) { | |
link.classList.remove('active'); | |
}); | |
about_btn.classList.add('active'); | |
var links = document.querySelectorAll('.about-nav a'); | |
links.forEach(function (link) { | |
link.classList.remove('active'); | |
}); | |
let wlcm = document.querySelector(".wlcm") | |
wlcm.classList.add('active'); | |
var links = document.querySelectorAll('.about-nav a'); | |
links.forEach(function (link) { | |
link.classList.remove('active'); | |
}); | |
contact_btn.classList.add('active'); | |
} | |
contact_btn.addEventListener("click", () => { | |
timer = 1; | |
contact.forEach((i) => { | |
i.style.animation = `linksBtnAn 2s ease ${timer}s infinite ,strtLoad 1s ease ${timer}s forwards`; | |
timer += 0.3; | |
}); | |
timer = 0; | |
}) | |
// btn animations | |
let dldBtn = document.querySelectorAll('.downloadBtn button') | |
dldBtn.forEach((i) => { | |
i.style.animation = `strtLoad 1s ease ${timer}s forwards, linksBtnAn 2s ease ${timer}s infinite` | |
timer += 0.3; | |
i.style.setProperty("--beforestyl", `button_shine ${2 + Math.random() * 7}s ease ${Math.random() * 10}s infinite`); | |
}) | |
timer = 0 | |
links.forEach((i) => { | |
i.style.animation = `linksBtnAn 2s ease ${timer}s infinite` | |
timer += 0.3 | |
i.style.setProperty("--beforestyl", `button_shine ${2 + Math.random() * 7}s ease ${Math.random() * 10}s infinite`); | |
}) | |
timer = 0 | |
timer = 0 | |
function toggleWidth(element) { | |
var links = document.querySelectorAll('.about-nav a'); | |
links.forEach(function (link) { | |
link.classList.remove('active'); | |
}); | |
element.classList.add('active'); | |
} | |
function toggleWidthnav(element) { | |
var links = document.querySelectorAll('.nryt a'); | |
links.forEach(function (link) { | |
link.classList.remove('active'); | |
}); | |
element.classList.add('active'); | |
var links = document.querySelectorAll('.about-nav a'); | |
links.forEach(function (link) { | |
link.classList.remove('active'); | |
}); | |
let wlcm = document.querySelector(".wlcm") | |
wlcm.classList.add('active'); | |
} | |
if (!(/Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test(navigator.userAgent))) { | |
Shery.mouseFollower(); | |
Shery.makeMagnet(".magnet"); | |
} | |
// file name showing | |
var div = document.getElementById('myDiv'); | |
var text = div.textContent; | |
if (text.length > 300) { | |
div.textContent = text.slice(0, 300) + "...."; | |
} | |
// video player | |
const controls = [ | |
'play-large', | |
'rewind', 'play', | |
'fast-forward', | |
'progress', | |
'current-time', | |
'duration', | |
//'mute', | |
//'volume', | |
'captions', | |
'settings', | |
'pip', | |
'airplay', | |
// 'download', | |
'fullscreen' | |
]; | |
document.addEventListener('DOMContentLoaded', () => { | |
const player = Plyr.setup('.player', { controls }); | |
}); | |
// disabling right click | |
document.addEventListener("contextmenu", function (e) { | |
e.preventDefault(); | |
}); | |
document.addEventListener('keydown', function (e) { | |
if ( | |
e.key === 'F12' || | |
(e.ctrlKey && e.shiftKey && e.key === 'I') || | |
(e.ctrlKey && e.key === 'u') || | |
e.ctrlKey || | |
e.shiftKey || | |
e.altKey | |
) { | |
e.preventDefault(); | |
} | |
}); | |
const videolink = window.location.href.split('#')[0]; | |
const streamlink = videolink.replace("app/watch/", "api/dl/"); | |
function vlc_player() { | |
const openstreamlink = streamlink; | |
const openVlc = `vlc://${openstreamlink.replace(/^https?:\/\//, '')}`; | |
// Check the platform | |
const userAgent = navigator.userAgent || navigator.vendor || window.opera; | |
if (/android/i.test(userAgent)) { | |
// If the platform is Android, create an intent | |
//const openVlcIntent = `intent://${openstreamlink}#Intent;package=org.videolan.vlc;scheme=vlc;end`; | |
//const openVlcIntent = `intent:${openstreamlink}#Intent;action=android.intent.action.VIEW;type=video/*;package=org.videolan.vlc;end`; // VLC intent for Android | |
const openVlcIntent = `intent:${openstreamlink}#Intent;action=android.intent.action.VIEW;package=org.videolan.vlc;end`; // VLC intent for Android | |
window.location.href = openVlcIntent; | |
} else { | |
// If the platform is Desktop, keep it as it is | |
window.location.href = openVlc; | |
} | |
} | |
function mx_player() { | |
const openstreamlink = streamlink; | |
//const openMx = `intent:${openstreamlink}#Intent;package=com.mxtech.videoplayer.ad;end`; | |
const openMx = `intent:${openstreamlink}#Intent;package=com.mxtech.videoplayer.ad;end`; | |
window.location.href = openMx; | |
} | |
function n_player() { | |
const openstreamlink = streamlink; | |
const openNplayer = `nplayer-${openstreamlink}`; | |
window.location.href = openNplayer; | |
} | |
function streamDownload() { | |
const openstreamlink = streamlink; | |
window.location.href = openstreamlink; | |
} | |
function copyStreamLink() { | |
const linkToCopy = streamlink.toLowerCase(); | |
if (!navigator.clipboard) { | |
navigator.clipboard = { | |
writeText: function(text) { | |
return new Promise((resolve, reject) => { | |
try { | |
const textArea = document.createElement("textarea"); | |
textArea.value = text; | |
document.body.appendChild(textArea); | |
textArea.focus(); | |
textArea.select(); | |
document.execCommand('copy'); | |
document.body.removeChild(textArea); | |
resolve(); | |
} catch (err) { | |
reject(err); | |
} | |
}); | |
} | |
}; | |
} | |
navigator.clipboard.writeText(linkToCopy) | |
.then(() => { | |
console.log('Stream link copied to clipboard!'); | |
alert('Stream link copied successfully!'); | |
}) | |
.catch(err => { | |
console.error('Failed to copy link: ', err); | |
alert('Failed to copy link. Please try manually.'); | |
}); | |
} | |