diff --git a/lib/invidious/objects/videos.py b/lib/invidious/objects/videos.py index 5374ebd..f5e14b7 100644 --- a/lib/invidious/objects/videos.py +++ b/lib/invidious/objects/videos.py @@ -4,6 +4,8 @@ __all__ = ["Video", "Videos"] +from datetime import datetime + from iapc.tools import localizedString, ListItem, buildUrl from .base import Url, Thumbnails, Item, Items @@ -50,6 +52,15 @@ class Video(Item): def liveNow(self): return self.get("liveNow", False) + @property + def premiereTimestamp(self): + timestamp = self.get("premiereTimestamp", None) + + if not timestamp: + return None + + return datetime.fromtimestamp(timestamp) + @property def label(self): if self.liveNow: @@ -65,10 +76,15 @@ def infos(self): @property def subplot(self): subplot = [localizedString(30053)] - if hasattr(self, "viewCount"): - subplot.append(localizedString(30054)) - if hasattr(self, "published"): - subplot.append(localizedString(30055)) + + if self.premiereTimestamp: + subplot.append(localizedString(30063) + self.premiereTimestamp.strftime("%x %X")) + else: + if hasattr(self, "viewCount"): + subplot.append(localizedString(30054)) + if hasattr(self, "published"): + subplot.append(localizedString(30055) + self.published.strftime("%x %X")) + return "\n".join(subplot) @property @@ -88,6 +104,7 @@ def makeItem(self, path): return ListItem( self.label, path, + isPlayable=not self.isUpcoming, infoLabels={ "video": dict(self.infos, title=self.title, plot=self.plot) }, diff --git a/resources/language/resource.language.de_de/strings.po b/resources/language/resource.language.de_de/strings.po index 8721de9..f3be12d 100644 --- a/resources/language/resource.language.de_de/strings.po +++ b/resources/language/resource.language.de_de/strings.po @@ -129,8 +129,8 @@ msgid "Views: {0.viewCount}" msgstr "Aufrufe: {0.viewCount}" msgctxt "#30055" -msgid "Published: {0.published}" -msgstr "Veröffentlicht: {0.published}" +msgid "Published: " +msgstr "Veröffentlicht: " #msgctxt "#30056" #msgid "{0.title}\n\nChannel: {0.author}" @@ -160,6 +160,10 @@ msgctxt "#30062" msgid "New search" msgstr "Neue Suche" +msgctxt "#30063" +msgid "Premieres: " +msgstr "" + msgctxt "#30099" msgid "More..." msgstr "Mehr..." diff --git a/resources/language/resource.language.en_gb/strings.po b/resources/language/resource.language.en_gb/strings.po index ed39622..1b8e7f3 100644 --- a/resources/language/resource.language.en_gb/strings.po +++ b/resources/language/resource.language.en_gb/strings.po @@ -129,7 +129,7 @@ msgid "Views: {0.viewCount}" msgstr "" msgctxt "#30055" -msgid "Published: {0.published}" +msgid "Published: " msgstr "" #msgctxt "#30056" @@ -160,6 +160,10 @@ msgctxt "#30062" msgid "New search" msgstr "" +msgctxt "#30063" +msgid "Premieres: " +msgstr "" + msgctxt "#30099" msgid "More..." msgstr "" diff --git a/resources/language/resource.language.es_es/strings.po b/resources/language/resource.language.es_es/strings.po index 710c260..23d2b3e 100644 --- a/resources/language/resource.language.es_es/strings.po +++ b/resources/language/resource.language.es_es/strings.po @@ -129,8 +129,8 @@ msgid "Views: {0.viewCount}" msgstr "Reproducciones: {0.viewCount}" msgctxt "#30055" -msgid "Published: {0.published}" -msgstr "Publicado: {0.published}" +msgid "Published: " +msgstr "Publicado: " #msgctxt "#30056" #msgid "{0.title}\n\nChannel: {0.author}" @@ -160,6 +160,10 @@ msgctxt "#30062" msgid "New search" msgstr "Nueva búsqueda" +msgctxt "#30063" +msgid "Premieres: " +msgstr "" + msgctxt "#30099" msgid "More..." msgstr "Más..." diff --git a/resources/language/resource.language.fr_fr/strings.po b/resources/language/resource.language.fr_fr/strings.po index 64716c7..4bd35dd 100644 --- a/resources/language/resource.language.fr_fr/strings.po +++ b/resources/language/resource.language.fr_fr/strings.po @@ -129,8 +129,8 @@ msgid "Views: {0.viewCount}" msgstr "Vues: {0.viewCount}" msgctxt "#30055" -msgid "Published: {0.published}" -msgstr "Publiée le: {0.published}" +msgid "Published: " +msgstr "Publiée le: " #msgctxt "#30056" #msgid "{0.title}\n\nChannel: {0.author}" @@ -160,6 +160,10 @@ msgctxt "#30062" msgid "New search" msgstr "Nouvelle recherche" +msgctxt "#30063" +msgid "Premieres: " +msgstr "" + msgctxt "#30099" msgid "More..." msgstr "Suivant..."