23 Commits

Author SHA1 Message Date
momphucker
bd9f63de4c Translated using Weblate (Italian)
Some checks failed
Build JellyCon / build (py2) (push) Has been cancelled
Build JellyCon / build (py3) (push) Has been cancelled
Currently translated at 42.6% (116 of 272 strings)

Translation: Jellycon/Jellycon
Translate-URL: https://translate.jellyfin.org/projects/jellycon/jellycon/it/
2022-08-17 18:11:26 -04:00
Arief Hidayat
0a51bd366e Translated using Weblate (Indonesian)
Currently translated at 100.0% (272 of 272 strings)

Translation: Jellycon/Jellycon
Translate-URL: https://translate.jellyfin.org/projects/jellycon/jellycon/id/
2022-08-15 08:40:31 -04:00
Francisco Álamo García
2c959b0e00 Translated using Weblate (Spanish)
Currently translated at 100.0% (272 of 272 strings)

Translation: Jellycon/Jellycon
Translate-URL: https://translate.jellyfin.org/projects/jellycon/jellycon/es/
2022-08-15 08:40:31 -04:00
WWWesten
291c3533e2 Translated using Weblate (Esperanto)
Currently translated at 100.0% (272 of 272 strings)

Translation: Jellycon/Jellycon
Translate-URL: https://translate.jellyfin.org/projects/jellycon/jellycon/eo/
2022-08-10 16:22:30 -04:00
Thomas Schwery
6080a3e6ec Translated using Weblate (French)
Currently translated at 86.3% (235 of 272 strings)

Translation: Jellycon/Jellycon
Translate-URL: https://translate.jellyfin.org/projects/jellycon/jellycon/fr/
2022-08-10 16:22:30 -04:00
WWWesten
97785abff4 Translated using Weblate (Russian)
Currently translated at 100.0% (272 of 272 strings)

Translation: Jellycon/Jellycon
Translate-URL: https://translate.jellyfin.org/projects/jellycon/jellycon/ru/
2022-08-10 16:22:30 -04:00
WWWesten
511f44e806 Translated using Weblate (Kazakh)
Currently translated at 100.0% (272 of 272 strings)

Translation: Jellycon/Jellycon
Translate-URL: https://translate.jellyfin.org/projects/jellycon/jellycon/kk/
2022-08-10 16:22:30 -04:00
Oskari Lavinto
f5a97b4730 Translated using Weblate (Finnish)
Currently translated at 100.0% (272 of 272 strings)

Translation: Jellycon/Jellycon
Translate-URL: https://translate.jellyfin.org/projects/jellycon/jellycon/fi/
2022-08-09 01:22:30 -04:00
Csaba
a47ba79413 Translated using Weblate (Hungarian)
Currently translated at 100.0% (272 of 272 strings)

Translation: Jellycon/Jellycon
Translate-URL: https://translate.jellyfin.org/projects/jellycon/jellycon/hu/
2022-08-09 01:22:30 -04:00
mcarlton00
429eaf76a5 Merge pull request #205 from jellyfin/prepare-0.5.6
Prepare for release v0.5.6
2022-08-07 17:15:50 -04:00
jellyfin-bot
da9136a08b bump version to 0.5.6 2022-08-07 21:10:25 +00:00
mcarlton00
cb0097a4e0 Merge pull request #204 from mcarlton00/user-switching
Fix user switching
2022-08-07 15:24:02 -04:00
mcarlton00
f66d2c55ca Merge pull request #198 from mcarlton00/empty-folders
Don't request empty folders from api if setting is disabled
2022-08-07 14:52:03 -04:00
Alan Azar
a30e58677d Translated using Weblate (Italian)
Currently translated at 38.7% (105 of 271 strings)

