diff --git a/src/scripts/anime/player.js b/src/scripts/anime/player.js index b486fa3..d9b3309 100644 --- a/src/scripts/anime/player.js +++ b/src/scripts/anime/player.js @@ -80,27 +80,26 @@ async function loadMetadata() { document.getElementById('detail-season').innerText = season && seasonYear ? `${season} ${seasonYear}` : (season || seasonYear || '--'); document.getElementById('detail-cover-image').src = coverImage || '/default-cover.jpg'; - if (Array.isArray(characters) && characters.length > 0) { - populateCharacters(characters, isAnilistFormat); - } - - if (!extName) { - totalEpisodes = episodesCount; - if (totalEpisodes > 0) { - const simpleEpisodes = []; - for (let i = 1; i <= totalEpisodes; i++) { - simpleEpisodes.push({ - number: i, - title: null, - thumbnail: null, - isDub: false - }); - } - populateEpisodeCarousel(simpleEpisodes); - } - } else { - + if (extName) { await loadExtensionEpisodes(); + } else { + if (data.nextAiringEpisode?.episode) { + totalEpisodes = data.nextAiringEpisode.episode - 1; + } else if (data.episodes) { + totalEpisodes = data.episodes; + } else { + totalEpisodes = 12; + } + const simpleEpisodes = []; + for (let i = 1; i <= totalEpisodes; i++) { + simpleEpisodes.push({ + number: i, + title: null, + thumbnail: null, + isDub: false + }); + } + populateEpisodeCarousel(simpleEpisodes); } if (currentEpisode >= totalEpisodes && totalEpisodes > 0) { @@ -136,57 +135,6 @@ async function loadExtensionEpisodes() { } } -function populateCharacters(characters, isAnilistFormat) { - const list = document.getElementById('characters-list'); - list.classList.remove('characters-list'); - list.classList.add('characters-carousel'); - list.innerHTML = ''; - - characters.forEach(item => { - let character, voiceActor; - - if (isAnilistFormat) { - character = item.node; - voiceActor = item.voiceActors?.find(va => va.language === 'Japanese' || va.language === 'English'); - } else { - character = item; - voiceActor = null; - - } - - if (!character) return; - - const card = document.createElement('div'); - card.classList.add('character-card'); - - const img = document.createElement('img'); - img.classList.add('character-card-img'); - img.src = character.image?.large || character.image?.medium || character.image || ''; - img.alt = character.name?.full || 'Character'; - - const details = document.createElement('div'); - details.classList.add('character-details'); - - const name = document.createElement('p'); - name.classList.add('character-name'); - name.innerText = character.name?.full || character.name || '--'; - - const actor = document.createElement('p'); - actor.classList.add('actor-name'); - if (voiceActor?.name?.full) { - actor.innerText = `${voiceActor.name.full} (${voiceActor.language})`; - } else { - actor.innerText = 'Voice Actor: N/A'; - } - - details.appendChild(name); - details.appendChild(actor); - card.appendChild(img); - card.appendChild(details); - list.appendChild(card); - }); -} - function populateEpisodeCarousel(episodesData) { const carousel = document.getElementById('episode-carousel'); carousel.innerHTML = ''; diff --git a/views/watch.html b/views/watch.html index 25d6481..a25473b 100644 --- a/views/watch.html +++ b/views/watch.html @@ -98,22 +98,6 @@ - -
-
-
-
-

Cast & Characters

- -
- -
-
-