From 9e0d00959791f8a89f2b35851da36e0ba2d4a993 Mon Sep 17 00:00:00 2001 From: Kyle Johnson Date: Wed, 10 Apr 2024 17:24:32 -0400 Subject: [PATCH 1/4] [script.artistslideshow] v3.3.7 added support for fourth theAudioDB image --- script.artistslideshow/addon.xml | 19 +++++++++---------- script.artistslideshow/changelog.txt | 3 +++ .../resource.language.ar_sa/strings.po | 4 ++-- .../resource.language.en_au/strings.po | 13 ++++++------- .../resource.language.en_nz/strings.po | 13 ++++++------- .../resource.language.en_us/strings.po | 13 ++++++------- .../resource.language.es_es/strings.po | 6 +++--- .../resource.language.fa_af/strings.po | 2 +- .../resource.language.fr_ca/strings.po | 13 ++++++------- .../resource.language.he_il/strings.po | 4 ++-- .../resource.language.pt_pt/strings.po | 4 ++-- .../resource.language.ru_ru/strings.po | 10 +++++----- .../resources/plugins/theaudiodb.py | 2 +- 13 files changed, 52 insertions(+), 54 deletions(-) diff --git a/script.artistslideshow/addon.xml b/script.artistslideshow/addon.xml index 88e84b09c..2dd8793f8 100644 --- a/script.artistslideshow/addon.xml +++ b/script.artistslideshow/addon.xml @@ -1,4 +1,4 @@ - + @@ -10,9 +10,8 @@ -v.3.3.6 -- fix to allow blank as illegal replace character in Nexus -- updated language files +v.3.3.7 +- fix to get fourth artwork from theAudioDB icon.png @@ -23,7 +22,6 @@ v.3.3.6 https://kodi.wiki/index.php?title=Add-on:Artist_Slideshow artistslideshow.xbmc@gmail.com https://github.com/pkscout/script.artistslideshow - حمل المزيد من الصور والمعلومات عن الفنان الذى يُغنِى حالياً Сваля изображения и допълнителна инф. за изпълнителя на текущата песен Descàrrega imatges i informació addicional de l'artista que s'està reproduint Download billeder og ekstra info om kunstneren, der spiller i øjeblikket @@ -31,6 +29,8 @@ v.3.3.6 Κατεβάστε εικόνες και επιπλέον πληροφορίες του τρέχοντος καλλιτέχνη Download images and additional info of the currently playing artist Download images and additional info of the currently playing artist + Download images and additional info of the currently playing artist + Download images and additional info of the currently playing artist Download images and additional info of the currently playing artist Bajá imágenes e información adicional sobre el artista Descarga imágenes e información adicional del intérprete que esté sonando @@ -38,9 +38,9 @@ v.3.3.6 Lae alla pilte ja lisateavet hetkel mängiva esitaja kohta Noutaa kuvia ja lisätietoja parhaillaan toistettavasta esittäjästä Télécharger des images et des infos additionnelles sur l'artiste écouté + Télécharger des images et des infos additionnelles sur l'artiste écouté Télécharger les images et les informations additionnelles de l'artiste en cours de lecture Descarga imaxes e info. adicional do artista que está a soar - הורד תמונות ומידע נוסף על האמן המושמע כעת Preuzimite slike i dodatne informacije o trenutno reproduciranom izvođaču Képeket és kiegészítő információkat tölt le a jelenleg játszott előadóról Scarica immagini e informazioni aggiuntive dell'artista attualmente in riproduzione @@ -50,13 +50,11 @@ v.3.3.6 Downloaden van afbeeldingen en extra informatie van te horen artiest Pobieraj obrazy i dodatkowe informacje o aktualnie odtwarzanym wykonawcy Transferência de imagens e informações adicionais de artistas que estejam sendo reproduzidos - Transferir imagens e info adicional do artista em reprodução agora Загружает изображения и дополнительную информацию об исполнителе, который воспроизводится в данный момент Stiahnuť obrázky a dodatočné informácie o práve hrajúcich interpretoch Naložite slike in dodatne informacije, za trenutno predvajanega izvajalca Ladda ner bilder samt ytterligare information om den spelade artisten 下载当前播放艺人的图片和附加信息 - ملحق يساعدك على تَنِزِيل صور ومعلومات إضافيه عن الفنان الذى تستمع اليه حالياً من موقع fanart.tv و theaudiodb.com. كما يمكنك جعل جلد واجهتك الحالى يستخدم كل ما سبق ﻹنشاء عروض شرائح للفنان الذى تستمع إليه Добавката сваля картинки и допълнителна информация от www.fanart.tv и www.theaudiodb.com за изпълнителя който звучи в момента. Картинките, заедно с фанарт изображенията на изпълнителя, може да се ползват от облика, за създаването на слайдшоу за изпълнителя, който звучи в момента. Complement per descarregar imatges i informació addicional de fanart.tv i theaudiodb.com de l'artista que s'està reproduint. Les imatges, juntament amb les imatges locals d'artistes, i la informació, pot ser utilitzada per la pell per crear una presentació de diapositives per a l'artista que s'està escoltant. Add-on til at downloade billeder og yderligere information fra fanart.tv og theaudiodb.com af den aktuelt afspillede kunstner. Billederne kan sammen med lokale kunstneres billeder og info bruges af dit skin til at skabe et diasshow for kunstneren, der lyttes til. @@ -64,15 +62,17 @@ v.3.3.6 Πρόσθετο για τη λήψη εικόνων και επιπλέον πληροφοριών από το fanart.tv και το theaudiodb.com για τον τρέχοντα καλλιτέχνη. Οι εικόνες, μαζί με τοπικές εικόνες του καλλιτέχνη καθώς και πληροφορίες, μπορούν να χρησιμοποιηθούν από το κέλυφος για τη δημιουργία παρουσιάσεων διαφανειών του καλλιτέχνη η μουσική του οποίου ακούγεται. Addon to download images and additional information from fanart.tv and theaudiodb.com of the currently playing artist. The images, along with local artists' images, and info can be used by the skin to create a slideshow for the artist being listened to. Addon to download images and additional information from fanart.tv and theaudiodb.com of the currently playing artist. The images, along with local artists' images, and info can be used by the skin to create a slideshow for the artist being listened to. + Addon to download images and additional information from fanart.tv and theaudiodb.com of the currently playing artist. The images, along with local artists' images, and info can be used by the skin to create a slideshow for the artist being listened to. + Addon to download images and additional information from fanart.tv and theaudiodb.com of the currently playing artist. The images, along with local artists' images, and info can be used by the skin to create a slideshow for the artist being listened to. Addon to download images and additional information from fanart.tv and theaudiodb.com of the currently playing artist. The images, along with local artists' images, and info can be used by the skin to create a slideshow for the artist being listened to. Addon para descargar imágenes e información adicional de fanart.tv y theaudiodb.com del intérprete que se está reproduciendo. Las imágenes, junto con imágenes de intérpretes locales, y la información puede ser utilizada por la piel para crear una presentación de diapositivas para el intérprete que se está escuchando. Complemento para descargar imágenes e información adicional de fanart.tv y theaudiodb.com del artista actualmente en reproducción. Las imágenes, junto con las imágenes e información locales de los artistas pueden ser utilizados por la máscara para crear una presentación del artista que estés escuchando. Lisamoodul, millega saab alla laadida pilte ja lisateavet fanart.tv ja theaudiodb.com saitidelt hetkel mängiva esitaja kohta. Koos meediakogus leiduvate esitajate piltide ja teabega saab rüü neid kasutada kuulatava esitaja slaidiseansi loomiseks. Lisäosa parhaillaan kuunneltavan esittäjän kuvien ja tietojen noutoon mm. Fanart.tv- ja TheAudioDB.com-palveluista. Ulkoasut voivat luoda kuvaesityksiä kuunneltavasta esittäjästä käyttäen näitä tietoja ja esittäjien paikallisia kuvia. Addiciel pour télécharger des images et des informations additionnelles sur fanart.tv et theaudiodb.com de l'artiste en cours d'écoute. Les images, ainsi que les images locales de l'artiste, et les infos peuvent être utilisées par l'habillage pour créer un diaporama pour l'artiste en cours d'écoute. + Addiciel pour télécharger des images et des informations additionnelles sur fanart.tv et theaudiodb.com de l'artiste en cours d'écoute. Les images, ainsi que les images locales de l'artiste, et les infos peuvent être utilisées par l'habillage pour créer un diaporama pour l'artiste en cours d'écoute. Extension permettant de télécharger des images et des informations supplémentaires depuis fanart.tv et depuis theaudiodb.com de l'artiste en cours d'écoute. Les images téléchargées, les images locales des artistes et les informations peuvent être utilisées par le skin pour créer un diaporama pour l'artiste écouté. Complemento para descargar imaxes e información adicional de fanart.tv e theaudiodb.com do artista que está a soar. Estas imaxes, xunto cas do artista gardadas en local e a información pódeas usar o tema para crear unha presentación. - הרחבה להורדת תמונות ומידע נוסף על האמן המושמע כעת מ-fanart.tv ו- theaudiodb.com. התמונות, בנוסף לתמונות אמנים מקומיות והמידע על אמן יכולים לשמש את המעטפת ליצירת מצגת עבור האמן המושמע כעת. Dodatak za preuzimanje slika i dodatnih informacije trenutno reproduciranog izvođača s fanart.tv, theaudiodb.com i theaudiodb.com. Slike, zajedno s lokalnim slikama izvođača i informacijama mogu se koristiti s presvlakom za stvaranje slikovne prezentacije izvođača koji se sluša. A Kiegészítő letölt képeket és infromációkat a fanart.tv és theaudiodb.com oldalakról az éppen hallgatott előadóhoz. A képek a helyben tárolt képekkel együtt felhasználhatóak a Felszín által diavetítéshez. Add-on per scaricare immagini ed informazioni aggiuntive da fanart.tv e theaudiodb.com sull'artista attualmente in riproduzione. Le immagini possono essere usate dalla skin, insieme a quelle locali, per creare una presentazione per l'artista che si sta ascoltando. @@ -81,7 +81,6 @@ v.3.3.6 Add-on om afbeeldingen en bijkomende informatie van Fanart.tv en theaudiodb.com van de te horen artiest binnen te halen. de afbeeldingen, net als de lokaal aanwezige artiest-afbeeldingen en -info kunnen gebruikt worden door de skin om een diashow te tonen van de artiest di nu beluisterd wordt. Wtyczka pobiera obrazy i dodatkowe informacje z fanart.tv oraz theaudiodb.com o aktualnie odtwarzanym wykonawcy. Obrazami wraz z informacjami o wykonawcach, mogą być wykorzystywane przez skórę do tworzenia pokazu slajdów wykonawcy, którego aktualnie słuchasz. Addon para download de imagens e informações adicionais do artista que está sendo reproduzido provido por fanart.tv e theaudiodb. Tais dados e imagens serão usados pelas skins para criarem um slideshow dos artistas quando estivermos escutando-os. - Um add-on para transferir imagens e informação adicional do artista em reprodução no momento, a partir de fanart.tv e theaudiodb.com. As imagens e a informação, assim como as imagens locais dos artistas, podem ser usadas pelo tema para criar uma apresentação de slides do artista em escuta no momento. Дополнение для загрузки изображений и дополнительной информации о воспроизводимом исполнителе с ресурсов fanart.tv and theaudiodb.com. Загруженные изображения и доп. информация, наравне с локальными, могут быть использованы для создания слайд-шоу во время прослушивания композиций. Dodatek za prenos slik in dodatnih informacij iz fanart.tv in theaudiodb.com za trenutno predvajanega izvajalca. Slike, skupaj z lokalnimi slikami izvajalcev ter informacije, se lahko uporabljajo s preobleko za ustvarjanje diaprojekcije slik izvajalca, ki ga trenutno poslušate. Tillägg för att ladda ner bilder och tilläggsinformation från fanart.tv och theaudiodb.com om artisten som spelas för tillfället. Bilderna, tillsammans med lokala artistbilder och information, kan användas av skinnet för att skapa ett bildspel av artisten man lyssnar på. diff --git a/script.artistslideshow/changelog.txt b/script.artistslideshow/changelog.txt index 3cbd86792..a7da1ba19 100644 --- a/script.artistslideshow/changelog.txt +++ b/script.artistslideshow/changelog.txt @@ -1,3 +1,6 @@ +v.3.3.7 +- fix to get fourth artwork from theAudioDB + v.3.3.6 - fix to allow blank as illegal replace character in Nexus - updated language files diff --git a/script.artistslideshow/resources/language/resource.language.ar_sa/strings.po b/script.artistslideshow/resources/language/resource.language.ar_sa/strings.po index 9424b0537..c6f808ec1 100644 --- a/script.artistslideshow/resources/language/resource.language.ar_sa/strings.po +++ b/script.artistslideshow/resources/language/resource.language.ar_sa/strings.po @@ -19,11 +19,11 @@ msgstr "" msgctxt "Addon Summary" msgid "Download images and additional info of the currently playing artist" -msgstr "حمل المزيد من الصور والمعلومات عن الفنان الذى يُغنِى حالياً" +msgstr "" msgctxt "Addon Description" msgid "Addon to download images and additional information from fanart.tv and theaudiodb.com of the currently playing artist. The images, along with local artists' images, and info can be used by the skin to create a slideshow for the artist being listened to." -msgstr "ملحق يساعدك على تَنِزِيل صور ومعلومات إضافيه عن الفنان الذى تستمع اليه حالياً من موقع fanart.tv و theaudiodb.com. كما يمكنك جعل جلد واجهتك الحالى يستخدم كل ما سبق ﻹنشاء عروض شرائح للفنان الذى تستمع إليه" +msgstr "" # Section Headings msgctxt "#32000" diff --git a/script.artistslideshow/resources/language/resource.language.en_au/strings.po b/script.artistslideshow/resources/language/resource.language.en_au/strings.po index 6ddd720ed..ecb83b557 100644 --- a/script.artistslideshow/resources/language/resource.language.en_au/strings.po +++ b/script.artistslideshow/resources/language/resource.language.en_au/strings.po @@ -7,15 +7,14 @@ msgstr "" "Project-Id-Version: XBMC Addons\n" "Report-Msgid-Bugs-To: alanwww1@xbmc.org\n" "POT-Creation-Date: YEAR-MO-DA HO:MI+ZONE\n" -"PO-Revision-Date: 2022-03-09 14:05+0000\n" -"Last-Translator: Christian Gade \n" -"Language-Team: English (Australia) \n" -"Language: en_au\n" +"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" +"Last-Translator: Automatically generated\n" +"Language-Team: none\n" +"Language: en_AU\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=n != 1;\n" -"X-Generator: Weblate 4.11.2\n" msgctxt "Addon Summary" msgid "Download images and additional info of the currently playing artist" @@ -130,7 +129,7 @@ msgstr "" msgctxt "#32119" msgid "Enable debug logging" -msgstr "Enable debug logging" +msgstr "" msgctxt "#32120" msgid "Disable secondary and featured artist images" @@ -248,7 +247,7 @@ msgstr "" msgctxt "#32202" msgid "Error" -msgstr "Error" +msgstr "" msgctxt "#32203" msgid "Progress" diff --git a/script.artistslideshow/resources/language/resource.language.en_nz/strings.po b/script.artistslideshow/resources/language/resource.language.en_nz/strings.po index d7462ed26..7a35e0557 100644 --- a/script.artistslideshow/resources/language/resource.language.en_nz/strings.po +++ b/script.artistslideshow/resources/language/resource.language.en_nz/strings.po @@ -7,15 +7,14 @@ msgstr "" "Project-Id-Version: XBMC Addons\n" "Report-Msgid-Bugs-To: alanwww1@xbmc.org\n" "POT-Creation-Date: YEAR-MO-DA HO:MI+ZONE\n" -"PO-Revision-Date: 2022-03-09 14:05+0000\n" -"Last-Translator: Christian Gade \n" -"Language-Team: English (New Zealand) \n" -"Language: en_nz\n" +"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" +"Last-Translator: Automatically generated\n" +"Language-Team: none\n" +"Language: en_NZ\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=n != 1;\n" -"X-Generator: Weblate 4.11.2\n" msgctxt "Addon Summary" msgid "Download images and additional info of the currently playing artist" @@ -130,7 +129,7 @@ msgstr "" msgctxt "#32119" msgid "Enable debug logging" -msgstr "Enable debug logging" +msgstr "" msgctxt "#32120" msgid "Disable secondary and featured artist images" @@ -248,7 +247,7 @@ msgstr "" msgctxt "#32202" msgid "Error" -msgstr "Error" +msgstr "" msgctxt "#32203" msgid "Progress" diff --git a/script.artistslideshow/resources/language/resource.language.en_us/strings.po b/script.artistslideshow/resources/language/resource.language.en_us/strings.po index 077143fd2..bcdb25bc2 100644 --- a/script.artistslideshow/resources/language/resource.language.en_us/strings.po +++ b/script.artistslideshow/resources/language/resource.language.en_us/strings.po @@ -7,15 +7,14 @@ msgstr "" "Project-Id-Version: XBMC Addons\n" "Report-Msgid-Bugs-To: alanwww1@xbmc.org\n" "POT-Creation-Date: YEAR-MO-DA HO:MI+ZONE\n" -"PO-Revision-Date: 2022-03-11 00:15+0000\n" -"Last-Translator: Christian Gade \n" -"Language-Team: English (United States) \n" -"Language: en_us\n" +"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" +"Last-Translator: Automatically generated\n" +"Language-Team: none\n" +"Language: en_US\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=n != 1;\n" -"X-Generator: Weblate 4.11.2\n" msgctxt "Addon Summary" msgid "Download images and additional info of the currently playing artist" @@ -130,7 +129,7 @@ msgstr "" msgctxt "#32119" msgid "Enable debug logging" -msgstr "Enable debug logging" +msgstr "" msgctxt "#32120" msgid "Disable secondary and featured artist images" @@ -248,7 +247,7 @@ msgstr "" msgctxt "#32202" msgid "Error" -msgstr "Error" +msgstr "" msgctxt "#32203" msgid "Progress" diff --git a/script.artistslideshow/resources/language/resource.language.es_es/strings.po b/script.artistslideshow/resources/language/resource.language.es_es/strings.po index 8d2fe60f5..dfd4d710c 100644 --- a/script.artistslideshow/resources/language/resource.language.es_es/strings.po +++ b/script.artistslideshow/resources/language/resource.language.es_es/strings.po @@ -7,7 +7,7 @@ msgstr "" "Project-Id-Version: XBMC Addons\n" "Report-Msgid-Bugs-To: translations@kodi.tv\n" "POT-Creation-Date: YEAR-MO-DA HO:MI+ZONE\n" -"PO-Revision-Date: 2023-02-27 11:31+0000\n" +"PO-Revision-Date: 2024-01-07 00:13+0000\n" "Last-Translator: José Antonio Alvarado \n" "Language-Team: Spanish (Spain) \n" "Language: es_es\n" @@ -15,7 +15,7 @@ msgstr "" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=n != 1;\n" -"X-Generator: Weblate 4.15.2\n" +"X-Generator: Weblate 5.3\n" msgctxt "Addon Summary" msgid "Download images and additional info of the currently playing artist" @@ -230,7 +230,7 @@ msgstr "Solo mostrar notificación si hay imágenes para descargar" msgctxt "#32144" msgid "Use more agressive artist search for streams" -msgstr "Usar una búsqueda de intérpretes más agresiva para streams" +msgstr "Utilizar una búsqueda de artistas más agresiva para las transmisiones" msgctxt "#32145" msgid "Pause slideshow on playback pause" diff --git a/script.artistslideshow/resources/language/resource.language.fa_af/strings.po b/script.artistslideshow/resources/language/resource.language.fa_af/strings.po index 51d9a0013..0bb7b32b3 100644 --- a/script.artistslideshow/resources/language/resource.language.fa_af/strings.po +++ b/script.artistslideshow/resources/language/resource.language.fa_af/strings.po @@ -10,7 +10,7 @@ msgstr "" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: Automatically generated\n" "Language-Team: none\n" -"Language: fa_af\n" +"Language: fa_AF\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" diff --git a/script.artistslideshow/resources/language/resource.language.fr_ca/strings.po b/script.artistslideshow/resources/language/resource.language.fr_ca/strings.po index efbb96595..3186f38be 100644 --- a/script.artistslideshow/resources/language/resource.language.fr_ca/strings.po +++ b/script.artistslideshow/resources/language/resource.language.fr_ca/strings.po @@ -7,15 +7,14 @@ msgstr "" "Project-Id-Version: XBMC Addons\n" "Report-Msgid-Bugs-To: alanwww1@xbmc.org\n" "POT-Creation-Date: YEAR-MO-DA HO:MI+ZONE\n" -"PO-Revision-Date: 2022-03-17 10:13+0000\n" -"Last-Translator: Christian Gade \n" -"Language-Team: French (Canada) \n" -"Language: fr_ca\n" +"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" +"Last-Translator: Automatically generated\n" +"Language-Team: none\n" +"Language: fr_CA\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=n > 1;\n" -"X-Generator: Weblate 4.11.2\n" msgctxt "Addon Summary" msgid "Download images and additional info of the currently playing artist" @@ -130,7 +129,7 @@ msgstr "" msgctxt "#32119" msgid "Enable debug logging" -msgstr "Activer la journalisation de débogage" +msgstr "" msgctxt "#32120" msgid "Disable secondary and featured artist images" @@ -248,7 +247,7 @@ msgstr "" msgctxt "#32202" msgid "Error" -msgstr "Erreur" +msgstr "" msgctxt "#32203" msgid "Progress" diff --git a/script.artistslideshow/resources/language/resource.language.he_il/strings.po b/script.artistslideshow/resources/language/resource.language.he_il/strings.po index 29ac6d112..a0b61bdcc 100644 --- a/script.artistslideshow/resources/language/resource.language.he_il/strings.po +++ b/script.artistslideshow/resources/language/resource.language.he_il/strings.po @@ -19,11 +19,11 @@ msgstr "" msgctxt "Addon Summary" msgid "Download images and additional info of the currently playing artist" -msgstr "הורד תמונות ומידע נוסף על האמן המושמע כעת" +msgstr "" msgctxt "Addon Description" msgid "Addon to download images and additional information from fanart.tv and theaudiodb.com of the currently playing artist. The images, along with local artists' images, and info can be used by the skin to create a slideshow for the artist being listened to." -msgstr "הרחבה להורדת תמונות ומידע נוסף על האמן המושמע כעת מ-fanart.tv ו- theaudiodb.com. התמונות, בנוסף לתמונות אמנים מקומיות והמידע על אמן יכולים לשמש את המעטפת ליצירת מצגת עבור האמן המושמע כעת." +msgstr "" # Section Headings msgctxt "#32000" diff --git a/script.artistslideshow/resources/language/resource.language.pt_pt/strings.po b/script.artistslideshow/resources/language/resource.language.pt_pt/strings.po index 20952974e..dc8b71135 100644 --- a/script.artistslideshow/resources/language/resource.language.pt_pt/strings.po +++ b/script.artistslideshow/resources/language/resource.language.pt_pt/strings.po @@ -19,11 +19,11 @@ msgstr "" msgctxt "Addon Summary" msgid "Download images and additional info of the currently playing artist" -msgstr "Transferir imagens e info adicional do artista em reprodução agora" +msgstr "" msgctxt "Addon Description" msgid "Addon to download images and additional information from fanart.tv and theaudiodb.com of the currently playing artist. The images, along with local artists' images, and info can be used by the skin to create a slideshow for the artist being listened to." -msgstr "Um add-on para transferir imagens e informação adicional do artista em reprodução no momento, a partir de fanart.tv e theaudiodb.com. As imagens e a informação, assim como as imagens locais dos artistas, podem ser usadas pelo tema para criar uma apresentação de slides do artista em escuta no momento." +msgstr "" # Section Headings msgctxt "#32000" diff --git a/script.artistslideshow/resources/language/resource.language.ru_ru/strings.po b/script.artistslideshow/resources/language/resource.language.ru_ru/strings.po index 521ed185a..adbb9f4ef 100644 --- a/script.artistslideshow/resources/language/resource.language.ru_ru/strings.po +++ b/script.artistslideshow/resources/language/resource.language.ru_ru/strings.po @@ -7,15 +7,15 @@ msgstr "" "Project-Id-Version: XBMC Addons\n" "Report-Msgid-Bugs-To: translations@kodi.tv\n" "POT-Creation-Date: YEAR-MO-DA HO:MI+ZONE\n" -"PO-Revision-Date: 2023-04-25 18:16+0000\n" -"Last-Translator: vgbsd \n" +"PO-Revision-Date: 2024-02-29 09:13+0000\n" +"Last-Translator: Alexey \n" "Language-Team: Russian \n" "Language: ru_ru\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=3; plural=n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\n" -"X-Generator: Weblate 4.15.2\n" +"X-Generator: Weblate 5.4\n" msgctxt "Addon Summary" msgid "Download images and additional info of the currently playing artist" @@ -102,7 +102,7 @@ msgstr "Использовать резервное слайд-шоу" msgctxt "#32112" msgid "Use override slideshow" -msgstr "" +msgstr "Использовать переопределение слайд-шоу" msgctxt "#32113" msgid "Custom location" @@ -234,7 +234,7 @@ msgstr "Использовать более интенсивный поиск и msgctxt "#32145" msgid "Pause slideshow on playback pause" -msgstr "" +msgstr "Приостановка слайд-шоу на паузу при воспроизведении" # empty strings from id 32145 to 32199 # Dialog headings diff --git a/script.artistslideshow/resources/plugins/theaudiodb.py b/script.artistslideshow/resources/plugins/theaudiodb.py index 77c68317f..54c37ed08 100644 --- a/script.artistslideshow/resources/plugins/theaudiodb.py +++ b/script.artistslideshow/resources/plugins/theaudiodb.py @@ -99,7 +99,7 @@ def getImageList(self, img_params): if json_data: artist = json_data.get('artists') if artist is not None: - for count in range(3): + for count in range(4): if count == 0: num = '' else: From b3d5f0004b4d422d31b9d1930c688acd124efbcf Mon Sep 17 00:00:00 2001 From: bossanova808 Date: Thu, 18 Apr 2024 22:29:42 +0000 Subject: [PATCH 2/4] [script.service.playbackresumer] 2.0.6 --- script.service.playbackresumer/addon.xml | 6 +- script.service.playbackresumer/changelog.txt | 4 + .../resources/lib/common.py | 72 ++++++++++++------ .../resources/lib/player.py | 73 +++++++++++++------ .../resources/lib/store.py | 13 ++-- 5 files changed, 110 insertions(+), 58 deletions(-) diff --git a/script.service.playbackresumer/addon.xml b/script.service.playbackresumer/addon.xml index 0e85d60b6..aaa1fde08 100644 --- a/script.service.playbackresumer/addon.xml +++ b/script.service.playbackresumer/addon.xml @@ -1,5 +1,5 @@ - + @@ -15,9 +15,7 @@ https://github.com/bossanova808/script.service.playbackresumer https://forum.kodi.tv/showthread.php?tid=355383 bossanova808@gmail.com - v2.0.5 - - Fix odd reported bug with resume points - + v2.0.6 - Add support for non-library videos icon.png diff --git a/script.service.playbackresumer/changelog.txt b/script.service.playbackresumer/changelog.txt index a92f823fd..916709d3e 100644 --- a/script.service.playbackresumer/changelog.txt +++ b/script.service.playbackresumer/changelog.txt @@ -1,3 +1,7 @@ +v2.0.6 + +- Add support for non library videos + v2.0.5 - Fix wierd bug with resume points: https://forum.kodi.tv/showthread.php?tid=355383&pid=3163480#pid3163480 diff --git a/script.service.playbackresumer/resources/lib/common.py b/script.service.playbackresumer/resources/lib/common.py index 8e75b7b50..6e7b9f1de 100644 --- a/script.service.playbackresumer/resources/lib/common.py +++ b/script.service.playbackresumer/resources/lib/common.py @@ -1,11 +1,23 @@ # -*- coding: utf-8 -*- + """ -Handy utility functions for Kodi Addons -By bossanova808 -Free in all senses.... -VERSION 0.2.3 2021-06-21 -(For Kodi Matrix & later) + +Handy utility functions & constants for Kodi Addons +For Kodi Matrix & later +By bossanova808 - freely released +VERSION 0.2.7 2024-04-19 + +Changelog: +0.2.7 - Fix getting the major Kodi version (& change float -> int), as it was failing on e.g. 'RC' being in the string apparently +0.2.6 - (SkinPatcher) - add float KODI_VERSION_FLOAT constant, alongside string KODI_VERSION +0.2.5 - (Skin) - move to storing copy of latest in bossanova808 repo and adding this mini changelog + +For latest version - ALWAYS COPY BACK ANY CHANGES, plus do changelog, and a version & date bump above: +https://github.com/bossanova808/repository.bossanova808/blob/main/latest-common/common.py + + """ + import sys import traceback @@ -13,6 +25,8 @@ import xbmcvfs import xbmcgui import xbmcaddon +import json + ADDON = xbmcaddon.Addon() ADDON_NAME = ADDON.getAddonInfo('name') @@ -25,6 +39,7 @@ LANGUAGE = ADDON.getLocalizedString PROFILE = xbmcvfs.translatePath(ADDON.getAddonInfo('profile')) KODI_VERSION = xbmc.getInfoLabel('System.BuildVersion') +KODI_VERSION_INT = int(KODI_VERSION.split(".")[0]) USER_AGENT = "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/78.0.3904.108 Safari/537.36" HOME_WINDOW = xbmcgui.Window(10000) WEATHER_WINDOW = xbmcgui.Window(12600) @@ -49,6 +64,8 @@ """ unit_testing = False + +# Testing outside of Kodi if not xbmc.getUserAgent(): xbmc = None @@ -63,6 +80,7 @@ def log(message, exception_instance=None, level=None): print(f'EXCPT: {traceback.format_exc(exception_instance)}') +# Running inside of Kodi else: def log(message, exception_instance=None, level=xbmc.LOGDEBUG): @@ -105,9 +123,9 @@ def set_property(window, name, value=""): def get_property(window, name): """ Return the value of a window property - @param window: - @param name: - @return: + :param window: the Kodi window to get the property value from + :param name: the name of the property to get + :return: the value of the window property """ return window.getProperty(name) @@ -115,32 +133,33 @@ def get_property(window, name): def get_property_as_bool(window, name): """ Return the value of a window property as a boolean - @param window: - @param name: - @return: + :param window: the Kodi window to get the property value from + :param name: the name of the property to get + :return: the value of the window property in boolean form """ return window.getProperty(name).lower() == "true" def send_kodi_json(human_description, json_string): """ - Send a JSON command to Kodi, logging the human description, command, and result returned. + Send a JSON command to Kodi, logging the human description, command, and result as returned. :param human_description: Required. A human sensible description of what the command is aiming to do/retrieve. :param json_string: Required. The json command to send. + :return the json object loaded from the result string """ log(f'KODI JSON RPC command: {human_description} [{json_string}]') result = xbmc.executeJSONRPC(json_string) log(f'KODI JSON RPC result: {result}') - return result + return json.loads(result) def get_setting(setting): """ Helper function to get string type from settings - @param setting: - @return: setting value + :param setting: The addon setting to return + :return: the setting value """ return ADDON.getSetting(setting).strip() @@ -149,8 +168,8 @@ def get_setting_as_bool(setting): """ Helper function to get bool type from settings - @param setting: - @return: setting value as boolen + :param setting: The addon setting to return + :return: the setting value as boolean """ return get_setting(setting).lower() == "true" @@ -159,10 +178,10 @@ def notify(message, notification_type=xbmcgui.NOTIFICATION_ERROR, duration=5000) """ Send a notification to the user via the Kodi GUI - @param message: the message to send - @param notification_type: xbmcgui.NOTIFICATION_ERROR (default), xbmcgui.NOTIFICATION_WARNING, or xbmcgui.NOTIFICATION_INFO - @param duration: time to display notification in milliseconds, default 5000 - @return: None + :param message: the message to send + :param notification_type: xbmcgui.NOTIFICATION_ERROR (default), xbmcgui.NOTIFICATION_WARNING, or xbmcgui.NOTIFICATION_INFO + :param duration: time to display notification in milliseconds, default 5000 + :return: None """ dialog = xbmcgui.Dialog() @@ -171,6 +190,15 @@ def notify(message, notification_type=xbmcgui.NOTIFICATION_ERROR, duration=5000) notification_type, duration) + def is_playback_paused(): + """ + Helper function to return Kodi player state. + (Odd this is needed, it should be a testable state on Player really..) + + :return: boolean indicating player paused state + """ + return bool(xbmc.getCondVisibility("Player.Paused")) + def footprints(startup=True): """ @@ -180,7 +208,7 @@ def footprints(startup=True): """ if startup: log(f'Starting...', level=xbmc.LOGINFO) - log(f'Kodi Version: {KODI_VERSION}', level=xbmc.LOGINFO) + log(f'Kodi System.BuildVersion: {KODI_VERSION}, which is Kodi major version: {KODI_VERSION_INT}', level=xbmc.LOGINFO) log(f'Addon arguments: {ADDON_ARGUMENTS}', level=xbmc.LOGINFO) else: log(f'Exiting...', level=xbmc.LOGINFO) diff --git a/script.service.playbackresumer/resources/lib/player.py b/script.service.playbackresumer/resources/lib/player.py index 89cbff591..e203a4ef3 100644 --- a/script.service.playbackresumer/resources/lib/player.py +++ b/script.service.playbackresumer/resources/lib/player.py @@ -121,9 +121,9 @@ def update_resume_point(self, seconds): # Short circuits - # No library ID or weird library ID - if not Store.library_id or Store.library_id < 0: - log(f"No/invalid library id ({Store.library_id}) for {Store.currently_playing_file_path} so can't set a resume point") + # Weird library ID + if Store.library_id and Store.library_id < 0: + log(f"No/invalid library id ({Store.library_id}) for {Store.currently_playing_file_path}") return # Kodi doing its normal stopping thing if seconds == -2: @@ -150,52 +150,77 @@ def update_resume_point(self, seconds): # Log what we are doing if seconds == 0: - log(f'Removing resume point for {Store.type_of_video} id {Store.library_id}') + log(f'Removing resume point for: {Store.currently_playing_file_path}, type: {Store.type_of_video}, library id: {Store.library_id}') else: - log(f'Setting resume point for {Store.type_of_video} id {Store.library_id} to {seconds} seconds') + log(f'Setting resume point for: {Store.currently_playing_file_path}, type: {Store.type_of_video}, library id: {Store.library_id}, to: {seconds} seconds') # Determine the JSON-RPC setFooDetails method to use and what the library id name is based of the type of video + id_name = None if Store.type_of_video == 'episode': - method = 'SetEpisodeDetails' - get_method = 'GetEpisodeDetails' + method = 'VideoLibrary.SetEpisodeDetails' + get_method = 'VideoLibrary.GetEpisodeDetails' id_name = 'episodeid' elif Store.type_of_video == 'movie': - method = 'SetMovieDetails' - get_method = 'GetMovieDetails' + method = 'VideoLibrary.SetMovieDetails' + get_method = 'VideoLibrary.GetMovieDetails' id_name = 'movieid' elif Store.type_of_video == 'musicvideo': - method = 'SetMusicVideoDetails' - get_method = 'GetMusicVideoDetails' + method = 'VideoLibrary.SetMusicVideoDetails' + get_method = 'VideoLibrary.GetMusicVideoDetails' id_name = 'musicvideoid' else: - log(f'Can\'t update resume point as did not recognise type of video [{Store.type_of_video}]') - return + log(f'Did not recognise type of video [{Store.type_of_video}] - assume non-library video') + method = 'Files.SetFileDetails' + get_method = 'Files.GetFileDetails' - query = json.dumps({ + json_dict = { "jsonrpc": "2.0", "id": "setResumePoint", - "method": "VideoLibrary." + method, - "params": { + "method": method, + } + if id_name: + params = { id_name: Store.library_id, "resume": { "position": seconds, "total": Store.length_of_currently_playing_file } } - }) - send_kodi_json(f'Set resume point to {seconds}, total to {Store.length_of_currently_playing_file}', query) + else: + params = { + "file": Store.currently_playing_file_path, + "media": "video", + "resume": { + "position": seconds, + "total": Store.length_of_currently_playing_file + } + } + + json_dict['params'] = params + query = json.dumps(json_dict) + send_kodi_json(f'Set resume point for: {Store.currently_playing_file_path}, type: {Store.type_of_video}, id: {Store.library_id}, to: {seconds} seconds, total: {Store.length_of_currently_playing_file}', query) - # For debugging - let's retrieve and log the current resume point... - query = json.dumps({ + # For debugging - let's retrieve and log the current resume point to check it was actually set as intended... + json_dict = { "jsonrpc": "2.0", "id": "getResumePoint", - "method": "VideoLibrary." + get_method, - "params": { + "method": get_method, + } + if id_name: + params = { id_name: Store.library_id, "properties": ["resume"], } - }) - send_kodi_json(f'Check new resume point & total for id {Store.library_id}', query) + else: + params = { + "file": Store.currently_playing_file_path, + "media": "video", + "properties": ["resume"], + } + + json_dict['params'] = params + query = json.dumps(json_dict) + send_kodi_json(f'Check new resume point & total for: {Store.currently_playing_file_path}, type: {Store.type_of_video}, id: {Store.library_id}', query) def resume_if_was_playing(self): """ diff --git a/script.service.playbackresumer/resources/lib/store.py b/script.service.playbackresumer/resources/lib/store.py index 6b78e16c9..bc3e354b2 100644 --- a/script.service.playbackresumer/resources/lib/store.py +++ b/script.service.playbackresumer/resources/lib/store.py @@ -24,7 +24,7 @@ class Store: # Store the full path of the currently playing file currently_playing_file_path = '' # What type of video is it? episode, movie, musicvideo - type_of_video = 'unknown' + type_of_video = None # What is the library id of this video, if there is one? library_id = -1 # if the video was paused, at what time was it paused? @@ -194,18 +194,15 @@ def update_current_playing_file_path(filepath): json_response = json.loads(xbmc.executeJSONRPC(json.dumps(query))) log(f'JSON-RPC Files.GetFileDetails response: {json.dumps(json_response)}') - Store.type_of_video = 'unknown' - try: Store.type_of_video = json_response['result']['filedetails']['type'] - except: + except KeyError: Store.library_id = -1 - log(f'Error determining type of video; probably not in Kodi\'s library: {Store.currently_playing_file_path}') + log(f"ERROR: Kodi did not return even an 'unknown' file type for: {Store.currently_playing_file_path}") - if Store.type_of_video == 'episode' or Store.type_of_video == 'movie' or Store.type_of_video == 'musicvideo': + if Store.type_of_video in ['episode', 'movie', 'musicvideo']: Store.library_id = json_response['result']['filedetails']['id'] - log(f'The library id for this {Store.type_of_video} is {Store.library_id}') else: Store.library_id = None - log(f'Unsupported type of video {Store.type_of_video} for {Store.currently_playing_file_path}') + log(f'Kodi type: {Store.type_of_video}, library id: {Store.library_id}') \ No newline at end of file From d2221795f112c3250246a0f3413796b9435d5acc Mon Sep 17 00:00:00 2001 From: Jeremy Daalder Date: Mon, 29 Apr 2024 16:30:37 +1000 Subject: [PATCH 3/4] [script.service.checkpreviousepisode] 0.4.7 (#2608) --- script.service.checkpreviousepisode/addon.xml | 6 ++-- .../changelog.txt | 3 ++ .../resources/lib/common.py | 28 +++++++++++++++---- .../resources/lib/monitor.py | 1 - .../resources/lib/player.py | 3 ++ 5 files changed, 30 insertions(+), 11 deletions(-) diff --git a/script.service.checkpreviousepisode/addon.xml b/script.service.checkpreviousepisode/addon.xml index 0b7638d24..7ff8e12ec 100644 --- a/script.service.checkpreviousepisode/addon.xml +++ b/script.service.checkpreviousepisode/addon.xml @@ -1,5 +1,5 @@ - + @@ -16,9 +16,7 @@ https://forum.kodi.tv/showthread.php?tid=355464 https://kodi.wiki/view/Add-on:XBMC_Check_Previous_Episode https://github.com/bossanova808/script.service.checkpreviousepisode - v0.4.6 - - Ignore shows that have already been decided on (i.e. those with a non-zero resume point) - + v0.4.7 Add Window Property so skinners can dress up the dialog icon.png diff --git a/script.service.checkpreviousepisode/changelog.txt b/script.service.checkpreviousepisode/changelog.txt index 89b340b44..e7869bc3f 100644 --- a/script.service.checkpreviousepisode/changelog.txt +++ b/script.service.checkpreviousepisode/changelog.txt @@ -1,3 +1,6 @@ +v0.4.7 +- Add Window Property so skinners can dress up the dialog + v0.4.6 - Ignore shows that have already been decided on (i.e. those with a non-zero resume point) diff --git a/script.service.checkpreviousepisode/resources/lib/common.py b/script.service.checkpreviousepisode/resources/lib/common.py index a86a1eeec..6e7b9f1de 100644 --- a/script.service.checkpreviousepisode/resources/lib/common.py +++ b/script.service.checkpreviousepisode/resources/lib/common.py @@ -1,11 +1,23 @@ # -*- coding: utf-8 -*- + """ -Handy utility functions for Kodi Addons -By bossanova808 -Free in all senses.... -VERSION 0.2.4 2021-08-10 -(For Kodi Matrix & later) + +Handy utility functions & constants for Kodi Addons +For Kodi Matrix & later +By bossanova808 - freely released +VERSION 0.2.7 2024-04-19 + +Changelog: +0.2.7 - Fix getting the major Kodi version (& change float -> int), as it was failing on e.g. 'RC' being in the string apparently +0.2.6 - (SkinPatcher) - add float KODI_VERSION_FLOAT constant, alongside string KODI_VERSION +0.2.5 - (Skin) - move to storing copy of latest in bossanova808 repo and adding this mini changelog + +For latest version - ALWAYS COPY BACK ANY CHANGES, plus do changelog, and a version & date bump above: +https://github.com/bossanova808/repository.bossanova808/blob/main/latest-common/common.py + + """ + import sys import traceback @@ -27,6 +39,7 @@ LANGUAGE = ADDON.getLocalizedString PROFILE = xbmcvfs.translatePath(ADDON.getAddonInfo('profile')) KODI_VERSION = xbmc.getInfoLabel('System.BuildVersion') +KODI_VERSION_INT = int(KODI_VERSION.split(".")[0]) USER_AGENT = "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/78.0.3904.108 Safari/537.36" HOME_WINDOW = xbmcgui.Window(10000) WEATHER_WINDOW = xbmcgui.Window(12600) @@ -51,6 +64,8 @@ """ unit_testing = False + +# Testing outside of Kodi if not xbmc.getUserAgent(): xbmc = None @@ -65,6 +80,7 @@ def log(message, exception_instance=None, level=None): print(f'EXCPT: {traceback.format_exc(exception_instance)}') +# Running inside of Kodi else: def log(message, exception_instance=None, level=xbmc.LOGDEBUG): @@ -192,7 +208,7 @@ def footprints(startup=True): """ if startup: log(f'Starting...', level=xbmc.LOGINFO) - log(f'Kodi Version: {KODI_VERSION}', level=xbmc.LOGINFO) + log(f'Kodi System.BuildVersion: {KODI_VERSION}, which is Kodi major version: {KODI_VERSION_INT}', level=xbmc.LOGINFO) log(f'Addon arguments: {ADDON_ARGUMENTS}', level=xbmc.LOGINFO) else: log(f'Exiting...', level=xbmc.LOGINFO) diff --git a/script.service.checkpreviousepisode/resources/lib/monitor.py b/script.service.checkpreviousepisode/resources/lib/monitor.py index b17d6c6d0..a8f67e03e 100644 --- a/script.service.checkpreviousepisode/resources/lib/monitor.py +++ b/script.service.checkpreviousepisode/resources/lib/monitor.py @@ -15,4 +15,3 @@ def onSettingsChanged(self): def onAbortRequested(self): log('onAbortRequested') - log("Abort Requested") \ No newline at end of file diff --git a/script.service.checkpreviousepisode/resources/lib/player.py b/script.service.checkpreviousepisode/resources/lib/player.py index d0b584dec..d098bfef3 100644 --- a/script.service.checkpreviousepisode/resources/lib/player.py +++ b/script.service.checkpreviousepisode/resources/lib/player.py @@ -125,7 +125,10 @@ def onAVStarted(self): log("Prior episode not watched! -> pausing playback") self.pause() + # Set a window property per Hitcher's request - https://forum.kodi.tv/showthread.php?tid=355464&pid=3191615#pid3191615 + HOME_WINDOW.setProperty("CheckPreviousEpisode", "MissingPreviousEpisode") result = xbmcgui.Dialog().select(LANGUAGE(32020), [LANGUAGE(32021), LANGUAGE(32022), LANGUAGE(32023)], preselect=0) + HOME_WINDOW.setProperty("CheckPreviousEpisode", "") # User has requested we ignore this particular show from now on... if result == 2: From 145652af558cee6086bcdeefe69b03b9f78058f3 Mon Sep 17 00:00:00 2001 From: ronie Date: Mon, 29 Apr 2024 20:45:01 +0200 Subject: [PATCH 4/4] [weather.multi] 0.0.26 --- weather.multi/addon.xml | 2 +- weather.multi/changelog.txt | 12 ++ weather.multi/lib/weather.py | 48 ++++---- .../resource.language.et_ee/strings.po | 104 +++++++++--------- .../resource.language.fr_fr/strings.po | 8 +- .../resource.language.it_it/strings.po | 6 +- .../resource.language.nl_nl/strings.po | 12 +- 7 files changed, 106 insertions(+), 86 deletions(-) diff --git a/weather.multi/addon.xml b/weather.multi/addon.xml index 950382350..78c995af5 100644 --- a/weather.multi/addon.xml +++ b/weather.multi/addon.xml @@ -1,5 +1,5 @@ - + diff --git a/weather.multi/changelog.txt b/weather.multi/changelog.txt index 9ce54b684..284e0731b 100644 --- a/weather.multi/changelog.txt +++ b/weather.multi/changelog.txt @@ -1,3 +1,15 @@ +v0.0.26 +- language update + +v0.0.25 +- reinit session with each new url + +v0.0.24 +- try multiple yahoo urls in order to get cookie + +v0.0.23 +- fix yahoo weather again + v0.0.22 - fix weatherbit ozone value could be none diff --git a/weather.multi/lib/weather.py b/weather.multi/lib/weather.py index d8a5c2cfb..87975c14a 100644 --- a/weather.multi/lib/weather.py +++ b/weather.multi/lib/weather.py @@ -3,7 +3,7 @@ from .providers import weatherbit from .providers import openweathermap -CURL = 'https://www.yahoo.com/?guccounter=2' +CURL = ['https://www.yahoo.com/', 'https://www.yahoo.com/?guccounter=1', 'https://www.yahoo.com/?guccounter=2', 'https://www.yahoo.com/?guccounter=', 'https://ca.yahoo.com/'] YURL = 'https://www.yahoo.com/news/weather/' LCURL = 'https://www.yahoo.com/news/_tdnews/api/resource/WeatherSearch;text=%s' FCURL = 'https://www.yahoo.com/news/_tdnews/api/resource/WeatherService;crumb={crumb};woeids=%5B{woeid}%5D' @@ -86,7 +86,6 @@ def get_location(self, mode): return location, locationid, locationlat, locationlon def get_ycreds(self): - ysess = requests.Session() ycookie = ADDON.getSettingString('ycookie') ycrumb = ADDON.getSettingString('ycrumb') ystamp = ADDON.getSettingString('ystamp') @@ -95,25 +94,34 @@ def get_ycreds(self): log('stamp from settings: %s' % ystamp) if ystamp == '' or (int(time.time()) - int(ystamp) > 31536000): # cookie expires after 1 year try: - retry = 0 - while (retry < 6) and (not self.MONITOR.abortRequested()): - response = ysess.get(CURL, headers=HEADERS, timeout=10) - if response.status_code == 200: + for URL in CURL: + ysess = requests.Session() + retry = 0 + while (retry < 6) and (not self.MONITOR.abortRequested()): + response = ysess.get(URL, headers=HEADERS, timeout=10) + if response.status_code == 200: + break + else: + self.MONITOR.waitForAbort(10) + retry += 1 + log('getting yahoo website failed') + if 'consent' in response.url: # EU users are asked for cookie consent + log('EU user') + token = re.search('csrfToken" value="(.*?)"', response.text, flags=re.DOTALL).group(1) + sessionid = re.search('sessionId" value="(.*?)"', response.text, flags=re.DOTALL).group(1) + redirect = re.search('originalDoneUrl" value="(.*?)"', response.text, flags=re.DOTALL).group(1) + log('EU token: %s' % token) + log('EU sessionid: %s' % sessionid) + log('EU redirect %s' % redirect) + DATA = {'csrfToken': token, 'sessionId': sessionid, 'originalDoneUrl': redirect, 'namespace': 'yahoo', 'reject': 'reject'} + response = ysess.post(response.url, headers=HEADERS, data=DATA) + log('cookies: %s' % str(response.cookies)) + if 'A3' in response.cookies: + ycookie = response.cookies['A3'] + break + elif 'A1' in response.cookies: + ycookie = response.cookies['A1'] break - else: - self.MONITOR.waitForAbort(10) - retry += 1 - log('getting yahoo website failed') - if 'consent' in response.url: # EU users are asked for cookie consent - token = re.search('csrfToken" value="(.*?)"', response.text, flags=re.DOTALL).group(1) - sessionid = re.search('sessionId" value="(.*?)"', response.text, flags=re.DOTALL).group(1) - redirect = re.search('originalDoneUrl" value="(.*?)"', response.text, flags=re.DOTALL).group(1) - DATA = {'csrfToken': token, 'sessionId': sessionid, 'originalDoneUrl': redirect, 'namespace': 'yahoo', 'reject': 'reject'} - response = ysess.post(response.url, headers=HEADERS, data=DATA) - try: - ycookie = response.cookies['A3'] - except: - ycookie = response.cookies['A1'] response = ysess.get(YURL, headers=HEADERS, cookies=dict(A3=ycookie), timeout=10) match = re.search('WeatherStore":{"crumb":"(.*?)","weathers', response.text, re.IGNORECASE) if not match: diff --git a/weather.multi/resources/language/resource.language.et_ee/strings.po b/weather.multi/resources/language/resource.language.et_ee/strings.po index f8e177a6b..0d24e7e05 100644 --- a/weather.multi/resources/language/resource.language.et_ee/strings.po +++ b/weather.multi/resources/language/resource.language.et_ee/strings.po @@ -7,15 +7,15 @@ msgstr "" "Project-Id-Version: Kodi add-ons\n" "Report-Msgid-Bugs-To: translations@kodi.tv\n" "POT-Creation-Date: YEAR-MO-DA HO:MI+ZONE\n" -"PO-Revision-Date: 2023-08-05 23:11+0000\n" -"Last-Translator: Toomas Tänava \n" +"PO-Revision-Date: 2024-03-28 06:13+0000\n" +"Last-Translator: rimasx \n" "Language-Team: Estonian \n" "Language: et_ee\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=n != 1;\n" -"X-Generator: Weblate 4.18.2\n" +"X-Generator: Weblate 5.4\n" msgctxt "Addon Summary" msgid "Weather forecast from several providers" @@ -147,7 +147,7 @@ msgstr "Paduvihm" msgctxt "#32214" msgid "Freezing rain" -msgstr "Jäävihm" +msgstr "Jäine vihm" msgctxt "#32215" msgid "Light shower rain" @@ -199,15 +199,15 @@ msgstr "Sajuhood" msgctxt "#32227" msgid "Mist" -msgstr "Udu" +msgstr "Sumu" msgctxt "#32228" msgid "Smoke" -msgstr "Suitsuvine" +msgstr "Suits" msgctxt "#32229" msgid "Haze" -msgstr "Udu" +msgstr "Hägune" msgctxt "#32230" msgid "Sand/dust" @@ -247,183 +247,183 @@ msgstr "Teadmata sademed" msgctxt "#32251" msgid "Tornado" -msgstr "" +msgstr "Tornaado" msgctxt "#32252" msgid "Tropical Storm" -msgstr "" +msgstr "Troopiline torm" msgctxt "#32253" msgid "Hurricane" -msgstr "" +msgstr "Orkaan" msgctxt "#32254" msgid "Severe Thunderstorms" -msgstr "" +msgstr "Tugevad äikesetormid" msgctxt "#32255" msgid "Thunderstorms" -msgstr "" +msgstr "Äikesetormid" msgctxt "#32256" msgid "Mixed Rain and Snow" -msgstr "" +msgstr "Lumelörts ja vihm" msgctxt "#32257" msgid "Mixed Rain and Sleet" -msgstr "" +msgstr "Vihm ja lörts" msgctxt "#32258" msgid "Mixed Snow and Sleet" -msgstr "" +msgstr "Lumi ja lörts" msgctxt "#32259" msgid "Freezing Drizzle" -msgstr "" +msgstr "Külmavihm" msgctxt "#32260" msgid "Drizzle" -msgstr "" +msgstr "Uduvihm" msgctxt "#32261" msgid "Freezing Rain" -msgstr "" +msgstr "Jäävihm" msgctxt "#32262" msgid "Showers" -msgstr "" +msgstr "Hoovihm" msgctxt "#32263" msgid "Rain" -msgstr "" +msgstr "Vihm" msgctxt "#32264" msgid "Snow Flurries" -msgstr "" +msgstr "Lomehood" msgctxt "#32265" msgid "Light Snow Showers" -msgstr "" +msgstr "Kerged lumehood" msgctxt "#32266" msgid "Blowing Snow" -msgstr "" +msgstr "Hootine lumesadu" msgctxt "#32267" msgid "Snow" -msgstr "" +msgstr "Lumi" msgctxt "#32268" msgid "Hail" -msgstr "" +msgstr "Rahe" msgctxt "#32269" msgid "Sleet" -msgstr "" +msgstr "Lörts" msgctxt "#32270" msgid "Dust" -msgstr "" +msgstr "Tolm" msgctxt "#32271" msgid "Foggy" -msgstr "" +msgstr "Udune" msgctxt "#32272" msgid "Haze" -msgstr "" +msgstr "Hägu" msgctxt "#32273" msgid "Smoky" -msgstr "" +msgstr "Suitsuvine" msgctxt "#32274" msgid "Blustery" -msgstr "" +msgstr "Tormine" msgctxt "#32275" msgid "Windy" -msgstr "" +msgstr "Tuuline" msgctxt "#32276" msgid "Cold" -msgstr "" +msgstr "Külm" msgctxt "#32277" msgid "Cloudy" -msgstr "" +msgstr "Pilves" msgctxt "#32278" msgid "Mostly Cloudy" -msgstr "" +msgstr "Enamasti pilves" msgctxt "#32279" msgid "Partly Cloudy" -msgstr "" +msgstr "Osaliselt pilves" msgctxt "#32280" msgid "Clear" -msgstr "" +msgstr "Selge" msgctxt "#32281" msgid "Sunny" -msgstr "" +msgstr "Päikeseline" msgctxt "#32282" msgid "Fair" -msgstr "" +msgstr "Ilus" msgctxt "#32283" msgid "Mixed Rain and Hail" -msgstr "" +msgstr "Vihm ja rahe" msgctxt "#32284" msgid "Hot" -msgstr "" +msgstr "Palav" msgctxt "#32285" msgid "Isolated Thunderstorms" -msgstr "" +msgstr "Üksikud äikesetormid" msgctxt "#32286" msgid "Scattered Thunderstorms" -msgstr "" +msgstr "Hajutatud äikesetormid" msgctxt "#32287" msgid "Scattered Showers" -msgstr "" +msgstr "Hajutatud dušid" msgctxt "#32288" msgid "Heavy Rain" -msgstr "" +msgstr "Tugev vihm" msgctxt "#32289" msgid "Scattered Snow Showers" -msgstr "" +msgstr "Hajutatud lumehood" msgctxt "#32290" msgid "Heavy Snow" -msgstr "" +msgstr "Tugev lumesadu" msgctxt "#32291" msgid "Blizzard" -msgstr "" +msgstr "Tuisk" msgctxt "#32292" msgid "Not Available" -msgstr "" +msgstr "Pole saadaval" msgctxt "#32293" msgid "Scattered Showers" -msgstr "" +msgstr "Hajutatud vihmahood" msgctxt "#32294" msgid "Scattered Snow Showers" -msgstr "" +msgstr "Hajutatud lumehood" msgctxt "#32295" msgid "Scattered Thundershowers" -msgstr "" +msgstr "Hajutatud äikesevihmad" msgctxt "#32300" msgid "New Moon" diff --git a/weather.multi/resources/language/resource.language.fr_fr/strings.po b/weather.multi/resources/language/resource.language.fr_fr/strings.po index 9cd75665f..868ce74be 100644 --- a/weather.multi/resources/language/resource.language.fr_fr/strings.po +++ b/weather.multi/resources/language/resource.language.fr_fr/strings.po @@ -7,15 +7,15 @@ msgstr "" "Project-Id-Version: Kodi add-ons\n" "Report-Msgid-Bugs-To: translations@kodi.tv\n" "POT-Creation-Date: YEAR-MO-DA HO:MI+ZONE\n" -"PO-Revision-Date: 2023-01-01 16:16+0000\n" -"Last-Translator: skypichat \n" +"PO-Revision-Date: 2024-02-21 15:13+0000\n" +"Last-Translator: ludovik \n" "Language-Team: French (France) \n" "Language: fr_fr\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=n > 1;\n" -"X-Generator: Weblate 4.15\n" +"X-Generator: Weblate 5.4\n" msgctxt "Addon Summary" msgid "Weather forecast from several providers" @@ -171,7 +171,7 @@ msgstr "Neige" msgctxt "#32220" msgid "Heavy snow" -msgstr "Beaucoup de neige" +msgstr "Neige abondante" msgctxt "#32221" msgid "Mix snow/rain" diff --git a/weather.multi/resources/language/resource.language.it_it/strings.po b/weather.multi/resources/language/resource.language.it_it/strings.po index 0bee46d4a..4c9cfb041 100644 --- a/weather.multi/resources/language/resource.language.it_it/strings.po +++ b/weather.multi/resources/language/resource.language.it_it/strings.po @@ -7,7 +7,7 @@ msgstr "" "Project-Id-Version: Kodi add-ons\n" "Report-Msgid-Bugs-To: translations@kodi.tv\n" "POT-Creation-Date: YEAR-MO-DA HO:MI+ZONE\n" -"PO-Revision-Date: 2023-12-12 06:11+0000\n" +"PO-Revision-Date: 2024-01-29 06:48+0000\n" "Last-Translator: Massimo Pissarello \n" "Language-Team: Italian \n" "Language: it_it\n" @@ -15,7 +15,7 @@ msgstr "" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=n != 1;\n" -"X-Generator: Weblate 5.2.1\n" +"X-Generator: Weblate 5.3\n" msgctxt "Addon Summary" msgid "Weather forecast from several providers" @@ -223,7 +223,7 @@ msgstr "Nebbia gelata" msgctxt "#32233" msgid "Clear sky" -msgstr "Cielo limpido" +msgstr "Cielo sereno" msgctxt "#32234" msgid "Few clouds" diff --git a/weather.multi/resources/language/resource.language.nl_nl/strings.po b/weather.multi/resources/language/resource.language.nl_nl/strings.po index fbe7ffc0c..4f86169d1 100644 --- a/weather.multi/resources/language/resource.language.nl_nl/strings.po +++ b/weather.multi/resources/language/resource.language.nl_nl/strings.po @@ -7,15 +7,15 @@ msgstr "" "Project-Id-Version: Kodi add-ons\n" "Report-Msgid-Bugs-To: translations@kodi.tv\n" "POT-Creation-Date: YEAR-MO-DA HO:MI+ZONE\n" -"PO-Revision-Date: 2023-07-10 14:42+0000\n" -"Last-Translator: Natasha Ament-Teusink \n" +"PO-Revision-Date: 2024-01-29 06:48+0000\n" +"Last-Translator: Miniontoby \n" "Language-Team: Dutch \n" "Language: nl_nl\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=n != 1;\n" -"X-Generator: Weblate 4.18.2\n" +"X-Generator: Weblate 5.3\n" msgctxt "Addon Summary" msgid "Weather forecast from several providers" @@ -399,7 +399,7 @@ msgstr "Zware regenval" msgctxt "#32289" msgid "Scattered Snow Showers" -msgstr "" +msgstr "Verspreide sneeuwbuien" msgctxt "#32290" msgid "Heavy Snow" @@ -419,11 +419,11 @@ msgstr "Verspreide Buien" msgctxt "#32294" msgid "Scattered Snow Showers" -msgstr "" +msgstr "Verspreide sneeuwbuien" msgctxt "#32295" msgid "Scattered Thundershowers" -msgstr "" +msgstr "Verspreide onweersbuien" msgctxt "#32300" msgid "New Moon"