140 Commits

Author SHA1 Message Date
mcarlton00
c963176bba Merge pull request #398 from jellyfin/prepare-0.9.0
Some checks failed
CodeQL Analysis / analyze (python, 3.9) (push) Has been cancelled
Release Drafter / Update release draft (push) Has been cancelled
Test JellyCon / test (3.9) (push) Has been cancelled
Build JellyCon / build (py2) (push) Has been cancelled
Build JellyCon / build (py3) (push) Has been cancelled
Prepare for release v0.9.0
2026-01-02 10:54:04 -05:00
jellyfin-bot
06ffff3031 bump version to 0.9.0 2026-01-02 15:14:54 +00:00
ittelicra
2021f76dfd Translated using Weblate (Italian)
Currently translated at 100.0% (302 of 302 strings)

Translation: Jellycon/Jellycon
Translate-URL: https://translate.jellyfin.org/projects/jellycon/jellycon/it/
2026-01-02 12:03:37 +00:00
Stelios Karakapzoudis
112e244fbc Translated using Weblate (Greek)
Currently translated at 94.3% (285 of 302 strings)

Translation: Jellycon/Jellycon
Translate-URL: https://translate.jellyfin.org/projects/jellycon/jellycon/el/
2025-12-31 00:05:53 +00:00
mcarlton00
a655d49ce3 Merge pull request #396 from manuelschneider/websocket-renderer-issue
Fix websocket reconnects
2025-12-29 12:23:00 -05:00
mcarlton00
ddb47065bb Merge pull request #395 from mcarlton00/prioritize-filtered-limits
Ensure the filtered limit takes precedence over page limit
2025-12-29 11:45:37 -05:00
Spillutvikler
e94873c011 Translated using Weblate (Norwegian Bokmål)
Currently translated at 100.0% (302 of 302 strings)

Translation: Jellycon/Jellycon
Translate-URL: https://translate.jellyfin.org/projects/jellycon/jellycon/nb_NO/
2025-12-29 13:05:53 +00:00
ilker
8f07d44a4d Translated using Weblate (Turkish)
Currently translated at 100.0% (302 of 302 strings)

Translation: Jellycon/Jellycon
Translate-URL: https://translate.jellyfin.org/projects/jellycon/jellycon/tr/
2025-12-29 13:05:52 +00:00
Gargotaire
d63b4321c2 Translated using Weblate (Catalan)
Currently translated at 100.0% (302 of 302 strings)

Translation: Jellycon/Jellycon
Translate-URL: https://translate.jellyfin.org/projects/jellycon/jellycon/ca/
2025-12-23 08:05:53 +00:00
rimasx
b1c9f3877b Translated using Weblate (Estonian)
Currently translated at 96.0% (290 of 302 strings)

Translation: Jellycon/Jellycon
Translate-URL: https://translate.jellyfin.org/projects/jellycon/jellycon/et/
2025-12-23 08:05:52 +00:00
Gallyam Biktashev
d49eac5666 Translated using Weblate (Russian)
Currently translated at 100.0% (302 of 302 strings)

Translation: Jellycon/Jellycon
Translate-URL: https://translate.jellyfin.org/projects/jellycon/jellycon/ru/
2025-12-23 08:05:52 +00:00
Manuel Schneider
a24f921804 use libs reconnect functionality 2025-12-20 17:15:29 +01:00
Stefano Mazzoleni
f1d86743f3 Translated using Weblate (Italian)
Currently translated at 98.6% (298 of 302 strings)

Translation: Jellycon/Jellycon
Translate-URL: https://translate.jellyfin.org/projects/jellycon/jellycon/it/
2025-12-20 09:55:08 +00:00
pol busquets
0b6c14b540 Translated using Weblate (Catalan)
Currently translated at 100.0% (302 of 302 strings)

Translation: Jellycon/Jellycon
Translate-URL: https://translate.jellyfin.org/projects/jellycon/jellycon/ca/
2025-12-18 13:55:10 +00:00
Antti Pikkuaho
10c6b116da Translated using Weblate (Finnish)
Currently translated at 100.0% (302 of 302 strings)

Translation: Jellycon/Jellycon
Translate-URL: https://translate.jellyfin.org/projects/jellycon/jellycon/fi/
2025-12-18 13:55:09 +00:00
pol busquets
17c3ed2625 Translated using Weblate (Spanish)
Currently translated at 100.0% (302 of 302 strings)

Translation: Jellycon/Jellycon
Translate-URL: https://translate.jellyfin.org/projects/jellycon/jellycon/es/
2025-12-18 13:55:09 +00:00
Fjuro
296acefb09 Translated using Weblate (Czech)
Currently translated at 100.0% (302 of 302 strings)

Translation: Jellycon/Jellycon
Translate-URL: https://translate.jellyfin.org/projects/jellycon/jellycon/cs/
2025-12-15 22:55:10 +00:00
Kityn
2bb737bfd9 Translated using Weblate (Polish)
Currently translated at 100.0% (302 of 302 strings)

Translation: Jellycon/Jellycon
Translate-URL: https://translate.jellyfin.org/projects/jellycon/jellycon/pl/
2025-12-15 22:55:09 +00:00
kscop-n1
053eb71967 Translated using Weblate (Ukrainian)
Currently translated at 100.0% (302 of 302 strings)

Translation: Jellycon/Jellycon
Translate-URL: https://translate.jellyfin.org/projects/jellycon/jellycon/uk/
2025-12-15 22:55:09 +00:00
tct123
ed2190c03d Translated using Weblate (German)
Currently translated at 100.0% (302 of 302 strings)

Translation: Jellycon/Jellycon
Translate-URL: https://translate.jellyfin.org/projects/jellycon/jellycon/de/
2025-12-15 22:55:08 +00:00
Translation expert
cd210900f8 Translated using Weblate (Arabic)
Currently translated at 100.0% (302 of 302 strings)

Translation: Jellycon/Jellycon
Translate-URL: https://translate.jellyfin.org/projects/jellycon/jellycon/ar/
2025-12-15 22:55:08 +00:00
無情天
b2d09191f3 Translated using Weblate (Chinese (Simplified Han script))
Currently translated at 100.0% (302 of 302 strings)

Translation: Jellycon/Jellycon
Translate-URL: https://translate.jellyfin.org/projects/jellycon/jellycon/zh_Hans/
2025-12-15 22:55:08 +00:00
Kityn
19e71f8e6e Translated using Weblate (Polish)
Currently translated at 100.0% (301 of 301 strings)

Translation: Jellycon/Jellycon
Translate-URL: https://translate.jellyfin.org/projects/jellycon/jellycon/pl/
2025-12-14 21:55:09 +00:00
Translation expert
45ab93c527 Translated using Weblate (Arabic)
Currently translated at 100.0% (301 of 301 strings)

Translation: Jellycon/Jellycon
Translate-URL: https://translate.jellyfin.org/projects/jellycon/jellycon/ar/
2025-12-14 21:55:09 +00:00
Jesus Oziel Duran Gonzalez
4c58546fd6 Translated using Weblate (Spanish)
Currently translated at 100.0% (301 of 301 strings)

Translation: Jellycon/Jellycon
Translate-URL: https://translate.jellyfin.org/projects/jellycon/jellycon/es/
2025-12-14 21:55:09 +00:00
mcarlton00
854d72fe15 Ensure the filtered limit takes precedence over page limit 2025-12-13 11:20:08 -05:00
mcarlton00
786f01cd7e Merge pull request #393 from mcarlton00/show_page_limit
Add a page limit setting for tv shows
2025-12-13 08:52:31 -05:00
A Boci
69a95f04d7 Translated using Weblate (Albanian)
Currently translated at 4.0% (12 of 297 strings)

Translation: Jellycon/Jellycon
Translate-URL: https://translate.jellyfin.org/projects/jellycon/jellycon/sq/
2025-12-13 11:55:08 +00:00
mcarlton00
7ef4d0c7bd Add a page limit setting for tv shows 2025-12-06 12:11:47 -05:00
mcarlton00
9c1d34d148 Merge pull request #381 from Aydanill/master
Add New Widgets
2025-12-06 09:08:09 -05:00
mcarlton00
3d3bab2fec Merge pull request #384 from loztcf/fix-subtitle-burn-in
fix subtitle burn in
2025-12-06 08:37:28 -05:00
mcarlton00
5bac2f8e87 Merge pull request #385 from AndryYosua/fix/subtitle_sdh_jellyfin_v10.9.0
fix sdh/cc/hi subtitle for jellyfin > v10.9.0
2025-12-06 08:36:38 -05:00
kscop-n1
d54e40306b Translated using Weblate (Ukrainian)
Currently translated at 100.0% (297 of 297 strings)

Translation: Jellycon/Jellycon
Translate-URL: https://translate.jellyfin.org/projects/jellycon/jellycon/uk/
2025-12-01 22:27:43 +00:00
Eray
7699a2820d Translated using Weblate (Turkish)
Currently translated at 100.0% (297 of 297 strings)

Translation: Jellycon/Jellycon
Translate-URL: https://translate.jellyfin.org/projects/jellycon/jellycon/tr/
2025-11-17 08:43:31 +00:00
Bastinator-school
2b9be31e6e Translated using Weblate (Danish)
Currently translated at 100.0% (297 of 297 strings)

Translation: Jellycon/Jellycon
Translate-URL: https://translate.jellyfin.org/projects/jellycon/jellycon/da/
2025-11-03 16:51:54 +00:00
Translation expert
b67b9c0e9d Translated using Weblate (Arabic)
Currently translated at 100.0% (297 of 297 strings)

Translation: Jellycon/Jellycon
Translate-URL: https://translate.jellyfin.org/projects/jellycon/jellycon/ar/
2025-11-03 16:51:53 +00:00
Battseren Badral
4ecba55765 Translated using Weblate (Mongolian)
Currently translated at 0.3% (1 of 297 strings)

Translation: Jellycon/Jellycon
Translate-URL: https://translate.jellyfin.org/projects/jellycon/jellycon/mn/
2025-10-26 00:17:02 +00:00
rimasx
58c8c90099 Translated using Weblate (Estonian)
Currently translated at 95.2% (283 of 297 strings)

Translation: Jellycon/Jellycon
Translate-URL: https://translate.jellyfin.org/projects/jellycon/jellycon/et/
2025-10-09 12:51:25 +00:00
rimasx
1d378cc52d Translated using Weblate (Estonian)
Currently translated at 94.2% (280 of 297 strings)

Translation: Jellycon/Jellycon
Translate-URL: https://translate.jellyfin.org/projects/jellycon/jellycon/et/
2025-10-08 11:47:38 +00:00
rimasx
f108a84b4f Translated using Weblate (Estonian)
Currently translated at 94.2% (280 of 297 strings)

Translation: Jellycon/Jellycon
Translate-URL: https://translate.jellyfin.org/projects/jellycon/jellycon/et/
2025-10-08 11:39:57 +00:00
rimasx
e79c8ba10a Translated using Weblate (Estonian)
Currently translated at 94.2% (280 of 297 strings)

Translation: Jellycon/Jellycon
Translate-URL: https://translate.jellyfin.org/projects/jellycon/jellycon/et/
2025-10-08 08:51:25 +00:00
rimasx
a5021d4686 Translated using Weblate (Estonian)
Currently translated at 71.7% (213 of 297 strings)

Translation: Jellycon/Jellycon
Translate-URL: https://translate.jellyfin.org/projects/jellycon/jellycon/et/
2025-10-07 07:56:37 +00:00
Pavel Miniutka
8fa027e98f Translated using Weblate (Belarusian)
Currently translated at 3.7% (11 of 297 strings)

Translation: Jellycon/Jellycon
Translate-URL: https://translate.jellyfin.org/projects/jellycon/jellycon/be/
2025-10-05 02:38:25 +00:00
S H
75437d8f66 Translated using Weblate (Japanese)
Currently translated at 63.6% (189 of 297 strings)

Translation: Jellycon/Jellycon
Translate-URL: https://translate.jellyfin.org/projects/jellycon/jellycon/ja/
2025-09-23 16:39:20 +00:00
Shinji Hayakawa
b6f374af2d Translated using Weblate (Japanese)
Currently translated at 62.9% (187 of 297 strings)

Translation: Jellycon/Jellycon
Translate-URL: https://translate.jellyfin.org/projects/jellycon/jellycon/ja/
2025-09-23 06:18:02 +00:00
Shinji Hayakawa
00e751373b Translated using Weblate (Japanese)
Currently translated at 59.5% (177 of 297 strings)

Translation: Jellycon/Jellycon
Translate-URL: https://translate.jellyfin.org/projects/jellycon/jellycon/ja/
2025-09-23 01:29:53 +00:00
Shinji Hayakawa
e7592dc4f5 Translated using Weblate (Japanese)
Currently translated at 59.2% (176 of 297 strings)

Translation: Jellycon/Jellycon
Translate-URL: https://translate.jellyfin.org/projects/jellycon/jellycon/ja/
2025-09-23 01:29:51 +00:00
Shinji Hayakawa
90627f177b Translated using Weblate (Japanese)
Currently translated at 58.2% (173 of 297 strings)

Translation: Jellycon/Jellycon
Translate-URL: https://translate.jellyfin.org/projects/jellycon/jellycon/ja/
2025-09-22 23:10:28 +00:00
Jan Zachar
dd5d72c607 Translated using Weblate (Belarusian)
Currently translated at 3.7% (11 of 297 strings)

Translation: Jellycon/Jellycon
Translate-URL: https://translate.jellyfin.org/projects/jellycon/jellycon/be/
2025-09-22 12:36:37 +00:00
Khalsior
12a32c0793 Translated using Weblate (Italian)
Currently translated at 100.0% (297 of 297 strings)

Translation: Jellycon/Jellycon
Translate-URL: https://translate.jellyfin.org/projects/jellycon/jellycon/it/
2025-09-22 12:36:37 +00:00
Ärik
4d8df33a0a Translated using Weblate (Swedish)
Currently translated at 100.0% (297 of 297 strings)

Translation: Jellycon/Jellycon
Translate-URL: https://translate.jellyfin.org/projects/jellycon/jellycon/sv/
2025-09-10 20:11:05 +00:00
Andry Yosua
eecf1d3fe2 fix sdh/cc/hi subtitle for jellyfin > v10.9.0
**Conditon:**
- i have movie with these subtitle file
	- MovieName.en.srt
	- MovieName.en.sdh.srt
- i have jellyfin server 10.10.7
- i have kodi 21.2

**Expected:**
- i can choose between **english** subtitle and **english sdh/cc/hi**
subtitle

**Actual:**
- i do not have an option to choose between **english sdh/cc/hi** and
**english** subtitle
- i can only choose english subtitle

