fixes on watch page
This commit is contained in:
@@ -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 = '';
|
||||
|
||||
@@ -98,22 +98,6 @@
|
||||
</div>
|
||||
</section>
|
||||
</main>
|
||||
|
||||
<section class="anime-extra-content">
|
||||
<div class="content-container">
|
||||
<div class="characters-section">
|
||||
<div class="characters-header">
|
||||
<h2>Cast & Characters</h2>
|
||||
<button id="expand-characters-btn" class="expand-btn" data-expanded="false">
|
||||
<span>Show All</span>
|
||||
<svg width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"><path d="M18 15l-6 6-6-6"/></svg>
|
||||
</button>
|
||||
</div>
|
||||
<div id="characters-list" class="characters-carousel">
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</section>
|
||||
</div>
|
||||
|
||||
<script src="../src/scripts/anime/player.js"></script>
|
||||
|
||||
Reference in New Issue
Block a user