jurialmunkey / skin.arctic.fuse

Other
162 stars 22 forks source link

:sparkles: Season/Series Premiere/Finale indicators #438

Closed Nuklear92 closed 7 months ago

Nuklear92 commented 7 months ago

Skin section

Widgets

Feature description

I think it would be very handy and useful to have something that indicate us the Next Episode in a Mixed Episode List is either the Season Premiere aka First Episode of the Season if it’s a multiple Season TV Show, as well as having a Season Finale indicator to have our mind prepared the Next Episode is the end of the Season.

Why is this feature needed? Please justify and explain.

This comes handy specially when you’re very hooked into a current TV Show and you’re watching Ep. through Ep. Sometimes and it has happened to me prior, that the Next Episode in the case of the screenshots will post below is “The Season Finale” of the Show and without knowing you get to watch the Episode just like any other ones and when it ends you’re like “WTH! That was the Season Finale? And I didn’t even noticed it” specially when most TV Shows nowadays leave big cliffhangers for a Next Season and doesn’t actually feel like an End of a Season.

So, having the skin let us know the Next Episode within a Mixed TV Show Episodes List aka “Your Next Episodes” is Either the Season Finale or Season Premiere. It would be very useful and handy specially when it comes to preparing our minds on how we watch it, how much attention we pay, etc. As First and Last episodes of any TV Shows are the most important and what dictates what’s the Story is about and how the story will end or continue in a returning Season.

Screenshots and Additional Info

The Screenshot below is and example of the official Trakt mobile app. And that’s how it shows within the landscape thumbnail if your Next Episode is the Season Finale or Premiere in a semi transparent and non intrusive text. This is just for you to have an idea of what I mean from my comments above.

IMG_2848

The Screenshot below is how Arctic Fuse shows the same Episodes, just like any other Episode obviously. Without any hints that you’re about to watch the End of a Season or a Pilot/Beginning of the Season. The poorly made arrow and color boxes are just how I think you could implement it based on how it looks in the Trakt mobile app. However, knowing your level of artistic experience you could find a more non intrusive way to display this. IF, of course is possible for you to implement a feature indicator similar to the Trakt app.

IMG_2849

Checklist

xyzfre commented 7 months ago

This feature request sounds like a GREAT idea.

jurialmunkey commented 7 months ago

