var results_container = document.querySelector("#saavn-results")
var results_objects = {};
const searchUrl = "https://jiosaavn-api-privatecvc2.vercel.app/search/songs?query=";
function SaavnSearch() {
event.preventDefault(); // stop page changing to #, which will reload the page
var query = document.querySelector("#saavn-search-box").value.trim()
query = encodeURIComponent(query);
if(query==lastSearch) {doSaavnSearch(query)}
window.location.hash = lastSearch;
if(query.length > 0) {
window.location.hash = query
}
}
var page_index = 1;
function nextPage() {
var query = document.querySelector("#saavn-search-box").value.trim();
if (!query) {query = lastSearch;}
query = encodeURIComponent(query);
doSaavnSearch(query,0,true)
}
async function doSaavnSearch(query,NotScroll,page) {
window.location.hash = query;
document.querySelector("#saavn-search-box").value = decodeURIComponent(query);
if(!query) {return 0;}
results_container.innerHTML = `Searching`;
query=query+"&limit=40";
if(page) {
;page_index=page_index+1;query=query+"&page="+page_index;
} else {query=query+"&page=1";page_index=1;}
// try catch
try {
var response = await fetch(searchUrl + query);
} catch(error) {
results_container.innerHTML = `Error: ${error}
Check if API is down `;
}
var json = await response.json();
/* If response code isn't 200, display error*/
if (response.status !== 200) {
results_container.innerHTML = `Error: ${json.message}`;
console.log(response)
return 0;
}
var json = json.data.results;
var results = [];
if(!json) {results_container.innerHTML = "
No result found. Try other Library
";return;} lastSearch = decodeURI(window.location.hash.substring(1)); for(let track of json) { song_name = TextAbstract(track.name,25); album_name = TextAbstract(track.album.name,20); if (track.album.name == track.name) { album_name = "" } var measuredTime = new Date(null); measuredTime.setSeconds(track.duration); // specify value of SECONDS var play_time = measuredTime.toISOString().substr(11, 8); if (play_time.startsWith("00:0")) { play_time = play_time.slice(4); } if (play_time.startsWith("00:")) { play_time = play_time.slice(3); } var song_id = track.id; var year = track.year; var song_image = track.image[1].link; var song_artist = TextAbstract(track.primaryArtists,30); var bitrate = document.getElementById('saavn-bitrate'); var bitrate_i = bitrate.options[bitrate.selectedIndex].value; if(track.downloadUrl) { var download_url = track.downloadUrl[bitrate_i]['link']; var quality = ""; if (bitrate_i == 4) {quality = 320} else {quality = 160;} // push object to results array results_objects[song_id] = { track: track }; results.push(`${year}
${song_name}
${album_name}
${song_artist}
${play_time}