Translation: Jellycon/Jellycon
Translate-URL: https://translate.jellyfin.org/projects/jellycon/jellycon/it/
2022-08-07 13:22:29 -04:00
mcarlton00
11d1898dc2 Merge pull request #202 from jellyfin/dependabot/github_actions/appleboy/ssh-action-0.1.5
Bump appleboy/ssh-action from 0.1.4 to 0.1.5
2022-08-06 19:51:32 -04:00
Matt
24548a081c Fix user switching 2022-08-06 19:43:16 -04:00
dependabot[bot]
09982b9f60 Bump appleboy/ssh-action from 0.1.4 to 0.1.5
Bumps [appleboy/ssh-action](https://github.com/appleboy/ssh-action) from 0.1.4 to 0.1.5.
- [Release notes](https://github.com/appleboy/ssh-action/releases)
- [Commits](https://github.com/appleboy/ssh-action/compare/v0.1.4...v0.1.5)

---
updated-dependencies:
- dependency-name: appleboy/ssh-action
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-08-01 16:16:10 +00:00
mcarlton00
b56036b71e Merge pull request #200 from mcarlton00/cached-users
Don't error when switching to a cached user
2022-07-26 20:48:31 -04:00
Matt
52fe89170f Don't error when switching to a cached user 2022-07-26 20:36:20 -04:00
mcarlton00
474043a569 Merge pull request #199 from aiosk/continue_watching_widget
Add Continue Watching Widget
2022-07-26 20:21:37 -04:00
andry.yosua
7451605dbb fix whitespace 2022-07-26 01:17:24 +07:00
andry.yosua
860c487074 Add Continue Watching Widget
https://github.com/jellyfin/jellycon/issues/19

i'm using https://api.jellyfin.org/#operation/GetResumeItems to get
continue watching list
2022-07-26 01:09:44 +07:00
Matt
b1303413c6 Don't request empty folders from api if setting is disabled 2022-07-24 21:25:29 -04:00
17 changed files with 805 additions and 43 deletions

View File

@@ -53,7 +53,7 @@ jobs:
remote_key: ${{ secrets.DEPLOY_KEY }}
- name: Add to Kodi repo and clean up
uses: appleboy/ssh-action@v0.1.4
uses: appleboy/ssh-action@v0.1.5
with:
host: ${{ secrets.DEPLOY_HOST }}
username: ${{ secrets.DEPLOY_USER }}

View File

@@ -1,8 +1,18 @@
version: '0.5.5'
version: '0.5.6'
changelog: |-
:tada: New features and improvements
------------------------------------
+ Add Continue Watching Widget (#199) @aiosk
Bug Fixes
---------
+ Ensure a handle is valid before trying to use it to start playback (#194) @mcarlton00
+ Fix user switching (#204) @mcarlton00
+ Don't request empty folders from api if setting is disabled (#198) @mcarlton00
+ Don't error when switching to a cached user (#200) @mcarlton00
CI & build changes
------------------
+ Bump appleboy/ssh-action from 0.1.4 to 0.1.5 (#202) @dependabot
dependencies:
py2:
- addon: 'xbmc.python'

View File

@@ -1099,3 +1099,8 @@ msgstr "Quick Connect"
msgctxt "#30444"
msgid "Login using Quick Connect"
msgstr "Login using Quick Connect"
msgctxt "#30445"
msgid "Continue Watching"
msgstr "Continue Watching"

View File

@@ -1,6 +1,6 @@
msgid ""
msgstr ""
"PO-Revision-Date: 2022-06-08 04:22+0000\n"
"PO-Revision-Date: 2022-08-10 20:22+0000\n"
"Last-Translator: WWWesten <wwwesten@gmail.com>\n"
"Language-Team: Esperanto <https://translate.jellyfin.org/projects/jellycon/"
"jellycon/eo/>\n"
@@ -1097,3 +1097,7 @@ msgstr "Rapida Konekto"
msgctxt "#30323"
msgid "Artists"
msgstr "Artistoj"
msgctxt "#30445"
msgid "Continue Watching"
msgstr "Daŭrigi Spektadon"

View File

@@ -1,7 +1,7 @@
msgid ""
msgstr ""
"PO-Revision-Date: 2022-07-06 13:22+0000\n"
"Last-Translator: Joaquín Díaz <joac.emi.a.n@gmail.com>\n"
"PO-Revision-Date: 2022-08-15 12:40+0000\n"
"Last-Translator: Francisco Álamo García <fran.minecraft.mta@gmail.com>\n"
"Language-Team: Spanish <https://translate.jellyfin.org/projects/jellycon/"
"jellycon/es/>\n"
"Language: es\n"
@@ -9,7 +9,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.10.1\n"
"X-Generator: Weblate 4.13.1\n"
msgctxt "#30442"
msgid "Simple new content check"
@@ -1080,7 +1080,7 @@ msgstr "Frecuencia de registro de datos"
msgctxt "#30000"
msgid "Host"
msgstr "Host"
msgstr "Anfitrión"
msgctxt "#30276"
msgid "Extra Resume Prompt Detected"
@@ -1101,3 +1101,7 @@ msgstr "Conexión rápida"
msgctxt "#30323"
msgid "Artists"
msgstr "Artistas"
msgctxt "#30445"
msgid "Continue Watching"
msgstr "Continuar viendo"

View File

@@ -1,6 +1,6 @@
msgid ""
msgstr ""
"PO-Revision-Date: 2022-06-12 12:22+0000\n"
"PO-Revision-Date: 2022-08-09 05:22+0000\n"
"Last-Translator: Oskari Lavinto <olavinto@protonmail.com>\n"
"Language-Team: Finnish <https://translate.jellyfin.org/projects/jellycon/"
"jellycon/fi/>\n"
@@ -1099,3 +1099,7 @@ msgstr "Pikayhdistys"
msgctxt "#30323"
msgid "Artists"
msgstr "Esittäjät"
msgctxt "#30445"
msgid "Continue Watching"
msgstr "Jatka katselua"

View File

@@ -1,6 +1,6 @@
msgid ""
msgstr ""
"PO-Revision-Date: 2022-07-06 13:22+0000\n"
"PO-Revision-Date: 2022-08-10 20:22+0000\n"
"Last-Translator: Thomas Schwery <thomas@inf3.ch>\n"
"Language-Team: French <https://translate.jellyfin.org/projects/jellycon/"
"jellycon/fr/>\n"
@@ -923,7 +923,6 @@ msgctxt "#30366"
msgid "Manually enter user details"
msgstr "Renseigner manuellement les détails utilisateurs"
#, fuzzy
msgctxt "#30359"
msgid "Building full image list"
msgstr "Construction de la liste complète des images"
@@ -949,3 +948,39 @@ msgstr "Ajouter une note"
msgctxt "#30323"
msgid "Artists"
msgstr "Artistes"
msgctxt "#30394"
msgid "Cache files deleted"
msgstr "Fichiers du cache supprimés"
#, fuzzy
msgctxt "#30393"
msgid "Clear Cache Result"
msgstr "Vider le cache des résultats"
msgctxt "#30388"
msgid "Server details"
msgstr "Détails du serveur"
msgctxt "#30387"
msgid "Unused images removed : "
msgstr "Images inutilisées supprimées :"
msgctxt "#30371"
msgid "Could not connect to the URL you entered, do you want to try again?"
msgstr ""
"Impossible de se connecter à l'adresse saisie, voulez-vous essayer à nouveau "
"?"
msgctxt "#30370"
msgid "Do you want to manually enter a server url?"
msgstr "Voulez-vous saisir manuellement une adresse de serveur ?"
#, fuzzy
msgctxt "#30369"
msgid "Do you want to clear your saved password?"
msgstr "Voulez-vous effacer votre mot de passe sauvé ?"
msgctxt "#30368"
msgid "Clear Password?"
msgstr "Effacer le mot de passe ?"

View File

@@ -1,6 +1,6 @@
msgid ""
msgstr ""
"PO-Revision-Date: 2022-06-08 04:22+0000\n"
"PO-Revision-Date: 2022-08-09 05:22+0000\n"
"Last-Translator: Csaba <csab0825@gmail.com>\n"
"Language-Team: Hungarian <https://translate.jellyfin.org/projects/jellycon/"
"jellycon/hu/>\n"
@@ -1099,3 +1099,7 @@ msgstr "Gyors Csatlakozás"
msgctxt "#30323"
msgid "Artists"
msgstr "Művészek"
msgctxt "#30445"
msgid "Continue Watching"
msgstr "Megtekintés folytatása"

View File

@@ -1,7 +1,7 @@
msgid ""
msgstr ""
"PO-Revision-Date: 2022-05-20 04:22+0000\n"
"Last-Translator: liimee <git.taaa@fedora.email>\n"
"PO-Revision-Date: 2022-08-15 12:40+0000\n"
"Last-Translator: Arief Hidayat <kekesed97@gmail.com>\n"
"Language-Team: Indonesian <https://translate.jellyfin.org/projects/jellycon/"
"jellycon/id/>\n"
"Language: id\n"
@@ -9,7 +9,7 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=1; plural=0;\n"
"X-Generator: Weblate 4.10.1\n"
"X-Generator: Weblate 4.13.1\n"
msgctxt "#30414"
msgid " - Favorites"
@@ -482,3 +482,622 @@ msgstr "Kata sandi"
msgctxt "#30005"
msgid "Username"
msgstr "Nama pengguna"
msgctxt "#30315"
msgid "Suppress notifications for connection errors"
msgstr "Menekan notifikasi untuk kesalahan koneksi"
msgctxt "#30016"
msgid "Device display name"
msgstr "Nama tampilan perangkat"
msgctxt "#30015"
msgid "Log timing data"
msgstr "Catat data waktu"
msgctxt "#30445"
msgid "Continue Watching"
msgstr "Lanjutkan Tonton"
msgctxt "#30444"
msgid "Login using Quick Connect"
msgstr "Login dengan Koneksi Cepat"
msgctxt "#30443"
msgid "Quick Connect"
msgstr "Koneksi Cepat"
msgctxt "#30442"
msgid "Simple new content check"
msgstr "Cek konten baru sederhana"
msgctxt "#30441"
msgid "Use cached widget data"
msgstr "Gunakan data widget yang di-cache"
msgctxt "#30439"
msgid "Show play next episode at time left"
msgstr "Tampilkan putar episode pada waktu tersisa"
msgctxt "#30438"
msgid "Play cinema intros"
msgstr "Mainkan intro sinema"
msgctxt "#30437"
msgid "Playback options"
msgstr "Opsi pemutaran"
msgctxt "#30436"
msgid "Speed test data size (MB)"
msgstr "Besar data untuk uji kecepatan (MB)"
msgctxt "#30435"
msgid "Connection speed test"
msgstr "Uji kecepatan koneksi"
msgctxt "#30434"
msgid "Force transcode stream bitrate (Kbits)"
msgstr "Memaksa kecepatan bit aliran transkode (Kbps)"
msgctxt "#30433"
msgid "Allow direct file playback"
msgstr "Izinkan pemutaran berkas langsung"
msgctxt "#30432"
msgid "Hide watched items in lists"
msgstr "Sembunyikan item yang telah ditonton dari daftar"
msgctxt "#30429"
msgid "Genre"
msgstr "Genre"
msgctxt "#30428"
msgid "Rating"
msgstr "Penilaian"
msgctxt "#30424"
msgid "Default"
msgstr "Default"
msgctxt "#30423"
msgid "NotSet"
msgstr "Belum Diatur"
msgctxt "#30422"
msgid "Sorting"
msgstr "Urutkan"
msgctxt "#30421"
msgid "Views"
msgstr "Tampilan"
msgctxt "#30420"
msgid "Audio max channels"
msgstr "Channel maks. Audio"
msgctxt "#30419"
msgid "Audio codec"
msgstr "Kodek Audio"
msgctxt "#30418"
msgid "Audio bitrate (Kbits)"
msgstr "Bitrate Audio (Kbps)"
msgctxt "#30416"
msgid "HTTP timeout seconds"
msgstr "Detik HTTP timeout"
msgctxt "#30415"
msgid " - Favorite Collections"
msgstr "- Koleksi Favorit"
msgctxt "#30413"
msgid " - Tags"
msgstr "- Tag"
msgctxt "#30412"
msgid " - Decades"
msgstr "- Dekade"
msgctxt "#30411"
msgid " - Years"
msgstr "- Tahun"
msgctxt "#30410"
msgid " - Collections"
msgstr "- Koleksi"
msgctxt "#30409"
msgid "Add-on Actions"
msgstr "Aksi Add-on"
msgctxt "#30408"
msgid "Custom Widgets"
msgstr "Widget Kustom"
msgctxt "#30407"
msgid "Global Lists"
msgstr "Daftar Global"
msgctxt "#30406"
msgid "Jellyfin Libraries"
msgstr "Pustaka Jellyfin"
msgctxt "#30400"
msgid "Cache images interval minutes (0 = disabled)"
msgstr "Interval cache gambar dalam menit (0 = dimatikan)"
msgctxt "#30397"
msgid " - Pages"
msgstr "- Halaman"
msgctxt "#30395"
msgid "Clear cached server data"
msgstr "Hapus server data yang di-cache"
msgctxt "#30394"
msgid "Cache files deleted"
msgstr "File cache dihapus"
msgctxt "#30393"
msgid "Clear Cache Result"
msgstr "Hapus Hasil Cache"
msgctxt "#30387"
msgid "Unused images removed : "
msgstr "Gambar yang tidak digunakan dihapus:"
msgctxt "#30386"
msgid "Unused Jellyfin images : "
msgstr "Gambar Jellyfin yang tidak digunakan:"
msgctxt "#30385"
msgid "Existing images before delete : "
msgstr "Gambar yang ada sebelum dihapus:"
msgctxt "#30384"
msgid "Random movies interval minutes (0 = disabled)"
msgstr "Menit interval film acak (0 = dinonaktifkan)"
msgctxt "#30379"
msgid "External subtitle prompt"
msgstr "Perintah subtitle eksternal"
msgctxt "#30378"
msgid "Persist user details"
msgstr "Pertahankan detail pengguna"
msgctxt "#30375"
msgid "Receiving data packet"
msgstr "Menerima paket data"
msgctxt "#30370"
msgid "Do you want to manually enter a server url?"
msgstr "Apakah Anda ingin untuk memasukkan url server secara manual?"
msgctxt "#30369"
msgid "Do you want to clear your saved password?"
msgstr "Apakah Anda ingin untuk menghapus kata sandi tersimpan?"
msgctxt "#30368"
msgid "Clear Password?"
msgstr "Kosongkan Kata Sandi?"
msgctxt "#30367"
msgid "Allow fast user switching password saving"
msgstr "Izinkan untuk menyimpan kata sandi dari pengguna yang telah beralih"
msgctxt "#30366"
msgid "Manually enter user details"
msgstr "Masukkan detail pengguna secara manual"
msgctxt "#30365"
msgid "Manual Login"
msgstr "Login Manual"
msgctxt "#30359"
msgid "Building full image list"
msgstr "Membangun daftar gambar penuh"
msgctxt "#30358"
msgid "Retreiving remote image list"
msgstr "Menerima daftar gambar jarak jauh"
msgctxt "#30357"
msgid "Processing existing image list"
msgstr "Memproses gambar yang telah ada"
msgctxt "#30356"
msgid "Loading existing image list"
msgstr "Muat gambar yang telah ada"
msgctxt "#30355"
msgid "Kodi Settings->Services->Allow remote control via HTTP"
msgstr "Pengaturan Kodi->Layanan->Izinkan kendali jarak jauh HTTP"
msgctxt "#30354"
msgid "Go To Series"
msgstr "Pergi ke Seri"
msgctxt "#30321"
msgid " - Album Artists"
msgstr "- Artis Album"
msgctxt "#30319"
msgid "Music - All Album Artists"
msgstr "Musik - Semua Artis Album"
msgctxt "#30351"
msgid "Music - Recently Played"
msgstr "Musik - Baru-baru ini diputar"
msgctxt "#30349"
msgid " - Recently Played"
msgstr "- Baru-baru ini diputar"
msgctxt "#30348"
msgid "Add user ratings"
msgstr "Tambahkan rating pengguna"
msgctxt "#30347"
msgid "Getting Existing Images"
msgstr "Mengambil gambar yang telah ada"
msgctxt "#30346"
msgid "Deleteing Cached Images"
msgstr "Menghapus Gambar yang di-cache"
msgctxt "#30345"
msgid "Cache Jellyfin server data requests"
msgstr "Cache permintaan server data Jellyfin"
msgctxt "#30344"
msgid "Number of images removed from cache"
msgstr "Jumlah gambar yang dihapus dari cache"
msgctxt "#30343"
msgid "Changes Require Kodi Restart"
msgstr "Perubahan Memerlukan Pemuatan Ulang Kodi"
msgctxt "#30342"
msgid "New content check interval (0 = disabled)"
msgstr "Interval pemeriksaan konten baru (0 = dimatikan)"
msgctxt "#30340"
msgid "Group movies into collections"
msgstr "Gabungkan film ke dalam koleksi"
msgctxt "#30334"
msgid "Use JellyCon context menu"
msgstr "Gunakan konteks menu JellyCon"
msgctxt "#30333"
msgid "Cache artwork in the background"
msgstr "Cache karya seni di latar belakang"
msgctxt "#30332"
msgid "Stop media playback on screensaver activation"
msgstr "Hentikan pemutaran media ketika screensaver aktif"
msgctxt "#30328"
msgid "Show empty folders (shows, seasons, collections)"
msgstr "Tampilkan folder kosong (acara, musim, koleksi)"
msgctxt "#30330"
msgid "Show change user dialog"
msgstr "Tampilkan dialog pergantian pengguna"
msgctxt "#30329"
msgid "Screensaver"
msgstr "Screensaver"
msgctxt "#30327"
msgid "Go To Season"
msgstr "Pergi ke Musim"
msgctxt "#30325"
msgid " - Genres"
msgstr "- Genre"
msgctxt "#30323"
msgid "Artists"
msgstr "Artis"
msgctxt "#30322"
msgid "Auto resume"
msgstr "Lanjutkan otomatis"
msgctxt "#30316"
msgid "Connection Error"
msgstr "Kesalahan Koneksi"
msgctxt "#30311"
msgid "Library - "
msgstr "Pustaka -"
msgctxt "#30310"
msgid "Enable Jellyfin remote control"
msgstr "Nyalakan kendali jarak jauh Jellyfin"
msgctxt "#30308"
msgid "Select Trailer"
msgstr "Pilih Trailer"
msgctxt "#30307"
msgid "Play Trailer"
msgstr "Mulai Trailer"
msgctxt "#30304"
msgid "Cached Jellyfin images : "
msgstr "Gambar Jellyfin yang di-cache:"
msgctxt "#30303"
msgid "Missing Jellyfin images : "
msgstr "Gambar Jellyfin yang hilang:"
msgctxt "#30302"
msgid "Existing images : "
msgstr "Gambar yang Ada:"
msgctxt "#30301"
msgid "Caching Images"
msgstr "Sedang Caching Gambar"
msgctxt "#30300"
msgid "Cache all Jellyfin images as local Kodi images?"
msgstr "Cache semua gambar Jellyfin sebagai gambar Kodi lokal?"
msgctxt "#30299"
msgid "Cache Images"
msgstr "Gambar Cache"
msgctxt "#30298"
msgid "Deleting Kodi Images"
msgstr "Menghapus Gambar Kodi"
msgctxt "#30295"
msgid "To use this feature you need HTTP control enabled"
msgstr "Anda perlu menyalakan kontrol HTTP untuk menggunakan fitur ini"
msgctxt "#30294"
msgid "Notice"
msgstr "Peringatan"
msgctxt "#30293"
msgid "Cache images"
msgstr "Gambar Cache"
msgctxt "#30292"
msgid "Select Subtitle Stream"
msgstr "Pilih Stream Subtitle"
msgctxt "#30291"
msgid "Select Audio Stream"
msgstr "Pilih Audio Stream"
msgctxt "#30289"
msgid "TV Shows - Genres"
msgstr "Acara TV - Genre"
msgctxt "#30281"
msgid "Refresh Cached Images"
msgstr "Segarkan Gambar yang Di-cache"
msgctxt "#30280"
msgid "Missing Title"
msgstr "Judul yang Hilang"
msgctxt "#30277"
msgid "JellyCon needs to prompt for resume on partily played items, Kodi can also prompt, this can cause a double prompt. Do you want to remove the double prompt?"
msgstr ""
"JellyCon perlu meminta resume pada item yang dimainkan sebagian, Kodi juga "
"dapat meminta, ini dapat menyebabkan prompt ganda. Apakah Anda ingin "
"menghapus perintah ganda?"
msgctxt "#30276"
msgid "Extra Resume Prompt Detected"
msgstr "Prompt Resume Ekstra Terdeteksi"
msgctxt "#30275"
msgid "Force Transcode"
msgstr "Paksa Transkode"
msgctxt "#30273"
msgid "Unset Favourite"
msgstr "Hapus Favorit"
msgctxt "#30272"
msgid "Set Favourite"
msgstr "Atur Favorit"
msgctxt "#30267"
msgid " - In Progress"
msgstr "- Sedang Ditonton"
msgctxt "#30266"
msgid "Movies - Pages"
msgstr "Film - Halaman"
msgctxt "#30264"
msgid "Episodes - In Progress"
msgstr "Episode - Sedang Ditonton"
msgctxt "#30260"
msgid "BoxSets"
msgstr "Set Kotak"
msgctxt "#30258"
msgid "Movies - In Progress"
msgstr "Film - Sedang ditonton"
msgctxt "#30251"
msgid "Movies - Genres"
msgstr "Film - Genre"
msgctxt "#30250"
msgid "Unknown"
msgstr "Tidak diketahui"
msgctxt "#30247"
msgid "Custom Widget Content"
msgstr "Konten Widget Kustom"
msgctxt "#30241"
msgid "Force transcode mpeg4"
msgstr "Paksa transkode mpeg4"
msgctxt "#30240"
msgid "Force transcode msmpeg4v3 (divx)"
msgstr "Paksa transkode msmmpeg4v3 (divx)"
msgctxt "#30239"
msgid "Force transcode mpeg2"
msgstr "Paksa transkode mpeg2"
msgctxt "#30238"
msgid "Playback stream options"
msgstr "Opsi stream pemutaran"
msgctxt "#30236"
msgid "Force transcode h265 (hevc)"
msgstr "Paksa transkode h265 (hevc)"
msgctxt "#30223"
msgid "Page Size and Filtering"
msgstr "Ukuran Halaman dan Filter"
msgctxt "#30220"
msgid "Prompt to delete movie after %"
msgstr "Tanyakan untuk menghapus film setelah %"
msgctxt "#30219"
msgid " - Prompt before play"
msgstr "- Tanyakan sebelum memutar"
msgctxt "#30218"
msgid "Play next episode after %"
msgstr "Putar episode selanjutnya setelah %"
msgctxt "#30217"
msgid "Prompt to delete episode after %"
msgstr "Tanyakan untuk menghapus episode setelah %"
msgctxt "#30215"
msgid "On playback stop (100% = disabled)"
msgstr "Henti ketika menonton (100% = dimatikan)"
msgctxt "#30214"
msgid "Events"
msgstr "Acara"
msgctxt "#30213"
msgid "Video force 8 bit"
msgstr "Paksa video 8 bit"
msgctxt "#30212"
msgid "Video max width"
msgstr "Lebar maks. video"
msgctxt "#30211"
msgid "Transcode options"
msgstr "Opsi transkode"
msgctxt "#30210"
msgid "HTTP direct stream"
msgstr "Stream HTTP langsung"
msgctxt "#30209"
msgid "File direct path"
msgstr "Jalur file langsung"
msgctxt "#30208"
msgid "Max stream bitrate (Kbits)"
msgstr "Maks. stream bitrate (Kbps)"
msgctxt "#30183"
msgid "Include people"
msgstr "Termasuk oran"
msgctxt "#30182"
msgid "Include media stream info"
msgstr "Termasuk info stream media"
msgctxt "#30181"
msgid "Include plot"
msgstr "Termasuk plot"
msgctxt "#30139"
msgid "No Media Type Set"
msgstr "Tidak ada tipe media yang ditetapkan"
msgctxt "#30125"
msgid "Done"
msgstr "Selesai"
msgctxt "#30121"
msgid "On resume"
msgstr "Sedang diteruskan"
msgctxt "#30120"
msgid "Show load progress"
msgstr "Tampilkan progres muat"
msgctxt "#30118"
msgid "Add resume percent to names"
msgstr "Tambahkan persen resume ke nama"
msgctxt "#30116"
msgid "Add unwatched counts to names"
msgstr "Tambahkan jumlah yang belum ditonton ke nama"
msgctxt "#30114"
msgid "Jump back seconds"
msgstr "Kembali beberapa detik"
msgctxt "#30112"
msgid "Loading Content"
msgstr "Memuat konten"
msgctxt "#30063"
msgid "N/A"
msgstr "Tidak ada"
msgctxt "#30053"
msgid "Waiting for server to delete"
msgstr "Menunggu server untuk menghapus"
msgctxt "#30027"
msgid "Enable debug logging"
msgstr "Nyalakan debug logging"
msgctxt "#30026"
msgid "Widget item select action"
msgstr "Aksi ketika item widget terpilih"
msgctxt "#30020"
msgid "Flatten single season"
msgstr "Ratakan musim tunggal"
msgctxt "#30019"
msgid "Filtered episode name format"
msgstr "Format penamaan episode terfilter"
msgctxt "#30018"
msgid "Number of items to show in filtered lists"
msgstr "Jumlah item yang ditunjukkan di daftar terfilter"
msgctxt "#30012"
msgid "[Change user]"
msgstr "[Ganti pengguna]"
msgctxt "#30011"
msgid "[Detect local server]"
msgstr "[Deteksi server lokal]"
msgctxt "#30010"
msgid "Number of performance profiles to capture"
msgstr "Jumlah profil performa"
msgctxt "#30000"
msgid "Host"
msgstr "Host"

View File

@@ -1,7 +1,7 @@
msgid ""
msgstr ""
"PO-Revision-Date: 2022-06-28 13:22+0000\n"
"Last-Translator: Michele Fattoruso <michele.fattoruso@gmail.com>\n"
"PO-Revision-Date: 2022-08-17 22:11+0000\n"
"Last-Translator: momphucker <weblate@mailbox.enricomarogna.com>\n"
"Language-Team: Italian <https://translate.jellyfin.org/projects/jellycon/"
"jellycon/it/>\n"
"Language: it\n"
@@ -9,11 +9,11 @@ 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.10.1\n"
"X-Generator: Weblate 4.13.1\n"
msgctxt "#30120"
msgid "Show load progress"
msgstr "Mostra avanzamento del caricamento"
msgstr "Mostra progressione del caricamento"
msgctxt "#30118"
msgid "Add resume percent to names"
@@ -431,7 +431,7 @@ msgctxt "#30277"
msgid "JellyCon needs to prompt for resume on partily played items, Kodi can also prompt, this can cause a double prompt. Do you want to remove the double prompt?"
msgstr ""
"JellyCon richiede una finestra per continuare la riproduzione di elementi, "
"anche Kodi può richiedere una finestra, causando lapertura di una doppia "
"anche Kodi può richiedere una finestra, causando lapertura di una doppia "
"finestra. Vuoi rimuovere la doppia finestra?"
msgctxt "#30213"
@@ -441,3 +441,43 @@ msgstr "Forza video 8 bit"
msgctxt "#30114"
msgid "Jump back seconds"
msgstr "Riavvolgi secondi"
msgctxt "#30331"
msgid "Movies per page"
msgstr "Film per pagina"
msgctxt "#30329"
msgid "Screensaver"
msgstr "Salvaschermo"
msgctxt "#30337"
msgid "Song"
msgstr "Canzone"
msgctxt "#30327"
msgid "Go To Season"
msgstr "Vai Alla Stagione"
msgctxt "#30325"
msgid " - Genres"
msgstr "- Generi"
msgctxt "#30323"
msgid "Artists"
msgstr "Artisti"
msgctxt "#30311"
msgid "Library - "
msgstr "Libreria -"
msgctxt "#30296"
msgid "Delete"
msgstr "Elimina"
msgctxt "#30288"
msgid " - Latest"
msgstr "- Ultimo"
msgctxt "#30280"
msgid "Missing Title"
msgstr "Titolo Mancante"

View File

@@ -1,6 +1,6 @@
msgid ""
msgstr ""
"PO-Revision-Date: 2022-06-08 04:22+0000\n"
"PO-Revision-Date: 2022-08-10 20:22+0000\n"
"Last-Translator: WWWesten <wwwesten@gmail.com>\n"
"Language-Team: Kazakh <https://translate.jellyfin.org/projects/jellycon/"
"jellycon/kk/>\n"
@@ -1101,3 +1101,7 @@ msgstr "Jyldam qosylu"
msgctxt "#30323"
msgid "Artists"
msgstr "Oryndauşylar"
msgctxt "#30445"
msgid "Continue Watching"
msgstr "Qaraudy jalğastyru"

View File

@@ -1,6 +1,6 @@
msgid ""
msgstr ""
"PO-Revision-Date: 2022-06-08 04:22+0000\n"
"PO-Revision-Date: 2022-08-10 20:22+0000\n"
"Last-Translator: WWWesten <wwwesten@gmail.com>\n"
"Language-Team: Russian <https://translate.jellyfin.org/projects/jellycon/"
"jellycon/ru/>\n"
@@ -1098,3 +1098,7 @@ msgstr "Быстрое подключение"
msgctxt "#30323"
msgid "Artists"
msgstr "Исполнители"
msgctxt "#30445"
msgid "Continue Watching"
msgstr "Продолжение просмотра"

View File

@@ -327,6 +327,8 @@ def process_directory(url, progress, params, use_cache_data=False):
'?userId={}'.format(user_id) +
'&Fields={}'.format(default_filters) +
'&format=json')
if not show_empty_folders:
u = u + '&isMissing=False'
elif item_details.item_type == "Season":
u = ('/Shows/' + item_details.series_id +

View File

@@ -78,6 +78,8 @@ class API:
requests.delete(url, headers=self.headers, verify=self.verify_cert)
def authenticate(self, auth_data):
# Always force create fresh headers during authentication
self.create_headers(True)
response = self.post('/Users/AuthenticateByName', auth_data)
token = response.get('AccessToken')
if token:
@@ -90,10 +92,10 @@ class API:
log.error('Unable to authenticate to Jellyfin server')
return {}
def create_headers(self):
def create_headers(self, force=False):
# If the headers already exist with an auth token, return
if self.headers and 'x-mediabrowser-token' in self.headers:
# If the headers already exist with an auth token, return unless we're regenerating
if self.headers and 'x-mediabrowser-token' in self.headers and force is False:
return
headers = {}
@@ -116,8 +118,8 @@ class API:
headers['x-emby-authorization'] = authorization
# If we have a valid token, ensure it's included in the headers
if self.token:
# If we have a valid token, ensure it's included in the headers unless we're regenerating
if self.token and force is False:
headers['x-mediabrowser-token'] = self.token
else:
# Check for updated credentials since initialization

View File

@@ -554,6 +554,18 @@ def display_menu(params):
def show_global_types(params):
handle = int(sys.argv[1])
user_id = get_current_user_id()
continue_watching_url_params = {
"Fields": get_default_filters(),
"ImageTypeLimit": 1,
}
continue_watching_url = get_jellyfin_url("/Users/{}/Items/Resume".format(user_id), continue_watching_url_params)
add_menu_directory_item(translate_string(30445),
"plugin://plugin.video.jellycon/?mode=GET_CONTENT&url=" + quote(continue_watching_url) +
"&media_type=movies" +
"&name_format="+quote("Episode|episode_name_format"))
add_menu_directory_item(translate_string(30256),
"plugin://plugin.video.jellycon/?mode=SHOW_ADDON_MENU&type=global_list_movies")
add_menu_directory_item(translate_string(30261),

View File

@@ -203,6 +203,8 @@ def check_server(force=False, change_user=False, notify=False):
# do we need to change the user
current_username = settings.getSetting('username')
user_details = load_user_details()
home_window = HomeWindow()
home_window.set_property('user_name', current_username)
# if asked or we have no current user then show user selection screen
if something_changed or change_user or len(current_username) == 0 or not user_details:
@@ -228,8 +230,6 @@ def check_server(force=False, change_user=False, notify=False):
secured = selected_user.getProperty("secure") == "true"
manual = selected_user.getProperty("manual") == "true"
home_window = HomeWindow()
# If using a manual login, ask for username
if manual:
kb = xbmc.Keyboard()
@@ -244,26 +244,32 @@ def check_server(force=False, change_user=False, notify=False):
return
home_window.set_property('user_name', selected_user_name)
settings.setSetting('username', selected_user_name)
user_details = load_user_details()
# Ask for password if user has one
password = ''
if secured and not user_details.get('token'):
kb = xbmc.Keyboard()
kb.setHeading(translate_string(30006))
kb.setHiddenInput(True)
kb.doModal()
if kb.isConfirmed():
password = kb.getText()
if not user_details:
# Ask for password if user has one
password = ''
if secured and not user_details.get('token'):
kb = xbmc.Keyboard()
kb.setHeading(translate_string(30006))
kb.setHiddenInput(True)
kb.doModal()
if kb.isConfirmed():
password = kb.getText()
auth_payload = {'username': selected_user_name, 'pw': password}
auth = api.authenticate(auth_payload)
auth_payload = {'username': selected_user_name, 'pw': password}
auth = api.authenticate(auth_payload)
if something_changed:
home_window = HomeWindow()
home_window.clear_property("jellycon_widget_reload")
token = auth.get('AccessToken')
user_id = auth.get('User').get('Id')
if auth:
token = auth.get('AccessToken')
user_id = auth.get('User').get('Id')
else:
token = user_details.get('token')
user_id = user_details.get('user_id')
save_user_details(selected_user_name, user_id, token)
xbmc.executebuiltin("ActivateWindow(Home)")
if "estuary_jellycon" in xbmc.getSkinDir():

View File

@@ -143,7 +143,10 @@ def translate_string(string_id):
def get_device_id():
window = HomeWindow()
username = window.get_property('username')
username = window.get_property('user_name')
if not username:
settings = xbmcaddon.Addon()
username = settings.getSetting('username')
client_id = window.get_property("client_id")
hashed_name = hashlib.md5(username.encode()).hexdigest()
@@ -226,6 +229,10 @@ def load_user_details():
return {}
user_data = auth_data.get(user_name, {})
# User doesn't exist yet
if not user_data:
return {}
user_id = user_data.get('user_id')
auth_token = user_data.get('token')