Premiere is easy (it's just is Episode=1 and then either Season=1 or not) but I don't think that's the main point of this request (just an extra nice to have).

I think the request is probably more about finales, which is much harder to identify because there's no real data I can compare against (total episodes is not relevant because if only 7 episodes have aired theres only 7 episodes total even if it is continuing).

I'm not even sure if TMDb has this data, so I'm not sure I could even use TMDbHelper to get it without an extra lookup to Trakt (which I'm not even sure if the API gives that data either).

BTW - I think it is a great request as I have exactly the same experience just not quite sure how to do it!

Nuklear92 commented 7 months ago

Premiere is easy (it's just is Episode=1 and then either Season=1 or not) but I don't think that's the main point of this request (just an extra nice to have).

I think the request is probably more about finales, which is much harder to identify because there's no real data I can compare against (total episodes is not relevant because if only 7 episodes have aired theres only 7 episodes total even if it is continuing).

I'm not even sure if TMDb has this data, so I'm not sure I could even use TMDbHelper to get it without an extra lookup to Trakt (which I'm not even sure if the API gives that data either).

BTW - I think it is a great request as I have exactly the same experience just not quite sure how to do it!

I know for a fact that they switched to TMDB as their main source of data and info grabbing. So, if they were able to do this relying on TMDB I'm sure it might not be impossible. Although, I know they also get info from IMDb but don't know to what extent. 🤔

Either way, hopefully you could find a way to this somehow eventually if you get sometime to do small research or perhaps if you could get in touch with any Trakt developer, I'm sure they wouldn't be closed to provide some tips on how they were able to come with this feature successfully.

Anyways, I'm pretty sure this won't be anytime soon as it might take some research to determine whether it's possible to implement or not. So, you can leave the issue open until further notice. No rush! 🙂👍

jurialmunkey commented 7 months ago

Yeah trakt switch to using tmdb primarily for the base info/artwork but there's still a fair bit of info that's trakt only - particularly when it comes to the calendar.

I can't see the info on TMDb website anywhere and it's not listed in the API docs so I'm fairly sure it's something set in trakt directly rather than pulled from TMDb.

Yeah I'll sit on it a bit a maybe a good way to handle it will pop into my head!

jurialmunkey commented 7 months ago

Thinking about this more, I don't think it is possible.

It's not possible for items inside the itemlayout to access details from outside the container. So that means TMDbHelper is not an option here to retrieve the details. It has to be based off the details that the item itself provides and I'm not sure if there's anyway to identify a season/series finale other than if the library/plugin in use actually set a custom property to identify it.

It'd be possible outside the list by using TMDbHelper to retrieve the details (e.g. in the ratings line like how rottentomatoes can only be accessed that way) but not inside the list itself as a badge/indicator.

Nuklear92 commented 7 months ago

Thinking about this more, I don't think it is possible.

It's not possible for items inside the itemlayout to access details from outside the container. So that means TMDbHelper is not an option here to retrieve the details. It has to be based off the details that the item itself provides and I'm not sure if there's anyway to identify a season/series finale other than if the library/plugin in use actually set a custom property to identify it.

It'd be possible outside the list by using TMDbHelper to retrieve the details (e.g. in the ratings line like how rottentomatoes can only be accessed that way) but not inside the list itself as a badge/indicator.

Ouch! 😩 well, it's fine though if it can't happen I can live with it. I mean, I thought about making this request for a while but never took the time until now. So, the good thing is you actually seem to had taken some time to think about how to implement this and that's what counts.

You're free to close the issue or who knows maybe keep it in standby for a little longer and perhaps eventually you can think of something without rush. I'm sure you're a very creative person, and if you keep doing your research you might find a workaround of some sort. Or, if you think after a few days later 100% there's no way, then close the issue without notice.

Either way, I'll be around if you end up finding a way or not definitive. 👍

jurialmunkey commented 7 months ago

I'm going to keep it open at least for the moment because I really want this feature now! 🤣

This exact thing happened to me not too long ago when I finished watching Gen V and I literally went "Oh wow Karl Urban is making a cameo! Oh wait, this is the finale?!! Oh crap, I thought I had two more episodes to go!"

Nuklear92 commented 7 months ago

I'm going to keep it open at least for the moment because I really want this feature now! 🤣

This exact thing happened to me not too long ago when I finished watching Gen V and I literally went "Oh wow Karl Urban is making a cameo! Oh wait, this is the finale?!! Oh crap, I thought I had two more episodes to go!"

Hahah! If it wasn't because I watched through Prime Video app, I would've thought the same thing. Older TV Shows from a few years back were more concrete on letting the viewers know even if they wasn't aware that they were watching the "Season Finale" because you can feel a certain behavior with the characters, music theme, etc. Today's TV Shows love to leave big cliffhangers or just finish abruptly in the Season Finale leaving wide open for a continuation. And a lot of the time, unless you're watching through an official streaming app that tells you that Next Episode is the Season Finale. You can easily get fooled into thinking there's more next.

Also, there's a certain way of mental preparation and focus we take when we are aware we are watching the Last Episode of a Season, same as the Pilot aka Season Premiere. And sometimes you kind feel a letdown of some sort if you had no idea you were watching the Last Episode. 😅

For example, the Show Monarch on Apple TV+. And the one example shown in my screenshots here. Idk if you had already watch it or not. But it leaves a big cliffhanger and ends abruptly. So, just in case you may had that one on Queue. I watched through the Apple TV+ App, but I'm pretty sure if I had watched through Kodi I would had the same story as you with Gen V. Because right when it ends, is where me and my brother went "Damn! Now I wanna what comes next". 😂

Nuklear92 commented 7 months ago

@jurialmunkey Oh boy! I just discovered they also do an indicator, for some shows who does Mid-Season Finale just another way of letting users know "Hey, the show will be in pause after this Episode and will resume after a few weeks/months later".

I was binging the Season 2 of Invincible and after I got into Ep.4 I never saw any more Episodes to continue. So, when I checked into Trakt I saw the indicator and went like "Oh! Okay so the rest of the Episodes will be back at some point." If it wasn't for this, I might be like "Dude! But Season 01 was 8 Episodes 😥 and this ended right when it started getting way too good".

I believe, Gen V also had a mid-season break when it was airing. And also, another called "La Brea" from NBC which I'm also watching it had a Mid-Season break but that one I was aware because I read about it somewhere in Twitter aka "X".

This comment is just to ADD on my original comments about this feature, now that I discovered they also have a Mid-Season Finale indicator for those rare shows that go into pause, depending if they started Airing near a month of various Holidays, like December, etc.

Here's a screenshot of the indicator for Mid-Season Finale;

image

jurialmunkey commented 7 months ago

The above addition to TMDbHelper and the skin won't get us all the way there, but at least gets us the episode type status in the plotbox section (should work outside TMDbHelper as well as it is done via the service lookup)

screenshot00382

screenshot00387

Nuklear92 commented 7 months ago

The above addition to TMDbHelper and the skin won't get us all the way there, but at least gets us the episode type status in the plotbox section (should work outside TMDbHelper as well as it is done via the service lookup)

screenshot00382

screenshot00387

Whoa! 😮 I knew you were going to find a way to implement this. Looks great 👍 do you think this can also work for "Mid-Season Finale", like the example in last comment? 🤔

An example you could check with is the Show called Invincible from Prime Video which is currently in a Mid-Season break with the rest of the Episodes returning in March 14th.

Either way, what you have done so far looks great! 😃

jurialmunkey commented 7 months ago

do you think this can also work for "Mid-Season Finale", like the example in last comment

It already does...

https://github.com/jurialmunkey/skin.arctic.fuse/blob/74442f50f2d926711092f1eef071cd7e98b4dd00/1080i/Includes_Labels.xml#L47-L54

Nuklear92 commented 7 months ago

do you think this can also work for "Mid-Season Finale", like the example in last comment

It already does...

https://github.com/jurialmunkey/skin.arctic.fuse/blob/74442f50f2d926711092f1eef071cd7e98b4dd00/1080i/Includes_Labels.xml#L47-L54

Awesome! Very excited for this feature. 😁

You're the best! 👍

jurialmunkey commented 7 months ago

I've also added an optional toggle for a banner overlay but it will only work specifically with TMDbHelper episode calendars (i.e. Your Next Episodes and Trakt Calendar).

I think this is about as far as I can go since I can't change the properties for listitems in library or other addons. However, other addons can be compatible with this skin feature if they add their own ListItem.Property(episode_type)

Skin Settings > Details > Customise Indicators > Premiere / Finale (Calendar)

screenshot00393

JFG1000 commented 7 months ago

Jurial thanks so much for this update it's amazing, can i just ask is the banner toggle the premier/Finale skin setting you have mentioned above?

jurialmunkey commented 7 months ago

Yep that's the one

JFG1000 commented 7 months ago

Thanks mate

adamosborne83 commented 7 months ago

Icing on cake would be ability to change colours for season premier and finale on banner.... thanks also for giving devs the how to adapt their addons, Umbrella already completed this as an update:-)

JFG1000 commented 7 months ago

@jurialmunkey hey mate thankyou for the most recent update, where abouts do I find the colour picker for banners?

jurialmunkey commented 7 months ago

Appearance - highlight colours - custom

vella9 commented 7 months ago

@jurialmunkey hats off as always to your incredible work. Much appreciated. I was just wondering if this is something that can be implemented in AH2? Thank you!

jurialmunkey commented 7 months ago

I am not developing AH2 further.