Fix: Background height on only one row of posters

pull/16/head
Juraj Nyíri 3 years ago
parent 6f86fc68be
commit 6c440fa746

@ -20043,6 +20043,7 @@ class PlexMeetsHomeAssistant extends HTMLElement {
this.error = `Plex server did not respond.<br/>Details of the error: ${escapeHtml(err.message)}`; this.error = `Plex server did not respond.<br/>Details of the error: ${escapeHtml(err.message)}`;
this.renderPage(); this.renderPage();
} }
this.resizeBackground();
}; };
this.render = () => { this.render = () => {
this.previousPositions = []; this.previousPositions = [];
@ -20844,22 +20845,27 @@ class PlexMeetsHomeAssistant extends HTMLElement {
} }
}; };
this.resizeBackground = () => { this.resizeBackground = () => {
console.log('resizeBackground');
if (this.seasonsElem && this.episodesElem && this.card) { if (this.seasonsElem && this.episodesElem && this.card) {
const contentbg = this.getElementsByClassName('contentbg')[0]; const contentbg = this.getElementsByClassName('contentbg')[0];
if (this.contentBGHeight === 0) {
this.contentBGHeight = getHeight(contentbg); this.contentBGHeight = getHeight(contentbg);
} console.log(contentbg);
console.log(this.contentBGHeight);
const requiredSeasonBodyHeight = parseInt(this.seasonsElem.style.top.replace('px', ''), 10) + this.seasonsElem.scrollHeight; const requiredSeasonBodyHeight = parseInt(this.seasonsElem.style.top.replace('px', ''), 10) + this.seasonsElem.scrollHeight;
const requiredEpisodeBodyHeight = parseInt(this.episodesElem.style.top.replace('px', ''), 10) + this.episodesElem.scrollHeight; const requiredEpisodeBodyHeight = parseInt(this.episodesElem.style.top.replace('px', ''), 10) + this.episodesElem.scrollHeight;
if (requiredSeasonBodyHeight > this.contentBGHeight && !this.seasonsElemHidden) { if (requiredSeasonBodyHeight > this.contentBGHeight && !this.seasonsElemHidden) {
console.log('1');
this.card.style.height = `${requiredSeasonBodyHeight + 16}px`; this.card.style.height = `${requiredSeasonBodyHeight + 16}px`;
} }
else if (requiredEpisodeBodyHeight > this.contentBGHeight && !this.episodesElemHidden) { else if (requiredEpisodeBodyHeight > this.contentBGHeight && !this.episodesElemHidden) {
console.log('2');
this.card.style.height = `${requiredEpisodeBodyHeight + 16}px`; this.card.style.height = `${requiredEpisodeBodyHeight + 16}px`;
} }
else { else {
console.log('3');
this.card.style.height = '100%'; this.card.style.height = '100%';
} }
console.log(getHeight(contentbg));
} }
}; };
this.showBackground = () => { this.showBackground = () => {

@ -236,6 +236,8 @@ class PlexMeetsHomeAssistant extends HTMLElement {
this.error = `Plex server did not respond.<br/>Details of the error: ${escapeHtml(err.message)}`; this.error = `Plex server did not respond.<br/>Details of the error: ${escapeHtml(err.message)}`;
this.renderPage(); this.renderPage();
} }
this.resizeBackground();
}; };
render = (): void => { render = (): void => {
@ -1135,23 +1137,28 @@ class PlexMeetsHomeAssistant extends HTMLElement {
}; };
resizeBackground = (): void => { resizeBackground = (): void => {
console.log('resizeBackground');
if (this.seasonsElem && this.episodesElem && this.card) { if (this.seasonsElem && this.episodesElem && this.card) {
const contentbg = this.getElementsByClassName('contentbg')[0] as HTMLElement; const contentbg = this.getElementsByClassName('contentbg')[0] as HTMLElement;
if (this.contentBGHeight === 0) {
this.contentBGHeight = getHeight(contentbg); this.contentBGHeight = getHeight(contentbg);
} console.log(contentbg);
console.log(this.contentBGHeight);
const requiredSeasonBodyHeight = const requiredSeasonBodyHeight =
parseInt(this.seasonsElem.style.top.replace('px', ''), 10) + this.seasonsElem.scrollHeight; parseInt(this.seasonsElem.style.top.replace('px', ''), 10) + this.seasonsElem.scrollHeight;
const requiredEpisodeBodyHeight = const requiredEpisodeBodyHeight =
parseInt(this.episodesElem.style.top.replace('px', ''), 10) + this.episodesElem.scrollHeight; parseInt(this.episodesElem.style.top.replace('px', ''), 10) + this.episodesElem.scrollHeight;
if (requiredSeasonBodyHeight > this.contentBGHeight && !this.seasonsElemHidden) { if (requiredSeasonBodyHeight > this.contentBGHeight && !this.seasonsElemHidden) {
console.log('1');
this.card.style.height = `${requiredSeasonBodyHeight + 16}px`; this.card.style.height = `${requiredSeasonBodyHeight + 16}px`;
} else if (requiredEpisodeBodyHeight > this.contentBGHeight && !this.episodesElemHidden) { } else if (requiredEpisodeBodyHeight > this.contentBGHeight && !this.episodesElemHidden) {
console.log('2');
this.card.style.height = `${requiredEpisodeBodyHeight + 16}px`; this.card.style.height = `${requiredEpisodeBodyHeight + 16}px`;
} else { } else {
console.log('3');
this.card.style.height = '100%'; this.card.style.height = '100%';
} }
console.log(getHeight(contentbg));
} }
}; };

Loading…
Cancel
Save