**Cause**
[jellyfin release
v10.9.0](https://github.com/jellyfin/jellyfin/releases/tag/v10.9.0) -
[Add hearing impaired subtitle stream
indicator](https://github.com/jellyfin/jellyfin/pull/7379) introduce new
update for common naming convention for external hearing-impaired /
close captioned / deaf hearing subtitles

this PR fix problem caused by those release update following [kodi
naming convention for closed
captions](https://kodi.wiki/view/Settings/Player/Subtitles#Enable_parsing_for_closed_captions)

Question:
- should i keep compatibilty for jellyfin release before v10.9.0?
2025-08-31 01:16:59 +07:00
bolaykim
056948d33d Translated using Weblate (Turkish)
Currently translated at 98.9% (294 of 297 strings)

Translation: Jellycon/Jellycon
Translate-URL: https://translate.jellyfin.org/projects/jellycon/jellycon/tr/
2025-08-25 21:36:51 +00:00
spurdl
cc508cdfa5 Translated using Weblate (Finnish)
Currently translated at 100.0% (297 of 297 strings)

Translation: Jellycon/Jellycon
Translate-URL: https://translate.jellyfin.org/projects/jellycon/jellycon/fi/
2025-08-23 15:01:43 +00:00
aniara001
ff1a6df0e8 Translated using Weblate (Swedish)
Currently translated at 97.9% (291 of 297 strings)

Translation: Jellycon/Jellycon
Translate-URL: https://translate.jellyfin.org/projects/jellycon/jellycon/sv/
2025-08-13 06:51:20 +00:00
Julio García
11e9221206 Translated using Weblate (Spanish)
Currently translated at 100.0% (297 of 297 strings)

Translation: Jellycon/Jellycon
Translate-URL: https://translate.jellyfin.org/projects/jellycon/jellycon/es/
2025-08-09 09:34:41 +00:00
Gallyam Biktashev
737d86faaf Translated using Weblate (Russian)
Currently translated at 100.0% (297 of 297 strings)

Translation: Jellycon/Jellycon
Translate-URL: https://translate.jellyfin.org/projects/jellycon/jellycon/ru/
2025-08-04 17:49:15 +00:00
Fjuro
5229b70e5e Translated using Weblate (Czech)
Currently translated at 100.0% (297 of 297 strings)

Translation: Jellycon/Jellycon
Translate-URL: https://translate.jellyfin.org/projects/jellycon/jellycon/cs/
2025-08-03 21:36:14 +00:00
Andreas Laufer
f151f5ae19 fix subtitle burn in, add missing SubtitleMethod parameter 2025-08-03 14:25:46 +02:00
madman38
a4d88c72a4 Translated using Weblate (Turkish)
Currently translated at 96.9% (288 of 297 strings)

Translation: Jellycon/Jellycon
Translate-URL: https://translate.jellyfin.org/projects/jellycon/jellycon/tr/
2025-07-30 19:05:31 +00:00
Gargotaire
f303314237 Translated using Weblate (Catalan)
Currently translated at 100.0% (297 of 297 strings)

Translation: Jellycon/Jellycon
Translate-URL: https://translate.jellyfin.org/projects/jellycon/jellycon/ca/
2025-07-22 11:43:07 +00:00
czlevi7
a3928ca921 Translated using Weblate (Hungarian)
Currently translated at 100.0% (297 of 297 strings)

Translation: Jellycon/Jellycon
Translate-URL: https://translate.jellyfin.org/projects/jellycon/jellycon/hu/
2025-07-21 20:37:20 +00:00
Gargotaire
c3d13c7c69 Translated using Weblate (Catalan)
Currently translated at 100.0% (297 of 297 strings)

Translation: Jellycon/Jellycon
Translate-URL: https://translate.jellyfin.org/projects/jellycon/jellycon/ca/
2025-07-20 00:25:29 +00:00
madman38
4ffbb6bb8d Translated using Weblate (Turkish)
Currently translated at 95.9% (285 of 297 strings)

Translation: Jellycon/Jellycon
Translate-URL: https://translate.jellyfin.org/projects/jellycon/jellycon/tr/
2025-07-20 00:25:29 +00:00
madman38
4324659e67 Translated using Weblate (Turkish)
Currently translated at 90.2% (268 of 297 strings)

Translation: Jellycon/Jellycon
Translate-URL: https://translate.jellyfin.org/projects/jellycon/jellycon/tr/
2025-07-17 14:51:19 +00:00
Samuel Kouba
a564c52df0 Translated using Weblate (Czech)
Currently translated at 46.1% (137 of 297 strings)

Translation: Jellycon/Jellycon
Translate-URL: https://translate.jellyfin.org/projects/jellycon/jellycon/cs/
2025-07-12 21:51:18 +00:00
oofybruh9
1ac78e45d6 Translated using Weblate (Spanish)
Currently translated at 97.6% (290 of 297 strings)

Translation: Jellycon/Jellycon
Translate-URL: https://translate.jellyfin.org/projects/jellycon/jellycon/es/
2025-07-11 02:51:18 +00:00
Buiko32
1dc6879f2f Translated using Weblate (Italian)
Currently translated at 96.2% (286 of 297 strings)

Translation: Jellycon/Jellycon
Translate-URL: https://translate.jellyfin.org/projects/jellycon/jellycon/it/
2025-07-08 21:51:18 +00:00
Igor Darkov
6de9ead965 Translated using Weblate (Russian)
Currently translated at 96.2% (286 of 297 strings)

Translation: Jellycon/Jellycon
Translate-URL: https://translate.jellyfin.org/projects/jellycon/jellycon/ru/
2025-07-08 21:51:18 +00:00
Oatavandi
f4ccd1d56f Translated using Weblate (Tamil)
Currently translated at 100.0% (297 of 297 strings)

Translation: Jellycon/Jellycon
Translate-URL: https://translate.jellyfin.org/projects/jellycon/jellycon/ta/
2025-06-29 13:51:19 +00:00
Nirwan
1d103ad848 Translated using Weblate (Indonesian)
Currently translated at 100.0% (297 of 297 strings)

Translation: Jellycon/Jellycon
Translate-URL: https://translate.jellyfin.org/projects/jellycon/jellycon/id/
2025-06-28 11:51:17 +00:00
Sofyill
96d837732b hidden cherecter fix 2025-06-13 21:26:33 -04:00
Sofyill
3572dcc555 consistant service.py 2025-06-13 18:40:41 -04:00
Sofyill
b6b19f5a23 consistant menu_functions.py 2025-06-13 18:36:07 -04:00
Sofyill
bb1284deff updated strings.po 2025-06-13 18:30:52 -04:00
Sofyill
bc125bb0a3 updated menu_functions.py 2025-06-13 18:29:02 -04:00
Sofyill
3d30fcfc3e updated service.py 2025-06-13 18:25:06 -04:00
Sofyill
b5c9ecdf5c updated widgets.py 2025-06-13 18:16:01 -04:00
Aydanill
a09379f47b Update menu_functions.py 2025-06-12 19:01:00 -04:00
Aydanill
2a191a310e Update strings.po 2025-06-12 18:59:12 -04:00
Aydanill
50be0c9bde Update strings.po 2025-06-12 18:57:13 -04:00
Aydanill
5cfef6c6c0 Update menu_functions.py 2025-06-12 18:56:31 -04:00
Aydanill
5015a3b900 Update widgets.py 2025-06-12 18:56:07 -04:00
Aydanill
c7050ac9a1 Update service.py 2025-06-12 18:55:26 -04:00
Aydanill
a0c192e567 Update strings.po 2025-06-12 18:48:30 -04:00
Aydanill
06c08d76e7 Update menu_functions.py 2025-06-12 18:42:35 -04:00
Aydanill
0ea4a2e272 Update widgets.py 2025-06-12 18:42:02 -04:00
Aydanill
3c51fd3e71 Update service.py 2025-06-12 18:41:26 -04:00
Gargotaire
52ae591b80 Translated using Weblate (Catalan)
Currently translated at 100.0% (297 of 297 strings)

Translation: Jellycon/Jellycon
Translate-URL: https://translate.jellyfin.org/projects/jellycon/jellycon/ca/
2025-06-12 18:01:33 +00:00
NotNekodev
b17dd47436 Translated using Weblate (German)
Currently translated at 100.0% (297 of 297 strings)

Translation: Jellycon/Jellycon
Translate-URL: https://translate.jellyfin.org/projects/jellycon/jellycon/de/
2025-06-12 18:01:33 +00:00
Gargotaire
954d42c60a Translated using Weblate (Catalan)
Currently translated at 100.0% (297 of 297 strings)

Translation: Jellycon/Jellycon
Translate-URL: https://translate.jellyfin.org/projects/jellycon/jellycon/ca/
2025-06-10 08:01:34 +00:00
無情天
50d82cba1d Translated using Weblate (Chinese (Simplified Han script))
Currently translated at 100.0% (297 of 297 strings)

Translation: Jellycon/Jellycon
Translate-URL: https://translate.jellyfin.org/projects/jellycon/jellycon/zh_Hans/
2025-06-10 08:01:33 +00:00
Pere
8b65867836 Translated using Weblate (Catalan)
Currently translated at 100.0% (297 of 297 strings)

Translation: Jellycon/Jellycon
Translate-URL: https://translate.jellyfin.org/projects/jellycon/jellycon/ca/
2025-06-09 07:01:34 +00:00
aniara001
79d9ec82f8 Translated using Weblate (Swedish)
Currently translated at 97.6% (290 of 297 strings)

Translation: Jellycon/Jellycon
Translate-URL: https://translate.jellyfin.org/projects/jellycon/jellycon/sv/
2025-06-09 07:01:33 +00:00
ilker
80cdfc1f0c Translated using Weblate (Turkish)
Currently translated at 77.7% (231 of 297 strings)

Translation: Jellycon/Jellycon
Translate-URL: https://translate.jellyfin.org/projects/jellycon/jellycon/tr/
2025-06-09 07:01:33 +00:00
tct123
32249d1db1 Translated using Weblate (German)
Currently translated at 98.9% (294 of 297 strings)

Translation: Jellycon/Jellycon
Translate-URL: https://translate.jellyfin.org/projects/jellycon/jellycon/de/
2025-06-07 17:01:33 +00:00
Oskar
53333dd88b Translated using Weblate (German)
Currently translated at 95.9% (285 of 297 strings)

Translation: Jellycon/Jellycon
Translate-URL: https://translate.jellyfin.org/projects/jellycon/jellycon/de/
2025-06-05 12:32:22 +00:00
mcarlton00
065f6a2dce Merge pull request #378 from davembg/master
Include track details in audio playback
2025-05-31 10:45:56 -04:00
Cjfly
a07c04d786 Translated using Weblate (English (Middle))
Currently translated at 1.0% (3 of 297 strings)

Translation: Jellycon/Jellycon
Translate-URL: https://translate.jellyfin.org/projects/jellycon/jellycon/enm/
2025-05-28 22:01:33 +00:00
Battseren Badral
831fcf7e98 Added translation using Weblate (Mongolian) 2025-05-26 10:41:52 +00:00
nextlooper42
8e805b24f6 Translated using Weblate (Slovak)
Currently translated at 100.0% (297 of 297 strings)

Translation: Jellycon/Jellycon
Translate-URL: https://translate.jellyfin.org/projects/jellycon/jellycon/sk/
2025-05-22 15:01:32 +00:00
nextlooper42
1086ea52df Translated using Weblate (Slovak)
Currently translated at 97.3% (289 of 297 strings)

Translation: Jellycon/Jellycon
Translate-URL: https://translate.jellyfin.org/projects/jellycon/jellycon/sk/
2025-05-21 12:26:53 +00:00
alyaari
0f393227b0 Translated using Weblate (Arabic)
Currently translated at 99.3% (295 of 297 strings)

Translation: Jellycon/Jellycon
Translate-URL: https://translate.jellyfin.org/projects/jellycon/jellycon/ar/
2025-05-13 02:01:07 +00:00
r4dius
6987caa465 Translated using Weblate (French)
Currently translated at 100.0% (297 of 297 strings)

Translation: Jellycon/Jellycon
Translate-URL: https://translate.jellyfin.org/projects/jellycon/jellycon/fr/
2025-05-13 02:01:06 +00:00
Rustry
f0267a076b Translated using Weblate (Chinese (Simplified Han script))
Currently translated at 96.2% (286 of 297 strings)

Translation: Jellycon/Jellycon
Translate-URL: https://translate.jellyfin.org/projects/jellycon/jellycon/zh_Hans/
2025-05-13 02:01:06 +00:00
C2gl
733cc9780d Translated using Weblate (Dutch)
Currently translated at 100.0% (297 of 297 strings)

Translation: Jellycon/Jellycon
Translate-URL: https://translate.jellyfin.org/projects/jellycon/jellycon/nl/
2025-05-11 01:54:43 +00:00
Alejandro Delgado Folgado
4a8719a5f3 Translated using Weblate (Catalan)
Currently translated at 100.0% (297 of 297 strings)

Translation: Jellycon/Jellycon
Translate-URL: https://translate.jellyfin.org/projects/jellycon/jellycon/ca/
2025-05-08 01:53:57 +00:00
Pauloszz
41658cbc19 Translated using Weblate (Dutch)
Currently translated at 97.3% (289 of 297 strings)

Translation: Jellycon/Jellycon
Translate-URL: https://translate.jellyfin.org/projects/jellycon/jellycon/nl/
2025-05-06 15:59:27 +00:00
Samuel Tønnessen
f1af58d934 Translated using Weblate (Norwegian Bokmål)
Currently translated at 100.0% (297 of 297 strings)

Translation: Jellycon/Jellycon
Translate-URL: https://translate.jellyfin.org/projects/jellycon/jellycon/nb_NO/
2025-05-05 07:15:23 +00:00
Samuel Tønnessen
eb0ddca1c3 Translated using Weblate (Norwegian Bokmål)
Currently translated at 97.9% (291 of 297 strings)

Translation: Jellycon/Jellycon
Translate-URL: https://translate.jellyfin.org/projects/jellycon/jellycon/nb_NO/
2025-05-03 13:31:31 +00:00
Dave
38ff2607cf Update play_utils.py
added artist, album and track info to the shuffle feature
2025-05-02 16:52:45 -07:00
Kityn
3ae9a62c80 Translated using Weblate (Polish)
Currently translated at 100.0% (297 of 297 strings)

Translation: Jellycon/Jellycon
Translate-URL: https://translate.jellyfin.org/projects/jellycon/jellycon/pl/
2025-05-02 23:14:18 +00:00
Samuel Tønnessen
06d32fb9c2 Translated using Weblate (Norwegian Bokmål)
Currently translated at 100.0% (285 of 285 strings)

Translation: Jellycon/Jellycon
Translate-URL: https://translate.jellyfin.org/projects/jellycon/jellycon/nb_NO/
2025-05-02 09:31:14 +00:00
mcarlton00
fb96a34d8c Merge pull request #368 from Gorgorot38/skip_segments
Add segment skip ability
2025-04-15 07:45:12 -04:00
Fjuro
23b88f96b2 Translated using Weblate (Czech)
Currently translated at 39.6% (113 of 285 strings)

Translation: Jellycon/Jellycon
Translate-URL: https://translate.jellyfin.org/projects/jellycon/jellycon/cs/
2025-04-08 10:01:03 +00:00
emversch
4e58ccad8d Translated using Weblate (Dutch)
Currently translated at 100.0% (285 of 285 strings)

Translation: Jellycon/Jellycon
Translate-URL: https://translate.jellyfin.org/projects/jellycon/jellycon/nl/
2025-04-05 21:35:47 +00:00
Adnan Sönmez
c20b3913b5 Translated using Weblate (Turkish)
Currently translated at 80.7% (230 of 285 strings)

Translation: Jellycon/Jellycon
Translate-URL: https://translate.jellyfin.org/projects/jellycon/jellycon/tr/
2025-04-03 11:01:04 +00:00
myrad2267
36c20f30b1 Translated using Weblate (French)
Currently translated at 100.0% (285 of 285 strings)

Translation: Jellycon/Jellycon
Translate-URL: https://translate.jellyfin.org/projects/jellycon/jellycon/fr/
2025-04-03 11:01:03 +00:00
Alejandro Delgado Folgado
5b102372ff Translated using Weblate (Catalan)
Currently translated at 100.0% (285 of 285 strings)

Translation: Jellycon/Jellycon
Translate-URL: https://translate.jellyfin.org/projects/jellycon/jellycon/ca/
2025-03-20 10:55:28 -04:00
Alejandro Delgado Folgado
b33a365685 Translated using Weblate (Spanish)
Currently translated at 100.0% (285 of 285 strings)

Translation: Jellycon/Jellycon
Translate-URL: https://translate.jellyfin.org/projects/jellycon/jellycon/es/
2025-03-20 10:55:28 -04:00
fenix_vd
995f95e7bd Translated using Weblate (Russian)
Currently translated at 100.0% (285 of 285 strings)

Translation: Jellycon/Jellycon
Translate-URL: https://translate.jellyfin.org/projects/jellycon/jellycon/ru/
2025-03-20 10:55:28 -04:00
Gorgorot38
fb8adbe27c typos 2025-03-19 14:16:30 +01:00
Jonas Engen Larsen
035f946c05 Translated using Weblate (Norwegian Bokmål)
Currently translated at 99.6% (284 of 285 strings)

Translation: Jellycon/Jellycon
Translate-URL: https://translate.jellyfin.org/projects/jellycon/jellycon/nb_NO/
2025-03-18 20:01:01 -04:00
Gorgorot38
78ab2344be fix git feedback 2025-03-17 17:35:42 +01:00
Gorgorot38
aa799e32b6 Fix language 2025-03-17 17:32:09 +01:00
Gorgorot38
3e621f8f33 Refacto code
Add logs
Add support for recap + preview + commercial
2025-03-17 17:25:55 +01:00
Ace
52670e7b2b Translated using Weblate (Swedish)
Currently translated at 100.0% (285 of 285 strings)

Translation: Jellycon/Jellycon
Translate-URL: https://translate.jellyfin.org/projects/jellycon/jellycon/sv/
2025-03-16 09:00:30 -04:00
Gorgorot38
a70cbbcae1 Merge remote-tracking branch 'origin/master' into skip_segments 2025-03-02 16:45:46 +01:00
mcarlton00
1f0ea54629 Merge pull request #369 from Gorgorot38/mutli_subtitles_same_language
Fix bug with multiple external subtitles in the same languages
2025-02-28 18:46:01 -05:00
mcarlton00
15b36c15d7 Merge pull request #372 from jellyfin/prepare-0.8.3
Some checks failed
Build JellyCon / build (py2) (push) Has been cancelled
Build JellyCon / build (py3) (push) Has been cancelled
Prepare for release v0.8.3
2025-02-23 12:07:45 -05:00
jellyfin-bot
39daa502ad bump version to 0.8.3 2025-02-23 17:03:54 +00:00
mcarlton00
43dc2a956e Merge pull request #371 from jellyfin/fix-action
Swap legacy secrets for current secrets
2025-02-23 12:01:28 -05:00
Joshua M. Boniface
512556dfba Swap legacy secrets for current secrets 2025-02-23 11:46:11 -05:00
Gorgorot38
af54d611b1 fix return 2025-02-23 14:51:38 +01:00
mcarlton00
d214167402 Merge pull request #370 from jellyfin/prepare-0.8.2
Some checks failed
Build JellyCon / build (py2) (push) Has been cancelled
Build JellyCon / build (py3) (push) Has been cancelled
Prepare for release v0.8.2
2025-02-23 07:30:16 -05:00
jellyfin-bot
6f5fab57db bump version to 0.8.2 2025-02-23 12:27:28 +00:00
mcarlton00
bb73fd9192 Merge pull request #367 from jellyfin/fix-action
Fix action paths
2025-02-23 07:25:05 -05:00
Gorgorot38
39d16921ad Fix bug with multiple external subtitles in the same languages 2025-02-23 10:45:24 +01:00
Gorgorot38
761dc8e1c5 Add segment skip ability 2025-02-23 10:26:37 +01:00
Joshua M. Boniface
f20d0f9a69 Fix action paths 2025-02-22 22:22:22 -05:00
43 changed files with 5203 additions and 413 deletions

View File

@@ -47,18 +47,18 @@ jobs:
with:
switches: -vrptz
path: '*.zip'
remote_path: /srv/repository/incoming/kodi
remote_host: ${{ secrets.DEPLOY_HOST }}
remote_user: ${{ secrets.DEPLOY_USER }}
remote_key: ${{ secrets.DEPLOY_KEY }}
remote_path: /srv/incoming/kodi
remote_host: ${{ secrets.REPO_HOST }}
remote_user: ${{ secrets.REPO_USER }}
remote_key: ${{ secrets.REPO_KEY }}
- name: Add to Kodi repo and clean up
uses: appleboy/ssh-action@v1.2.0
with:
host: ${{ secrets.DEPLOY_HOST }}
username: ${{ secrets.DEPLOY_USER }}
key: ${{ secrets.DEPLOY_KEY }}
host: ${{ secrets.REPO_HOST }}
username: ${{ secrets.REPO_USER }}
key: ${{ secrets.REPO_KEY }}
script_stop: true
script: |
python3 /usr/local/bin/kodirepo add /srv/repository/incoming/kodi/plugin.video.jellycon+${{ matrix.py_version }}.zip --datadir /srv/repository/releases/client/kodi/${{ matrix.py_version }};
rm /srv/repository/incoming/kodi/plugin.video.jellycon+${{ matrix.py_version }}.zip;
python3 /usr/local/bin/kodirepo add /srv/incoming/kodi/plugin.video.jellycon+${{ matrix.py_version }}.zip --datadir /srv/repository/main/client/kodi/${{ matrix.py_version }};
rm /srv/incoming/kodi/plugin.video.jellycon+${{ matrix.py_version }}.zip;

View File

@@ -1,34 +1,19 @@
version: '0.8.1'
version: '0.9.0'
changelog: |-
:tada: New features and improvements
------------------------------------
+ New Tv Shows menu entry , Totally unwatched Tv Shows entries (#339) @hagaygo
+ Explicitly request non resumeable episodes on next up widget (#336) @hagaygo
+ Add setting option to hide item count limit on menu entries (#320) @hagaygo
+ nicer and kodi's style resume position on resume dialog (#321) @hagaygo
+ Add a page limit setting for tv shows (#393) @mcarlton00
+ Add New Widgets (#381) @Aydanill
+ Include track details in audio playback (#378) @davembg
+ Add segment skip ability (#368) @Gorgorot38
Bug Fixes
---------
+ Restore play next without prompt functionality (#362) @abysslynx
+ Fix youtube addon call for trailer playback (#351) @hagaygo
Code or Repo Maintenance
------------------------
+ Remove duplicate line of code (#319) @hagaygo
:arrow_up: Dependency updates
-----------------------------
+ Update kodistubs requirement from ~=20.0 to ~=21.0 (#356) @[dependabot[bot]](https://github.com/apps/dependabot)
CI & build changes
------------------
+ Remove py2 from testing CI (#365) @mcarlton00
+ Bump release-drafter/release-drafter from 6.0.0 to 6.1.0 (#361) @[dependabot[bot]](https://github.com/apps/dependabot)
+ Bump appleboy/ssh-action from 1.0.0 to 1.2.0 (#357) @[dependabot[bot]](https://github.com/apps/dependabot)
+ Bump release-drafter/release-drafter from 5.25.0 to 6.0.0 (#315) @[dependabot[bot]](https://github.com/apps/dependabot)
+ Bump github/codeql-action from 2 to 3 (#308) @[dependabot[bot]](https://github.com/apps/dependabot)
+ Bump actions/setup-python from 4 to 5 (#306) @[dependabot[bot]](https://github.com/apps/dependabot)
+ Bump actions/upload-artifact from 3 to 4 (#309) @[dependabot[bot]](https://github.com/apps/dependabot)
+ Fix websocket reconnects (#396) @manuelschneider
+ Ensure the filtered limit takes precedence over page limit (#395) @mcarlton00
+ fix subtitle burn in (#384) @loztcf
+ fix sdh/cc/hi subtitle for jellyfin > v10.9.0 (#385) @AndryYosua
+ Fix bug with multiple external subtitles in the same languages (#369) @Gorgorot38
dependencies:
py2:
- addon: 'xbmc.python'

View File

@@ -1,7 +1,8 @@
msgid ""
msgstr ""
"PO-Revision-Date: 2024-10-11 07:47+0000\n"
"Last-Translator: somechazzy <hasan2yasen@gmail.com>\n"
"PO-Revision-Date: 2025-12-15 22:55+0000\n"
"Last-Translator: Translation expert "
"<apk2000@users.noreply.translate.jellyfin.org>\n"
"Language-Team: Arabic <https://translate.jellyfin.org/projects/jellycon/"
"jellycon/ar/>\n"
"Language: ar\n"
@@ -10,7 +11,7 @@ msgstr ""
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=6; plural=n==0 ? 0 : n==1 ? 1 : n==2 ? 2 : n%100>=3 "
"&& n%100<=10 ? 3 : n%100>=11 ? 4 : 5;\n"
"X-Generator: Weblate 5.7.2\n"
"X-Generator: Weblate 5.14\n"
msgctxt "#30361"
msgid " - Programs"
@@ -581,7 +582,7 @@ msgstr "معالجة العنصر:"
msgctxt "#30125"
msgid "Done"
msgstr "انتهئ"
msgstr "تمت"
msgctxt "#30121"
msgid "On resume"
@@ -597,7 +598,7 @@ msgstr "إضافة نسبة الإستئناف إلى الأسماء"
msgctxt "#30114"
msgid "Jump back seconds"
msgstr "الرجوع الى الوراء بثواني"
msgstr "الرجوع ثواني للخلف"
msgctxt "#30113"
msgid "Retrieving Data"
@@ -613,7 +614,7 @@ msgstr "خدمات"
msgctxt "#30110"
msgid "Interface"
msgstr "واجهة المستخدم"
msgstr "واجهة"
msgctxt "#30092"
msgid "Warning: This action will delete the media files from the server."
@@ -837,7 +838,7 @@ msgstr "معدل نقل البت للصوت (Kbps)"
msgctxt "#30445"
msgid "Continue Watching"
msgstr "إستئناف المشاهدة"
msgstr "متابعةالمشاهدة"
msgctxt "#30402"
msgid "Add to Kodi Playlist"
@@ -945,7 +946,7 @@ msgstr "إعدادات التشغيل"
msgctxt "#30440"
msgid "Play next"
msgstr "شَغِّل التالي"
msgstr "تشغيل التالي"
msgctxt "#30448"
msgid "Shuffle"
@@ -1081,7 +1082,7 @@ msgstr "أقصى حجم لقائمة التشغيل"
msgctxt "#30438"
msgid "Play cinema intros"
msgstr "تشغيل المقدمات السينيمائية"
msgstr "تشغيل المقدمات السينمائية"
msgctxt "#30444"
msgid "Login using Quick Connect"
@@ -1129,7 +1130,7 @@ msgstr "الدمج بدلاً من الإستبدال (قد يتسبب بالت
msgctxt "#30436"
msgid "Speed test data size (MB)"
msgstr "حجم البيانات في إختبار سرعة الإتصال (ميجابايت)"
msgstr "حجم بيانات إختبار السرعة (م.ب)"
msgctxt "#30430"
msgid "Label"
@@ -1141,7 +1142,7 @@ msgstr "استخدم المعلومات المخزنة مؤقتاً للوِدج
msgctxt "#30449"
msgid "Instant Mix"
msgstr "خلطة سريعة"
msgstr "خلط سريع"
msgctxt "#30451"
msgid "Rewatch Days (0 = Disabled)"
@@ -1150,3 +1151,75 @@ msgstr "عدد الأيام لإعادة المشاهدة (0 = التعطيل)"
msgctxt "#30453"
msgid "Hide number of items to show on entry title"
msgstr "إخفِ عدد العناصر التي ستظهر على العنوان"
msgctxt "#30454"
msgid " - Totally Unwatched"
msgstr " اجمالي الغير مشاهد"
msgctxt "#30666"
msgid "Segment Skipper"
msgstr "تخطي القطاع"
msgctxt "#30671"
msgid "Credit Skipper"
msgstr "متخطي الثقة"
msgctxt "#30667"
msgid "Action to take"
msgstr "الإجراء الذي يجب اتخاذه"
msgctxt "#30668"
msgid "Start Offset (seconds)"
msgstr "وقت بدء الازاحة(بالثواني)"
msgctxt "#30669"
msgid "End Offset (seconds)"
msgstr "وقت نهاية الإزاحة(بالثواني)"
msgctxt "#30670"
msgid "Intro Skipper"
msgstr "تخطي المقدمة"
msgctxt "#30672"
msgid "Skip"
msgstr "تخطي"
msgctxt "#30673"
msgid "Ask"
msgstr "اسئل"
msgctxt "#30674"
msgid "Do Nothing"
msgstr "لا تعمل شي"
msgctxt "#30675"
msgid "Commercial Skipper"
msgstr "تخطي تجاري"
msgctxt "#30676"
msgid "Preview Skipper"
msgstr "معاينة التخطي"
msgctxt "#30677"
msgid "Recap Skipper"
msgstr "خلاصة التخطي"
msgctxt "#30455"
msgid "TV Shows - Random"
msgstr "برامج تلفاز - عشوائي"
msgctxt "#30456"
msgid "All - Random"
msgstr "الكل - عشوائي"
msgctxt "#30457"
msgid "All - Recently Added"
msgstr "الكل - مٌضاف حديثا"
msgctxt "#30458"
msgid "All - Favorites"
msgstr "الكل - مفضّلة"
msgctxt "#30678"
msgid "TV Shows per page"
msgstr "برامج تلفاز لكل صفحة"

View File

@@ -1,2 +1,67 @@
msgid ""
msgstr "X-Generator: Weblate\nMIME-Version: 1.0\nContent-Type: text/plain; charset=UTF-8\nContent-Transfer-Encoding: 8bit"
msgstr ""
"PO-Revision-Date: 2025-10-05 02:38+0000\n"
"Last-Translator: Pavel Miniutka <pavel.miniutka@gmail.com>\n"
"Language-Team: Belarusian <https://translate.jellyfin.org/projects/jellycon/"
"jellycon/be/>\n"
"Language: be\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 5.11.4\n"
msgctxt "#30001"
msgid "Port"
msgstr "Порт"
msgctxt "#30006"
msgid "Password"
msgstr "Пароль"
#, fuzzy
msgctxt "#30007"
msgid "Samba username"
msgstr "Імя карыстальніка Samba"
msgctxt "#30018"
msgid "Number of items to show in filtered lists"
msgstr "Лічба паказаных элементаў у фільтраваных спісах"
msgctxt "#30000"
msgid "Host"
msgstr "Хост"
msgctxt "#30005"
msgid "Username"
msgstr "Імя карыстальніка"
msgctxt "#30003"
msgid "Verify HTTPS certificate"
msgstr "Спраўдзіць сертыфікат HTTPS"
#, fuzzy
msgctxt "#30008"
msgid "Samba password"
msgstr "Пароль Samba"
msgctxt "#30011"
msgid "[Detect local server]"
msgstr "[Выявіць лякальны сервер]"
msgctxt "#30012"
msgid "[Change user]"
msgstr "[Змяніць карыстальніка]"
msgctxt "#30014"
msgid "Jellyfin"
msgstr "Jellyfin"
msgctxt "#30016"
msgid "Device display name"
msgstr "Імя прылады"
msgctxt "#30017"
msgid "Show connected clients"
msgstr "Паказаць падлучаныя прылады"

File diff suppressed because it is too large Load Diff

View File

@@ -1,7 +1,7 @@
msgid ""
msgstr ""
"PO-Revision-Date: 2024-07-20 16:41+0000\n"
"Last-Translator: Matěj Vrzalík <vrzalikm@gmail.com>\n"
"PO-Revision-Date: 2025-12-15 22:55+0000\n"
"Last-Translator: Fjuro <fjuro@alius.cz>\n"
"Language-Team: Czech <https://translate.jellyfin.org/projects/jellycon/"
"jellycon/cs/>\n"
"Language: cs\n"
@@ -9,7 +9,7 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=3; plural=(n==1) ? 0 : (n>=2 && n<=4) ? 1 : 2;\n"
"X-Generator: Weblate 5.4.2\n"
"X-Generator: Weblate 5.14\n"
msgctxt "#30016"
msgid "Device display name"
@@ -225,7 +225,7 @@ msgstr "Způsob přehrávání"
msgctxt "#30210"
msgid "HTTP direct stream"
msgstr "HTTP direct stream"
msgstr "Přímý stream HTTP"
msgctxt "#30211"
msgid "Transcode options"
@@ -273,7 +273,7 @@ msgstr "Podrobnosti"
msgctxt "#30252"
msgid "Movies - A-Z"
msgstr "Filmy - A-Z"
msgstr "Filmy - AZ"
msgctxt "#30257"
msgid "Movies - Recently Added"
@@ -293,7 +293,7 @@ msgstr "Neznámé"
msgctxt "#30265"
msgid "Episodes - Next Up"
msgstr "Epizody - Ďalší na řadě"
msgstr "Epizody - Další na řadě"
msgctxt "#30226"
msgid "Default"
@@ -329,7 +329,7 @@ msgstr "Filmy - Žánry"
msgctxt "#30255"
msgid "TV Shows - A-Z"
msgstr "Seriály - A-Z"
msgstr "Seriály - AZ"
msgctxt "#30256"
msgid "Movies"
@@ -371,7 +371,6 @@ msgctxt "#30258"
msgid "Movies - In Progress"
msgstr "Filmy - Probíhající"
#, fuzzy
msgctxt "#30280"
msgid "Missing Title"
msgstr "Chybějící Nadpis"
@@ -380,7 +379,6 @@ msgctxt "#30292"
msgid "Select Subtitle Stream"
msgstr "Vyberte stopu titulků"
#, fuzzy
msgctxt "#30291"
msgid "Select Audio Stream"
msgstr "Vyberte zvukovou stopu"
@@ -395,7 +393,7 @@ msgstr "Epizody - Probíhající"
msgctxt "#30268"
msgid " - Recently Added"
msgstr "- Nedávno Přidané"
msgstr "- Nedávno přidané"
msgctxt "#30270"
msgid "Mark Watched"
@@ -405,19 +403,17 @@ msgctxt "#30274"
msgid "Delete"
msgstr "Odstranit"
#, fuzzy
msgctxt "#30281"
msgid "Refresh Cached Images"
msgstr "Obnovit přednačtené obrázky"
msgstr "Obnovit obrázky v mezipaměti"
msgctxt "#30290"
msgid "All"
msgstr "Vše"
#, fuzzy
msgctxt "#30293"
msgid "Cache images"
msgstr "Přednačíst obrázky"
msgstr "Načíst obrázky do mezipaměti"
msgctxt "#30294"
msgid "Notice"
@@ -455,7 +451,6 @@ msgctxt "#30273"
msgid "Unset Favourite"
msgstr "Odebrat z oblíbených"
#, fuzzy
msgctxt "#30278"
msgid " - Next Up"
msgstr "- Další na řadě"
@@ -475,17 +470,14 @@ msgctxt "#30282"
msgid "No Jellyfin servers detected on your local network."
msgstr "Na vaší místní síti nebyly nalezeny žádné Jellyfin servery."
#, fuzzy
msgctxt "#30283"
msgid "Play Next Episode?"
msgstr "Přehrát další epizodu?"
#, fuzzy
msgctxt "#30285"
msgid " - Unwatched"
msgstr "- Nezhlédnuté"
#, fuzzy
msgctxt "#30286"
msgid "Movies - Unwatched"
msgstr "Filmy - Nezhlédnuté"
@@ -502,7 +494,732 @@ msgctxt "#30297"
msgid "Delete unused images?"
msgstr "Odstranit nepoužité obrázky?"
#, fuzzy
msgctxt "#30299"
msgid "Cache Images"
msgstr "Přednačíst obrázky"
msgstr "Uložit obrázky do mezipaměti"
msgctxt "#30010"
msgid "Number of performance profiles to capture"
msgstr "Počet výkonnostních profilů k zachycení"
msgctxt "#30020"
msgid "Flatten single season"
msgstr "Zjednodušit jednu sérii"
msgctxt "#30220"
msgid "Prompt to delete movie after %"
msgstr "Výzva k vymazání filmu po %"
msgctxt "#30247"
msgid "Custom Widget Content"
msgstr "Vlastní obsah widgetu"
msgctxt "#30254"
msgid "Show add-on settings"
msgstr "Zobrazit nastavení doplňku"
msgctxt "#30305"
msgid "Not Found"
msgstr "Nenalezeno"
msgctxt "#30295"
msgid "To use this feature you need HTTP control enabled"
msgstr "Pro použití této funkce je nutné mít povolené ovládání HTTP"
msgctxt "#30308"
msgid "Select Trailer"
msgstr "Vyberte trailer"
msgctxt "#30267"
msgid " - In Progress"
msgstr "- Rozkoukáno"
msgctxt "#30279"
msgid "TV Shows - Unwatched"
msgstr "Seriály - Nezhlédnuté"
msgctxt "#30289"
msgid "TV Shows - Genres"
msgstr "Seriály - Žánry"
msgctxt "#30238"
msgid "Playback stream options"
msgstr "Možnosti přehrávání streamu"
msgctxt "#30260"
msgid "BoxSets"
msgstr "BoxSety"
msgctxt "#30266"
msgid "Movies - Pages"
msgstr "Filmy - Stránky"
msgctxt "#30276"
msgid "Extra Resume Prompt Detected"
msgstr "Zjištěná extra výzva k obnovení"
msgctxt "#30287"
msgid "TV Shows - Latest"
msgstr "Seriály - Nejnovější"
msgctxt "#30298"
msgid "Deleting Kodi Images"
msgstr "Mazání obrázků Kodi"
msgctxt "#30303"
msgid "Missing Jellyfin images : "
msgstr "Chybějící Jellyfin obrázky:"
msgctxt "#30302"
msgid "Existing images : "
msgstr "Stávající obrázky:"
msgctxt "#30307"
msgid "Play Trailer"
msgstr "Přehrát trailer"
msgctxt "#30309"
msgid "Select Media Source"
msgstr "Vyberte zdroj médií"
msgctxt "#30341"
msgid "Background image update interval (0 = disabled)"
msgstr "Interval aktualizace obrázků na pozadí (0 = zakázáno)"
msgctxt "#30347"
msgid "Getting Existing Images"
msgstr "Získávání existujících obrázků"
msgctxt "#30399"
msgid "Hide"
msgstr "Skrýt"
msgctxt "#30318"
msgid "Music - Albums"
msgstr "Hudba - Alba"
msgctxt "#30333"
msgid "Cache artwork in the background"
msgstr "Uložit obaly do mezipaměti na pozadí"
msgctxt "#30316"
msgid "Connection Error"
msgstr "Chyba připojení"
msgctxt "#30300"
msgid "Cache all Jellyfin images as local Kodi images?"
msgstr ""
"Chcete uložit všechny obrázky Jellyfin do mezipaměti místního Kodi jako "
"obrázky?"
msgctxt "#30328"
msgid "Show empty folders (shows, seasons, collections)"
msgstr "Zobrazit prázdné složky (pořady, seriály, sbírky)"
msgctxt "#30332"
msgid "Stop media playback on screensaver activation"
msgstr "Zastavit přehrávání médií po spuštění spořiče obrazovky"
msgctxt "#30344"
msgid "Number of images removed from cache"
msgstr "Počet obrázků odstraněných z mezipaměti"
msgctxt "#30356"
msgid "Loading existing image list"
msgstr "Načítání existujícího seznamu obrázků"
msgctxt "#30383"
msgid "System - "
msgstr "Systém -"
msgctxt "#30355"
msgid "Kodi Settings->Services->Allow remote control via HTTP"
msgstr "Nastavení Kodi->Služby->Povolit vzdálené ovládání prostřednictvím HTTP"
msgctxt "#30357"
msgid "Processing existing image list"
msgstr "Zpracovávání existujícího seznamu obrázků"
msgctxt "#30358"
msgid "Retreiving remote image list"
msgstr "Načítání vzdáleného seznamu obrázků"
msgctxt "#30363"
msgid "Save Password?"
msgstr "Uložit heslo?"
msgctxt "#30365"
msgid "Manual Login"
msgstr "Ruční přihlášení"
msgctxt "#30371"
msgid "Could not connect to the URL you entered, do you want to try again?"
msgstr "Nepodařilo se připojit k zadané adresem, chcete to zkusit znovu?"
msgctxt "#30394"
msgid "Cache files deleted"
msgstr "Soubory mezipaměti vymazány"
msgctxt "#30427"
msgid "Added"
msgstr "Přidáno"
msgctxt "#30393"
msgid "Clear Cache Result"
msgstr "Vymazat výsledek mezipaměti"
msgctxt "#30403"
msgid "Movies - Recommendations"
msgstr "Filmy - Doporučené"
msgctxt "#30395"
msgid "Clear cached server data"
msgstr "Vymazat serverová data v mezipaměti"
msgctxt "#30398"
msgid "Refresh Jellyfin Metadata"
msgstr "Obnovit metadata Jellyfinu"
msgctxt "#30431"
msgid "Seasons"
msgstr "Série"
msgctxt "#30442"
msgid "Simple new content check"
msgstr "Jednoduchá kontrola nového obsahu"
msgctxt "#30433"
msgid "Allow direct file playback"
msgstr "Povolit přímé přehrávání souboru"
msgctxt "#30434"
msgid "Force transcode stream bitrate (Kbits)"
msgstr "Vynutit datový tok překódování streamu (kbps)"
msgctxt "#30447"
msgid "Max Play Queue Size"
msgstr "Maximální velikost fronty přehrávání"
msgctxt "#30454"
msgid " - Totally Unwatched"
msgstr " - Kompletně nesledováno"
msgctxt "#30445"
msgid "Continue Watching"
msgstr "Pokračovat ve sledování"
msgctxt "#30453"
msgid "Hide number of items to show on entry title"
msgstr "Skrýt počet položek k zobrazení u názvu záznamu"
msgctxt "#30446"
msgid "There was an error logging in"
msgstr "Během přihlašování došlo k chybě"
msgctxt "#30304"
msgid "Cached Jellyfin images : "
msgstr "Obrázky Jellyfin v mezipaměti:"
msgctxt "#30310"
msgid "Enable Jellyfin remote control"
msgstr "Povolit vzdálené ovládání Jellyfin"
msgctxt "#30312"
msgid "All - "
msgstr "Vše -"
msgctxt "#30313"
msgid "Menu"
msgstr "Nabídka"
msgctxt "#30314"
msgid "Play"
msgstr "Přehrát"
msgctxt "#30315"
msgid "Suppress notifications for connection errors"
msgstr "Potlačit oznámení o chybách připojení"
msgctxt "#30329"
msgid "Screensaver"
msgstr "Spořič obrazovky"
msgctxt "#30334"
msgid "Use JellyCon context menu"
msgstr "Použít kontextovou nabídku JellyCon"
msgctxt "#30337"
msgid "Song"
msgstr "Skladba"
msgctxt "#30338"
msgid "Album"
msgstr "Album"
msgctxt "#30339"
msgid "Person"
msgstr "Osoba"
msgctxt "#30340"
msgid "Group movies into collections"
msgstr "Seskupit filmy do sbírek"
msgctxt "#30342"
msgid "New content check interval (0 = disabled)"
msgstr "Interval kontroly nového obsahu (0 = zakázáno)"
msgctxt "#30343"
msgid "Changes Require Kodi Restart"
msgstr "Změny vyžadují restart Kodi"
msgctxt "#30345"
msgid "Cache Jellyfin server data requests"
msgstr "Ukládat žádosti o data serveru Jellyfin do mezipaměti"
msgctxt "#30348"
msgid "Add user ratings"
msgstr "Přidat uživatelská hodnocení"
msgctxt "#30321"
msgid " - Album Artists"
msgstr "- Umělci alb"
msgctxt "#30366"
msgid "Manually enter user details"
msgstr "Ručně zadat informace o uživateli"
msgctxt "#30373"
msgid "Scanning for local servers"
msgstr "Vyhledávání místních serverů"
msgctxt "#30374"
msgid "Sending request"
msgstr "Odesílání požadavku"
msgctxt "#30380"
msgid "Never"
msgstr "Nikdy"
msgctxt "#30381"
msgid "More than one"
msgstr "Více než jeden"
msgctxt "#30382"
msgid "Always"
msgstr "Vždy"
msgctxt "#30384"
msgid "Random movies interval minutes (0 = disabled)"
msgstr "Minuty náhodného intervalu filmů (0 = zakázáno)"
msgctxt "#30385"
msgid "Existing images before delete : "
msgstr "Existující obrázky před smazáním:"
msgctxt "#30387"
msgid "Unused images removed : "
msgstr "Smazány nepoužívané obrázky:"
msgctxt "#30401"
msgid "Info"
msgstr "Informace"
msgctxt "#30404"
msgid " - A-Z"
msgstr "- AZ"
msgctxt "#30405"
msgid " - Show All"
msgstr "- Zobrazit vše"
msgctxt "#30406"
msgid "Jellyfin Libraries"
msgstr "Knihovny Jellyfin"
msgctxt "#30407"
msgid "Global Lists"
msgstr "Globální seznamy"
msgctxt "#30408"
msgid "Custom Widgets"
msgstr "Vlastní widgety"
msgctxt "#30409"
msgid "Add-on Actions"
msgstr "Akce doplňku"
msgctxt "#30410"
msgid " - Collections"
msgstr "- Sbírky"
msgctxt "#30411"
msgid " - Years"
msgstr "- Roky"
msgctxt "#30412"
msgid " - Decades"
msgstr "- Desetiletí"
msgctxt "#30413"
msgid " - Tags"
msgstr "- Štítky"
msgctxt "#30418"
msgid "Audio bitrate (Kbits)"
msgstr "Datový tok zvuku (kbps)"
msgctxt "#30419"
msgid "Audio codec"
msgstr "Kodek zvuku"
msgctxt "#30420"
msgid "Audio max channels"
msgstr "Max. počet kanálů zvuku"
msgctxt "#30421"
msgid "Views"
msgstr "Zhlédnutí"
msgctxt "#30422"
msgid "Sorting"
msgstr "Řazení"
msgctxt "#30423"
msgid "NotSet"
msgstr "Nenastaveno"
msgctxt "#30424"
msgid "Default"
msgstr "Výchozí"
msgctxt "#30425"
msgid "Year"
msgstr "Rok"
msgctxt "#30426"
msgid "Title"
msgstr "Název"
msgctxt "#30428"
msgid "Rating"
msgstr "Hodnocení"
msgctxt "#30429"
msgid "Genre"
msgstr "Žánr"
msgctxt "#30430"
msgid "Label"
msgstr "Štítek"
msgctxt "#30437"
msgid "Playback options"
msgstr "Možnosti přehrávání"
msgctxt "#30439"
msgid "Show play next episode at time left in seconds"
msgstr "Zobrazit zbývající čas do přehrání další epizody v sekundách"
msgctxt "#30443"
msgid "Quick Connect"
msgstr "Rychlé připojení"
msgctxt "#30448"
msgid "Shuffle"
msgstr "Náhodně"
msgctxt "#30449"
msgid "Instant Mix"
msgstr "Okamžitý mix"
msgctxt "#30450"
msgid "Next Up Rewatching"
msgstr "Opětovné sledování dalších v řadě"
msgctxt "#30451"
msgid "Rewatch Days (0 = Disabled)"
msgstr "Dny opětovného sledování (0 = zakázáno)"
msgctxt "#30301"
msgid "Caching Images"
msgstr "Ukládání obrázků do mezipaměti"
msgctxt "#30311"
msgid "Library - "
msgstr "Knihovna -"
msgctxt "#30306"
msgid "Playback starting"
msgstr "Spouštění přehrávání"
msgctxt "#30320"
msgid " - Albums"
msgstr "- Alba"
msgctxt "#30317"
msgid "Play All"
msgstr "Přehrát vše"
msgctxt "#30322"
msgid "Auto resume"
msgstr "Automaticky pokračovat"
msgctxt "#30323"
msgid "Artists"
msgstr "Umělci"
msgctxt "#30325"
msgid " - Genres"
msgstr "- Žánry"
msgctxt "#30327"
msgid "Go To Season"
msgstr "Přejít na sérii"
msgctxt "#30330"
msgid "Show change user dialog"
msgstr "Zobrazit uživatelský dialog změny"
msgctxt "#30331"
msgid "Movies per page"
msgstr "Filmů na stránku"
msgctxt "#30349"
msgid " - Recently Played"
msgstr "- Nedávno přehráno"
msgctxt "#30346"
msgid "Deleteing Cached Images"
msgstr "Mazání obrázků v mezipaměti"
msgctxt "#30350"
msgid "Music - Recently Added"
msgstr "Hudba - Nedávno přidaná"
msgctxt "#30351"
msgid "Music - Recently Played"
msgstr "Hudba - Nedávno přehraná"
msgctxt "#30352"
msgid "Music - Frequently Played"
msgstr "Hudba - Často přehrávaná"
msgctxt "#30353"
msgid " - Frequently Played"
msgstr "- Často přehráváno"
msgctxt "#30319"
msgid "Music - All Album Artists"
msgstr "Hudba - Všichni umělci alb"
msgctxt "#30354"
msgid "Go To Series"
msgstr "Přejít na seriál"
msgctxt "#30359"
msgid "Building full image list"
msgstr "Sestavování celého seznamu obrázků"
msgctxt "#30360"
msgid " - Channels"
msgstr "- Kanály"
msgctxt "#30361"
msgid " - Programs"
msgstr "- Programy"
msgctxt "#30362"
msgid " - Recordings"
msgstr "- Nahrávky"
msgctxt "#30364"
msgid "Do you want to save the password?"
msgstr "Chcete uložit heslo?"
msgctxt "#30367"
msgid "Allow fast user switching password saving"
msgstr "Povolit rychlé ukládání hesla přepnutého uživatele"
msgctxt "#30368"
msgid "Clear Password?"
msgstr "Vymazat heslo?"
msgctxt "#30369"
msgid "Do you want to clear your saved password?"
msgstr "Chcete vymazat vaše uložené heslo?"
msgctxt "#30370"
msgid "Do you want to manually enter a server url?"
msgstr "Chcete ručně zadat adresu serveru?"
msgctxt "#30372"
msgid "Server URL"
msgstr "Adresa serveru"
msgctxt "#30375"
msgid "Receiving data packet"
msgstr "Získávání datového balíčku"
msgctxt "#30376"
msgid "Checking server url"
msgstr "Kontrola adresy serveru"
msgctxt "#30377"
msgid "Sending request"
msgstr "Odesílání požadavku"
msgctxt "#30378"
msgid "Persist user details"
msgstr "Uchovat podrobnosti o uživateli"
msgctxt "#30379"
msgid "External subtitle prompt"
msgstr "Dotaz na externí titulky"
msgctxt "#30386"
msgid "Unused Jellyfin images : "
msgstr "Nepoužité obrázky Jellyfin:"
msgctxt "#30388"
msgid "Server details"
msgstr "Podrobnosti o serveru"
msgctxt "#30389"
msgid "User details"
msgstr "Podrobnosti o uživateli"
msgctxt "#30390"
msgid "Protocol"
msgstr "Protokol"
msgctxt "#30391"
msgid "HTTP"
msgstr "HTTP"
msgctxt "#30392"
msgid "HTTPS"
msgstr "HTTPS"
msgctxt "#30397"
msgid " - Pages"
msgstr "- Stránky"
msgctxt "#30400"
msgid "Cache images interval minutes (0 = disabled)"
msgstr "Minuty intervalu ukládání obrázků do mezipaměti (0 = zakázáno)"
msgctxt "#30402"
msgid "Add to Kodi Playlist"
msgstr "Přidat do seznamu Kodi"
msgctxt "#30415"
msgid " - Favorite Collections"
msgstr "- Oblíbené sbírky"
msgctxt "#30414"
msgid " - Favorites"
msgstr "- Oblíbené"
msgctxt "#30416"
msgid "HTTP timeout seconds"
msgstr "Sekundy vypršení HTTP"
msgctxt "#30417"
msgid "You do not have permision to delete this item"
msgstr "Nemáte oprávnění smazat tuto položku"
msgctxt "#30432"
msgid "Hide watched items in lists"
msgstr "Skrýt zhlédnuté položky v seznamech"
msgctxt "#30435"
msgid "Connection speed test"
msgstr "Test rychlosti připojení"
msgctxt "#30436"
msgid "Speed test data size (MB)"
msgstr "Velikost testovacích dat rychlosti (MB)"
msgctxt "#30438"
msgid "Play cinema intros"
msgstr "Přehrát úvody kina"
msgctxt "#30440"
msgid "Play next"
msgstr "Přehrát další"
msgctxt "#30441"
msgid "Use cached widget data"
msgstr "Použít data widgetu v mezipaměti"
msgctxt "#30444"
msgid "Login using Quick Connect"
msgstr "Přihlásit se pomocí Rychlého připojení"
msgctxt "#30666"
msgid "Segment Skipper"
msgstr "Přeskakovač segmentů"
msgctxt "#30667"
msgid "Action to take"
msgstr "Akce k provedení"
msgctxt "#30668"
msgid "Start Offset (seconds)"
msgstr "Zpoždění spuštění (sekundy)"
msgctxt "#30669"
msgid "End Offset (seconds)"
msgstr "Zpoždění ukončení (sekundy)"
msgctxt "#30670"
msgid "Intro Skipper"
msgstr "Přeskočení znělky"
msgctxt "#30671"
msgid "Credit Skipper"
msgstr "Přeskočení titulků"
msgctxt "#30672"
msgid "Skip"
msgstr "Přeskočit"
msgctxt "#30673"
msgid "Ask"
msgstr "Zeptat se"
msgctxt "#30674"
msgid "Do Nothing"
msgstr "Nic nedělat"
msgctxt "#30675"
msgid "Commercial Skipper"
msgstr "Přeskočení reklam"
msgctxt "#30676"
msgid "Preview Skipper"
msgstr "Přeskočení náhledů"
msgctxt "#30677"
msgid "Recap Skipper"
msgstr "Přeskočení shrnutí"
msgctxt "#30455"
msgid "TV Shows - Random"
msgstr "Seriály - Náhodně"
msgctxt "#30456"
msgid "All - Random"
msgstr "Vše - Náhodně"
msgctxt "#30457"
msgid "All - Recently Added"
msgstr "Vše - Nedávno přidáno"
msgctxt "#30458"
msgid "All - Favorites"
msgstr "Vše - Oblíbené"
msgctxt "#30678"
msgid "TV Shows per page"
msgstr "Seriály na stránku"

View File

@@ -1,7 +1,7 @@
msgid ""
msgstr ""
"PO-Revision-Date: 2024-10-09 08:41+0000\n"
"Last-Translator: Anders <oebro@duck.com>\n"
"PO-Revision-Date: 2025-11-03 16:51+0000\n"
"Last-Translator: Bastinator-school <bast0854@edu.sde.dk>\n"
"Language-Team: Danish <https://translate.jellyfin.org/projects/jellycon/"
"jellycon/da/>\n"
"Language: da\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 5.7.2\n"
"X-Generator: Weblate 5.14\n"
msgctxt "#30001"
msgid "Port"
@@ -1151,3 +1151,55 @@ msgstr "Tving transkodning av1"
msgctxt "#30452"
msgid "Combine instead of replace (might cause slow-down)"
msgstr "Kombiner i stedet for at erstatte (kan forårsage forsinkelse)"
msgctxt "#30454"
msgid " - Totally Unwatched"
msgstr " Fuldstændig uset"
msgctxt "#30666"
msgid "Segment Skipper"
msgstr "Segment overspringer"
msgctxt "#30667"
msgid "Action to take"
msgstr "Handling at tage"
msgctxt "#30668"
msgid "Start Offset (seconds)"
msgstr "Start forskudning (sekunder)"
msgctxt "#30669"
msgid "End Offset (seconds)"
msgstr "Slut forskudning (sekunder)"
msgctxt "#30670"
msgid "Intro Skipper"
msgstr "Intro overspringer"
msgctxt "#30671"
msgid "Credit Skipper"
msgstr "Rulletækst overspringer"
msgctxt "#30672"
msgid "Skip"
msgstr "Spring over"
msgctxt "#30673"
msgid "Ask"
msgstr "Spørg"
msgctxt "#30674"
msgid "Do Nothing"
msgstr "Gør ingenting"
msgctxt "#30675"
msgid "Commercial Skipper"
msgstr "Reklame overspringer"
msgctxt "#30676"
msgid "Preview Skipper"
msgstr "Forfilm overspringer"
msgctxt "#30677"
msgid "Recap Skipper"
msgstr "Opsummerings overspringer"

View File

@@ -1,7 +1,7 @@
msgid ""
msgstr ""
"PO-Revision-Date: 2024-11-04 20:00+0000\n"
"Last-Translator: Justin <derjustin05@gmail.com>\n"
"PO-Revision-Date: 2025-12-15 22:55+0000\n"
"Last-Translator: tct123 <tct1234@protonmail.com>\n"
"Language-Team: German <https://translate.jellyfin.org/projects/jellycon/"
"jellycon/de/>\n"
"Language: de\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 5.7.2\n"
"X-Generator: Weblate 5.14\n"
msgctxt "#30120"
msgid "Show load progress"
@@ -1124,7 +1124,7 @@ msgstr "Maximale Länge der Warteschlange"
msgctxt "#30448"
msgid "Shuffle"
msgstr "Zufallswiedergabe"
msgstr "Shuffle"
msgctxt "#30449"
msgid "Instant Mix"
@@ -1165,3 +1165,71 @@ msgstr "Verstecke Anzahl der angezeigten Elemente im Eintragstitel"
msgctxt "#30454"
msgid " - Totally Unwatched"
msgstr " - Gesamt ungesehene"
msgctxt "#30666"
msgid "Segment Skipper"
msgstr "Segmentüberspringer"
msgctxt "#30667"
msgid "Action to take"
msgstr "Zu ergreifende Maßnahmen"
msgctxt "#30668"
msgid "Start Offset (seconds)"
msgstr "Startverzögerung (Sekunden)"
msgctxt "#30669"
msgid "End Offset (seconds)"
msgstr "Endverzögerung (Sekunden)"
msgctxt "#30670"
msgid "Intro Skipper"
msgstr "Introüberspringer"
msgctxt "#30671"
msgid "Credit Skipper"
msgstr "Endüberspringer"
msgctxt "#30672"
msgid "Skip"
msgstr "Überspringen"
msgctxt "#30673"
msgid "Ask"
msgstr "Fragen"
msgctxt "#30674"
msgid "Do Nothing"
msgstr "Nichts tun"
msgctxt "#30675"
msgid "Commercial Skipper"
msgstr "Komierzeller Skipper"
msgctxt "#30676"
msgid "Preview Skipper"
msgstr "Vorschauskipper"
msgctxt "#30677"
msgid "Recap Skipper"
msgstr "Rückblickskipper"
msgctxt "#30455"
msgid "TV Shows - Random"
msgstr "Fernsehsendungen - Zufällig"
msgctxt "#30456"
msgid "All - Random"
msgstr "Alle - Zufällig"
msgctxt "#30457"
msgid "All - Recently Added"
msgstr "Alle Kürzlich hinzugefügt"
msgctxt "#30458"
msgid "All - Favorites"
msgstr "Alle Favoriten"
msgctxt "#30678"
msgid "TV Shows per page"
msgstr "Fernsehsendungen pro Seite"

View File

@@ -1,7 +1,7 @@
msgid ""
msgstr ""
"PO-Revision-Date: 2024-10-29 12:41+0000\n"
"Last-Translator: Antonios <anthonyv156@outlook.com>\n"
"PO-Revision-Date: 2025-12-31 00:05+0000\n"
"Last-Translator: Stelios Karakapzoudis <stelioskpz@gmail.com>\n"
"Language-Team: Greek <https://translate.jellyfin.org/projects/jellycon/"
"jellycon/el/>\n"
"Language: el\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 5.7.2\n"
"X-Generator: Weblate 5.15.1\n"
msgctxt "#30000"
msgid "Host"
@@ -1168,3 +1168,31 @@ msgstr "Παίξε το επόμενο"
msgctxt "#30441"
msgid "Use cached widget data"
msgstr "Χρήση προσωρινής μνήμης δεδομένων widget"
msgctxt "#30455"
msgid "TV Shows - Random"
msgstr "Τηλεοπτικά Σόου - Τυχαία"
msgctxt "#30456"
msgid "All - Random"
msgstr "Όλα - Τυχαία"
msgctxt "#30457"
msgid "All - Recently Added"
msgstr "Όλα - Προστέθηκαν Πρόσφατα"
msgctxt "#30458"
msgid "All - Favorites"
msgstr "Όλα - Αγαπημένα"
msgctxt "#30670"
msgid "Intro Skipper"
msgstr "Παράβλεψη Εισαγωγής"
msgctxt "#30671"
msgid "Credit Skipper"
msgstr "Παράβλεψη Τίτλων Τέλους"
msgctxt "#30672"
msgid "Skip"
msgstr "Παράβλεψη"

View File

@@ -1155,4 +1155,72 @@ msgstr "Hide number of items to show on entry title"
msgctxt "#30454"
msgid " - Totally Unwatched"
msgstr " - Totally Unwatched"
msgstr " - Totally Unwatched"
msgctxt "#30455"
msgid "TV Shows - Random"
msgstr "TV Shows - Random"
msgctxt "#30456"
msgid "All - Random"
msgstr "All - Random"
msgctxt "#30457"
msgid "All - Recently Added"
msgstr "All - Recently Added"
msgctxt "#30458"
msgid "All - Favorites"
msgstr "All - Favorites"
msgctxt "#30666"
msgid "Segment Skipper"
msgstr "Segment Skipper"
msgctxt "#30667"
msgid "Action to take"
msgstr "Action to take"
msgctxt "#30668"
msgid "Start Offset (seconds)"
msgstr "Start Offset (seconds)"
msgctxt "#30669"
msgid "End Offset (seconds)"
msgstr "End Offset (seconds)"
msgctxt "#30670"
msgid "Intro Skipper"
msgstr "Intro Skipper"
msgctxt "#30671"
msgid "Credit Skipper"
msgstr "Credit Skipper"
msgctxt "#30672"
msgid "Skip"
msgstr "Skip"
msgctxt "#30673"
msgid "Ask"
msgstr "Ask"
msgctxt "#30674"
msgid "Do Nothing"
msgstr "Do Nothing"
msgctxt "#30675"
msgid "Commercial Skipper"
msgstr "Commercial Skipper"
msgctxt "#30676"
msgid "Preview Skipper"
msgstr "Preview Skipper"
msgctxt "#30677"
msgid "Recap Skipper"
msgstr "Recap Skipper"
msgctxt "#30678"
msgid "TV Shows per page"
msgstr "TV Shows per page"

View File

@@ -1,2 +1,29 @@
msgid ""
msgstr "X-Generator: Weblate\nMIME-Version: 1.0\nContent-Type: text/plain; charset=UTF-8\nContent-Transfer-Encoding: 8bit"
msgstr ""
"PO-Revision-Date: 2025-05-28 22:01+0000\n"
"Last-Translator: Cjfly <mrlaylowcj@gmail.com>\n"
"Language-Team: English (Middle) <https://translate.jellyfin.org/projects/"
"jellycon/jellycon/enm/>\n"
"Language: enm\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 5.11.4\n"
msgctxt "#30000"
msgid "Host"
msgstr "127.0.0.1"
msgctxt "#30006"
msgid "Password"
msgstr "232542684Cc"
#, fuzzy
msgctxt "#30005"
msgid "Username"
msgstr "Courtney"
msgctxt "#30001"
msgid "Port"
msgstr "3000"

View File

@@ -1,7 +1,7 @@
msgid ""
msgstr ""
"PO-Revision-Date: 2024-11-11 04:00+0000\n"
"Last-Translator: SullensCR <sullenscr@protonmail.com>\n"
"PO-Revision-Date: 2025-12-18 13:55+0000\n"
"Last-Translator: pol busquets <canpinetell@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 5.7.2\n"
"X-Generator: Weblate 5.14\n"
msgctxt "#30442"
msgid "Simple new content check"
@@ -1157,3 +1157,75 @@ msgstr "Días para volver a verlo (0 = deshabilitado)"
msgctxt "#30453"
msgid "Hide number of items to show on entry title"
msgstr "Ocultar el número de ítems que se enseñan en el título"
msgctxt "#30454"
msgid " - Totally Unwatched"
msgstr " - Totalmente no visto"
msgctxt "#30667"
msgid "Action to take"
msgstr "Acción para tomar"
msgctxt "#30672"
msgid "Skip"
msgstr "Omitir"
msgctxt "#30673"
msgid "Ask"
msgstr "Preguntar"
msgctxt "#30674"
msgid "Do Nothing"
msgstr "Hacer nada"
msgctxt "#30675"
msgid "Commercial Skipper"
msgstr "Omitidor de Anuncios"
msgctxt "#30677"
msgid "Recap Skipper"
msgstr "Saltador de resúmenes"
msgctxt "#30666"
msgid "Segment Skipper"
msgstr "Saltador de segmento"
msgctxt "#30668"
msgid "Start Offset (seconds)"
msgstr "Desfase de inicio (segundos)"
msgctxt "#30669"
msgid "End Offset (seconds)"
msgstr "Desfase de final (segundos)"
msgctxt "#30670"
msgid "Intro Skipper"
msgstr "Saltador de introducción"
msgctxt "#30671"
msgid "Credit Skipper"
msgstr "Saltador de créditos"
msgctxt "#30676"
msgid "Preview Skipper"
msgstr "Saltador de previsualizaciones"
msgctxt "#30455"
msgid "TV Shows - Random"
msgstr "Programas de TV"
msgctxt "#30456"
msgid "All - Random"
msgstr "Todo en aleatorio"
msgctxt "#30457"
msgid "All - Recently Added"
msgstr "Todo - Recientemente Añadido"
msgctxt "#30458"
msgid "All - Favorites"
msgstr "Todo - Favoritos"
msgctxt "#30678"
msgid "TV Shows per page"
msgstr "Series por página"

View File

@@ -1,6 +1,6 @@
msgid ""
msgstr ""
"PO-Revision-Date: 2022-01-03 18:05+0000\n"
"PO-Revision-Date: 2025-12-23 08:05+0000\n"
"Last-Translator: rimasx <riks_12@hot.ee>\n"
"Language-Team: Estonian <https://translate.jellyfin.org/projects/jellycon/"
"jellycon/et/>\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.5.2\n"
"X-Generator: Weblate 5.14\n"
msgctxt "#30021"
msgid "Show all episodes item"
@@ -37,7 +37,7 @@ msgstr "Jellyfin"
msgctxt "#30012"
msgid "[Change user]"
msgstr "[Muuda kasutajat]"
msgstr "[Vaheta kasutajat]"
msgctxt "#30011"
msgid "[Detect local server]"
@@ -77,11 +77,11 @@ msgstr "Sisesta kasutaja andmed käsitsi"
msgctxt "#30241"
msgid "Force transcode mpeg4"
msgstr "Transkoodi jõuga mpeg4"
msgstr "Sunni mpeg4 transkoodimine"
msgctxt "#30240"
msgid "Force transcode msmpeg4v3 (divx)"
msgstr "Transkoodi jõuga msmpeg4v3 (divx)"
msgstr "Sunni msmpeg4v3 (divx) transkoodimine"
msgctxt "#30365"
msgid "Manual Login"
@@ -97,15 +97,15 @@ msgstr "Kas salvestada parool?"
msgctxt "#30362"
msgid " - Recordings"
msgstr "- salvestised"
msgstr "- Salvestised"
msgctxt "#30361"
msgid " - Programs"
msgstr "- saated"
msgstr "- Saated"
msgctxt "#30360"
msgid " - Channels"
msgstr "- kanalid"
msgstr "- Kanalid"
msgctxt "#30359"
msgid "Building full image list"
@@ -133,11 +133,11 @@ msgstr "Ava seriaal"
msgctxt "#30353"
msgid " - Frequently Played"
msgstr "- sageli esitatud"
msgstr "- Sageli esitatud"
msgctxt "#30321"
msgid " - Album Artists"
msgstr " albumi esitajad"
msgstr "- Albumi esitajad"
msgctxt "#30319"
msgid "Music - All Album Artists"
@@ -145,7 +145,7 @@ msgstr "Muusika kõik albumi esitajad"
msgctxt "#30352"
msgid "Music - Frequently Played"
msgstr "Muusika sageli esitatud"
msgstr "Muusika Sageli esitatud"
msgctxt "#30327"
msgid "Go To Season"
@@ -157,11 +157,11 @@ msgstr "Faili otserada"
msgctxt "#30263"
msgid "Episodes - Recently Added"
msgstr "Episoodid viimati lisatud"
msgstr "Episoodid - Viimati lisatud"
msgctxt "#30257"
msgid "Movies - Recently Added"
msgstr "Filmid viimati lisatud"
msgstr "Filmid Viimati lisatud"
msgctxt "#30349"
msgid " - Recently Played"
@@ -169,7 +169,7 @@ msgstr "- viimati esitatud"
msgctxt "#30268"
msgid " - Recently Added"
msgstr "- viimati lisatud"
msgstr "- Viimati lisatud"
msgctxt "#30351"
msgid "Music - Recently Played"
@@ -177,11 +177,11 @@ msgstr "Muusika viimati esitatud"
msgctxt "#30350"
msgid "Music - Recently Added"
msgstr "Muusika viimati lisatud"
msgstr "Muusika Viimati lisatud"
msgctxt "#30348"
msgid "Add user ratings"
msgstr "Lisa kasutajahinded"
msgstr "Kaasa kasutajahinded"
msgctxt "#30347"
msgid "Getting Existing Images"
@@ -245,7 +245,7 @@ msgstr "Filme lehel"
msgctxt "#30330"
msgid "Show change user dialog"
msgstr "Kuva kasutaja muutmise dialoog"
msgstr "Kuva kasutaja vahetamise dialoog"
msgctxt "#30329"
msgid "Screensaver"
@@ -257,7 +257,7 @@ msgstr "Kuva tühjad kaustad (saated, hooajad, kogumikud)"
msgctxt "#30325"
msgid " - Genres"
msgstr "- žanrid"
msgstr "- Žanrid"
msgctxt "#30322"
msgid "Auto resume"
@@ -265,11 +265,11 @@ msgstr "Automaatne jätkamine"
msgctxt "#30320"
msgid " - Albums"
msgstr "- albumid"
msgstr "- Albumid"
msgctxt "#30318"
msgid "Music - Albums"
msgstr "Muusika albumid"
msgstr "Muusika Albumid"
msgctxt "#30317"
msgid "Play All"
@@ -345,7 +345,7 @@ msgstr "Kas salvestada kõik Jellyfini pildid vahemällu kohalike Kodi piltidena
msgctxt "#30299"
msgid "Cache Images"
msgstr "Pildid vahemällu"
msgstr "Salvesta pildid vahemällu"
msgctxt "#30298"
msgid "Deleting Kodi Images"
@@ -369,7 +369,7 @@ msgstr "Märkus"
msgctxt "#30293"
msgid "Cache images"
msgstr "Pildid vahemällu"
msgstr "Salvesta pildid vahemällu"
msgctxt "#30292"
msgid "Select Subtitle Stream"
@@ -385,23 +385,23 @@ msgstr "Kõik"
msgctxt "#30289"
msgid "TV Shows - Genres"
msgstr "Sarjad - žanrid"
msgstr "Sarjad - Žanrid"
msgctxt "#30288"
msgid " - Latest"
msgstr "- uued"
msgstr "- Uued"
msgctxt "#30287"
msgid "TV Shows - Latest"
msgstr "Sarjad - uued"
msgstr "Sarjad - Uued"
msgctxt "#30286"
msgid "Movies - Unwatched"
msgstr "Filmid - vaatamata"
msgstr "Filmid - Vaatamata"
msgctxt "#30285"
msgid " - Unwatched"
msgstr "- vaatamata"
msgstr "- Vaatamata"
msgctxt "#30283"
msgid "Play Next Episode?"
@@ -413,7 +413,7 @@ msgstr "Kohtvõrgus ei tuvastatud Jellyfini servereid."
msgctxt "#30281"
msgid "Refresh Cached Images"
msgstr "Värskenda vahemällu salvestatud pilte"
msgstr "Värskenda puhverdatud pilte"
msgctxt "#30280"
msgid "Missing Title"
@@ -421,11 +421,11 @@ msgstr "Puuduv pealkiri"
msgctxt "#30279"
msgid "TV Shows - Unwatched"
msgstr "Sarjad - vaatamata"
msgstr "Sarjad - Vaatamata"
msgctxt "#30278"
msgid " - Next Up"
msgstr "- järgmisena"
msgstr "- Järgmine"
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?"
@@ -440,7 +440,7 @@ msgstr "Tuvastati täiendav jätkamise päring"
msgctxt "#30275"
msgid "Force Transcode"
msgstr "Sunnitud transkoodimine"
msgstr "Sunni transkoodimine"
msgctxt "#30274"
msgid "Delete"
@@ -460,27 +460,27 @@ msgstr "Märgi vaadatuks"
msgctxt "#30269"
msgid "Movies - Random"
msgstr "Filmid juhuslikud"
msgstr "Filmid Juhuslikud"
msgctxt "#30267"
msgid " - In Progress"
msgstr "- pooleli"
msgstr "- Pooleli"
msgctxt "#30266"
msgid "Movies - Pages"
msgstr "Filmid lehed"
msgstr "Filmid Lehed"
msgctxt "#30265"
msgid "Episodes - Next Up"
msgstr "Episoodid järgmine"
msgstr "Episoodid - Järgmine"
msgctxt "#30264"
msgid "Episodes - In Progress"
msgstr "Episoodid pooleli"
msgstr "Episoodid - Pooleli"
msgctxt "#30262"
msgid "TV Shows - Favorites"
msgstr "Sarjad - lemmikud"
msgstr "Sarjad - Lemmikud"
msgctxt "#30261"
msgid "TV Shows"
@@ -492,11 +492,11 @@ msgstr "Kogumikud"
msgctxt "#30259"
msgid "Movies - Favorites"
msgstr "Filmid lemmikud"
msgstr "Filmid Lemmikud"
msgctxt "#30258"
msgid "Movies - In Progress"
msgstr "Filmid pooleli"
msgstr "Filmid Pooleli"
msgctxt "#30256"
msgid "Movies"
@@ -512,11 +512,11 @@ msgstr "Kuva lisamooduli seaded"
msgctxt "#30252"
msgid "Movies - A-Z"
msgstr "Filmid A-Ü"
msgstr "Filmid - A-Ü"
msgctxt "#30251"
msgid "Movies - Genres"
msgstr "Filmid žanrid"
msgstr "Filmid Žanrid"
msgctxt "#30250"
msgid "Unknown"
@@ -528,11 +528,11 @@ msgstr "Otsi"
msgctxt "#30239"
msgid "Force transcode mpeg2"
msgstr "Transkoodi jõuga mpeg2"
msgstr "Sunni mpeg2 transkoodimine"
msgctxt "#30238"
msgid "Playback stream options"
msgstr "Taasesituse striimimise valikud"
msgstr "Taasesitusvoo valikud"
msgctxt "#30237"
msgid "Start from beginning"
@@ -540,7 +540,7 @@ msgstr "Alusta algusest"
msgctxt "#30236"
msgid "Force transcode h265 (hevc)"
msgstr "Transkoodi jõuga h265 (hevc)"
msgstr "Sunni h265 (hevc) transkoodimine"
msgctxt "#30235"
msgid "Episodes"
@@ -584,7 +584,7 @@ msgstr "Üksuse üksikasjad"
msgctxt "#30215"
msgid "On playback stop (100% = disabled)"
msgstr "Taasesituse peatamisel (100% = keelatud)"
msgstr "Taasesituse peatumisel (100% = keelatud)"
msgctxt "#30214"
msgid "Events"
@@ -604,7 +604,7 @@ msgstr "HTTP otsevoog"
msgctxt "#30000"
msgid "Host"
msgstr "Peremeesmasin"
msgstr "Serveri aadress"
msgctxt "#30182"
msgid "Include media stream info"
@@ -656,7 +656,7 @@ msgstr "Vali server"
msgctxt "#30163"
msgid "Add (cc) if subtitle is available"
msgstr "Lisa (cc) subtiitrite olemasolul"
msgstr "Lisa (cc), kui subtiitrid on saadaval"
msgctxt "#30139"
msgid "No Media Type Set"
@@ -688,7 +688,7 @@ msgstr "Lisa nimedele vaatamata arv"
msgctxt "#30118"
msgid "Add resume percent to names"
msgstr "Lisa nimedele jätkamise protsent"
msgstr "Lisa nimedele vaatemise oleku protsent"
msgctxt "#30114"
msgid "Jump back seconds"
@@ -756,8 +756,420 @@ msgstr "Kasutajanimi:"
msgctxt "#30023"
msgid "Hide unwatched episode details"
msgstr "Peida vaatamata episoodi üksikasjad"
msgstr "Peida vaatamata episoodide üksikasjad"
msgctxt "#30022"
msgid "Advanced"
msgstr "Täpsem"
msgctxt "#30019"
msgid "Filtered episode name format"
msgstr "Filtreeritud episoodi nime vorming"
msgctxt "#30213"
msgid "Video force 8 bit"
msgstr "Sunni 8 bit video"
msgctxt "#30368"
msgid "Clear Password?"
msgstr "Parool kustutada?"
msgctxt "#30373"
msgid "Scanning for local servers"
msgstr "Kohalike serverite skaneerimine"
msgctxt "#30376"
msgid "Checking server url"
msgstr "Serveri URL-i kontrollimine"
msgctxt "#30323"
msgid "Artists"
msgstr "Esitajad"
msgctxt "#30371"
msgid "Could not connect to the URL you entered, do you want to try again?"
msgstr "Sisestatud URL-iga ei õnnestunud ühenduda, kas soovid uuesti proovida?"
msgctxt "#30377"
msgid "Sending request"
msgstr "Päringu saatmine"
msgctxt "#30242"
msgid "Force transcode av1"
msgstr "Sunni av1 transkoodimine"
msgctxt "#30370"
msgid "Do you want to manually enter a server url?"
msgstr "Kas soovid serveri URL-i sisestada käsitsi?"
msgctxt "#30372"
msgid "Server URL"
msgstr "Serveri URL"
msgctxt "#30380"
msgid "Never"
msgstr "Mitte kunagi"
msgctxt "#30381"
msgid "More than one"
msgstr "Rohkem kui üks"
msgctxt "#30382"
msgid "Always"
msgstr "Alati"
msgctxt "#30383"
msgid "System - "
msgstr "Süsteem -"
msgctxt "#30225"
msgid "Interface Mode"
msgstr "Kasutajaliidese režiim"
msgctxt "#30226"
msgid "Default"
msgstr "Vaikimisi"
msgctxt "#30227"
msgid "Simple"
msgstr "Lihtne"
msgctxt "#30247"
msgid "Custom Widget Content"
msgstr "Kohandatud vidina sisu"
msgctxt "#30273"
msgid "Unset Favourite"
msgstr "Tühista lemmikuks määramine"
msgctxt "#30367"
msgid "Allow fast user switching password saving"
msgstr "Luba muudetud kasutajaparooli kiire salvestamine"
msgctxt "#30369"
msgid "Do you want to clear your saved password?"
msgstr "Kas soovid oma salvestatud parooli kustutada?"
msgctxt "#30374"
msgid "Sending request"
msgstr "Päringu saatmine"
msgctxt "#30375"
msgid "Receiving data packet"
msgstr "Andmepaketi vastuvõtmine"
msgctxt "#30378"
msgid "Persist user details"
msgstr "Säilita kasutajaandmed"
msgctxt "#30379"
msgid "External subtitle prompt"
msgstr "Väliste subtiitrite pakkumine"
msgctxt "#30439"
msgid "Show play next episode at time left in seconds"
msgstr "Kuva \"Esita järgmine episood\" enne video lõppu (sek)"
msgctxt "#30384"
msgid "Random movies interval minutes (0 = disabled)"
msgstr "Juhuslike filmide värskendamise intervall (0 = keelatud)"
msgctxt "#30388"
msgid "Server details"
msgstr "Serveri andmed"
msgctxt "#30392"
msgid "HTTPS"
msgstr "HTTPS"
msgctxt "#30398"
msgid "Refresh Jellyfin Metadata"
msgstr "Värskenda Jellyfini metaandmeid"
msgctxt "#30406"
msgid "Jellyfin Libraries"
msgstr "Jellyfini meediakogud"
msgctxt "#30407"
msgid "Global Lists"
msgstr "Globaalsed loendid"
msgctxt "#30416"
msgid "HTTP timeout seconds"
msgstr "HTTP ajalõpp sekundites"
msgctxt "#30418"
msgid "Audio bitrate (Kbits)"
msgstr "Heli bitikiirus (kbps)"
msgctxt "#30419"
msgid "Audio codec"
msgstr "Helikoodek"
msgctxt "#30423"
msgid "NotSet"
msgstr "Määramata"
msgctxt "#30425"
msgid "Year"
msgstr "Aasta"
msgctxt "#30426"
msgid "Title"
msgstr "Pealkiri"
msgctxt "#30437"
msgid "Playback options"
msgstr "Taasesituse valikud"
msgctxt "#30440"
msgid "Play next"
msgstr "Esita järgmisena"
msgctxt "#30409"
msgid "Add-on Actions"
msgstr "Lisamooduli toimingud"
msgctxt "#30395"
msgid "Clear cached server data"
msgstr "Tühjenda vahemällu salvestatud serveri andmed"
msgctxt "#30446"
msgid "There was an error logging in"
msgstr "Ilmes viga sisselogimisel"
msgctxt "#30449"
msgid "Instant Mix"
msgstr "Kiirmiks"
msgctxt "#30447"
msgid "Max Play Queue Size"
msgstr "Esitusjärjekorra maksimaalne suurus"
msgctxt "#30389"
msgid "User details"
msgstr "Kasutaja andmed"
msgctxt "#30387"
msgid "Unused images removed : "
msgstr "Kasutamata pildid eemaldati:"
msgctxt "#30405"
msgid " - Show All"
msgstr "- Kuva kõik"
msgctxt "#30415"
msgid " - Favorite Collections"
msgstr "- Lemmikkogumikud"
msgctxt "#30454"
msgid " - Totally Unwatched"
msgstr " - Täiesti vaatamata"
msgctxt "#30385"
msgid "Existing images before delete : "
msgstr "Olemasolevaid pilte enne kustutamist:"
msgctxt "#30386"
msgid "Unused Jellyfin images : "
msgstr "Kasutamata Jellyfini pildid:"
msgctxt "#30390"
msgid "Protocol"
msgstr "Protokoll"
msgctxt "#30391"
msgid "HTTP"
msgstr "HTTP"
msgctxt "#30393"
msgid "Clear Cache Result"
msgstr "Vahemälu tühjendamise tulemus"
msgctxt "#30394"
msgid "Cache files deleted"
msgstr "Vahemälu failid kustutati"
msgctxt "#30399"
msgid "Hide"
msgstr "Peida"
msgctxt "#30401"
msgid "Info"
msgstr "Info"
msgctxt "#30402"
msgid "Add to Kodi Playlist"
msgstr "Lisa Kodi esitusloendisse"
msgctxt "#30403"
msgid "Movies - Recommendations"
msgstr "Filmid - Soovitused"
msgctxt "#30400"
msgid "Cache images interval minutes (0 = disabled)"
msgstr "Piltide vahemällu salvestamise intervall (0 = keelatud)"
msgctxt "#30408"
msgid "Custom Widgets"
msgstr "Kohandatud vidinad"
msgctxt "#30410"
msgid " - Collections"
msgstr "- Kogumikud"
msgctxt "#30404"
msgid " - A-Z"
msgstr "- A-Ü"
msgctxt "#30413"
msgid " - Tags"
msgstr "- Sildid"
msgctxt "#30411"
msgid " - Years"
msgstr "- Aastad"
msgctxt "#30412"
msgid " - Decades"
msgstr "- Kümnendid"
msgctxt "#30414"
msgid " - Favorites"
msgstr "- Lemmikud"
msgctxt "#30417"
msgid "You do not have permision to delete this item"
msgstr "Sul pole selle üksuse kustutamiseks õigusi"
msgctxt "#30420"
msgid "Audio max channels"
msgstr "Maksimaalne helikanalite arv"
msgctxt "#30422"
msgid "Sorting"
msgstr "Järjestus"
msgctxt "#30424"
msgid "Default"
msgstr "Vaikimisi"
msgctxt "#30427"
msgid "Added"
msgstr "Lisatud"
msgctxt "#30428"
msgid "Rating"
msgstr "Hinne"
msgctxt "#30429"
msgid "Genre"
msgstr "Žanr"
msgctxt "#30432"
msgid "Hide watched items in lists"
msgstr "Peida vaadatud üksused loendites"
msgctxt "#30433"
msgid "Allow direct file playback"
msgstr "Luba failide otseesitus"
msgctxt "#30434"
msgid "Force transcode stream bitrate (Kbits)"
msgstr "Sunni transkoodimisvoo bitikiirus (kbps)"
msgctxt "#30435"
msgid "Connection speed test"
msgstr "Ühenduse kiirustest"
msgctxt "#30436"
msgid "Speed test data size (MB)"
msgstr "Kiirustesti andmesuurus (MB)"
msgctxt "#30442"
msgid "Simple new content check"
msgstr "Lihtne uue sisu kontroll"
msgctxt "#30441"
msgid "Use cached widget data"
msgstr "Kasuta vahemällu salvestatud vidina andmeid"
msgctxt "#30443"
msgid "Quick Connect"
msgstr "Kiirühendus"
msgctxt "#30444"
msgid "Login using Quick Connect"
msgstr "Logi sisse kiirühenduse abil"
msgctxt "#30445"
msgid "Continue Watching"
msgstr "Jätka vaatamist"
msgctxt "#30452"
msgid "Combine instead of replace (might cause slow-down)"
msgstr "Ühenda asendamise asemel (võib jõudlust aeglustada)"
msgctxt "#30667"
msgid "Action to take"
msgstr "Sooritatav toiming"
msgctxt "#30668"
msgid "Start Offset (seconds)"
msgstr "Käivitusviivitus (sekundites)"
msgctxt "#30669"
msgid "End Offset (seconds)"
msgstr "Lõpuviivitus (sekundites)"
msgctxt "#30672"
msgid "Skip"
msgstr "Jäta vahele"
msgctxt "#30673"
msgid "Ask"
msgstr "Küsi"
msgctxt "#30674"
msgid "Do Nothing"
msgstr "Ära tee midagi"
msgctxt "#30431"
msgid "Seasons"
msgstr "Hooajad"
msgctxt "#30448"
msgid "Shuffle"
msgstr "Segamine"
msgctxt "#30397"
msgid " - Pages"
msgstr "- Lehed"
msgctxt "#30451"
msgid "Rewatch Days (0 = Disabled)"
msgstr "Kordusvaatamise päevad (0 = keelatud)"
msgctxt "#30453"
msgid "Hide number of items to show on entry title"
msgstr "Peida pealkirjas kuvatavate üksuste arv"
msgctxt "#30455"
msgid "TV Shows - Random"
msgstr "Sarjad - Juhuslik"
msgctxt "#30456"
msgid "All - Random"
msgstr "Kõik - Juhuslik"
msgctxt "#30457"
msgid "All - Recently Added"
msgstr "Kõik - Viimati lisatud"
msgctxt "#30458"
msgid "All - Favorites"
msgstr "Kõik - Lemmikud"
msgctxt "#30678"
msgid "TV Shows per page"
msgstr "Sarjade arv lehel"

View File

@@ -1,7 +1,7 @@
msgid ""
msgstr ""
"PO-Revision-Date: 2023-12-18 12:49+0000\n"
"Last-Translator: Oskari Lavinto <olavinto@protonmail.com>\n"
"PO-Revision-Date: 2025-12-18 13:55+0000\n"
"Last-Translator: Antti Pikkuaho <antti.pikkuaho@outlook.com>\n"
"Language-Team: Finnish <https://translate.jellyfin.org/projects/jellycon/"
"jellycon/fi/>\n"
"Language: fi\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.14.1\n"
"X-Generator: Weblate 5.14\n"
msgctxt "#30442"
msgid "Simple new content check"
@@ -591,7 +591,7 @@ msgstr "Puskuroidaan kuvia"
msgctxt "#30299"
msgid "Cache Images"
msgstr "Puskuroi kuvat"
msgstr "Puskuroi Kuvat"
msgctxt "#30298"
msgid "Deleting Kodi Images"
@@ -1153,3 +1153,79 @@ msgstr "Pakota AV1-transkoodaus"
msgctxt "#30451"
msgid "Rewatch Days (0 = Disabled)"
msgstr "Uudelleenkatselupäivät (0 = ei käytössä)"
msgctxt "#30453"
msgid "Hide number of items to show on entry title"
msgstr "Piilota näytettävien kohteiden määrä etusivulta"
msgctxt "#30454"
msgid " - Totally Unwatched"
msgstr " - Kokonaan katsomatta"
msgctxt "#30666"
msgid "Segment Skipper"
msgstr "Kappaleiden ohittaja"
msgctxt "#30668"
msgid "Start Offset (seconds)"
msgstr "Aloituksen siirto (sekunneissa)"
msgctxt "#30667"
msgid "Action to take"
msgstr "Tehtävät toimet"
msgctxt "#30669"
msgid "End Offset (seconds)"
msgstr "Lopetuksen siirto (sekunneissa)"
msgctxt "#30670"
msgid "Intro Skipper"
msgstr "Johdannon ohittaja"
msgctxt "#30671"
msgid "Credit Skipper"
msgstr "Lopetuksen ohittaja"
msgctxt "#30672"
msgid "Skip"
msgstr "Ohita"
msgctxt "#30673"
msgid "Ask"
msgstr "Kysy"
msgctxt "#30674"
msgid "Do Nothing"
msgstr "Älä tee mitään"
msgctxt "#30675"
msgid "Commercial Skipper"
msgstr "Mainosten ohittaja"
msgctxt "#30676"
msgid "Preview Skipper"
msgstr "Ennakkoesitysten ohittaja"
msgctxt "#30677"
msgid "Recap Skipper"
msgstr "Yhteenvetojen ohittaja"
msgctxt "#30455"
msgid "TV Shows - Random"
msgstr "Sarjat - Satunnainen"
msgctxt "#30456"
msgid "All - Random"
msgstr "Kaikki - Satunnainen"
msgctxt "#30457"
msgid "All - Recently Added"
msgstr "Kaikki - Viimeksi lisätyt"
msgctxt "#30458"
msgid "All - Favorites"
msgstr "Kaikki - Suosikit"
msgctxt "#30678"
msgid "TV Shows per page"
msgstr "Sarjoja per sivu"

View File

@@ -1,7 +1,7 @@
msgid ""
msgstr ""
"PO-Revision-Date: 2024-04-09 17:38+0000\n"
"Last-Translator: ROYJohan08 <ROY.Johan.08@gmail.com>\n"
"PO-Revision-Date: 2025-05-13 02:01+0000\n"
"Last-Translator: r4dius <r4dius@gmail.com>\n"
"Language-Team: French <https://translate.jellyfin.org/projects/jellycon/"
"jellycon/fr/>\n"
"Language: fr\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 5.4.2\n"
"X-Generator: Weblate 5.10.4\n"
msgctxt "#30018"
msgid "Number of items to show in filtered lists"
@@ -1156,3 +1156,55 @@ msgstr "Revoir ensuite"
msgctxt "#30453"
msgid "Hide number of items to show on entry title"
msgstr "Cacher ne nombre d'éléments à montrer dans les titres d'entrées"
msgctxt "#30454"
msgid " - Totally Unwatched"
msgstr " - totalité non vu"
msgctxt "#30667"
msgid "Action to take"
msgstr "Action à effectuer"
msgctxt "#30668"
msgid "Start Offset (seconds)"
msgstr "Décalage initial (secondes)"
msgctxt "#30669"
msgid "End Offset (seconds)"
msgstr "Décalage de fin (secondes)"
msgctxt "#30666"
msgid "Segment Skipper"
msgstr "Sauter le contenu"
msgctxt "#30670"
msgid "Intro Skipper"
msgstr "Sauter l'introduction"
msgctxt "#30671"
msgid "Credit Skipper"
msgstr "Sauter le générique"
msgctxt "#30672"
msgid "Skip"
msgstr "Sauter"
msgctxt "#30673"
msgid "Ask"
msgstr "Demander"
msgctxt "#30674"
msgid "Do Nothing"
msgstr "Ne rien faire"
msgctxt "#30675"
msgid "Commercial Skipper"
msgstr "Sauter les publicités"
msgctxt "#30676"
msgid "Preview Skipper"
msgstr "Sauter l'aperçu"
msgctxt "#30677"
msgid "Recap Skipper"
msgstr "Sauter le récapitulatif"

View File

@@ -1,7 +1,7 @@
msgid ""
msgstr ""
"PO-Revision-Date: 2024-05-04 10:18+0000\n"
"Last-Translator: Szilágyi Kristóf <kriny96@gmail.com>\n"
"PO-Revision-Date: 2025-07-21 20:37+0000\n"
"Last-Translator: czlevi7 <czlevi7@gmail.com>\n"
"Language-Team: Hungarian <https://translate.jellyfin.org/projects/jellycon/"
"jellycon/hu/>\n"
"Language: hu\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 5.4.2\n"
"X-Generator: Weblate 5.11.4\n"
msgctxt "#30441"
msgid "Use cached widget data"
@@ -1086,7 +1086,7 @@ msgstr "Port"
msgctxt "#30000"
msgid "Host"
msgstr "Hoszt"
msgstr "Gazda"
msgctxt "#30444"
msgid "Login using Quick Connect"
@@ -1155,3 +1155,55 @@ msgstr "Egyesítés csere helyett (lassulást okozhat)"
msgctxt "#30453"
msgid "Hide number of items to show on entry title"
msgstr "Elemek számának rejtése a cím mellett"
msgctxt "#30454"
msgid " - Totally Unwatched"
msgstr " Megnézetlen"
msgctxt "#30667"
msgid "Action to take"
msgstr "Teendő"
msgctxt "#30668"
msgid "Start Offset (seconds)"
msgstr "Kezdési eltérés (másodpercben)"
msgctxt "#30669"
msgid "End Offset (seconds)"
msgstr "Befejezési késleltetés"
msgctxt "#30670"
msgid "Intro Skipper"
msgstr "Intróátugró"
msgctxt "#30666"
msgid "Segment Skipper"
msgstr "Részlet átugró"
msgctxt "#30671"
msgid "Credit Skipper"
msgstr "Stáblistaátugró"
msgctxt "#30672"
msgid "Skip"
msgstr "Átugrás"
msgctxt "#30674"
msgid "Do Nothing"
msgstr "Ne csináljon semmit"
msgctxt "#30675"
msgid "Commercial Skipper"
msgstr "Reklámátugró"
msgctxt "#30676"
msgid "Preview Skipper"
msgstr "Előnézet átugró"
msgctxt "#30673"
msgid "Ask"
msgstr "Kérdezz"
msgctxt "#30677"
msgid "Recap Skipper"
msgstr "Összefoglaló átugró"

View File

@@ -1,7 +1,7 @@
msgid ""
msgstr ""
"PO-Revision-Date: 2023-02-15 10:39+0000\n"
"Last-Translator: Imamuzzaki Abu Salam <imamuzzaki@gmail.com>\n"
"PO-Revision-Date: 2025-06-28 11:51+0000\n"
"Last-Translator: Nirwan <ny.unpar@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.14.1\n"
"X-Generator: Weblate 5.11.4\n"
msgctxt "#30414"
msgid " - Favorites"
@@ -1122,3 +1122,87 @@ msgstr "Terjadi kesalahan saat masuk"
msgctxt "#30449"
msgid "Instant Mix"
msgstr "Campuran Instan"
msgctxt "#30242"
msgid "Force transcode av1"
msgstr "Paksa transkode av1"
msgctxt "#30451"
msgid "Rewatch Days (0 = Disabled)"
msgstr "Jeda Tonton Ulang (0 = Nonaktif)"
msgctxt "#30452"
msgid "Combine instead of replace (might cause slow-down)"
msgstr "Gabungkan, bukan Gantikan (berisiko memperlambat)"
msgctxt "#30453"
msgid "Hide number of items to show on entry title"
msgstr "Sembunyikan Jumlah Item di Judul"
msgctxt "#30454"
msgid " - Totally Unwatched"
msgstr " - Belum Pernah Ditonton"
msgctxt "#30450"
msgid "Next Up Rewatching"
msgstr "Tampilkan Tontonan Ulang"
msgctxt "#30225"
msgid "Interface Mode"
msgstr "Mode Antarmuka"
msgctxt "#30226"
msgid "Default"
msgstr "Baku"
msgctxt "#30227"
msgid "Simple"
msgstr "Simpel"
msgctxt "#30666"
msgid "Segment Skipper"
msgstr "Lewatkan Segmen"
msgctxt "#30667"
msgid "Action to take"
msgstr "Aksi yang diambil"
msgctxt "#30668"
msgid "Start Offset (seconds)"
msgstr "Mulai Offset(detik)"
msgctxt "#30669"
msgid "End Offset (seconds)"
msgstr "Akhir Offset(detik)"
msgctxt "#30670"
msgid "Intro Skipper"
msgstr "Lewatkan intro"
msgctxt "#30671"
msgid "Credit Skipper"
msgstr "Lewatkan Credit"
msgctxt "#30673"
msgid "Ask"
msgstr "Tanya"
msgctxt "#30674"
msgid "Do Nothing"
msgstr "Tidak Ada"
msgctxt "#30675"
msgid "Commercial Skipper"
msgstr "Melewatkan iklan"
msgctxt "#30676"
msgid "Preview Skipper"
msgstr "Melewatkan Cuplikan"
msgctxt "#30672"
msgid "Skip"
msgstr "Lewatkan"
msgctxt "#30677"
msgid "Recap Skipper"
msgstr "Lewati Rekap"

View File

@@ -1,7 +1,7 @@
msgid ""
msgstr ""
"PO-Revision-Date: 2024-03-21 14:30+0000\n"
"Last-Translator: VitoFe <vito-7@hotmail.it>\n"
"PO-Revision-Date: 2026-01-02 12:03+0000\n"
"Last-Translator: ittelicra <alexarciletti10@gmail.com>\n"
"Language-Team: Italian <https://translate.jellyfin.org/projects/jellycon/"
"jellycon/it/>\n"
"Language: it\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 5.4.2\n"
"X-Generator: Weblate 5.15.1\n"
msgctxt "#30120"
msgid "Show load progress"
@@ -49,7 +49,7 @@ msgstr "Attenzione: questa operazione eliminerà i file multimediali dal server.
msgctxt "#30091"
msgid "Confirm delete?"
msgstr "Confermi l'eliminazione?"
msgstr "Confermare l'eliminazione?"
msgctxt "#30063"
msgid "N/A"
@@ -73,7 +73,7 @@ msgstr "Nome utente/Password errati"
msgctxt "#30027"
msgid "Enable debug logging"
msgstr "Attiva log a debug"
msgstr "Attiva log di debug"
msgctxt "#30026"
msgid "Widget item select action"
@@ -89,7 +89,7 @@ msgstr "Nome utente:"
msgctxt "#30023"
msgid "Hide unwatched episode details"
msgstr "Nascondi dettagli episodi non guardati"
msgstr "Nascondi i dettagli degli episodi non guardati"
msgctxt "#30022"
msgid "Advanced"
@@ -385,7 +385,7 @@ msgstr "Disposizione elemento"
msgctxt "#30220"
msgid "Prompt to delete movie after %"
msgstr "Chiedi se eliminare il film dopo %"
msgstr "Chiedi di eliminare il film dopo %"
msgctxt "#30219"
msgid " - Prompt before play"
@@ -397,7 +397,7 @@ msgstr "Riproduci il prossimo episodio dopo %"
msgctxt "#30217"
msgid "Prompt to delete episode after %"
msgstr "Chiedi se eliminare l'episodio dopo %"
msgstr "Chiedi di eliminare l'episodio dopo %"
msgctxt "#30216"
msgid "Item Details"
@@ -601,7 +601,7 @@ msgstr "Seleziona fonte sottotitoli"
msgctxt "#30293"
msgid "Cache images"
msgstr "Memorizza immagini"
msgstr "Memorizza in cache immagini"
msgctxt "#30310"
msgid "Enable Jellyfin remote control"
@@ -669,7 +669,7 @@ msgstr "Avviso"
msgctxt "#30299"
msgid "Cache Images"
msgstr "Memorizza immagini"
msgstr "Memorizza in cache le immagini"
msgctxt "#30300"
msgid "Cache all Jellyfin images as local Kodi images?"
@@ -997,7 +997,7 @@ msgstr "Non impostato"
msgctxt "#30446"
msgid "There was an error logging in"
msgstr "Si è verificato un errore al login"
msgstr "Si è verificato un errore durante l'accesso"
msgctxt "#30443"
msgid "Quick Connect"
@@ -1049,11 +1049,11 @@ msgstr "Riproduci prossimo"
msgctxt "#30441"
msgid "Use cached widget data"
msgstr "Utilizza dati widget in cache"
msgstr "Utilizza dati widget nella cache"
msgctxt "#30444"
msgid "Login using Quick Connect"
msgstr "Loggati con la Connessione Rapida"
msgstr "Accedi usando Connessione Rapida"
msgctxt "#30452"
msgid "Combine instead of replace (might cause slow-down)"
@@ -1101,7 +1101,7 @@ msgstr "Riprendi"
msgctxt "#30442"
msgid "Simple new content check"
msgstr "Ricerca dei contenuti nuovi semplice"
msgstr "Ricerca semplice dei nuovi contenuti"
msgctxt "#30215"
msgid "On playback stop (100% = disabled)"
@@ -1137,7 +1137,7 @@ msgstr "Mix Istantaneo"
msgctxt "#30451"
msgid "Rewatch Days (0 = Disabled)"
msgstr "Giorni da Riguardare (0 = Disabilitato)"
msgstr "Giorni per tornare a Guardare (0 = Disabilitato)"
msgctxt "#30276"
msgid "Extra Resume Prompt Detected"
@@ -1145,4 +1145,80 @@ msgstr "Finestra di Ripresa Duplicata Rilevata"
msgctxt "#30450"
msgid "Next Up Rewatching"
msgstr "Prossimo da Riguardare"
msgstr "Prossimo da Ri-Guardare"
msgctxt "#30672"
msgid "Skip"
msgstr "Salta"
msgctxt "#30673"
msgid "Ask"
msgstr "Chiedi"
msgctxt "#30674"
msgid "Do Nothing"
msgstr "Non fare niente"
msgctxt "#30453"
msgid "Hide number of items to show on entry title"
msgstr "Nascondi numero di elementi da mostrare per titolo"
msgctxt "#30454"
msgid " - Totally Unwatched"
msgstr " - Non Visto"
msgctxt "#30668"
msgid "Start Offset (seconds)"
msgstr "Offset all'avvio (secondi)"
msgctxt "#30666"
msgid "Segment Skipper"
msgstr "Salta Segmento"
msgctxt "#30667"
msgid "Action to take"
msgstr "Azione da eseguire"
msgctxt "#30669"
msgid "End Offset (seconds)"
msgstr "Offset alla fine (secondi)"
msgctxt "#30670"
msgid "Intro Skipper"
msgstr "Salta Intro"
msgctxt "#30671"
msgid "Credit Skipper"
msgstr "Salta Crediti"
msgctxt "#30675"
msgid "Commercial Skipper"
msgstr "Salta Pubblicità"
msgctxt "#30676"
msgid "Preview Skipper"
msgstr "Salta Anteprima"
msgctxt "#30677"
msgid "Recap Skipper"
msgstr "Salta Riassunto"
msgctxt "#30455"
msgid "TV Shows - Random"
msgstr "#30455"
msgctxt "#30456"
msgid "All - Random"
msgstr "Tutti - Casuale"
msgctxt "#30457"
msgid "All - Recently Added"
msgstr "Tutti - Aggiunti di recente"
msgctxt "#30458"
msgid "All - Favorites"
msgstr "Tutti - Preferiti"
msgctxt "#30678"
msgid "TV Shows per page"
msgstr "Serie TV per pagina"

View File

@@ -1,7 +1,7 @@
msgid ""
msgstr ""
"PO-Revision-Date: 2024-11-11 04:00+0000\n"
"Last-Translator: okaits#7534 <okaits@okaits7534.net>\n"
"PO-Revision-Date: 2025-09-23 16:39+0000\n"
"Last-Translator: S H <translate@hayakawa.work>\n"
"Language-Team: Japanese <https://translate.jellyfin.org/projects/jellycon/"
"jellycon/ja/>\n"
"Language: ja\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 5.7.2\n"
"X-Generator: Weblate 5.11.4\n"
msgctxt "#30112"
msgid "Loading Content"
@@ -700,3 +700,71 @@ msgid "JellyCon needs to prompt for resume on partily played items, Kodi can als
msgstr ""
"JellyConは途中まで再生したアイテムを途中から再生するか質問しますが、Kodiも同"
"じ質問をすることがあります。重複した質問を取り除きますか?"
msgctxt "#30114"
msgid "Jump back seconds"
msgstr "数秒戻す"
msgctxt "#30120"
msgid "Show load progress"
msgstr "読込み状況を表示"
msgctxt "#30125"
msgid "Done"
msgstr "完了"
msgctxt "#30135"
msgid "Error"
msgstr "エラー"
msgctxt "#30020"
msgid "Flatten single season"
msgstr "1シーズンを畳む"
msgctxt "#30116"
msgid "Add unwatched counts to names"
msgstr "名前に未視聴の数を追加"
msgctxt "#30121"
msgid "On resume"
msgstr "再開時"
msgctxt "#30126"
msgid "Processing Item : "
msgstr "次の項目を処理中:"
msgctxt "#30139"
msgid "No Media Type Set"
msgstr "メディアタイプ未設定"
msgctxt "#30163"
msgid "Add (cc) if subtitle is available"
msgstr "字幕がある場合(cc)を追加する"
msgctxt "#30166"
msgid "Select Server"
msgstr "サーバーを選択する"
msgctxt "#30167"
msgid "Selected Server Address"
msgstr "選択されたサーバーアドレス"
msgctxt "#30169"
msgid "Address: "
msgstr "アドレス:"
msgctxt "#30180"
msgid "Select User"
msgstr "ユーザー選択"
msgctxt "#30026"
msgid "Widget item select action"
msgstr "ウィジェット項目選択操作"
msgctxt "#30200"
msgid "URL error"
msgstr "URLエラー"
msgctxt "#30201"
msgid "Unable to connect to server"
msgstr "サーバーに接続できません"

View File

@@ -0,0 +1,16 @@
msgid ""
msgstr ""
"PO-Revision-Date: 2025-10-26 00:17+0000\n"
"Last-Translator: Battseren Badral <bbattseren88@gmail.com>\n"
"Language-Team: Mongolian <https://translate.jellyfin.org/projects/jellycon/"
"jellycon/mn/>\n"
"Language: mn\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 5.14\n"
msgctxt "#30000"
msgid "Host"
msgstr "Хост"

View File

@@ -1,7 +1,7 @@
msgid ""
msgstr ""
"PO-Revision-Date: 2024-08-31 16:52+0000\n"
"Last-Translator: Martin Clüwer Slåtsve <slotsvemartin@gmail.com>\n"
"PO-Revision-Date: 2025-12-29 13:05+0000\n"
"Last-Translator: Spillutvikler <sivertnhjortland@gmail.com>\n"
"Language-Team: Norwegian Bokmål <https://translate.jellyfin.org/projects/"
"jellycon/jellycon/nb_NO/>\n"
"Language: nb_NO\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 5.4.2\n"
"X-Generator: Weblate 5.15.1\n"
msgctxt "#30000"
msgid "Host"
@@ -1149,3 +1149,75 @@ msgstr "Se Igjen-dager (0 = deaktivert)"
msgctxt "#30452"
msgid "Combine instead of replace (might cause slow-down)"
msgstr "Kombiner i stedet for å bytte ut (kan føre til tregere)"
msgctxt "#30454"
msgid " - Totally Unwatched"
msgstr " - Totalt usett"
msgctxt "#30668"
msgid "Start Offset (seconds)"
msgstr "Start forskyvning (sekunder)"
msgctxt "#30669"
msgid "End Offset (seconds)"
msgstr "Slutt forskyvning (sekunder)"
msgctxt "#30672"
msgid "Skip"
msgstr "Hopp over"
msgctxt "#30673"
msgid "Ask"
msgstr "Spør"
msgctxt "#30674"
msgid "Do Nothing"
msgstr "Gjør ingenting"
msgctxt "#30667"
msgid "Action to take"
msgstr "Handling å ta"
msgctxt "#30666"
msgid "Segment Skipper"
msgstr "Segmenthopper"
msgctxt "#30670"
msgid "Intro Skipper"
msgstr "Introhopper"
msgctxt "#30671"
msgid "Credit Skipper"
msgstr "Rulleteksthopper"
msgctxt "#30675"
msgid "Commercial Skipper"
msgstr "Reklamehopper"
msgctxt "#30676"
msgid "Preview Skipper"
msgstr "Sniktitthopper"
msgctxt "#30677"
msgid "Recap Skipper"
msgstr "Oppsummeringshopper"
msgctxt "#30455"
msgid "TV Shows - Random"
msgstr "TV Show - Tilfeldig"
msgctxt "#30456"
msgid "All - Random"
msgstr "Alle - Tilfeldig"
msgctxt "#30457"
msgid "All - Recently Added"
msgstr "Alle - Nylig lagt til"
msgctxt "#30458"
msgid "All - Favorites"
msgstr "Alle - Favoritter"
msgctxt "#30678"
msgid "TV Shows per page"
msgstr "TV Show per side"

View File

@@ -1,7 +1,7 @@
msgid ""
msgstr ""
"PO-Revision-Date: 2024-07-02 22:41+0000\n"
"Last-Translator: exbu <meharmsen@me.com>\n"
"PO-Revision-Date: 2025-05-11 01:54+0000\n"
"Last-Translator: C2gl <lievens.guillaume@gmail.com>\n"
"Language-Team: Dutch <https://translate.jellyfin.org/projects/jellycon/"
"jellycon/nl/>\n"
"Language: nl\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 5.4.2\n"
"X-Generator: Weblate 5.10.4\n"
msgctxt "#30257"
msgid "Movies - Recently Added"
@@ -1152,3 +1152,55 @@ msgstr "Samenvoegen in de plaats van vervangen (kan vertragingen veroorzaken)"
msgctxt "#30453"
msgid "Hide number of items to show on entry title"
msgstr "Verberg aantal items bij weergeven van titel"
msgctxt "#30454"
msgid " - Totally Unwatched"
msgstr " Geheel niet bekeken"
msgctxt "#30667"
msgid "Action to take"
msgstr "Uit te voeren actie"
msgctxt "#30672"
msgid "Skip"
msgstr "Overslaan"
msgctxt "#30673"
msgid "Ask"
msgstr "Vragen"
msgctxt "#30674"
msgid "Do Nothing"
msgstr "Niets doen"
msgctxt "#30666"
msgid "Segment Skipper"
msgstr "Segment Overslagen"
msgctxt "#30668"
msgid "Start Offset (seconds)"
msgstr "Start Offset (seconden)"
msgctxt "#30669"
msgid "End Offset (seconds)"
msgstr "Einde Offset (seconden)"
msgctxt "#30670"
msgid "Intro Skipper"
msgstr "Intro Skipper"
msgctxt "#30671"
msgid "Credit Skipper"
msgstr "Krediet Skipper"
msgctxt "#30675"
msgid "Commercial Skipper"
msgstr "Reclame Skipper"
msgctxt "#30676"
msgid "Preview Skipper"
msgstr "Preview Skipper"
msgctxt "#30677"
msgid "Recap Skipper"
msgstr "Samenvatting Skipper"

View File

@@ -1,6 +1,6 @@
msgid ""
msgstr ""
"PO-Revision-Date: 2024-10-30 10:10+0000\n"
"PO-Revision-Date: 2025-12-15 22:55+0000\n"
"Last-Translator: Kityn <kitynska@gmail.com>\n"
"Language-Team: Polish <https://translate.jellyfin.org/projects/jellycon/"
"jellycon/pl/>\n"
@@ -8,9 +8,9 @@ msgstr ""
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=3; plural=n==1 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 "
"|| n%100>=20) ? 1 : 2;\n"
"X-Generator: Weblate 5.7.2\n"
"Plural-Forms: nplurals=3; plural=n==1 ? 0 : n%10>=2 && n%10<=4 && "
"(n%100<10 || n%100>=20) ? 1 : 2;\n"
"X-Generator: Weblate 5.14\n"
msgctxt "#30313"
msgid "Menu"
@@ -1161,3 +1161,71 @@ msgstr "Ukryj liczbę pozycji wyświetlanych w tytule wpisu"
msgctxt "#30454"
msgid " - Totally Unwatched"
msgstr " Zupełnie nieobejrzane"
msgctxt "#30667"
msgid "Action to take"
msgstr "Działanie do podjęcia"
msgctxt "#30669"
msgid "End Offset (seconds)"
msgstr "Przesunięcie zakończenia (sekundy)"
msgctxt "#30671"
msgid "Credit Skipper"
msgstr "Pomijanie napisów końcowych"
msgctxt "#30670"
msgid "Intro Skipper"
msgstr "Pomijanie wprowadzeń"
msgctxt "#30673"
msgid "Ask"
msgstr "Zapytaj"
msgctxt "#30675"
msgid "Commercial Skipper"
msgstr "Pomijanie reklam"
msgctxt "#30676"
msgid "Preview Skipper"
msgstr "Pomijanie zapowiedzi"
msgctxt "#30677"
msgid "Recap Skipper"
msgstr "Pomijanie podsumowań"
msgctxt "#30666"
msgid "Segment Skipper"
msgstr "Pomijanie segmentów"
msgctxt "#30668"
msgid "Start Offset (seconds)"
msgstr "Przesunięcie rozpoczęcia (sekundy)"
msgctxt "#30672"
msgid "Skip"
msgstr "Pomiń"
msgctxt "#30674"
msgid "Do Nothing"
msgstr "Nic nie rób"
msgctxt "#30455"
msgid "TV Shows - Random"
msgstr "Seriale - Losowo"
msgctxt "#30456"
msgid "All - Random"
msgstr "Wszystkie - Losowo"
msgctxt "#30457"
msgid "All - Recently Added"
msgstr "Wszystkie - Ostatnio dodane"
msgctxt "#30458"
msgid "All - Favorites"
msgstr "Wszystkie - Ulubione"
msgctxt "#30678"
msgid "TV Shows per page"
msgstr "Seriale na stronę"

View File

@@ -1,7 +1,7 @@
msgid ""
msgstr ""
"PO-Revision-Date: 2024-05-03 23:28+0000\n"
"Last-Translator: Mikhail Arkhipov <arkhipov.ms@gmail.com>\n"
"PO-Revision-Date: 2025-12-23 08:05+0000\n"
"Last-Translator: Gallyam Biktashev <gallyamb@gmail.com>\n"
"Language-Team: Russian <https://translate.jellyfin.org/projects/jellycon/"
"jellycon/ru/>\n"
"Language: ru\n"
@@ -10,7 +10,7 @@ msgstr ""
"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 5.4.2\n"
"X-Generator: Weblate 5.14\n"
msgctxt "#30332"
msgid "Stop media playback on screensaver activation"
@@ -345,11 +345,11 @@ msgstr "Фильмы - Недавно добавленные"
msgctxt "#30299"
msgid "Cache Images"
msgstr "Кэшировать рисунки"
msgstr "Кэшировать изображения"
msgctxt "#30293"
msgid "Cache images"
msgstr "Кэшировать рисунки"
msgstr "Кэшировать изображения"
msgctxt "#30288"
msgid " - Latest"
@@ -1155,3 +1155,75 @@ msgstr "Далее Повторный просмотр"
msgctxt "#30451"
msgid "Rewatch Days (0 = Disabled)"
msgstr "Дни повторного просмотра (0 = отключено)"
msgctxt "#30454"
msgid " - Totally Unwatched"
msgstr " Общее непросмотренное"
msgctxt "#30672"
msgid "Skip"
msgstr "Пропустить"
msgctxt "#30667"
msgid "Action to take"
msgstr "Действие для выполнения"
msgctxt "#30668"
msgid "Start Offset (seconds)"
msgstr "Начальное смещение (в секундах)"
msgctxt "#30669"
msgid "End Offset (seconds)"
msgstr "Конечное смещение (в секундах)"
msgctxt "#30666"
msgid "Segment Skipper"
msgstr "Пропуск сегментов"
msgctxt "#30673"
msgid "Ask"
msgstr "Спросить"
msgctxt "#30674"
msgid "Do Nothing"
msgstr "Ничего не делать"
msgctxt "#30670"
msgid "Intro Skipper"
msgstr "Пропуск вступления"
msgctxt "#30671"
msgid "Credit Skipper"
msgstr "Пропуск титров"
msgctxt "#30675"
msgid "Commercial Skipper"
msgstr "Пропуск рекламы"
msgctxt "#30676"
msgid "Preview Skipper"
msgstr "Пропуск обзора"
msgctxt "#30677"
msgid "Recap Skipper"
msgstr "Пропуск повтора"
msgctxt "#30455"
msgid "TV Shows - Random"
msgstr "Телешоу - случайно"
msgctxt "#30456"
msgid "All - Random"
msgstr "Всё - случайно"
msgctxt "#30457"
msgid "All - Recently Added"
msgstr "Всё - недавно добавленные"
msgctxt "#30458"
msgid "All - Favorites"
msgstr "Всё - избранное"
msgctxt "#30678"
msgid "TV Shows per page"
msgstr "Телешоу на странице"

View File

@@ -1,6 +1,6 @@
msgid ""
msgstr ""
"PO-Revision-Date: 2024-11-01 16:41+0000\n"
"PO-Revision-Date: 2025-05-22 15:01+0000\n"
"Last-Translator: nextlooper42 <nextlooper42@protonmail.com>\n"
"Language-Team: Slovak <https://translate.jellyfin.org/projects/jellycon/"
"jellycon/sk/>\n"
@@ -9,7 +9,7 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=3; plural=(n==1) ? 0 : (n>=2 && n<=4) ? 1 : 2;\n"
"X-Generator: Weblate 5.7.2\n"
"X-Generator: Weblate 5.11.4\n"
msgctxt "#30008"
msgid "Samba password"
@@ -1155,3 +1155,51 @@ msgstr "Skryť počet položiek zobrazených v názve položky"
msgctxt "#30454"
msgid " - Totally Unwatched"
msgstr " - Úplne nepozreté"
msgctxt "#30666"
msgid "Segment Skipper"
msgstr "Preskakovač segmentov"
msgctxt "#30667"
msgid "Action to take"
msgstr "Akcia, ktorú treba vykonať"
msgctxt "#30668"
msgid "Start Offset (seconds)"
msgstr "Počiatočný posun (v sekundách)"
msgctxt "#30669"
msgid "End Offset (seconds)"
msgstr "Koncový posun (v sekundách)"
msgctxt "#30671"
msgid "Credit Skipper"
msgstr "Preskakovač tituliek"
msgctxt "#30670"
msgid "Intro Skipper"
msgstr "Preskakovač úvodu"
msgctxt "#30672"
msgid "Skip"
msgstr "Preskočiť"
msgctxt "#30673"
msgid "Ask"
msgstr "Opýtať sa"
msgctxt "#30674"
msgid "Do Nothing"
msgstr "Nič nerobiť"
msgctxt "#30675"
msgid "Commercial Skipper"
msgstr "Preskakovač reklám"
msgctxt "#30676"
msgid "Preview Skipper"
msgstr "Preskakovač ukážok"
msgctxt "#30677"
msgid "Recap Skipper"
msgstr "Preskakovač rekapitulácie"

View File

@@ -1,7 +1,7 @@
msgid ""
msgstr ""
"PO-Revision-Date: 2024-07-14 10:41+0000\n"
"Last-Translator: Filan Fisteku <motto_schillernd_01@icloud.com>\n"
"PO-Revision-Date: 2025-12-13 11:55+0000\n"
"Last-Translator: A Boci <ami@boci.co.uk>\n"
"Language-Team: Albanian <https://translate.jellyfin.org/projects/jellycon/"
"jellycon/sq/>\n"
"Language: sq\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 5.4.2\n"
"X-Generator: Weblate 5.14\n"
msgctxt "#30001"
msgid "Port"
@@ -53,4 +53,8 @@ msgstr "Përdoruesi"
msgctxt "#30011"
msgid "[Detect local server]"
msgstr "[Detect local server]"
msgstr "[Zbuloni serverin lokal]"
msgctxt "#30017"
msgid "Show connected clients"
msgstr "Trego klientët e lidhur"

View File

@@ -1,7 +1,7 @@
msgid ""
msgstr ""
"PO-Revision-Date: 2024-05-21 08:41+0000\n"
"Last-Translator: Mathias Dejerud <smallmustard@gmail.com>\n"
"PO-Revision-Date: 2025-09-10 20:11+0000\n"
"Last-Translator: Ärik <kwakz4life@gmail.com>\n"
"Language-Team: Swedish <https://translate.jellyfin.org/projects/jellycon/"
"jellycon/sv/>\n"
"Language: sv\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 5.4.2\n"
"X-Generator: Weblate 5.11.4\n"
msgctxt "#30283"
msgid "Play Next Episode?"
@@ -361,7 +361,7 @@ msgstr "Uppspelning"
msgctxt "#30000"
msgid "Host"
msgstr "Host"
msgstr "Värd"
msgctxt "#30290"
msgid "All"
@@ -517,7 +517,7 @@ msgstr "Använd cachad widget data"
msgctxt "#30440"
msgid "Play next"
msgstr "Spela härnest"
msgstr "Spela härnäst"
msgctxt "#30250"
msgid "Unknown"
@@ -1149,3 +1149,55 @@ msgstr "Titta Igen Dagar (0 = Avaktiverat)"
msgctxt "#30453"
msgid "Hide number of items to show on entry title"
msgstr "Göm antal objekt som visas på huvudmenyn"
msgctxt "#30454"
msgid " - Totally Unwatched"
msgstr " - Helt obevakad"
msgctxt "#30668"
msgid "Start Offset (seconds)"
msgstr "Inledande förskjutning (sekunder)"
msgctxt "#30669"
msgid "End Offset (seconds)"
msgstr "Avslutande förskjutning (sekunder)"
msgctxt "#30672"
msgid "Skip"
msgstr "Hoppa över"
msgctxt "#30673"
msgid "Ask"
msgstr "Fråga"
msgctxt "#30674"
msgid "Do Nothing"
msgstr "Gör ingenting"
msgctxt "#30667"
msgid "Action to take"
msgstr "Åtgärd"
msgctxt "#30666"
msgid "Segment Skipper"
msgstr "Segmenthoppare"
msgctxt "#30671"
msgid "Credit Skipper"
msgstr "Sluttextshoppare"
msgctxt "#30670"
msgid "Intro Skipper"
msgstr "Introhoppare"
msgctxt "#30675"
msgid "Commercial Skipper"
msgstr "Reklamhoppare"
msgctxt "#30676"
msgid "Preview Skipper"
msgstr "Förhandsgranskningshoppare"
msgctxt "#30677"
msgid "Recap Skipper"
msgstr "Sammanfattningshoppare"

File diff suppressed because it is too large Load Diff

View File

@@ -1,7 +1,7 @@
msgid ""
msgstr ""
"PO-Revision-Date: 2024-08-19 23:41+0000\n"
"Last-Translator: queeup <queeup@zoho.com>\n"
"PO-Revision-Date: 2025-12-29 13:05+0000\n"
"Last-Translator: ilker <isaglam@gmail.com>\n"
"Language-Team: Turkish <https://translate.jellyfin.org/projects/jellycon/"
"jellycon/tr/>\n"
"Language: tr\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 5.4.2\n"
"X-Generator: Weblate 5.15.1\n"
msgctxt "#30237"
msgid "Start from beginning"
@@ -141,7 +141,7 @@ msgstr "Sunucu seç"
msgctxt "#30163"
msgid "Add (cc) if subtitle is available"
msgstr "Altyazı varsa (cc) ekleyin"
msgstr "Alt yazı varsa (cc) ekleyin"
msgctxt "#30139"
msgid "No Media Type Set"
@@ -159,10 +159,9 @@ msgctxt "#30125"
msgid "Done"
msgstr "Tamamlandı"
#, fuzzy
msgctxt "#30121"
msgid "On resume"
msgstr "Sürdürünce"
msgstr "Devam Ettirildiğinde"
msgctxt "#30120"
msgid "Show load progress"
@@ -274,7 +273,7 @@ msgstr "Cihazın görünen adı"
msgctxt "#30015"
msgid "Log timing data"
msgstr "Zamanlama verilerini günlüğe kaydet"
msgstr "Günlük zamanlama verisi"
msgctxt "#30014"
msgid "Jellyfin"
@@ -288,7 +287,6 @@ msgctxt "#30011"
msgid "[Detect local server]"
msgstr "[Yerel sunucuyu algıla]"
#, fuzzy
msgctxt "#30010"
msgid "Number of performance profiles to capture"
msgstr "Yakalanacak performans profili sayısı"
@@ -487,7 +485,7 @@ msgstr "Ses Akışını Seçin"
msgctxt "#30292"
msgid "Select Subtitle Stream"
msgstr "Altyazı Akışını Seçin"
msgstr "Alt yazı Akışını Seçin"
msgctxt "#30348"
msgid "Add user ratings"
@@ -588,7 +586,6 @@ msgctxt "#30288"
msgid " - Latest"
msgstr "- Sonuncu"
#, fuzzy
msgctxt "#30260"
msgid "BoxSets"
msgstr "Kutu Setleri"
@@ -750,3 +747,479 @@ msgstr "Önbelleğe alınmış pencere ögesi verilerini kullan"
msgctxt "#30408"
msgid "Custom Widgets"
msgstr "Özel Pencere Ögesi"
msgctxt "#30344"
msgid "Number of images removed from cache"
msgstr "Önbellekten silinen görsel sayısı"
msgctxt "#30323"
msgid "Artists"
msgstr "Sanatçılar"
msgctxt "#30337"
msgid "Song"
msgstr "Şarkı"
msgctxt "#30372"
msgid "Server URL"
msgstr "Sunucu URLsi"
msgctxt "#30373"
msgid "Scanning for local servers"
msgstr "Yerel sunucular taranıyor"
msgctxt "#30374"
msgid "Sending request"
msgstr "İstek gönderiliyor"
msgctxt "#30377"
msgid "Sending request"
msgstr "İstek gönderiliyor"
msgctxt "#30381"
msgid "More than one"
msgstr "Birden fazla"
msgctxt "#30320"
msgid " - Albums"
msgstr "- Albümler"
msgctxt "#30327"
msgid "Go To Season"
msgstr "Sezona Git"
msgctxt "#30329"
msgid "Screensaver"
msgstr "Ekran Koruyucu"
msgctxt "#30332"
msgid "Stop media playback on screensaver activation"
msgstr "Ekran koruyucu etkinleştirildiğinde medya oynatımını durdur"
msgctxt "#30334"
msgid "Use JellyCon context menu"
msgstr "JellyCon bağlam menüsünü kullan"
msgctxt "#30341"
msgid "Background image update interval (0 = disabled)"
msgstr "Arka plan görseli güncelleme aralığı (0 = devre dışı)"
msgctxt "#30342"
msgid "New content check interval (0 = disabled)"
msgstr "Yeni içerik kontrol aralığı (0 = devre dışı)"
msgctxt "#30345"
msgid "Cache Jellyfin server data requests"
msgstr "Jellyfin sunucu veri isteklerini önbelleğe al"
msgctxt "#30352"
msgid "Music - Frequently Played"
msgstr "Müzik - Sık Çalınanlar"
msgctxt "#30355"
msgid "Kodi Settings->Services->Allow remote control via HTTP"
msgstr "Kodi Ayarları->Hizmetler->HTTP üzerinden uzaktan kontrole izin ver"
msgctxt "#30356"
msgid "Loading existing image list"
msgstr "Mevcut görsel listesi yükleniyor"
msgctxt "#30357"
msgid "Processing existing image list"
msgstr "Mevcut görsel listesi işleniyor"
msgctxt "#30358"
msgid "Retreiving remote image list"
msgstr "Uzak görsel listesi alınıyor"
msgctxt "#30363"
msgid "Save Password?"
msgstr "Şifre Kaydedilsin mi?"
msgctxt "#30364"
msgid "Do you want to save the password?"
msgstr "Şifreyi kaydetmek istiyor musunuz?"
msgctxt "#30366"
msgid "Manually enter user details"
msgstr "Kullanıcı bilgilerini elle gir"
msgctxt "#30368"
msgid "Clear Password?"
msgstr "Şifre Temizlensin mi?"
msgctxt "#30370"
msgid "Do you want to manually enter a server url?"
msgstr "Sunucu URLsini elle girmek istiyor musunuz?"
msgctxt "#30375"
msgid "Receiving data packet"
msgstr "Veri paketi alınıyor"
msgctxt "#30378"
msgid "Persist user details"
msgstr "Kullanıcı bilgilerini kalıcı hale getir"
msgctxt "#30382"
msgid "Always"
msgstr "Her zaman"
msgctxt "#30384"
msgid "Random movies interval minutes (0 = disabled)"
msgstr "Rastgele filmler aralığı (dakika cinsinden) (0 = devre dışı)"
msgctxt "#30367"
msgid "Allow fast user switching password saving"
msgstr "Geçiş yapılan kullanıcının şifresinin hızlı kaydına izin ver"
msgctxt "#30330"
msgid "Show change user dialog"
msgstr "Kullanıcı değiştirme penceresini göster"
msgctxt "#30331"
msgid "Movies per page"
msgstr "Sayfa başına film"
msgctxt "#30333"
msgid "Cache artwork in the background"
msgstr "Görselleri arka planda önbelleğe al"
msgctxt "#30338"
msgid "Album"
msgstr "Albüm"
msgctxt "#30343"
msgid "Changes Require Kodi Restart"
msgstr "Değişiklikler için Kodi'nin yeniden başlatılması gerekiyor"
msgctxt "#30339"
msgid "Person"
msgstr "Kişi"
msgctxt "#30347"
msgid "Getting Existing Images"
msgstr "Mevcut Görseller Alınıyor"
msgctxt "#30380"
msgid "Never"
msgstr "Asla"
msgctxt "#30319"
msgid "Music - All Album Artists"
msgstr "Müzik - Tüm Albüm Sanatçıları"
msgctxt "#30321"
msgid " - Album Artists"
msgstr "- Albüm Sanatçıları"
msgctxt "#30353"
msgid " - Frequently Played"
msgstr "- Sık Çalınanlar"
msgctxt "#30360"
msgid " - Channels"
msgstr "- Kanallar"
msgctxt "#30361"
msgid " - Programs"
msgstr "- Programlar"
msgctxt "#30362"
msgid " - Recordings"
msgstr "- Kayıtlar"
msgctxt "#30376"
msgid "Checking server url"
msgstr "Sunucu URLsi kontrol ediliyor"
msgctxt "#30383"
msgid "System - "
msgstr "Sistem -"
msgctxt "#30346"
msgid "Deleteing Cached Images"
msgstr "Önbelleğe Alınmış Görseller Siliniyor"
msgctxt "#30359"
msgid "Building full image list"
msgstr "Tam görsel listesi oluşturuluyor"
msgctxt "#30369"
msgid "Do you want to clear your saved password?"
msgstr "Kaydedilmiş şifrenizi temizlemek istiyor musunuz?"
msgctxt "#30371"
msgid "Could not connect to the URL you entered, do you want to try again?"
msgstr "Girdiğiniz URL'ye bağlanılamadı, tekrar denemek ister misiniz?"
msgctxt "#30379"
msgid "External subtitle prompt"
msgstr "Harici alt yazı istemi"
msgctxt "#30433"
msgid "Allow direct file playback"
msgstr "Doğrudan dosya oynatımına izin ver"
msgctxt "#30446"
msgid "There was an error logging in"
msgstr "Oturum açılırken bir sorun oluştu"
msgctxt "#30448"
msgid "Shuffle"
msgstr "Karıştır"
msgctxt "#30386"
msgid "Unused Jellyfin images : "
msgstr "Kullanılmamış Jellyfin fotoğrafları:"
msgctxt "#30392"
msgid "HTTPS"
msgstr "HTTPS"
msgctxt "#30399"
msgid "Hide"
msgstr "Gizle"
msgctxt "#30413"
msgid " - Tags"
msgstr "- Etiketler"
msgctxt "#30417"
msgid "You do not have permision to delete this item"
msgstr "Bu ögeyi silmek için izniniz yok"
msgctxt "#30425"
msgid "Year"
msgstr "Yıl"
msgctxt "#30440"
msgid "Play next"
msgstr "Sonrakini oynat"
msgctxt "#30387"
msgid "Unused images removed : "
msgstr "Kaldırılan kullanılmamış fotoğraflar:"
msgctxt "#30388"
msgid "Server details"
msgstr "Sunucu detayları"
msgctxt "#30389"
msgid "User details"
msgstr "Kullanıcı detayları"
msgctxt "#30403"
msgid "Movies - Recommendations"
msgstr "Filmler - Öneriler"
msgctxt "#30404"
msgid " - A-Z"
msgstr "- A-Z"
msgctxt "#30405"
msgid " - Show All"
msgstr "- Tümünü Göster"
msgctxt "#30409"
msgid "Add-on Actions"
msgstr "Eklenti Hareketleri"
msgctxt "#30411"
msgid " - Years"
msgstr "- Yıllar"
msgctxt "#30422"
msgid "Sorting"
msgstr "Ayırma"
msgctxt "#30423"
msgid "NotSet"
msgstr "Ayarlanmadı"
msgctxt "#30424"
msgid "Default"
msgstr "Varsayılan"
msgctxt "#30426"
msgid "Title"
msgstr "Başlık"
msgctxt "#30427"
msgid "Added"
msgstr "Eklendi"
msgctxt "#30429"
msgid "Genre"
msgstr "Tür"
msgctxt "#30431"
msgid "Seasons"
msgstr "Sezonlar"
msgctxt "#30435"
msgid "Connection speed test"
msgstr "Bağlantı hız testi"
msgctxt "#30436"
msgid "Speed test data size (MB)"
msgstr "Veri hızını test et (MB)"
msgctxt "#30438"
msgid "Play cinema intros"
msgstr "Sinema jeneriklerini oynat"
msgctxt "#30452"
msgid "Combine instead of replace (might cause slow-down)"
msgstr "Değiştirmek yerine birleştir (yavaşlamaya neden olabilir)"
msgctxt "#30390"
msgid "Protocol"
msgstr "Protokol"
msgctxt "#30393"
msgid "Clear Cache Result"
msgstr "Önbellek sonuçlarını temizle"
msgctxt "#30391"
msgid "HTTP"
msgstr "HTTP"
msgctxt "#30394"
msgid "Cache files deleted"
msgstr "Önbellek dosyaları silindi"
msgctxt "#30401"
msgid "Info"
msgstr "Bilgi"
msgctxt "#30397"
msgid " - Pages"
msgstr "- Sayfalar"
msgctxt "#30421"
msgid "Views"
msgstr "İzlenme"
msgctxt "#30395"
msgid "Clear cached server data"
msgstr "Önbelleğe alınmış sunucu verisini temizle"
msgctxt "#30666"
msgid "Segment Skipper"
msgstr "Segment Atlayıcı"
msgctxt "#30672"
msgid "Skip"
msgstr "Atla"
msgctxt "#30673"
msgid "Ask"
msgstr "Sor"
msgctxt "#30674"
msgid "Do Nothing"
msgstr "Hiçbir şey yapma"
msgctxt "#30439"
msgid "Show play next episode at time left in seconds"
msgstr "Saniye cinsinden kalan zamanda sonraki bölümü oynatmayı göster"
msgctxt "#30454"
msgid " - Totally Unwatched"
msgstr " - Tamamen İzlenmemiş"
msgctxt "#30407"
msgid "Global Lists"
msgstr "Global Listeler"
msgctxt "#30412"
msgid " - Decades"
msgstr "- On yıllar"
msgctxt "#30416"
msgid "HTTP timeout seconds"
msgstr "HTTP zaman aşımı süresi (saniye cinsinden)"
msgctxt "#30434"
msgid "Force transcode stream bitrate (Kbits)"
msgstr "Kod dönüştürme akışı bit hızını zorla (Kbps)"
msgctxt "#30442"
msgid "Simple new content check"
msgstr "Basit yeni içerik kontrolü"
msgctxt "#30402"
msgid "Add to Kodi Playlist"
msgstr "Kodi çalma listesine ekle"
msgctxt "#30430"
msgid "Label"
msgstr "Etiket"
msgctxt "#30667"
msgid "Action to take"
msgstr "Yapılacak eylem"
msgctxt "#30670"
msgid "Intro Skipper"
msgstr "Jenerik Atlayıcı"
msgctxt "#30671"
msgid "Credit Skipper"
msgstr "Kredit Atlayıcı"
msgctxt "#30675"
msgid "Commercial Skipper"
msgstr "Reklam Atlayıcı"
msgctxt "#30676"
msgid "Preview Skipper"
msgstr "Önizleme Atlayıcı"
msgctxt "#30385"
msgid "Existing images before delete : "
msgstr "Silinmeden önce mevcut resimler:"
msgctxt "#30420"
msgid "Audio max channels"
msgstr "Ses max kanalları"
msgctxt "#30451"
msgid "Rewatch Days (0 = Disabled)"
msgstr "Yeniden izlenen günler (0 = İnaktif)"
msgctxt "#30677"
msgid "Recap Skipper"
msgstr "Özet Geçici"
msgctxt "#30400"
msgid "Cache images interval minutes (0 = disabled)"
msgstr "Önbellek görüntüleri aralığı dakika (0 = devre dışı)"
msgctxt "#30668"
msgid "Start Offset (seconds)"
msgstr "Başlangıç Ofseti (saniye)"
msgctxt "#30669"
msgid "End Offset (seconds)"
msgstr "Son Ofset (saniye)"
msgctxt "#30455"
msgid "TV Shows - Random"
msgstr "Diziler - Rastgele"
msgctxt "#30456"
msgid "All - Random"
msgstr "Hepsi - Rastgele"
msgctxt "#30457"
msgid "All - Recently Added"
msgstr "Hepsi - Son Eklenen"
msgctxt "#30458"
msgid "All - Favorites"
msgstr "Hepsi - Favoriler"
msgctxt "#30678"
msgid "TV Shows per page"
msgstr "Sayfa başına Diziler"

View File

@@ -1,7 +1,7 @@
msgid ""
msgstr ""
"PO-Revision-Date: 2024-04-07 12:38+0000\n"
"Last-Translator: stanol <stanol777@gmail.com>\n"
"PO-Revision-Date: 2025-12-15 22:55+0000\n"
"Last-Translator: kscop-n1 <karpenko.serhii@outlook.com>\n"
"Language-Team: Ukrainian <https://translate.jellyfin.org/projects/jellycon/"
"jellycon/uk/>\n"
"Language: uk\n"
@@ -10,7 +10,7 @@ msgstr ""
"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 5.4.2\n"
"X-Generator: Weblate 5.14\n"
msgctxt "#30434"
msgid "Force transcode stream bitrate (Kbits)"
@@ -46,7 +46,7 @@ msgstr "Увійти використовуючи Quick Connect"
msgctxt "#30443"
msgid "Quick Connect"
msgstr "Quick Connect"
msgstr "Швидке підключення"
msgctxt "#30442"
msgid "Simple new content check"
@@ -600,7 +600,7 @@ msgstr "Кешувати всі зображення Jellyfin як локаль
msgctxt "#30299"
msgid "Cache Images"
msgstr "Кешувати зображення"
msgstr "Кешувати Зображення"
msgctxt "#30298"
msgid "Deleting Kodi Images"
@@ -1156,3 +1156,75 @@ msgstr "Повторний перегляд днів (0 = вимкнено)"
msgctxt "#30453"
msgid "Hide number of items to show on entry title"
msgstr "Приховати кількість елементів для показу в заголовку запису"
msgctxt "#30454"
msgid " - Totally Unwatched"
msgstr " - Цілком Непереглянуто"
msgctxt "#30666"
msgid "Segment Skipper"
msgstr "Пропуск Сегмента"
msgctxt "#30667"
msgid "Action to take"
msgstr "Дії які потрібно зробити"
msgctxt "#30668"
msgid "Start Offset (seconds)"
msgstr "Початковий зсув (секунди)"
msgctxt "#30669"
msgid "End Offset (seconds)"
msgstr "Кінцевий зсув (секунди)"
msgctxt "#30670"
msgid "Intro Skipper"
msgstr "Пропуск Вступу"
msgctxt "#30671"
msgid "Credit Skipper"
msgstr "Пропуск титрів"
msgctxt "#30672"
msgid "Skip"
msgstr "Пропустити"
msgctxt "#30673"
msgid "Ask"
msgstr "Запитати"
msgctxt "#30674"
msgid "Do Nothing"
msgstr "Нічого не робити"
msgctxt "#30675"
msgid "Commercial Skipper"
msgstr "Пропуск реклами"
msgctxt "#30676"
msgid "Preview Skipper"
msgstr "Пропуск превʼю"
msgctxt "#30677"
msgid "Recap Skipper"
msgstr "Пропустити нагадування"
msgctxt "#30678"
msgid "TV Shows per page"
msgstr "TV шоу на сторінці"
msgctxt "#30455"
msgid "TV Shows - Random"
msgstr "ТV шоу - Випадкове"
msgctxt "#30456"
msgid "All - Random"
msgstr "Все - Випадково"
msgctxt "#30457"
msgid "All - Recently Added"
msgstr "Все - Нещодавно додані"
msgctxt "#30458"
msgid "All - Favorites"
msgstr "Все - Улюблене"

View File

@@ -1,15 +1,15 @@
msgid ""
msgstr ""
"PO-Revision-Date: 2024-11-01 16:41+0000\n"
"PO-Revision-Date: 2025-12-15 22:55+0000\n"
"Last-Translator: 無情天 <kofzhanganguo@126.com>\n"
"Language-Team: Chinese (Simplified Han script) <https://translate.jellyfin."
"org/projects/jellycon/jellycon/zh_Hans/>\n"
"Language-Team: Chinese (Simplified Han script) <https://"
"translate.jellyfin.org/projects/jellycon/jellycon/zh_Hans/>\n"
"Language: zh_Hans\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=1; plural=0;\n"
"X-Generator: Weblate 5.7.2\n"
"X-Generator: Weblate 5.14\n"
msgctxt "#30442"
msgid "Simple new content check"
@@ -1154,3 +1154,71 @@ msgstr "隐藏条目标题上显示的项目数"
msgctxt "#30454"
msgid " - Totally Unwatched"
msgstr " - 完全未观看"
msgctxt "#30672"
msgid "Skip"
msgstr "跳过"
msgctxt "#30666"
msgid "Segment Skipper"
msgstr "分段跳过"
msgctxt "#30667"
msgid "Action to take"
msgstr "采取的行动"
msgctxt "#30668"
msgid "Start Offset (seconds)"
msgstr "起始偏移(秒)"
msgctxt "#30669"
msgid "End Offset (seconds)"
msgstr "结束偏移(秒)"
msgctxt "#30670"
msgid "Intro Skipper"
msgstr "简介跳过"
msgctxt "#30671"
msgid "Credit Skipper"
msgstr "片头跳过"
msgctxt "#30673"
msgid "Ask"
msgstr "询问"
msgctxt "#30674"
msgid "Do Nothing"
msgstr "无动作"
msgctxt "#30675"
msgid "Commercial Skipper"
msgstr "广告跳过"
msgctxt "#30677"
msgid "Recap Skipper"
msgstr "回顾跳过"
msgctxt "#30676"
msgid "Preview Skipper"
msgstr "预告跳过"
msgctxt "#30455"
msgid "TV Shows - Random"
msgstr "电视节目 - 随机"
msgctxt "#30456"
msgid "All - Random"
msgstr "全部 - 随机"
msgctxt "#30457"
msgid "All - Recently Added"
msgstr "全部 - 最近添加"
msgctxt "#30458"
msgid "All - Favorites"
msgstr "全部 - 收藏夹"
msgctxt "#30678"
msgid "TV Shows per page"
msgstr "每页显示的电视节目数量"

View File

@@ -3,9 +3,11 @@ from __future__ import (
)
import xbmcgui
import xbmc
from .lazylogger import LazyLogger
from .utils import translate_string, send_event_notification
from .utils import seconds_to_ticks, ticks_to_seconds, translate_string, send_event_notification
log = LazyLogger(__name__)
@@ -206,3 +208,57 @@ class PlayNextDialog(xbmcgui.WindowXMLDialog):
def get_play_called(self):
return self.play_called
class SkipDialog(xbmcgui.WindowXMLDialog):
action_exitkeys_id = None
media_id = None
start = None
end = None
has_been_dissmissed = False
def __init__(self, *args, **kwargs):
log.debug("SkipDialog: __init__")
xbmcgui.WindowXML.__init__(self, *args, **kwargs)
def onInit(self):
log.debug("SkipDialog: onInit")
self.action_exitkeys_id = [10, 13]
def onFocus(self, control_id):
pass
def doAction(self, action_id):
pass
def onMessage(self, message):
log.debug("SkipDialog: onMessage: {0}".format(message))
def onAction(self, action):
log.debug("SkipDialog: onAction: {0}".format(action.getId()))
if action.getId() == 10 or action.getId() == 92: # ACTION_PREVIOUS_MENU & ACTION_NAV_BACK
log.debug("SkipDialog: dismissing dialog so it does not open again")
self.has_been_dissmissed = True
self.close()
def onClick(self, control_id):
log.debug("SkipDialog: onClick: {0}".format(control_id))
player = xbmc.Player()
current_ticks = seconds_to_ticks(player.getTime())
if self.start is not None and self.end is not None and current_ticks >= self.start and current_ticks <= self.end:
log.debug("SkipDialog: skipping segment because current ticks ({0}) is in range".format(current_ticks))
# If click during segment, skip it
player.seekTime(ticks_to_seconds(self.end))
self.close()
def get_play_called(self):
return self.play_called
def is_button_shown(self):
try:
self.getFocus()
return True
except Exception:
return False

View File

@@ -8,7 +8,7 @@ import re
import xbmcaddon
import xbmcplugin
import xbmcgui
from six.moves.urllib.parse import quote, unquote
from six.moves.urllib.parse import quote, unquote, parse_qsl
from .datamanager import DataManager
from .lazylogger import LazyLogger
@@ -40,6 +40,7 @@ def get_content(url, params):
view_type = ""
content_type = ""
media_type = str(media_type).lower().strip()
url_params = dict(parse_qsl(url))
if media_type.startswith("movie"):
view_type = "Movies"
content_type = 'movies'
@@ -88,29 +89,46 @@ def get_content(url, params):
progress.update(0, translate_string(30113))
# update url for paging
start_index = 0
page_limit = int(settings.getSetting('moviePageSize'))
start_index = int(url_params.get("StartIndex", 0))
url_limit = url_params.get("Limit")
movie_page_limit = int(settings.getSetting('moviePageSize'))
show_page_limit = int(settings.getSetting('showPageSize'))
url_prev = None
url_next = None
if page_limit > 0 and media_type.startswith("movie"):
m = re.search('StartIndex=([0-9]{1,4})', url)
if m and m.group(1):
if not url_limit or start_index > 0:
if movie_page_limit > 0 and media_type.startswith("movie"):
log.debug("UPDATING NEXT URL: {0}".format(url))
start_index = int(m.group(1))
log.debug("current_start : {0}".format(start_index))
if start_index > 0:
prev_index = start_index - page_limit
prev_index = start_index - movie_page_limit
if prev_index < 0:
prev_index = 0
url_prev = re.sub('StartIndex=([0-9]{1,4})', 'StartIndex=' + str(prev_index), url)
url_next = re.sub('StartIndex=([0-9]{1,4})', 'StartIndex=' + str(start_index + page_limit), url)
log.debug("UPDATING NEXT URL: {0}".format(url_next))
url_next = re.sub('StartIndex=([0-9]{1,4})', 'StartIndex=' + str(start_index + movie_page_limit), url)
log.debug("UPDATING NEXT URL: {0}".format(url_next))
else:
log.debug("ADDING NEXT URL: {0}".format(url))
url_next = url + "&StartIndex=" + str(start_index + page_limit) + "&Limit=" + str(page_limit)
url = url + "&StartIndex=" + str(start_index) + "&Limit=" + str(page_limit)
log.debug("ADDING NEXT URL: {0}".format(url_next))
else:
log.debug("ADDING NEXT URL: {0}".format(url))
url_next = url + "&StartIndex=" + str(start_index + movie_page_limit) + "&Limit=" + str(movie_page_limit)
url = url + "&StartIndex=" + str(start_index) + "&Limit=" + str(movie_page_limit)
log.debug("ADDING NEXT URL: {0}".format(url_next))
if show_page_limit > 0 and media_type.startswith("tvshow"):
log.debug("UPDATING NEXT URL: {0}".format(url))
log.debug("current_start : {0}".format(start_index))
if start_index > 0:
prev_index = start_index - show_page_limit
if prev_index < 0:
prev_index = 0
url_prev = re.sub('StartIndex=([0-9]{1,4})', 'StartIndex=' + str(prev_index), url)
url_next = re.sub('StartIndex=([0-9]{1,4})', 'StartIndex=' + str(start_index + show_page_limit), url)
log.debug("UPDATING NEXT URL: {0}".format(url_next))
else:
log.debug("ADDING NEXT URL: {0}".format(url))
url_next = url + "&StartIndex=" + str(start_index + show_page_limit) + "&Limit=" + str(show_page_limit)
url = url + "&StartIndex=" + str(start_index) + "&Limit=" + str(show_page_limit)
log.debug("ADDING NEXT URL: {0}".format(url_next))
use_cache = params.get("use_cache", "true") == "true"
@@ -120,24 +138,43 @@ def get_content(url, params):
log.debug("total_records: {0}".format(total_records))
# add paging items
if page_limit > 0 and media_type.startswith("movie"):
if url_prev:
list_item = xbmcgui.ListItem("Prev Page (" + str(start_index - page_limit + 1) + "-" + str(start_index) +
" of " + str(total_records) + ")")
u = sys.argv[0] + "?url=" + quote(url_prev) + "&mode=GET_CONTENT&media_type=movies"
log.debug("ADDING PREV ListItem: {0} - {1}".format(u, list_item))
dir_items.insert(0, (u, list_item, True))
if not url_limit or start_index > 0:
# add paging items
if movie_page_limit > 0 and media_type.startswith("movie"):
if url_prev:
list_item = xbmcgui.ListItem("Prev Page (" + str(start_index - movie_page_limit + 1) + "-" + str(start_index) +
" of " + str(total_records) + ")")
u = sys.argv[0] + "?url=" + quote(url_prev) + "&mode=GET_CONTENT&media_type=movies"
log.debug("ADDING PREV ListItem: {0} - {1}".format(u, list_item))
dir_items.insert(0, (u, list_item, True))
if start_index + page_limit < total_records:
upper_count = start_index + (page_limit * 2)
if upper_count > total_records:
upper_count = total_records
list_item = xbmcgui.ListItem("Next Page (" + str(start_index + page_limit + 1) + "-" +
str(upper_count) + " of " + str(total_records) + ")")
u = sys.argv[0] + "?url=" + quote(url_next) + "&mode=GET_CONTENT&media_type=movies"
log.debug("ADDING NEXT ListItem: {0} - {1}".format(u, list_item))
dir_items.append((u, list_item, True))
if start_index + movie_page_limit < total_records:
upper_count = start_index + (movie_page_limit * 2)
if upper_count > total_records:
upper_count = total_records
list_item = xbmcgui.ListItem("Next Page (" + str(start_index + movie_page_limit + 1) + "-" +
str(upper_count) + " of " + str(total_records) + ")")
u = sys.argv[0] + "?url=" + quote(url_next) + "&mode=GET_CONTENT&media_type=movies"
log.debug("ADDING NEXT ListItem: {0} - {1}".format(u, list_item))
dir_items.append((u, list_item, True))
# add paging items
if show_page_limit > 0 and media_type.startswith("tvshow"):
if url_prev:
list_item = xbmcgui.ListItem("Prev Page (" + str(start_index - show_page_limit + 1) + "-" + str(start_index) +
" of " + str(total_records) + ")")
u = sys.argv[0] + "?url=" + quote(url_prev) + "&mode=GET_CONTENT&media_type=tvshows"
log.debug("ADDING PREV ListItem: {0} - {1}".format(u, list_item))
dir_items.insert(0, (u, list_item, True))
if start_index + show_page_limit < total_records:
upper_count = start_index + (show_page_limit * 2)
if upper_count > total_records:
upper_count = total_records
list_item = xbmcgui.ListItem("Next Page (" + str(start_index + show_page_limit + 1) + "-" +
str(upper_count) + " of " + str(total_records) + ")")
u = sys.argv[0] + "?url=" + quote(url_next) + "&mode=GET_CONTENT&media_type=tvshows"
log.debug("ADDING NEXT ListItem: {0} - {1}".format(u, list_item))
dir_items.append((u, list_item, True))
# set the Kodi content type
if content_type:
@@ -154,7 +191,9 @@ def get_content(url, params):
xbmcplugin.setContent(pluginhandle, content_type)
# set the sort items
if page_limit > 0 and media_type.startswith("movie"):
if movie_page_limit > 0 and media_type.startswith("movie"):
xbmcplugin.addSortMethod(pluginhandle, xbmcplugin.SORT_METHOD_UNSORTED)
elif show_page_limit > 0 and media_type.startswith("tvshow"):
xbmcplugin.addSortMethod(pluginhandle, xbmcplugin.SORT_METHOD_UNSORTED)
else:
set_sort(pluginhandle, view_type, default_sort)
@@ -302,7 +341,7 @@ def process_directory(url, progress, params, use_cache_data=False):
detected_type = None
dir_items = []
OnlyTotallyUnwatchedTvShow = params.get("OnlyTotallyUnwatchedTvShow", None)
OnlyTotallyUnwatchedTvShow = params.get("OnlyTotallyUnwatchedTvShow", None)
for item_details in item_list:
if OnlyTotallyUnwatchedTvShow == "1" and item_details.watched_episodes > 0:
continue

View File

@@ -0,0 +1,158 @@
from __future__ import (
division, absolute_import, print_function, unicode_literals
)
import os
import threading
import xbmc
import xbmcaddon
import xbmcgui
from resources.lib.play_utils import get_media_segments
from resources.lib.utils import seconds_to_ticks, ticks_to_seconds, translate_path
from resources.lib.intro_skipper_utils import get_setting_skip_action, set_correct_skip_info
from .lazylogger import LazyLogger
from .dialogs import SkipDialog
from typing import Literal
log = LazyLogger(__name__)
class IntroSkipperService(threading.Thread):
stop_thread = False
monitor = None
def __init__(self, play_monitor):
super(IntroSkipperService, self).__init__()
self.monitor = play_monitor
def run(self):
from .play_utils import get_jellyfin_playing_item
settings = xbmcaddon.Addon()
plugin_path = settings.getAddonInfo('path')
plugin_path_real = translate_path(os.path.join(plugin_path))
skip_intro_dialog = None
skip_credit_dialog = None
skip_commercial_dialog = None
skip_preview_dialog = None
skip_recap_dialog = None
segments = None
playing_item_id = None
log.debug("SkipService: starting service")
while not xbmc.Monitor().abortRequested() and not self.stop_thread:
player = xbmc.Player()
if player.isPlaying():
item_id = get_jellyfin_playing_item()
if item_id is not None:
log.debug("SkipService: playing item is from jellyfin : {0}".format(item_id))
# If item id has changed or is new, retrieve segments
if playing_item_id is None or playing_item_id != item_id :
log.debug("SkipService: item is new, retrieving media segments : {0}".format(item_id))
segments = get_media_segments(item_id)
# Setting global playing item to current playing item
playing_item_id = item_id
# Handle skip only on jellyfin items
current_ticks = seconds_to_ticks(player.getTime())
# Handle Intros
skip_intro_dialog = self.handle_dialog(plugin_path_real, skip_intro_dialog, item_id, current_ticks, player, segments, "Intro")
# Handle Credits
skip_credit_dialog = self.handle_dialog(plugin_path_real, skip_credit_dialog, item_id, current_ticks, player, segments, "Outro")
# Handle commercial
skip_commercial_dialog = self.handle_dialog(plugin_path_real, skip_commercial_dialog, item_id, current_ticks, player, segments, "Commercial")
# Handle preview
skip_preview_dialog = self.handle_dialog(plugin_path_real, skip_preview_dialog, item_id, current_ticks, player, segments, "Preview")
# Handle recap
skip_recap_dialog = self.handle_dialog(plugin_path_real, skip_recap_dialog, item_id, current_ticks, player, segments, "Recap")
else:
playing_item_id = None
if skip_intro_dialog is not None:
log.debug("SkipService: Playback stopped, killing Intro dialog")
skip_intro_dialog.close()
skip_intro_dialog = None
if skip_credit_dialog is not None:
log.debug("SkipService: Playback stopped, killing Outro dialog")
skip_credit_dialog.close()
skip_credit_dialog = None
if skip_commercial_dialog is not None:
log.debug("SkipService: Playback stopped, killing Commercial dialog")
skip_commercial_dialog.close()
skip_commercial_dialog = None
if skip_preview_dialog is not None:
log.debug("SkipService: Playback stopped, killing Preview dialog")
skip_preview_dialog.close()
skip_preview_dialog = None
if skip_recap_dialog is not None:
log.debug("SkipService: Playback stopped, killing Recap dialog")
skip_recap_dialog.close()
skip_recap_dialog = None
if xbmc.Monitor().waitForAbort(1):
break
xbmc.sleep(200)
def handle_dialog(self, plugin_path_real: str, dialog: SkipDialog, item_id: str, current_ticks: float, player: xbmc.Player, segments, type: Literal["Commercial", "Preview", "Recap", "Outro", "Intro"]):
skip_action = get_setting_skip_action(type)
# In case do nothing is selected return
if skip_action == "2":
log.debug("SkipService: ignore {0} is selected".format(type))
return None
if dialog is None:
log.debug("SkipService: init dialog")
dialog = SkipDialog("SkipDialog.xml", plugin_path_real, "default", "720p")
set_correct_skip_info(item_id, dialog, segments, type)
is_segment = False
if dialog.start is not None and dialog.end is not None:
# Resets the dismiss var so that button can reappear in case of navigation in the timecodes
if (current_ticks < dialog.start or current_ticks > dialog.end) and dialog.has_been_dissmissed is True:
log.debug("SkipService: {0} skip was dismissed. It is reset beacause timecode is outside of segment")
dialog.has_been_dissmissed = False
# Checks if segment is playing
is_segment = current_ticks >= dialog.start and current_ticks <= dialog.end
if skip_action == "1" and is_segment:
log.debug("SkipService: {0} is set to automatic skip, skipping segment".format(type))
# If auto skip is enabled, skips to semgent ends automatically
player.seekTime(ticks_to_seconds(dialog.end))
xbmcgui.Dialog().notification("JellyCon", "{0} Skipped".format(type))
elif skip_action == "0":
# Otherwise show skip dialog
if is_segment and not dialog.has_been_dissmissed:
log.debug("SkipService: {0} is playing, showing dialog".format(type))
dialog.show()
else:
# Could not find doc on what happens when closing a closed dialog, but it seems fine
log.debug("SkipService: {0} is not playing, closing dialog".format(type))
dialog.close()
return dialog
def stop_service(self):
log.debug("IntroSkipperService Stop Called")
self.stop_thread = True

View File

@@ -0,0 +1,72 @@
from typing import Literal
import xbmcaddon
from .lazylogger import LazyLogger
from .dialogs import SkipDialog
from .utils import seconds_to_ticks
log = LazyLogger(__name__)
def get_setting_skip_action(type: Literal["Commercial", "Preview", "Recap", "Outro", "Intro"]):
settings = xbmcaddon.Addon()
if (type == "Commercial"):
return settings.getSetting("commercial_skipper_action")
elif (type == "Preview"):
return settings.getSetting("preview_skipper_action")
elif (type == "Recap"):
return settings.getSetting("recap_skipper_action")
elif (type == "Outro"):
return settings.getSetting("credit_skipper_action")
elif (type == "Intro"):
return settings.getSetting("intro_skipper_action")
return ""
def get_setting_skip_start_offset(type: Literal["Commercial", "Preview", "Recap", "Outro", "Intro"]):
settings = xbmcaddon.Addon()
if (type == "Commercial"):
return settings.getSettingInt("commercial_skipper_start_offset")
elif (type == "Preview"):
return settings.getSettingInt("preview_skipper_start_offset")
elif (type == "Recap"):
return settings.getSettingInt("recap_skipper_start_offset")
elif (type == "Outro"):
return settings.getSettingInt("credit_skipper_start_offset")
elif (type == "Intro"):
return settings.getSettingInt("intro_skipper_start_offset")
return 0
def get_setting_skip_end_offset(type: Literal["Commercial", "Preview", "Recap", "Outro", "Intro"]):
settings = xbmcaddon.Addon()
if (type == "Commercial"):
return settings.getSettingInt("commercial_skipper_end_offset")
elif (type == "Preview"):
return settings.getSettingInt("preview_skipper_end_offset")
elif (type == "Recap"):
return settings.getSettingInt("recap_skipper_end_offset")
elif (type == "Outro"):
return settings.getSettingInt("credit_skipper_end_offset")
elif (type == "Intro"):
return settings.getSettingInt("intro_skipper_end_offset")
return 0
def set_correct_skip_info(item_id: str, skip_dialog: SkipDialog, segments, type: Literal["Commercial", "Preview", "Recap", "Outro", "Intro"]):
if (skip_dialog.media_id is None or skip_dialog.media_id != item_id) and item_id is not None:
# If playback item has changed (or is new), sets its id and set media segments info
log.debug("SkipDialogInfo : Media Id has changed to {0}, setting segments".format(item_id))
skip_dialog.media_id = item_id
skip_dialog.has_been_dissmissed = False
if segments is not None:
# Find the intro and outro timings
start = next((segment["StartTicks"] for segment in segments if segment["Type"] == type), None)
end = next((segment["EndTicks"] for segment in segments if segment["Type"] == type), None)
# Sets timings with offsets if defined in settings
if start is not None:
skip_dialog.start = start + seconds_to_ticks(get_setting_skip_start_offset(type))
log.debug("SkipDialogInfo : Setting {0} start to {1}".format(type, skip_dialog.start))
if end is not None:
skip_dialog.end = end - seconds_to_ticks(get_setting_skip_end_offset(type))
log.debug("SkipDialogInfo : Setting {0} end to {1}".format(type, skip_dialog.end))

View File

@@ -1356,12 +1356,20 @@ def show_widgets():
add_menu_directory_item(translate_string(30287) + item_limit_text,
'plugin://plugin.video.jellycon/?mode=WIDGET_CONTENT&type=recent_tvshows')
add_menu_directory_item(translate_string(30455) + item_limit_text,
'plugin://plugin.video.jellycon/?mode=WIDGET_CONTENT&type=random_tvshows')
add_menu_directory_item(translate_string(30263) + item_limit_text,
'plugin://plugin.video.jellycon/?mode=WIDGET_CONTENT&type=recent_episodes')
add_menu_directory_item(translate_string(30264) + item_limit_text,
'plugin://plugin.video.jellycon/?mode=WIDGET_CONTENT&type=inprogress_episodes')
add_menu_directory_item(translate_string(30265) + item_limit_text,
'plugin://plugin.video.jellycon/?mode=WIDGET_CONTENT&type=nextup_episodes')
add_menu_directory_item(translate_string(30457) + item_limit_text,
'plugin://plugin.video.jellycon/?mode=WIDGET_CONTENT&type=recent_all')
add_menu_directory_item(translate_string(30458),
'plugin://plugin.video.jellycon/?mode=WIDGET_CONTENT&type=favorites_all')
add_menu_directory_item(translate_string(30456) + item_limit_text,
'plugin://plugin.video.jellycon/?mode=WIDGET_CONTENT&type=random_all')
xbmcplugin.endOfDirectory(int(sys.argv[1]))

View File

@@ -730,8 +730,20 @@ def set_list_item_props(item_id, list_item, result, server, extra_props, title):
details = {
'title': title,
'mediatype': mediatype
'mediatype': mediatype,
'artist': "Unknown Artist",
'album': "Unknown Album"
}
artist = result.get("Artists", [])
if artist:
details['artist'] = artist[0]
track = result.get("IndexNumber")
if track:
details['tracknumber'] = track
album = result.get("Album")
if album:
details['album'] = album
list_item.setInfo("Music", infoLabels=details)
else:
@@ -850,7 +862,7 @@ def audio_subs_pref(url, list_item, media_source, item_id, audio_stream_index, s
list_item.setSubtitles([subtitle_url])
else:
# Burn subtitles
playurlprefs += "&SubtitleStreamIndex=%s" % select_subs_index
playurlprefs += "&SubtitleStreamIndex=%s&SubtitleMethod=Encode" % select_subs_index
elif len(subtitle_streams) > 1:
resp = dialog.select(translate_string(30292), subtitle_streams)
@@ -870,10 +882,10 @@ def audio_subs_pref(url, list_item, media_source, item_id, audio_stream_index, s
list_item.setSubtitles([subtitle_url])
else:
# Burn subtitles
playurlprefs += "&SubtitleStreamIndex=%s" % select_subs_index
playurlprefs += "&SubtitleStreamIndex=%s&SubtitleMethod=Encode" % select_subs_index
else: # User backed out of selection
playurlprefs += "&SubtitleStreamIndex=%s" % default_sub
playurlprefs += "&SubtitleStreamIndex=%s&SubtitleMethod=Encode" % default_sub
new_url = url + playurlprefs
@@ -891,9 +903,7 @@ def external_subs(media_source, list_item, item_id):
sub_names = []
server = settings.getSetting('server_address')
for stream in media_streams:
for idx, stream in enumerate(media_streams):
if (stream['Type'] == "Subtitle"
and stream['IsExternal']
and stream['IsTextSubtitleStream']
@@ -904,20 +914,22 @@ def external_subs(media_source, list_item, item_id):
language = '{}.default'.format(language)
if language and stream['IsForced']:
language = '{}.forced'.format(language)
is_sdh = stream.get('Title') and stream['Title'] in ('sdh', 'cc')
if language and is_sdh:
language = '{}.{}'.format(language, stream['Title'])
if language and stream['IsHearingImpaired']:
language = '{}.SDH'.format(language)
codec = stream.get('Codec', '')
url = '{}{}'.format(server, stream.get('DeliveryUrl'))
if language:
title = str(idx)
if stream.get('Title'):
title = stream['Title']
'''
Starting in 10.8, the server no longer provides language
specific download points. We have to download the file
and name it with the language code ourselves so Kodi
will parse it correctly
'''
subtitle_file = download_external_sub(language, codec, url)
subtitle_file = download_external_sub(language, codec, url, title)
else:
# If there is no language defined, we can go directly to the server
subtitle_file = url
@@ -1182,6 +1194,16 @@ def get_playing_data():
return {}
def get_jellyfin_playing_item():
home_window = HomeWindow()
play_data_string = home_window.get_property('now_playing')
try:
play_data = json.loads(play_data_string)
except ValueError:
# This isn't a JellyCon item
return None
return play_data.get("item_id")
def get_play_url(media_source, play_session_id, channel_id=None):
log.debug("get_play_url - media_source: {0}", media_source)
@@ -1693,3 +1715,11 @@ def get_item_playback_info(item_id, force_transcode):
log.debug("PlaybackInfo : {0}".format(play_info_result))
return play_info_result
def get_media_segments(item_id):
url = "/MediaSegments/{}".format(item_id)
result = api.get(url)
if result is None or result["Items"] is None:
log.debug("GetMediaSegments : Media segments cloud not be retrieved")
return None
return result["Items"]

View File

@@ -424,7 +424,7 @@ def translate_path(path):
return xbmc.translatePath(path)
def download_external_sub(language, codec, url):
def download_external_sub(language, codec, url, title):
addon_settings = xbmcaddon.Addon()
verify_cert = addon_settings.getSetting('verify_cert') == 'true'
@@ -433,7 +433,7 @@ def download_external_sub(language, codec, url):
r.raise_for_status()
# Write the subtitle file to the local filesystem
file_name = 'Stream.{}.{}'.format(language, codec)
file_name = 'Stream.{}.{}.{}'.format(title, language, codec)
file_path = py2_decode(
translate_path('special://temp/{}'.format(file_name))
)
@@ -457,4 +457,10 @@ def get_filtered_items_count_text():
if settings.getSetting("hide_x_filtered_items_count") == 'true' :
return ""
else:
return " (" + settings.getSetting("show_x_filtered_items") + ")"
return " (" + settings.getSetting("show_x_filtered_items") + ")"
def seconds_to_ticks(seconds:float):
return seconds * 10000000
def ticks_to_seconds(ticks:int):
return round(ticks / 10000000, 1)

View File

@@ -269,8 +269,7 @@ class WebSocketClient(threading.Thread):
while not self.monitor.abortRequested():
time.sleep(self.retry_count * 5)
self._client.run_forever(ping_interval=10)
self._client.run_forever(ping_interval=5, reconnect=13, ping_timeout=2)
if self._stop_websocket:
break

View File

@@ -67,6 +67,85 @@ def set_random_movies():
home_window.set_property("random-movies", movies_list_string)
home_window.set_property("random-movies-changed", new_widget_hash)
@timer
def set_random_tvshows():
log.debug("set_random_tvshows Called")
settings = xbmcaddon.Addon()
item_limit = settings.getSetting("show_x_filtered_items")
hide_watched = settings.getSetting("hide_watched") == "true"
user_id = get_current_user_id()
url_params = {}
url_params["Recursive"] = True
url_params["limit"] = item_limit
if hide_watched:
url_params["IsPlayed"] = False
url_params["SortBy"] = "Random"
url_params["IncludeItemTypes"] = "Series"
url_params["ImageTypeLimit"] = 0
url = get_jellyfin_url("/Users/{}/Items".format(user_id), url_params)
results = api.get(url)
random_tvshows_list = []
if results is not None:
items = results.get("Items", [])
for item in items:
random_tvshows_list.append(item.get("Id"))
random.shuffle(random_tvshows_list)
tvshow_list_string = ",".join(random_tvshows_list)
home_window = HomeWindow()
m = hashlib.md5()
m.update(tvshow_list_string.encode())
new_widget_hash = m.hexdigest()
log.debug("set_random_tvshows: {0}".format(tvshow_list_string))
log.debug("set_random_tvshows: {0}".format(new_widget_hash))
home_window.set_property("random-tvshows", tvshow_list_string)
home_window.set_property("random-tvshows-changed", new_widget_hash)
@timer
def set_random_all():
log.debug("set_random_all Called")
settings = xbmcaddon.Addon()
item_limit = settings.getSetting("show_x_filtered_items")
hide_watched = settings.getSetting("hide_watched") == "true"
user_id = get_current_user_id()
url_params = {}
url_params["Recursive"] = True
url_params["limit"] = item_limit
if hide_watched:
url_params["IsPlayed"] = False
url_params["SortBy"] = "Random"
url_params["IncludeItemTypes"] = "Movie,Series"
url_params["ImageTypeLimit"] = 0
url = get_jellyfin_url("/Users/{}/Items".format(user_id), url_params)
results = api.get(url)
random_items = []
if results is not None:
items = results.get("Items", [])
for item in items:
random_items.append(item.get("Id"))
random.shuffle(random_items)
item_list_string = ",".join(random_items)
home_window = HomeWindow()
m = hashlib.md5()
m.update(item_list_string.encode())
new_widget_hash = m.hexdigest()
log.debug("set_random_all: {0}".format(item_list_string))
log.debug("set_random_all: {0}".format(new_widget_hash))
home_window.set_property("random-all", item_list_string)
home_window.set_property("random-all-changed", new_widget_hash)
def set_background_image(force=False):
log.debug("set_background_image Called forced={0}".format(force))
@@ -333,6 +412,11 @@ def get_widget_content(handle, params):
xbmcplugin.setContent(handle, 'movies')
url_params["Ids"] = home_window.get_property("random-movies")
elif widget_type == "random_tvshows":
home_window = HomeWindow()
xbmcplugin.setContent(handle, 'tvshows')
url_params["Ids"] = home_window.get_property("random-tvshows")
elif widget_type == "recent_tvshows":
xbmcplugin.setContent(handle, 'episodes')
url_verb = '/Users/{}/Items/Latest'.format(user_id)
@@ -397,6 +481,8 @@ def get_widget_content(handle, params):
inprogress_url_params["IncludeItemTypes"] = "Episode"
inprogress_url_params["Limit"] = item_limit
elif widget_type == "movie_recommendations":
suggested_items_url_params = {}
suggested_items_url_params["userId"] = user_id
@@ -436,6 +522,39 @@ def get_widget_content(handle, params):
log.debug("Recommended Items : {0}".format(len(ids)))
url_params["Ids"] = id_list
elif widget_type == "random_all":
home_window = HomeWindow()
xbmcplugin.setContent(handle, 'movies')
url_params["Ids"] = home_window.get_property("random-all")
elif widget_type == "recent_all":
xbmcplugin.setContent(handle, 'movies')
url_verb = '/Users/{}/Items/Latest'.format(user_id)
url_params["GroupItems"] = True
url_params["Recursive"] = True
url_params["SortBy"] = "DateCreated"
url_params["SortOrder"] = "Descending"
url_params["Limit"] = 45
url_params["Filters"] = "IsNotFolder"
url_params["Fields"] = get_default_filters()
if hide_watched:
url_params["IsPlayed"] = False
url_params["IsVirtualUnaired"] = False
url_params["IncludeItemTypes"] = "Episode, Movie"
url_params["ImageTypeLimit"] = 1
elif widget_type == "favorites_all":
home_window = HomeWindow()
xbmcplugin.setContent(handle, 'movies')
url_params.update({
"Filters": "IsFavorite",
"IncludeItemTypes": "Movie,Series",
"Recursive": True,
"SortBy": "Name",
"SortOrder": "Ascending",
})
items_url = get_jellyfin_url(url_verb, url_params)
if (url_params.get('IncludeItemTypes', '') == 'Episode' or

View File

@@ -105,6 +105,7 @@
<setting label="30223" type="lsep"/>
<setting type="sep" />
<setting id="moviePageSize" type="slider" label="30331" default="0" range="0,1,100" option="int" visible="true"/>
<setting id="showPageSize" type="slider" label="30678" default="0" range="0,1,100" option="int" visible="true"/>
<setting id="show_x_filtered_items" type="slider" label="30018" default="20" range="5,1,100" option="int" visible="true"/>
<setting label="30224" type="lsep"/>
@@ -113,6 +114,31 @@
<setting id="interface_mode" type="select" label="30225" lvalues="30226|30227" default="0" visible="true"/>
</category>
<category label="30666">
<setting label="30670" type="lsep"/>
<setting id="intro_skipper_action" type="select" label="30667" lvalues="30673|30672|30674" default="0" visible="true" enable="true" />
<setting id="intro_skipper_start_offset" type="slider" label="30668" default="0" range="0,1,3" option="int" visible="true" enable="true"/>
<setting id="intro_skipper_end_offset" type="slider" label="30669" default="1" range="0,1,3" option="int" visible="true" enable="true"/>
<setting label="30671" type="lsep"/>
<setting id="credit_skipper_action" type="select" label="30667" lvalues="30673|30672|30674" default="0" visible="true" enable="true" />
<setting id="credit_skipper_start_offset" type="slider" label="30668" default="0" range="0,1,3" option="int" visible="true" enable="true" />
<setting id="credit_skipper_end_offset" type="slider" label="30669" default="1" range="0,1,3" option="int" visible="true" enable="true" />
<setting label="30675" type="lsep"/>
<setting id="commercial_skipper_action" type="select" label="30667" lvalues="30673|30672|30674" default="0" visible="true" enable="true" />
<setting id="commercial_skipper_start_offset" type="slider" label="30668" default="0" range="0,1,3" option="int" visible="true" enable="true"/>
<setting id="commercial_skipper_end_offset" type="slider" label="30669" default="1" range="0,1,3" option="int" visible="true" enable="true"/>
<setting label="30676" type="lsep"/>
<setting id="preview_skipper_action" type="select" label="30667" lvalues="30673|30672|30674" default="0" visible="true" enable="true" />
<setting id="preview_skipper_start_offset" type="slider" label="30668" default="0" range="0,1,3" option="int" visible="true" enable="true" />
<setting id="preview_skipper_end_offset" type="slider" label="30669" default="1" range="0,1,3" option="int" visible="true" enable="true" />
<setting label="30677" type="lsep"/>
<setting id="recap_skipper_action" type="select" label="30667" lvalues="30673|30672|30674" default="0" visible="true" enable="true" />
<setting id="recap_skipper_start_offset" type="slider" label="30668" default="0" range="0,1,3" option="int" visible="true" enable="true"/>
<setting id="recap_skipper_end_offset" type="slider" label="30669" default="1" range="0,1,3" option="int" visible="true" enable="true"/>
</category>
<category label="30111">
<setting label="30343" type="lsep"/>

View File

@@ -0,0 +1,25 @@
<?xml version="1.0" encoding="UTF-8"?>
<window id="10000">
<defaultcontrol always="true">9000</defaultcontrol>
<zorder>2</zorder>
<coordinates>
<system>1</system>
<left>0</left>
<top>0</top>
</coordinates>
<controls>
<control type="button" id="9000">
<left>1020</left>
<top>550</top>
<width>150</width>
<height>65</height>
<visible>true</visible>
<label>Skip</label>
<align>center</align>
<texture border="1" colordiffuse="ff161616">white.png</texture>
<font>font12</font>
<onright>3014</onright>
</control>
</controls>
</window>

View File

@@ -11,7 +11,7 @@ import xbmcgui
from resources.lib.lazylogger import LazyLogger
from resources.lib.play_utils import Service, PlaybackService, send_progress
from resources.lib.kodi_utils import HomeWindow
from resources.lib.widgets import set_background_image, set_random_movies
from resources.lib.widgets import set_background_image, set_random_movies, set_random_tvshows, set_random_all
from resources.lib.websocket_client import WebSocketClient
from resources.lib.menu_functions import set_library_window_values
from resources.lib.server_detect import check_server, check_connection_speed
@@ -20,6 +20,7 @@ from resources.lib.datamanager import clear_old_cache_data
from resources.lib.tracking import set_timing_enabled
from resources.lib.image_server import HttpImageServerThread
from resources.lib.playnext import PlayNextService
from resources.lib.intro_skipper import IntroSkipperService
settings = xbmcaddon.Addon()
@@ -63,6 +64,8 @@ last_progress_update = time.time()
last_content_check = time.time()
last_background_update = 0
last_random_movie_update = 0
last_random_tvshow_update = 0
last_random_all_update = 0
# start the library update monitor
library_change_monitor = LibraryChangeMonitor()
@@ -87,6 +90,10 @@ if context_menu:
context_monitor = ContextMonitor()
context_monitor.start()
# Start the skip service monitor
intro_skipper = IntroSkipperService(monitor)
intro_skipper.start()
background_interval = int(settings.getSetting('background_interval'))
newcontent_interval = int(settings.getSetting('new_content_check_interval'))
random_movie_list_interval = int(settings.getSetting('random_movie_refresh_interval'))
@@ -104,7 +111,6 @@ first_run = True
home_window.set_property('exit', 'False')
while home_window.get_property('exit') == 'False':
try:
if xbmc.Player().isPlaying():
last_random_movie_update = time.time() - (random_movie_list_interval - 15)
@@ -141,6 +147,14 @@ while home_window.get_property('exit') == 'False':
last_random_movie_update = time.time()
set_random_movies()
if user_changed or (random_movie_list_interval != 0 and (time.time() - last_random_tvshow_update) > random_movie_list_interval):
last_random_tvshow_update = time.time()
set_random_tvshows()
if user_changed or (random_movie_list_interval != 0 and (time.time() - last_random_all_update) > random_movie_list_interval):
last_random_all_update = time.time()
set_random_all()
if user_changed or (newcontent_interval != 0 and (time.time() - last_content_check) > newcontent_interval):
last_content_check = time.time()
library_change_monitor.check_for_updates()
@@ -184,6 +198,9 @@ if play_next_service:
if context_monitor:
context_monitor.stop_monitor()
if intro_skipper:
intro_skipper.stop_service()
# clear user and token when logging off
home_window.clear_property("user_name")
home_window.clear_property("AccessToken")