- Restore sort dropdown for better mobile usability
- Add new sort options (Type, Role) to match column header sorting
- Implement sort direction toggle (asc/desc) with intuitive icon indicator
- Fix displayname sorting in backend to properly sort by username/plexUsername
* feat(pushover): attach image to pushover notification payload (#3701)
* fix: api language query parameter (#3720)
* docs: add j0srisk as a contributor for code (#3745) [skip ci]
* docs: update README.md
* docs: update .all-contributorsrc
---------
Co-authored-by: allcontributors[bot] <46447321+allcontributors[bot]@users.noreply.github.com>
* feat(tooltip): add tooltip to display exact time on date hover (#3773)
Co-authored-by: Loetwiek <lodommerholtcm@gmail.com>
* docs: add Loetwiek as a contributor for code (#3776) [skip ci]
* docs: update README.md
* docs: update .all-contributorsrc
---------
Co-authored-by: allcontributors[bot] <46447321+allcontributors[bot]@users.noreply.github.com>
* fix(ui): ensure title fits into the `view collection` box (#3696)
* fix(docs): correct openapi docs minor issues (#3648)
* docs: add Fuochi as a contributor for doc (#3826)
Co-authored-by: allcontributors[bot] <46447321+allcontributors[bot]@users.noreply.github.com>
* feat: translations update from Hosted Weblate (#3597)
* feat(lang): translated using Weblate (Portuguese (Brazil))
Currently translated at 100.0% (1234 of 1234 strings)
feat(lang): translated using Weblate (Portuguese (Brazil))
Currently translated at 99.8% (1232 of 1234 strings)
Co-authored-by: Cleiton Carvalho <cleitonsilvacarvalho@gmail.com>
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/pt_BR/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (German)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (German)
Currently translated at 100.0% (1234 of 1234 strings)
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: Nandor Rusz <nandor.rusz@vodafone.de>
Co-authored-by: Thomas Schöneberg <ta.schoeneberg@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/de/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (Danish)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Danish)
Currently translated at 100.0% (1236 of 1236 strings)
feat(lang): translated using Weblate (Danish)
Currently translated at 100.0% (1234 of 1234 strings)
Co-authored-by: Anders Ecklon <aecklon@gmail.com>
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: Kenneth Hansen <erathor@live.dk>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/da/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (Greek)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Greek)
Currently translated at 100.0% (1236 of 1236 strings)
Co-authored-by: BeardedWatermelon <BeardedWatermelon@users.noreply.hosted.weblate.org>
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/el/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (Russian)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Russian)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Russian)
Currently translated at 99.5% (1234 of 1240 strings)
feat(lang): translated using Weblate (Russian)
Currently translated at 100.0% (1234 of 1234 strings)
feat(lang): translated using Weblate (Russian)
Currently translated at 100.0% (1234 of 1234 strings)
feat(lang): translated using Weblate (Russian)
Currently translated at 100.0% (1234 of 1234 strings)
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: SoundwaveUwU <SoundwaveUwU@users.noreply.hosted.weblate.org>
Co-authored-by: SoundwaveUwU <noreply@1000-7.space>
Co-authored-by: Димитър Мазнеков (Topper) <d.maznekov@gmail.com>
Co-authored-by: Кирилл Тюрин <1337soundwave1337@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/ru/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (Romanian)
Currently translated at 37.1% (461 of 1240 strings)
feat(lang): translated using Weblate (Romanian)
Currently translated at 37.0% (459 of 1240 strings)
feat(lang): translated using Weblate (Romanian)
Currently translated at 34.8% (432 of 1240 strings)
Co-authored-by: Don Cezar <goldie.czr@gmail.com>
Co-authored-by: Dragos <themsk@yahoo.com>
Co-authored-by: Eduard Oancea <uberfly@420blaze.it>
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/ro/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (Bulgarian)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Bulgarian)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Bulgarian)
Currently translated at 57.4% (712 of 1240 strings)
feat(lang): translated using Weblate (Bulgarian)
Currently translated at 13.2% (164 of 1240 strings)
feat(lang): translated using Weblate (Bulgarian)
Currently translated at 4.8% (60 of 1240 strings)
feat(lang): added translation using Weblate (Bulgarian)
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: sct <sctsnipe@gmail.com>
Co-authored-by: Димитър Мазнеков (Topper) <d.maznekov@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/bg/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (Ukrainian)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 99.1% (1230 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 99.1% (1230 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 99.1% (1230 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 97.9% (1215 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 82.0% (1017 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 72.9% (905 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 72.9% (905 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 71.3% (885 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 64.9% (805 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 64.4% (799 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 63.8% (792 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 63.7% (791 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 57.5% (714 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 49.9% (619 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 35.9% (446 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 35.9% (446 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 32.1% (399 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 24.6% (306 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 18.9% (235 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 17.5% (217 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 17.3% (215 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 8.0% (100 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 3.3% (41 of 1240 strings)
feat(lang): added translation using Weblate (Ukrainian)
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: Michael Michael <michaelvelosk@gmail.com>
Co-authored-by: sct <sctsnipe@gmail.com>
Co-authored-by: Сергій <sergiy.goncharuk.1@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/uk/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (Catalan)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Catalan)
Currently translated at 100.0% (1240 of 1240 strings)
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: dtalens <databio@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/ca/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (Czech)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Czech)
Currently translated at 99.6% (1236 of 1240 strings)
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: Karel Krýda <karel.kryda@gmail.com>
Co-authored-by: Smexhy <roman.bartik@icloud.com>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/cs/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (Croatian)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Croatian)
Currently translated at 99.8% (1238 of 1240 strings)
feat(lang): translated using Weblate (Croatian)
Currently translated at 99.8% (1238 of 1240 strings)
feat(lang): translated using Weblate (Croatian)
Currently translated at 99.6% (1236 of 1240 strings)
feat(lang): translated using Weblate (Croatian)
Currently translated at 99.5% (1235 of 1240 strings)
feat(lang): translated using Weblate (Croatian)
Currently translated at 99.5% (1235 of 1240 strings)
feat(lang): translated using Weblate (Croatian)
Currently translated at 99.1% (1230 of 1240 strings)
feat(lang): translated using Weblate (Croatian)
Currently translated at 97.5% (1210 of 1240 strings)
feat(lang): translated using Weblate (Croatian)
Currently translated at 95.5% (1185 of 1240 strings)
feat(lang): translated using Weblate (Croatian)
Currently translated at 95.6% (1182 of 1236 strings)
feat(lang): translated using Weblate (Croatian)
Currently translated at 95.6% (1182 of 1236 strings)
feat(lang): translated using Weblate (Croatian)
Currently translated at 95.2% (1177 of 1236 strings)
feat(lang): translated using Weblate (Croatian)
Currently translated at 95.2% (1177 of 1236 strings)
feat(lang): translated using Weblate (Croatian)
Currently translated at 94.3% (1166 of 1236 strings)
feat(lang): translated using Weblate (Croatian)
Currently translated at 91.7% (1134 of 1236 strings)
feat(lang): translated using Weblate (Croatian)
Currently translated at 91.7% (1134 of 1236 strings)
Co-authored-by: Bruno Ševčenko <bs3vcenk@gmail.com>
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: Milo Ivir <mail@milotype.de>
Co-authored-by: Stjepan <stjepstjepanovic@gmail.com>
Co-authored-by: lpispek <lpispek@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/hr/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (Hungarian)
Currently translated at 91.3% (1133 of 1240 strings)
feat(lang): translated using Weblate (Hungarian)
Currently translated at 89.3% (1108 of 1240 strings)
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: Levente Szajkó <leviko112@gmail.com>
Co-authored-by: Nandor Rusz <nandor.rusz@vodafone.de>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/hu/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (Hebrew)
Currently translated at 13.9% (172 of 1236 strings)
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: osh <osh@osh.cc>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/he/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (Polish)
Currently translated at 99.1% (1225 of 1236 strings)
Co-authored-by: Eryk Michalak <gnu.ewm@protonmail.com>
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/pl/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (Italian)
Currently translated at 92.8% (1148 of 1236 strings)
Co-authored-by: Francesco <francy.ammirati@hotmail.com>
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/it/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (Arabic)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Arabic)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Arabic)
Currently translated at 100.0% (1234 of 1234 strings)
Co-authored-by: Fhd-pro <juve.11@msn.com>
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/ar/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (Dutch)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Dutch)
Currently translated at 100.0% (1234 of 1234 strings)
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: Kobe <kobaubarr@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/nl/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (Spanish)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Spanish)
Currently translated at 100.0% (1236 of 1236 strings)
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: gallegonovato <fran-carro@hotmail.es>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/es/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (French)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (French)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (French)
Currently translated at 100.0% (1236 of 1236 strings)
feat(lang): translated using Weblate (French)
Currently translated at 99.9% (1235 of 1236 strings)
feat(lang): translated using Weblate (French)
Currently translated at 99.9% (1235 of 1236 strings)
Co-authored-by: Baptiste <baptiste.nee@me.com>
Co-authored-by: Dimitri <dimitridroeck@gmail.com>
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: Maxime Lafarie <maxime.lafarie@gmail.com>
Co-authored-by: Miguel <mig.mllr@gmail.com>
Co-authored-by: asurare <jonathan.biteau16@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/fr/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (Swedish)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Swedish)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Swedish)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Swedish)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Swedish)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Swedish)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Swedish)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Swedish)
Currently translated at 100.0% (1236 of 1236 strings)
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: Per Erik <urbanlolface@gmail.com>
Co-authored-by: Shjosan <shjosan@kakmix.co>
Co-authored-by: bittin1ddc447d824349b2 <bittin@reimu.nl>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/sv/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (Finnish)
Currently translated at 2.6% (33 of 1240 strings)
feat(lang): added translation using Weblate (Finnish)
Co-authored-by: Eero Konttaniemi <eero.konttaniemi@gmail.com>
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: sct <sctsnipe@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/fi/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (Serbian)
Currently translated at 50.8% (630 of 1240 strings)
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: Milan Smudja <smudja@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/sr/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (Korean)
Currently translated at 100.0% (1234 of 1234 strings)
Co-authored-by: Developer J <jshsakura@gmail.com>
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/ko/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (Chinese (Simplified))
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Chinese (Simplified))
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Chinese (Simplified))
Currently translated at 100.0% (1234 of 1234 strings)
Co-authored-by: Haohao Zhang <hyacz@foxmail.com>
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: lkw123 <lkw20010211@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/zh_Hans/
Translation: Overseerr/Overseerr Frontend
---------
Co-authored-by: Cleiton Carvalho <cleitonsilvacarvalho@gmail.com>
Co-authored-by: Nandor Rusz <nandor.rusz@vodafone.de>
Co-authored-by: Thomas Schöneberg <ta.schoeneberg@gmail.com>
Co-authored-by: Anders Ecklon <aecklon@gmail.com>
Co-authored-by: Kenneth Hansen <erathor@live.dk>
Co-authored-by: BeardedWatermelon <BeardedWatermelon@users.noreply.hosted.weblate.org>
Co-authored-by: SoundwaveUwU <SoundwaveUwU@users.noreply.hosted.weblate.org>
Co-authored-by: SoundwaveUwU <noreply@1000-7.space>
Co-authored-by: Димитър Мазнеков (Topper) <d.maznekov@gmail.com>
Co-authored-by: Кирилл Тюрин <1337soundwave1337@gmail.com>
Co-authored-by: Don Cezar <goldie.czr@gmail.com>
Co-authored-by: Dragos <themsk@yahoo.com>
Co-authored-by: Eduard Oancea <uberfly@420blaze.it>
Co-authored-by: sct <sctsnipe@gmail.com>
Co-authored-by: Michael Michael <michaelvelosk@gmail.com>
Co-authored-by: Сергій <sergiy.goncharuk.1@gmail.com>
Co-authored-by: dtalens <databio@gmail.com>
Co-authored-by: Karel Krýda <karel.kryda@gmail.com>
Co-authored-by: Smexhy <roman.bartik@icloud.com>
Co-authored-by: Bruno Ševčenko <bs3vcenk@gmail.com>
Co-authored-by: Milo Ivir <mail@milotype.de>
Co-authored-by: Stjepan <stjepstjepanovic@gmail.com>
Co-authored-by: lpispek <lpispek@gmail.com>
Co-authored-by: Levente Szajkó <leviko112@gmail.com>
Co-authored-by: osh <osh@osh.cc>
Co-authored-by: Eryk Michalak <gnu.ewm@protonmail.com>
Co-authored-by: Francesco <francy.ammirati@hotmail.com>
Co-authored-by: Fhd-pro <juve.11@msn.com>
Co-authored-by: Kobe <kobaubarr@gmail.com>
Co-authored-by: gallegonovato <fran-carro@hotmail.es>
Co-authored-by: Baptiste <baptiste.nee@me.com>
Co-authored-by: Dimitri <dimitridroeck@gmail.com>
Co-authored-by: Maxime Lafarie <maxime.lafarie@gmail.com>
Co-authored-by: Miguel <mig.mllr@gmail.com>
Co-authored-by: asurare <jonathan.biteau16@gmail.com>
Co-authored-by: Per Erik <urbanlolface@gmail.com>
Co-authored-by: Shjosan <shjosan@kakmix.co>
Co-authored-by: bittin1ddc447d824349b2 <bittin@reimu.nl>
Co-authored-by: Eero Konttaniemi <eero.konttaniemi@gmail.com>
Co-authored-by: Milan Smudja <smudja@gmail.com>
Co-authored-by: Developer J <jshsakura@gmail.com>
Co-authored-by: Haohao Zhang <hyacz@foxmail.com>
Co-authored-by: lkw123 <lkw20010211@gmail.com>
* feat(lang): add lang config for Bulgarian, Finnish, Ukrainian, Indonesian, Slovak, Turkish and Maori (#3834)
* fix: correct deeplinks on iPad (#3883)
* feat(studios): add a24 to studios list (#3902)
* docs: add demrich as a contributor for code (#3906) [skip ci]
* docs: update README.md
* docs: update .all-contributorsrc
---------
Co-authored-by: allcontributors[bot] <46447321+allcontributors[bot]@users.noreply.github.com>
* feat(watchlist): Cache watchlist requests with matching E-Tags (#3901)
* perf(watchlist): add E-Tag caching to Plex watchlist requests
* refactor(watchlist): increase frequency of watchlist requests
* fix: sync watchlist every 3 min instead of 3 sec
* docs: add maxnatamo as a contributor for code (#3907) [skip ci]
* docs: update README.md
* docs: update .all-contributorsrc
---------
Co-authored-by: allcontributors[bot] <46447321+allcontributors[bot]@users.noreply.github.com>
* feat(plex): refresh token schedule (#3875)
* feat: refresh token schedule
fix#3861
* fix(i18n): add i18n message
* refactor(plextv): use randomUUID crypto instead custom function
* docs: add DamsDev1 as a contributor for code (#3924) [skip ci]
* docs: update README.md
* docs: update .all-contributorsrc
---------
Co-authored-by: allcontributors[bot] <46447321+allcontributors[bot]@users.noreply.github.com>
* fix: correct icon showing on certain phones when not pulled (#3939)
* feat: add support for requesting "Specials" for TV Shows (#3724)
* feat: add support for requesting "Specials" for TV Shows
This commit is responsible for adding support in Overseerr for requesting "Special" episodes for TV
Shows. This request has become especially pertinent when you consider shows like "Doctor Who". These
shows have Specials that are critical to understanding the plot of a TV show.
fix#779
* chore(yarn.lock): undo inappropriate changes to yarn.lock
I was informed by @sct in a comment on the #3724 PR that it was not appropriate to commit the
changes that ended up being made to the yarn.lock file. This commit is responsible, then, for
undoing the changes to the yarn.lock file that ended up being submitted.
* refactor: change loose equality to strict equality
I received a comment from OwsleyJr pointing out that we are using loose equality when we could
alternatively just be using strict equality to increase the robustness of our code. This commit
does exactly that by squashing out previous usages of loose equality in my commits and replacing
them with strict equality
* refactor: move 'Specials' string to a global message
Owsley pointed out that we are redefining the 'Specials' string multiple times throughout this PR.
Instead, we can just move it as a global message. This commit does exactly that. It squashes out and
previous declarations of the 'Specials' string inside the src files, and moves it directly to the
global messages file.
* docs: add AhmedNSidd as a contributor for code (#3964) [skip ci]
* docs: update README.md
* docs: update .all-contributorsrc
---------
Co-authored-by: allcontributors[bot] <46447321+allcontributors[bot]@users.noreply.github.com>
* feat(lang): Translations update from Hosted Weblate (#3835)
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (Bulgarian)
Currently translated at 100.0% (1240 of 1240 strings)
Update translation files
Updated by "Cleanup translation files" hook in Weblate.
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: Димитър Мазнеков (Topper) <d.maznekov@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/bg/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 100.0% (1240 of 1240 strings)
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: Michael Michael <michaelvelosk@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/uk/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
feat(lang): translated using Weblate (Catalan)
Currently translated at 100.0% (1241 of 1241 strings)
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: dtalens <databio@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/ca/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
feat(lang): translated using Weblate (Hungarian)
Currently translated at 99.2% (1231 of 1240 strings)
Co-authored-by: Dargo <fuszi88@gmail.com>
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/hu/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
feat(lang): translated using Weblate (Polish)
Currently translated at 98.8% (1227 of 1241 strings)
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: senza <senza@users.noreply.hosted.weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/pl/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
feat(lang): translated using Weblate (Dutch)
Currently translated at 100.0% (1241 of 1241 strings)
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: Robin Van de Vyvere <irazoxgames@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/nl/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
feat(lang): translated using Weblate (Spanish)
Currently translated at 100.0% (1241 of 1241 strings)
feat(lang): translated using Weblate (Spanish)
Currently translated at 100.0% (1241 of 1241 strings)
Co-authored-by: Frostar <dasangra@hotmail.com>
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: gallegonovato <fran-carro@hotmail.es>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/es/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (French)
Currently translated at 100.0% (1240 of 1240 strings)
Update translation files
Updated by "Cleanup translation files" hook in Weblate.
feat(lang): translated using Weblate (French)
Currently translated at 100.0% (1241 of 1241 strings)
feat(lang): translated using Weblate (French)
Currently translated at 100.0% (1240 of 1240 strings)
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: Nackophilz <zrv4flra@anonaddy.me>
Co-authored-by: TayZ3r <artimmo@hotmail.fr>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/fr/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
feat(lang): translated using Weblate (Swedish)
Currently translated at 100.0% (1241 of 1241 strings)
feat(lang): translated using Weblate (Swedish)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Swedish)
Currently translated at 100.0% (1240 of 1240 strings)
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: Per Erik <urbanlolface@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/sv/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (Finnish)
Currently translated at 2.9% (36 of 1240 strings)
Co-authored-by: Oskari Lavinto <olavinto@protonmail.com>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/fi/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
feat(lang): translated using Weblate (Albanian)
Currently translated at 95.8% (1189 of 1240 strings)
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: W L <wl@mailhole.de>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/sq/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
feat(lang): translated using Weblate (Korean)
Currently translated at 100.0% (1241 of 1241 strings)
feat(lang): translated using Weblate (Korean)
Currently translated at 100.0% (1240 of 1240 strings)
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: Hyun Lee <hyun@yahoo.com>
Co-authored-by: cutiekeek <cutiekeek@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/ko/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
feat(lang): translated using Weblate (Portuguese (Portugal))
Currently translated at 98.4% (1221 of 1240 strings)
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: Rafael Souto <git@rafaelsouto.com>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/pt_PT/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (Chinese (Traditional Han script))
Currently translated at 99.9% (1239 of 1240 strings)
Update translation files
Updated by "Cleanup translation files" hook in Weblate.
feat(lang): translated using Weblate (Chinese (Traditional Han script))
Currently translated at 98.2% (1219 of 1241 strings)
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: Marc Lerno <mlerno1192@student.carlalbert.edu>
Co-authored-by: dtalens <databio@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/zh_Hant/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
feat(lang): translated using Weblate (Norwegian Bokmål)
Currently translated at 89.9% (1115 of 1240 strings)
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: exentler <gurandsrud@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/nb_NO/
Translation: Overseerr/Overseerr Frontend
---------
Co-authored-by: Димитър Мазнеков (Topper) <d.maznekov@gmail.com>
Co-authored-by: Michael Michael <michaelvelosk@gmail.com>
Co-authored-by: dtalens <databio@gmail.com>
Co-authored-by: Dargo <fuszi88@gmail.com>
Co-authored-by: senza <senza@users.noreply.hosted.weblate.org>
Co-authored-by: Robin Van de Vyvere <irazoxgames@gmail.com>
Co-authored-by: Frostar <dasangra@hotmail.com>
Co-authored-by: gallegonovato <fran-carro@hotmail.es>
Co-authored-by: Nackophilz <zrv4flra@anonaddy.me>
Co-authored-by: TayZ3r <artimmo@hotmail.fr>
Co-authored-by: Per Erik <urbanlolface@gmail.com>
Co-authored-by: Oskari Lavinto <olavinto@protonmail.com>
Co-authored-by: W L <wl@mailhole.de>
Co-authored-by: Hyun Lee <hyun@yahoo.com>
Co-authored-by: cutiekeek <cutiekeek@gmail.com>
Co-authored-by: Rafael Souto <git@rafaelsouto.com>
Co-authored-by: Marc Lerno <mlerno1192@student.carlalbert.edu>
Co-authored-by: exentler <gurandsrud@gmail.com>
* feat(ui): prevent password manager interference & improve service links (#3989)
* docs: add s0up4200 as a contributor for code (#4047) [skip ci]
* docs: update README.md
* docs: update .all-contributorsrc
---------
Co-authored-by: allcontributors[bot] <46447321+allcontributors[bot]@users.noreply.github.com>
* fix(ui): update Plex Logo (#3955)
* docs: add JackW6809 as a contributor for code (#4048) [skip ci]
* docs: update README.md
* docs: update .all-contributorsrc
---------
Co-authored-by: allcontributors[bot] <46447321+allcontributors[bot]@users.noreply.github.com>
* feat: requests/issues menu count (#3470)
* feat: request and issue count added to sidebar/mobile menu
* fix: added permission check for count visibility
* refactor: modified badge design for count
* fix: properly update issue and request counts in certain scenarios (#4051)
* fix: center count badge on sidebar and mobile menu (#4052)
* fix: request english trailers as a fallback when using other languages (#4009)
Co-authored-by: Stancu Florin <florin@stancu.me>
* docs: add StancuFlorin as a contributor for code (#4053) [skip ci]
* docs: update README.md
* docs: update .all-contributorsrc
---------
Co-authored-by: allcontributors[bot] <46447321+allcontributors[bot]@users.noreply.github.com>
* feat: added the PWA badge indicator for requests pending (#3411)
refactor: removed unnecessary code when sending web push notification
fix: moved all notify user logic into webpush
refactor: n
refactor: remove all unnecessary prettier changes
fix: n
fix: n
fix: n
fix: n
fix: increment sw version
fix: n
* fix: improve count badge styling (#4056)
* fix: improved web push management (#3421)
refactor: organized placement of new button + added comments
fix: added api routes for push registration
fix: modified get request to confirm key identity
fix: added back notification types to always show
feat: added a manageable device list
refactor: modified device list to make it mobile friendly
fix: correct typo for enabling notifications
* Revert "fix: improved web push management (#3421)" (#4058)
* fix: manage webpush notifications (#4059)
* feat(lang): Translations update from Hosted Weblate (#4025)
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
feat(lang): translated using Weblate (Portuguese (Brazil))
Currently translated at 100.0% (1240 of 1240 strings)
Co-authored-by: Felipe Garcia <garcia.o.felipe@gmail.com>
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/pt_BR/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
feat(lang): translated using Weblate (German)
Currently translated at 100.0% (1240 of 1240 strings)
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: Rico <rico.jambor@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/de/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (Romanian)
Currently translated at 40.8% (507 of 1240 strings)
Co-authored-by: George L <lazugeorgem@gmail.com>
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/ro/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 100.0% (1240 of 1240 strings)
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: Yaroslav Buzko <yaroslav@buzko.com>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/uk/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
feat(lang): translated using Weblate (Hungarian)
Currently translated at 99.9% (1239 of 1240 strings)
feat(lang): translated using Weblate (Hungarian)
Currently translated at 99.7% (1237 of 1240 strings)
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: ugyes <ferenc.bodi@live.com>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/hu/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
feat(lang): translated using Weblate (Italian)
Currently translated at 95.3% (1182 of 1240 strings)
feat(lang): translated using Weblate (Italian)
Currently translated at 95.3% (1182 of 1240 strings)
Co-authored-by: Alberto Giardino <alberto.giardino@al-ce.it>
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/it/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translation: Overseerr/Overseerr Frontend
* feat(lang): added translation using Weblate (Slovenian)
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: sct <sctsnipe@gmail.com>
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translation: Overseerr/Overseerr Frontend
---------
Co-authored-by: Felipe Garcia <garcia.o.felipe@gmail.com>
Co-authored-by: Rico <rico.jambor@gmail.com>
Co-authored-by: George L <lazugeorgem@gmail.com>
Co-authored-by: Yaroslav Buzko <yaroslav@buzko.com>
Co-authored-by: ugyes <ferenc.bodi@live.com>
Co-authored-by: Alberto Giardino <alberto.giardino@al-ce.it>
Co-authored-by: sct <sctsnipe@gmail.com>
* fix: change localhost to process.env.HOST for client requests (#3839)
* Change localhost to process.env.HOST for client requests
* refactor: reformat
* docs: add lmiklosko as a contributor for code (#4063) [skip ci]
* docs: update README.md
* docs: update .all-contributorsrc
---------
Co-authored-by: allcontributors[bot] <46447321+allcontributors[bot]@users.noreply.github.com>
* fix: set the correct TTL for the cookie store (#3946)
The time-to-live (TTL) of cookies stored in the database was incorrect because the connect-typeorm
library takes a TTL in seconds and not milliseconds, making cookies valid for ~82 years instead of
30 days.
Co-authored-by: Ryan Cohen <ryan@sct.dev>
* docs: add gauthier-th as a contributor for code (#4064) [skip ci]
* docs: update README.md
* docs: update .all-contributorsrc
---------
Co-authored-by: allcontributors[bot] <46447321+allcontributors[bot]@users.noreply.github.com>
* fix: update migration script (#4065)
* fix: update migration script
fix: remove insert for new entities
* fix: correct migration name
* fix: correct name inside migration
* fix(servarr): merge series tags instead of overwriting them (#4019)
* Merge series tags instead of overwriting when adding a series that already exists
Currently, a request coming in for a series that already exists in sonarr nukes the tags in sonarr for the series in favor of the tags coming from overseerr. This change merges the two lists of tags and deduplicates them before sending them to sonarr.
* fix(servarr api): merge request media tags with servarr instead of overwriting
---------
Co-authored-by: Danshil Kokil Mungur <me@danshilm.com>
* build(snap): update snap build actions
* build: temporarily disable snap builds (#4074)
* build: fix deploy docs action (#4076) [skip ci]
* fix: display request button when the show has requestable specials and is available (#4081)
* chore(deps): pin node.js (#4075)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
* fix(deps): pin dependencies (#4084)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
* feat(lang): Translations update from Hosted Weblate (#4060)
* feat(lang): translated using Weblate (Russian)
Currently translated at 100.0% (1259 of 1259 strings)
feat(lang): translated using Weblate (Russian)
Currently translated at 100.0% (1258 of 1258 strings)
Update translation files
Updated by "Cleanup translation files" hook in Weblate.
feat(lang): translated using Weblate (Russian)
Currently translated at 100.0% (1240 of 1240 strings)
Update translation files
Updated by "Cleanup translation files" hook in Weblate.
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: st7105 <st7105@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/ru/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (Romanian)
Currently translated at 50.6% (638 of 1259 strings)
feat(lang): translated using Weblate (Romanian)
Currently translated at 40.4% (509 of 1259 strings)
feat(lang): translated using Weblate (Romanian)
Currently translated at 40.3% (508 of 1259 strings)
Co-authored-by: George L <lazugeorgem@gmail.com>
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/ro/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (Italian)
Currently translated at 94.2% (1187 of 1259 strings)
Co-authored-by: danieledu007 <danielguillen274@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/it/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (French)
Currently translated at 100.0% (1259 of 1259 strings)
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: lolo <laurent.brelle@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/fr/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (Finnish)
Currently translated at 9.2% (117 of 1259 strings)
feat(lang): translated using Weblate (Finnish)
Currently translated at 8.6% (109 of 1259 strings)
Co-authored-by: Aleksi T <aleksi.tuhkanen@gmail.com>
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: rijohi <risto.hirvilammi@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/fi/
Translation: Overseerr/Overseerr Frontend
---------
Co-authored-by: st7105 <st7105@gmail.com>
Co-authored-by: George L <lazugeorgem@gmail.com>
Co-authored-by: danieledu007 <danielguillen274@gmail.com>
Co-authored-by: lolo <laurent.brelle@gmail.com>
Co-authored-by: Aleksi T <aleksi.tuhkanen@gmail.com>
Co-authored-by: rijohi <risto.hirvilammi@gmail.com>
* fix: correct specials affecting availability status (#4092)
* fix: remove specials affecting availability status
* refactor: add comments for scanner
* fix: prevent request badge showing when no related media (#4100)
* fix: availability sync requests (#3460)
* fix: modified media status handling when media has been deleted
fix: requests will now be updated to completed on scan
fix: modified components to display deleted as a status
fix: corrected media status switching away from deleted
fix: modified components to display deleted as a status
fix: corrected media status switching away from deleted
fix: base scanner will set requests to completed correctly
fix: mark available button correctly sets requests as completed
fix: status will now stay deleted after declined request
refactor: request completion handling moved to entity
fix: prevented notifications from sending to old deleted requests
refactor: cleaned up code and added more detail to logs
refactor: updated to reflect latest availability sync changes
* fix: fetch requests only if necessary in db and remove unneeded code
* fix: update request button logic to accomodate specials
fix: remove completed filtering in tv details
* fix: correctly set seasons status when using the manual button
* refactor: improve reliability of season request completion
refactor: remove seasonrequest code
* fix: send notification for 4k movies
fix: same for shows
* feat: add completed filter to requests list
refactor: correct label
* fix: correct series setting to partially available (#4109)
* fix: correct edge case with deletion not updating requests (#4110)
* fix: correct notification sending for wrong status (#4113)
* fix(notifications): sending test-notifications for email now respects the allowSelfSigned value (#4112)
* docs: add vfaergestad as a contributor for code (#4114)
* docs: update README.md
* docs: update .all-contributorsrc
---------
Co-authored-by: allcontributors[bot] <46447321+allcontributors[bot]@users.noreply.github.com>
* fix: handle currently available non-completed media (#4115)
* fix: check media status has changed before modifying request
fix: refactor: code cleanup
* fix: manually load database entity seasons
* fix: handle partial seasons more reliably (#4116)
refactor: remove matchingOldSeason variable
* fix: pwa app badge (#4117)
* fix: clear app badge at zero without notification
* fix: correct users check sometimes failing when searching push subs
* fix: filter specials from modal all seasons and watchlist (#4108)
* fix: filter specials from modal all seasons and watchlist
* fix: skip specials when marking available
* fix: edge case where specials were marked as completed
* fix: bypass specials when partial requests is disabled (#4126)
* refactor(MediaRequest): consolidate lifecycle hooks into subscriber & restrict cascade to prevent recursion (#4124)
* fix(mediarequest entity): narrow cascade to insert & remove to prevent hook recursion
Restrict cascade options on the MediaRequest→Media relation to only `insert` and `remove`to avoid
nested subscriber/AfterUpdate recursion when saving entities.
* fix(mediarequest): move methods modifying MediaRequest to its Subscriber
* fix(mediasubscriber): use event.manager for parent media updates on remove
Replace `getRepository(Media)` calls with `event.manager` in the `afterRemove` hook so that
parent-media status resets run within the same transaction/QueryRunner (important for postgresql.
Doesnt affect sqlite).
* refactor(mediasubscriber): make afterInsert and afterUpdate async and await internal operations
This should prevent unhandled promise rejections and ensure sequential execution of lifecycle
actions
---------
Co-authored-by: Gauthier <mail@gauthierth.fr>
* fix(mediaentity): change cascade from `update` to `remove` (#4135)
* fix(mediasubscriber): remove async from afterInsert and afterUpdate (#4136)
Asynchronous operations introduced in commit 3b9e195496c3db1f794549786b123a3ff55b08a0 caused issues
during media requests: the mediaId was not properly assigned and remained null.
* fix: better handling for active webpush subscription (#4146)
fix: remove yarn from package manager
fix: update openapi yml
---------
Co-authored-by: Isaac M <masesisaac@gmail.com>
Co-authored-by: Joseph Risk <j0srisk@gmail.com>
Co-authored-by: allcontributors[bot] <46447321+allcontributors[bot]@users.noreply.github.com>
Co-authored-by: Loetwiek <79059734+Loetwiek@users.noreply.github.com>
Co-authored-by: Loetwiek <lodommerholtcm@gmail.com>
Co-authored-by: Fallenbagel <98979876+Fallenbagel@users.noreply.github.com>
Co-authored-by: Fuochi <ffuochi@hotmail.com>
Co-authored-by: Weblate (bot) <hosted@weblate.org>
Co-authored-by: Cleiton Carvalho <cleitonsilvacarvalho@gmail.com>
Co-authored-by: Nandor Rusz <nandor.rusz@vodafone.de>
Co-authored-by: Thomas Schöneberg <ta.schoeneberg@gmail.com>
Co-authored-by: Anders Ecklon <aecklon@gmail.com>
Co-authored-by: Kenneth Hansen <erathor@live.dk>
Co-authored-by: BeardedWatermelon <BeardedWatermelon@users.noreply.hosted.weblate.org>
Co-authored-by: SoundwaveUwU <SoundwaveUwU@users.noreply.hosted.weblate.org>
Co-authored-by: SoundwaveUwU <noreply@1000-7.space>
Co-authored-by: Димитър Мазнеков (Topper) <d.maznekov@gmail.com>
Co-authored-by: Кирилл Тюрин <1337soundwave1337@gmail.com>
Co-authored-by: Don Cezar <goldie.czr@gmail.com>
Co-authored-by: Dragos <themsk@yahoo.com>
Co-authored-by: Eduard Oancea <uberfly@420blaze.it>
Co-authored-by: sct <sctsnipe@gmail.com>
Co-authored-by: Michael Michael <michaelvelosk@gmail.com>
Co-authored-by: Сергій <sergiy.goncharuk.1@gmail.com>
Co-authored-by: dtalens <databio@gmail.com>
Co-authored-by: Karel Krýda <karel.kryda@gmail.com>
Co-authored-by: Smexhy <roman.bartik@icloud.com>
Co-authored-by: Bruno Ševčenko <bs3vcenk@gmail.com>
Co-authored-by: Milo Ivir <mail@milotype.de>
Co-authored-by: Stjepan <stjepstjepanovic@gmail.com>
Co-authored-by: lpispek <lpispek@gmail.com>
Co-authored-by: Levente Szajkó <leviko112@gmail.com>
Co-authored-by: osh <osh@osh.cc>
Co-authored-by: Eryk Michalak <gnu.ewm@protonmail.com>
Co-authored-by: Francesco <francy.ammirati@hotmail.com>
Co-authored-by: Fhd-pro <juve.11@msn.com>
Co-authored-by: Kobe <kobaubarr@gmail.com>
Co-authored-by: gallegonovato <fran-carro@hotmail.es>
Co-authored-by: Baptiste <baptiste.nee@me.com>
Co-authored-by: Dimitri <dimitridroeck@gmail.com>
Co-authored-by: Maxime Lafarie <maxime.lafarie@gmail.com>
Co-authored-by: Miguel <mig.mllr@gmail.com>
Co-authored-by: asurare <jonathan.biteau16@gmail.com>
Co-authored-by: Per Erik <urbanlolface@gmail.com>
Co-authored-by: Shjosan <shjosan@kakmix.co>
Co-authored-by: bittin1ddc447d824349b2 <bittin@reimu.nl>
Co-authored-by: Eero Konttaniemi <eero.konttaniemi@gmail.com>
Co-authored-by: Milan Smudja <smudja@gmail.com>
Co-authored-by: Developer J <jshsakura@gmail.com>
Co-authored-by: Haohao Zhang <hyacz@foxmail.com>
Co-authored-by: lkw123 <lkw20010211@gmail.com>
Co-authored-by: Jordan Jones <me@jjones.tech>
Co-authored-by: Brandon Cohen <brandon@z3hn.dev>
Co-authored-by: David Emrich <demrich@me.com>
Co-authored-by: Max T. Kristiansen <me@maxtrier.dk>
Co-authored-by: Damien Fajole <60252259+DamsDev1@users.noreply.github.com>
Co-authored-by: Ahmed Siddiqui <36286128+AhmedNSidd@users.noreply.github.com>
Co-authored-by: Dargo <fuszi88@gmail.com>
Co-authored-by: senza <senza@users.noreply.hosted.weblate.org>
Co-authored-by: Robin Van de Vyvere <irazoxgames@gmail.com>
Co-authored-by: Frostar <dasangra@hotmail.com>
Co-authored-by: Nackophilz <zrv4flra@anonaddy.me>
Co-authored-by: TayZ3r <artimmo@hotmail.fr>
Co-authored-by: Oskari Lavinto <olavinto@protonmail.com>
Co-authored-by: W L <wl@mailhole.de>
Co-authored-by: Hyun Lee <hyun@yahoo.com>
Co-authored-by: cutiekeek <cutiekeek@gmail.com>
Co-authored-by: Rafael Souto <git@rafaelsouto.com>
Co-authored-by: Marc Lerno <mlerno1192@student.carlalbert.edu>
Co-authored-by: exentler <gurandsrud@gmail.com>
Co-authored-by: soup <s0up4200@pm.me>
Co-authored-by: JackOXI <53652452+JackW6809@users.noreply.github.com>
Co-authored-by: Stancu Florin <StancuFlorin@users.noreply.github.com>
Co-authored-by: Stancu Florin <florin@stancu.me>
Co-authored-by: Brandon Cohen <cohbrandon@gmail.com>
Co-authored-by: Felipe Garcia <garcia.o.felipe@gmail.com>
Co-authored-by: Rico <rico.jambor@gmail.com>
Co-authored-by: George L <lazugeorgem@gmail.com>
Co-authored-by: Yaroslav Buzko <yaroslav@buzko.com>
Co-authored-by: ugyes <ferenc.bodi@live.com>
Co-authored-by: Alberto Giardino <alberto.giardino@al-ce.it>
Co-authored-by: Lukas Miklosko <44380311+lmiklosko@users.noreply.github.com>
Co-authored-by: Ryan Cohen <ryan@sct.dev>
Co-authored-by: Andrew Kennedy <andrew-kennedy@users.noreply.github.com>
Co-authored-by: Danshil Kokil Mungur <me@danshilm.com>
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: st7105 <st7105@gmail.com>
Co-authored-by: danieledu007 <danielguillen274@gmail.com>
Co-authored-by: lolo <laurent.brelle@gmail.com>
Co-authored-by: Aleksi T <aleksi.tuhkanen@gmail.com>
Co-authored-by: rijohi <risto.hirvilammi@gmail.com>
Co-authored-by: vfaergestad <49147564+vfaergestad@users.noreply.github.com>
* fix(ntfy): display the current value of auth and fix types
When using the username/password as auth method, the saved value was not displayed properly because
of a wrong property name introduced by a missing type.
* fix: correct typing issue
---------
Co-authored-by: gauthier-th <mail@gauthierth.fr>
* fix(jellyfin): use the same deviceId for admins
This PR will make Jellyseerr use the same deviceId for the admin user everytime he logins to
Jellyfin/Emby. The previous behavior with different deviceId was creating new entries on the media
at every request.
* fix: remove useless check
* fix(filters): display the right value when resetting the filter options
When clearing the filters everything is reset but the sort option still display the previous value,
while the content has now the default value.
fix#1693
* fix: remove console.log
Added an @AfterLoad() hook in MediaRequest to ensure seasons are always ordered by their ID.
Previously, joinedseasons could appear in arbitrary database order, leading to jumbled UI displays.
With this change,the seasons list is automatically re-sorted in ascending ID order as soon as
TypeORM hydrates theentity.
fix#1336
This update modifies the user settings endpoint so that, when validating email uniqueness, the query
excludes the current user’s own record (using id: Not(user.id))
* fix(issuecomment): fix issue display lists in IssueComment
The IssueComment module was not displaying markdown list's ordered or unorderd. Removing the
allowed elements so all markdowns are allowed seems to fix this issue and work similar to github's
comment control with lists and markdown.
fix#1328
* fix#1328 Added back allowedElements, added the list elements to it also.
* feat(fixes formatting issue): fixes formating issue that was committed by mistake
fixes formatting issue that was comitted by mistake
fix#1328
* fix(jellyfin): clean up Jellyfin sessions on Jellyseerr logout
* refactor(auth): remove deleteUserDevice method and handle device deletion directly in logout process
* refactor(auth): optimize logout route for Jellyfin/Emby
Only query database for Jellyfin/Emby users during logout to avoid unnecessary database queries for Plex/local users. This improves performance by skipping the device deletion process when it's not needed.
The isValidURL function was returning false when the provided value was undefined/null/empty, but
needs to return true instead so it doesn't interfere with Yup validation.
* fix(entity): use TIMESTAMPTZ in Postgres and sort issue comments oldest-first
Switch key datetime columns to TIMESTAMPTZ for proper UTC handling
(“just now”) and sort issue comments on load so the original
description stays first and in proper sorted order in fix-pgsql-timezone
fixes#1569, fixes#1568
* refactor(migration): manually rewrite pgsql migration to preserve existing data
Typeorm generated migration was dropping the entire column thus leading to data loss so this is an
attempt at manually rewriting the migration to preserve the data
* refactor(migrations): rename to be consistent with other migration files
* fix: use id to order instead of createdAt to avoid non-existant createdAt
---------
Co-authored-by: Gauthier <mail@gauthierth.fr>
* feat(pushover): attach image to pushover notification payload (#3701)
* fix: api language query parameter (#3720)
* docs: add j0srisk as a contributor for code (#3745) [skip ci]
* docs: update README.md
* docs: update .all-contributorsrc
---------
Co-authored-by: allcontributors[bot] <46447321+allcontributors[bot]@users.noreply.github.com>
* feat(tooltip): add tooltip to display exact time on date hover (#3773)
Co-authored-by: Loetwiek <lodommerholtcm@gmail.com>
* docs: add Loetwiek as a contributor for code (#3776) [skip ci]
* docs: update README.md
* docs: update .all-contributorsrc
---------
Co-authored-by: allcontributors[bot] <46447321+allcontributors[bot]@users.noreply.github.com>
* fix(ui): ensure title fits into the `view collection` box (#3696)
* fix(docs): correct openapi docs minor issues (#3648)
* docs: add Fuochi as a contributor for doc (#3826)
Co-authored-by: allcontributors[bot] <46447321+allcontributors[bot]@users.noreply.github.com>
* feat: translations update from Hosted Weblate (#3597)
* feat(lang): translated using Weblate (Portuguese (Brazil))
Currently translated at 100.0% (1234 of 1234 strings)
feat(lang): translated using Weblate (Portuguese (Brazil))
Currently translated at 99.8% (1232 of 1234 strings)
Co-authored-by: Cleiton Carvalho <cleitonsilvacarvalho@gmail.com>
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/pt_BR/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (German)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (German)
Currently translated at 100.0% (1234 of 1234 strings)
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: Nandor Rusz <nandor.rusz@vodafone.de>
Co-authored-by: Thomas Schöneberg <ta.schoeneberg@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/de/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (Danish)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Danish)
Currently translated at 100.0% (1236 of 1236 strings)
feat(lang): translated using Weblate (Danish)
Currently translated at 100.0% (1234 of 1234 strings)
Co-authored-by: Anders Ecklon <aecklon@gmail.com>
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: Kenneth Hansen <erathor@live.dk>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/da/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (Greek)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Greek)
Currently translated at 100.0% (1236 of 1236 strings)
Co-authored-by: BeardedWatermelon <BeardedWatermelon@users.noreply.hosted.weblate.org>
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/el/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (Russian)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Russian)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Russian)
Currently translated at 99.5% (1234 of 1240 strings)
feat(lang): translated using Weblate (Russian)
Currently translated at 100.0% (1234 of 1234 strings)
feat(lang): translated using Weblate (Russian)
Currently translated at 100.0% (1234 of 1234 strings)
feat(lang): translated using Weblate (Russian)
Currently translated at 100.0% (1234 of 1234 strings)
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: SoundwaveUwU <SoundwaveUwU@users.noreply.hosted.weblate.org>
Co-authored-by: SoundwaveUwU <noreply@1000-7.space>
Co-authored-by: Димитър Мазнеков (Topper) <d.maznekov@gmail.com>
Co-authored-by: Кирилл Тюрин <1337soundwave1337@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/ru/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (Romanian)
Currently translated at 37.1% (461 of 1240 strings)
feat(lang): translated using Weblate (Romanian)
Currently translated at 37.0% (459 of 1240 strings)
feat(lang): translated using Weblate (Romanian)
Currently translated at 34.8% (432 of 1240 strings)
Co-authored-by: Don Cezar <goldie.czr@gmail.com>
Co-authored-by: Dragos <themsk@yahoo.com>
Co-authored-by: Eduard Oancea <uberfly@420blaze.it>
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/ro/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (Bulgarian)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Bulgarian)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Bulgarian)
Currently translated at 57.4% (712 of 1240 strings)
feat(lang): translated using Weblate (Bulgarian)
Currently translated at 13.2% (164 of 1240 strings)
feat(lang): translated using Weblate (Bulgarian)
Currently translated at 4.8% (60 of 1240 strings)
feat(lang): added translation using Weblate (Bulgarian)
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: sct <sctsnipe@gmail.com>
Co-authored-by: Димитър Мазнеков (Topper) <d.maznekov@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/bg/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (Ukrainian)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 99.1% (1230 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 99.1% (1230 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 99.1% (1230 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 97.9% (1215 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 82.0% (1017 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 72.9% (905 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 72.9% (905 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 71.3% (885 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 64.9% (805 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 64.4% (799 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 63.8% (792 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 63.7% (791 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 57.5% (714 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 49.9% (619 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 35.9% (446 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 35.9% (446 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 32.1% (399 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 24.6% (306 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 18.9% (235 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 17.5% (217 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 17.3% (215 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 8.0% (100 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 3.3% (41 of 1240 strings)
feat(lang): added translation using Weblate (Ukrainian)
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: Michael Michael <michaelvelosk@gmail.com>
Co-authored-by: sct <sctsnipe@gmail.com>
Co-authored-by: Сергій <sergiy.goncharuk.1@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/uk/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (Catalan)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Catalan)
Currently translated at 100.0% (1240 of 1240 strings)
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: dtalens <databio@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/ca/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (Czech)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Czech)
Currently translated at 99.6% (1236 of 1240 strings)
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: Karel Krýda <karel.kryda@gmail.com>
Co-authored-by: Smexhy <roman.bartik@icloud.com>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/cs/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (Croatian)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Croatian)
Currently translated at 99.8% (1238 of 1240 strings)
feat(lang): translated using Weblate (Croatian)
Currently translated at 99.8% (1238 of 1240 strings)
feat(lang): translated using Weblate (Croatian)
Currently translated at 99.6% (1236 of 1240 strings)
feat(lang): translated using Weblate (Croatian)
Currently translated at 99.5% (1235 of 1240 strings)
feat(lang): translated using Weblate (Croatian)
Currently translated at 99.5% (1235 of 1240 strings)
feat(lang): translated using Weblate (Croatian)
Currently translated at 99.1% (1230 of 1240 strings)
feat(lang): translated using Weblate (Croatian)
Currently translated at 97.5% (1210 of 1240 strings)
feat(lang): translated using Weblate (Croatian)
Currently translated at 95.5% (1185 of 1240 strings)
feat(lang): translated using Weblate (Croatian)
Currently translated at 95.6% (1182 of 1236 strings)
feat(lang): translated using Weblate (Croatian)
Currently translated at 95.6% (1182 of 1236 strings)
feat(lang): translated using Weblate (Croatian)
Currently translated at 95.2% (1177 of 1236 strings)
feat(lang): translated using Weblate (Croatian)
Currently translated at 95.2% (1177 of 1236 strings)
feat(lang): translated using Weblate (Croatian)
Currently translated at 94.3% (1166 of 1236 strings)
feat(lang): translated using Weblate (Croatian)
Currently translated at 91.7% (1134 of 1236 strings)
feat(lang): translated using Weblate (Croatian)
Currently translated at 91.7% (1134 of 1236 strings)
Co-authored-by: Bruno Ševčenko <bs3vcenk@gmail.com>
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: Milo Ivir <mail@milotype.de>
Co-authored-by: Stjepan <stjepstjepanovic@gmail.com>
Co-authored-by: lpispek <lpispek@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/hr/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (Hungarian)
Currently translated at 91.3% (1133 of 1240 strings)
feat(lang): translated using Weblate (Hungarian)
Currently translated at 89.3% (1108 of 1240 strings)
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: Levente Szajkó <leviko112@gmail.com>
Co-authored-by: Nandor Rusz <nandor.rusz@vodafone.de>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/hu/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (Hebrew)
Currently translated at 13.9% (172 of 1236 strings)
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: osh <osh@osh.cc>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/he/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (Polish)
Currently translated at 99.1% (1225 of 1236 strings)
Co-authored-by: Eryk Michalak <gnu.ewm@protonmail.com>
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/pl/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (Italian)
Currently translated at 92.8% (1148 of 1236 strings)
Co-authored-by: Francesco <francy.ammirati@hotmail.com>
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/it/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (Arabic)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Arabic)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Arabic)
Currently translated at 100.0% (1234 of 1234 strings)
Co-authored-by: Fhd-pro <juve.11@msn.com>
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/ar/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (Dutch)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Dutch)
Currently translated at 100.0% (1234 of 1234 strings)
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: Kobe <kobaubarr@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/nl/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (Spanish)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Spanish)
Currently translated at 100.0% (1236 of 1236 strings)
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: gallegonovato <fran-carro@hotmail.es>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/es/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (French)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (French)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (French)
Currently translated at 100.0% (1236 of 1236 strings)
feat(lang): translated using Weblate (French)
Currently translated at 99.9% (1235 of 1236 strings)
feat(lang): translated using Weblate (French)
Currently translated at 99.9% (1235 of 1236 strings)
Co-authored-by: Baptiste <baptiste.nee@me.com>
Co-authored-by: Dimitri <dimitridroeck@gmail.com>
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: Maxime Lafarie <maxime.lafarie@gmail.com>
Co-authored-by: Miguel <mig.mllr@gmail.com>
Co-authored-by: asurare <jonathan.biteau16@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/fr/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (Swedish)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Swedish)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Swedish)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Swedish)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Swedish)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Swedish)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Swedish)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Swedish)
Currently translated at 100.0% (1236 of 1236 strings)
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: Per Erik <urbanlolface@gmail.com>
Co-authored-by: Shjosan <shjosan@kakmix.co>
Co-authored-by: bittin1ddc447d824349b2 <bittin@reimu.nl>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/sv/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (Finnish)
Currently translated at 2.6% (33 of 1240 strings)
feat(lang): added translation using Weblate (Finnish)
Co-authored-by: Eero Konttaniemi <eero.konttaniemi@gmail.com>
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: sct <sctsnipe@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/fi/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (Serbian)
Currently translated at 50.8% (630 of 1240 strings)
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: Milan Smudja <smudja@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/sr/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (Korean)
Currently translated at 100.0% (1234 of 1234 strings)
Co-authored-by: Developer J <jshsakura@gmail.com>
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/ko/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (Chinese (Simplified))
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Chinese (Simplified))
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Chinese (Simplified))
Currently translated at 100.0% (1234 of 1234 strings)
Co-authored-by: Haohao Zhang <hyacz@foxmail.com>
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: lkw123 <lkw20010211@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/zh_Hans/
Translation: Overseerr/Overseerr Frontend
---------
Co-authored-by: Cleiton Carvalho <cleitonsilvacarvalho@gmail.com>
Co-authored-by: Nandor Rusz <nandor.rusz@vodafone.de>
Co-authored-by: Thomas Schöneberg <ta.schoeneberg@gmail.com>
Co-authored-by: Anders Ecklon <aecklon@gmail.com>
Co-authored-by: Kenneth Hansen <erathor@live.dk>
Co-authored-by: BeardedWatermelon <BeardedWatermelon@users.noreply.hosted.weblate.org>
Co-authored-by: SoundwaveUwU <SoundwaveUwU@users.noreply.hosted.weblate.org>
Co-authored-by: SoundwaveUwU <noreply@1000-7.space>
Co-authored-by: Димитър Мазнеков (Topper) <d.maznekov@gmail.com>
Co-authored-by: Кирилл Тюрин <1337soundwave1337@gmail.com>
Co-authored-by: Don Cezar <goldie.czr@gmail.com>
Co-authored-by: Dragos <themsk@yahoo.com>
Co-authored-by: Eduard Oancea <uberfly@420blaze.it>
Co-authored-by: sct <sctsnipe@gmail.com>
Co-authored-by: Michael Michael <michaelvelosk@gmail.com>
Co-authored-by: Сергій <sergiy.goncharuk.1@gmail.com>
Co-authored-by: dtalens <databio@gmail.com>
Co-authored-by: Karel Krýda <karel.kryda@gmail.com>
Co-authored-by: Smexhy <roman.bartik@icloud.com>
Co-authored-by: Bruno Ševčenko <bs3vcenk@gmail.com>
Co-authored-by: Milo Ivir <mail@milotype.de>
Co-authored-by: Stjepan <stjepstjepanovic@gmail.com>
Co-authored-by: lpispek <lpispek@gmail.com>
Co-authored-by: Levente Szajkó <leviko112@gmail.com>
Co-authored-by: osh <osh@osh.cc>
Co-authored-by: Eryk Michalak <gnu.ewm@protonmail.com>
Co-authored-by: Francesco <francy.ammirati@hotmail.com>
Co-authored-by: Fhd-pro <juve.11@msn.com>
Co-authored-by: Kobe <kobaubarr@gmail.com>
Co-authored-by: gallegonovato <fran-carro@hotmail.es>
Co-authored-by: Baptiste <baptiste.nee@me.com>
Co-authored-by: Dimitri <dimitridroeck@gmail.com>
Co-authored-by: Maxime Lafarie <maxime.lafarie@gmail.com>
Co-authored-by: Miguel <mig.mllr@gmail.com>
Co-authored-by: asurare <jonathan.biteau16@gmail.com>
Co-authored-by: Per Erik <urbanlolface@gmail.com>
Co-authored-by: Shjosan <shjosan@kakmix.co>
Co-authored-by: bittin1ddc447d824349b2 <bittin@reimu.nl>
Co-authored-by: Eero Konttaniemi <eero.konttaniemi@gmail.com>
Co-authored-by: Milan Smudja <smudja@gmail.com>
Co-authored-by: Developer J <jshsakura@gmail.com>
Co-authored-by: Haohao Zhang <hyacz@foxmail.com>
Co-authored-by: lkw123 <lkw20010211@gmail.com>
* feat(lang): add lang config for Bulgarian, Finnish, Ukrainian, Indonesian, Slovak, Turkish and Maori (#3834)
* fix: correct deeplinks on iPad (#3883)
* feat(studios): add a24 to studios list (#3902)
* docs: add demrich as a contributor for code (#3906) [skip ci]
* docs: update README.md
* docs: update .all-contributorsrc
---------
Co-authored-by: allcontributors[bot] <46447321+allcontributors[bot]@users.noreply.github.com>
* feat(watchlist): Cache watchlist requests with matching E-Tags (#3901)
* perf(watchlist): add E-Tag caching to Plex watchlist requests
* refactor(watchlist): increase frequency of watchlist requests
* fix: sync watchlist every 3 min instead of 3 sec
* docs: add maxnatamo as a contributor for code (#3907) [skip ci]
* docs: update README.md
* docs: update .all-contributorsrc
---------
Co-authored-by: allcontributors[bot] <46447321+allcontributors[bot]@users.noreply.github.com>
* feat(plex): refresh token schedule (#3875)
* feat: refresh token schedule
fix#3861
* fix(i18n): add i18n message
* refactor(plextv): use randomUUID crypto instead custom function
* docs: add DamsDev1 as a contributor for code (#3924) [skip ci]
* docs: update README.md
* docs: update .all-contributorsrc
---------
Co-authored-by: allcontributors[bot] <46447321+allcontributors[bot]@users.noreply.github.com>
* fix: correct icon showing on certain phones when not pulled (#3939)
* feat: add support for requesting "Specials" for TV Shows (#3724)
* feat: add support for requesting "Specials" for TV Shows
This commit is responsible for adding support in Overseerr for requesting "Special" episodes for TV
Shows. This request has become especially pertinent when you consider shows like "Doctor Who". These
shows have Specials that are critical to understanding the plot of a TV show.
fix#779
* chore(yarn.lock): undo inappropriate changes to yarn.lock
I was informed by @sct in a comment on the #3724 PR that it was not appropriate to commit the
changes that ended up being made to the yarn.lock file. This commit is responsible, then, for
undoing the changes to the yarn.lock file that ended up being submitted.
* refactor: change loose equality to strict equality
I received a comment from OwsleyJr pointing out that we are using loose equality when we could
alternatively just be using strict equality to increase the robustness of our code. This commit
does exactly that by squashing out previous usages of loose equality in my commits and replacing
them with strict equality
* refactor: move 'Specials' string to a global message
Owsley pointed out that we are redefining the 'Specials' string multiple times throughout this PR.
Instead, we can just move it as a global message. This commit does exactly that. It squashes out and
previous declarations of the 'Specials' string inside the src files, and moves it directly to the
global messages file.
* docs: add AhmedNSidd as a contributor for code (#3964) [skip ci]
* docs: update README.md
* docs: update .all-contributorsrc
---------
Co-authored-by: allcontributors[bot] <46447321+allcontributors[bot]@users.noreply.github.com>
* feat(lang): Translations update from Hosted Weblate (#3835)
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (Bulgarian)
Currently translated at 100.0% (1240 of 1240 strings)
Update translation files
Updated by "Cleanup translation files" hook in Weblate.
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: Димитър Мазнеков (Topper) <d.maznekov@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/bg/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 100.0% (1240 of 1240 strings)
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: Michael Michael <michaelvelosk@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/uk/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
feat(lang): translated using Weblate (Catalan)
Currently translated at 100.0% (1241 of 1241 strings)
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: dtalens <databio@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/ca/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
feat(lang): translated using Weblate (Hungarian)
Currently translated at 99.2% (1231 of 1240 strings)
Co-authored-by: Dargo <fuszi88@gmail.com>
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/hu/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
feat(lang): translated using Weblate (Polish)
Currently translated at 98.8% (1227 of 1241 strings)
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: senza <senza@users.noreply.hosted.weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/pl/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
feat(lang): translated using Weblate (Dutch)
Currently translated at 100.0% (1241 of 1241 strings)
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: Robin Van de Vyvere <irazoxgames@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/nl/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
feat(lang): translated using Weblate (Spanish)
Currently translated at 100.0% (1241 of 1241 strings)
feat(lang): translated using Weblate (Spanish)
Currently translated at 100.0% (1241 of 1241 strings)
Co-authored-by: Frostar <dasangra@hotmail.com>
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: gallegonovato <fran-carro@hotmail.es>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/es/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (French)
Currently translated at 100.0% (1240 of 1240 strings)
Update translation files
Updated by "Cleanup translation files" hook in Weblate.
feat(lang): translated using Weblate (French)
Currently translated at 100.0% (1241 of 1241 strings)
feat(lang): translated using Weblate (French)
Currently translated at 100.0% (1240 of 1240 strings)
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: Nackophilz <zrv4flra@anonaddy.me>
Co-authored-by: TayZ3r <artimmo@hotmail.fr>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/fr/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
feat(lang): translated using Weblate (Swedish)
Currently translated at 100.0% (1241 of 1241 strings)
feat(lang): translated using Weblate (Swedish)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Swedish)
Currently translated at 100.0% (1240 of 1240 strings)
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: Per Erik <urbanlolface@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/sv/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (Finnish)
Currently translated at 2.9% (36 of 1240 strings)
Co-authored-by: Oskari Lavinto <olavinto@protonmail.com>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/fi/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
feat(lang): translated using Weblate (Albanian)
Currently translated at 95.8% (1189 of 1240 strings)
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: W L <wl@mailhole.de>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/sq/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
feat(lang): translated using Weblate (Korean)
Currently translated at 100.0% (1241 of 1241 strings)
feat(lang): translated using Weblate (Korean)
Currently translated at 100.0% (1240 of 1240 strings)
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: Hyun Lee <hyun@yahoo.com>
Co-authored-by: cutiekeek <cutiekeek@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/ko/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
feat(lang): translated using Weblate (Portuguese (Portugal))
Currently translated at 98.4% (1221 of 1240 strings)
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: Rafael Souto <git@rafaelsouto.com>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/pt_PT/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (Chinese (Traditional Han script))
Currently translated at 99.9% (1239 of 1240 strings)
Update translation files
Updated by "Cleanup translation files" hook in Weblate.
feat(lang): translated using Weblate (Chinese (Traditional Han script))
Currently translated at 98.2% (1219 of 1241 strings)
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: Marc Lerno <mlerno1192@student.carlalbert.edu>
Co-authored-by: dtalens <databio@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/zh_Hant/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
feat(lang): translated using Weblate (Norwegian Bokmål)
Currently translated at 89.9% (1115 of 1240 strings)
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: exentler <gurandsrud@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/nb_NO/
Translation: Overseerr/Overseerr Frontend
---------
Co-authored-by: Димитър Мазнеков (Topper) <d.maznekov@gmail.com>
Co-authored-by: Michael Michael <michaelvelosk@gmail.com>
Co-authored-by: dtalens <databio@gmail.com>
Co-authored-by: Dargo <fuszi88@gmail.com>
Co-authored-by: senza <senza@users.noreply.hosted.weblate.org>
Co-authored-by: Robin Van de Vyvere <irazoxgames@gmail.com>
Co-authored-by: Frostar <dasangra@hotmail.com>
Co-authored-by: gallegonovato <fran-carro@hotmail.es>
Co-authored-by: Nackophilz <zrv4flra@anonaddy.me>
Co-authored-by: TayZ3r <artimmo@hotmail.fr>
Co-authored-by: Per Erik <urbanlolface@gmail.com>
Co-authored-by: Oskari Lavinto <olavinto@protonmail.com>
Co-authored-by: W L <wl@mailhole.de>
Co-authored-by: Hyun Lee <hyun@yahoo.com>
Co-authored-by: cutiekeek <cutiekeek@gmail.com>
Co-authored-by: Rafael Souto <git@rafaelsouto.com>
Co-authored-by: Marc Lerno <mlerno1192@student.carlalbert.edu>
Co-authored-by: exentler <gurandsrud@gmail.com>
* feat(ui): prevent password manager interference & improve service links (#3989)
* docs: add s0up4200 as a contributor for code (#4047) [skip ci]
* docs: update README.md
* docs: update .all-contributorsrc
---------
Co-authored-by: allcontributors[bot] <46447321+allcontributors[bot]@users.noreply.github.com>
* fix(ui): update Plex Logo (#3955)
* docs: add JackW6809 as a contributor for code (#4048) [skip ci]
* docs: update README.md
* docs: update .all-contributorsrc
---------
Co-authored-by: allcontributors[bot] <46447321+allcontributors[bot]@users.noreply.github.com>
* feat: requests/issues menu count (#3470)
* feat: request and issue count added to sidebar/mobile menu
* fix: added permission check for count visibility
* refactor: modified badge design for count
* fix: properly update issue and request counts in certain scenarios (#4051)
* fix: center count badge on sidebar and mobile menu (#4052)
* fix: request english trailers as a fallback when using other languages (#4009)
Co-authored-by: Stancu Florin <florin@stancu.me>
* docs: add StancuFlorin as a contributor for code (#4053) [skip ci]
* docs: update README.md
* docs: update .all-contributorsrc
---------
Co-authored-by: allcontributors[bot] <46447321+allcontributors[bot]@users.noreply.github.com>
* feat: added the PWA badge indicator for requests pending (#3411)
refactor: removed unnecessary code when sending web push notification
fix: moved all notify user logic into webpush
refactor: n
refactor: remove all unnecessary prettier changes
fix: n
fix: n
fix: n
fix: n
fix: increment sw version
fix: n
* fix: improve count badge styling (#4056)
* fix: improved web push management (#3421)
refactor: organized placement of new button + added comments
fix: added api routes for push registration
fix: modified get request to confirm key identity
fix: added back notification types to always show
feat: added a manageable device list
refactor: modified device list to make it mobile friendly
fix: correct typo for enabling notifications
* Revert "fix: improved web push management (#3421)" (#4058)
* fix: manage webpush notifications (#4059)
* feat(lang): Translations update from Hosted Weblate (#4025)
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
feat(lang): translated using Weblate (Portuguese (Brazil))
Currently translated at 100.0% (1240 of 1240 strings)
Co-authored-by: Felipe Garcia <garcia.o.felipe@gmail.com>
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/pt_BR/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
feat(lang): translated using Weblate (German)
Currently translated at 100.0% (1240 of 1240 strings)
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: Rico <rico.jambor@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/de/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (Romanian)
Currently translated at 40.8% (507 of 1240 strings)
Co-authored-by: George L <lazugeorgem@gmail.com>
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/ro/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 100.0% (1240 of 1240 strings)
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: Yaroslav Buzko <yaroslav@buzko.com>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/uk/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
feat(lang): translated using Weblate (Hungarian)
Currently translated at 99.9% (1239 of 1240 strings)
feat(lang): translated using Weblate (Hungarian)
Currently translated at 99.7% (1237 of 1240 strings)
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: ugyes <ferenc.bodi@live.com>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/hu/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
feat(lang): translated using Weblate (Italian)
Currently translated at 95.3% (1182 of 1240 strings)
feat(lang): translated using Weblate (Italian)
Currently translated at 95.3% (1182 of 1240 strings)
Co-authored-by: Alberto Giardino <alberto.giardino@al-ce.it>
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/it/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translation: Overseerr/Overseerr Frontend
* feat(lang): added translation using Weblate (Slovenian)
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: sct <sctsnipe@gmail.com>
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translation: Overseerr/Overseerr Frontend
---------
Co-authored-by: Felipe Garcia <garcia.o.felipe@gmail.com>
Co-authored-by: Rico <rico.jambor@gmail.com>
Co-authored-by: George L <lazugeorgem@gmail.com>
Co-authored-by: Yaroslav Buzko <yaroslav@buzko.com>
Co-authored-by: ugyes <ferenc.bodi@live.com>
Co-authored-by: Alberto Giardino <alberto.giardino@al-ce.it>
Co-authored-by: sct <sctsnipe@gmail.com>
* fix: change localhost to process.env.HOST for client requests (#3839)
* Change localhost to process.env.HOST for client requests
* refactor: reformat
* docs: add lmiklosko as a contributor for code (#4063) [skip ci]
* docs: update README.md
* docs: update .all-contributorsrc
---------
Co-authored-by: allcontributors[bot] <46447321+allcontributors[bot]@users.noreply.github.com>
* fix: set the correct TTL for the cookie store (#3946)
The time-to-live (TTL) of cookies stored in the database was incorrect because the connect-typeorm
library takes a TTL in seconds and not milliseconds, making cookies valid for ~82 years instead of
30 days.
Co-authored-by: Ryan Cohen <ryan@sct.dev>
* docs: add gauthier-th as a contributor for code (#4064) [skip ci]
* docs: update README.md
* docs: update .all-contributorsrc
---------
Co-authored-by: allcontributors[bot] <46447321+allcontributors[bot]@users.noreply.github.com>
* fix: update migration script (#4065)
* fix: update migration script
fix: remove insert for new entities
* fix: correct migration name
* fix: correct name inside migration
* fix(servarr): merge series tags instead of overwriting them (#4019)
* Merge series tags instead of overwriting when adding a series that already exists
Currently, a request coming in for a series that already exists in sonarr nukes the tags in sonarr for the series in favor of the tags coming from overseerr. This change merges the two lists of tags and deduplicates them before sending them to sonarr.
* fix(servarr api): merge request media tags with servarr instead of overwriting
---------
Co-authored-by: Danshil Kokil Mungur <me@danshilm.com>
* build(snap): update snap build actions
* build: temporarily disable snap builds (#4074)
* build: fix deploy docs action (#4076) [skip ci]
* fix: display request button when the show has requestable specials and is available (#4081)
* chore(deps): pin node.js (#4075)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
* fix(deps): pin dependencies (#4084)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
* feat(lang): Translations update from Hosted Weblate (#4060)
* feat(lang): translated using Weblate (Russian)
Currently translated at 100.0% (1259 of 1259 strings)
feat(lang): translated using Weblate (Russian)
Currently translated at 100.0% (1258 of 1258 strings)
Update translation files
Updated by "Cleanup translation files" hook in Weblate.
feat(lang): translated using Weblate (Russian)
Currently translated at 100.0% (1240 of 1240 strings)
Update translation files
Updated by "Cleanup translation files" hook in Weblate.
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: st7105 <st7105@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/ru/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (Romanian)
Currently translated at 50.6% (638 of 1259 strings)
feat(lang): translated using Weblate (Romanian)
Currently translated at 40.4% (509 of 1259 strings)
feat(lang): translated using Weblate (Romanian)
Currently translated at 40.3% (508 of 1259 strings)
Co-authored-by: George L <lazugeorgem@gmail.com>
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/ro/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (Italian)
Currently translated at 94.2% (1187 of 1259 strings)
Co-authored-by: danieledu007 <danielguillen274@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/it/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (French)
Currently translated at 100.0% (1259 of 1259 strings)
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: lolo <laurent.brelle@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/fr/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (Finnish)
Currently translated at 9.2% (117 of 1259 strings)
feat(lang): translated using Weblate (Finnish)
Currently translated at 8.6% (109 of 1259 strings)
Co-authored-by: Aleksi T <aleksi.tuhkanen@gmail.com>
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: rijohi <risto.hirvilammi@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/fi/
Translation: Overseerr/Overseerr Frontend
---------
Co-authored-by: st7105 <st7105@gmail.com>
Co-authored-by: George L <lazugeorgem@gmail.com>
Co-authored-by: danieledu007 <danielguillen274@gmail.com>
Co-authored-by: lolo <laurent.brelle@gmail.com>
Co-authored-by: Aleksi T <aleksi.tuhkanen@gmail.com>
Co-authored-by: rijohi <risto.hirvilammi@gmail.com>
* fix: correct specials affecting availability status (#4092)
* fix: remove specials affecting availability status
* refactor: add comments for scanner
* fix: prevent request badge showing when no related media (#4100)
* fix: availability sync requests (#3460)
* fix: modified media status handling when media has been deleted
fix: requests will now be updated to completed on scan
fix: modified components to display deleted as a status
fix: corrected media status switching away from deleted
fix: modified components to display deleted as a status
fix: corrected media status switching away from deleted
fix: base scanner will set requests to completed correctly
fix: mark available button correctly sets requests as completed
fix: status will now stay deleted after declined request
refactor: request completion handling moved to entity
fix: prevented notifications from sending to old deleted requests
refactor: cleaned up code and added more detail to logs
refactor: updated to reflect latest availability sync changes
* fix: fetch requests only if necessary in db and remove unneeded code
* fix: update request button logic to accomodate specials
fix: remove completed filtering in tv details
* fix: correctly set seasons status when using the manual button
* refactor: improve reliability of season request completion
refactor: remove seasonrequest code
* fix: send notification for 4k movies
fix: same for shows
* feat: add completed filter to requests list
refactor: correct label
* fix: correct series setting to partially available (#4109)
* fix: correct edge case with deletion not updating requests (#4110)
* fix: correct notification sending for wrong status (#4113)
* fix(notifications): sending test-notifications for email now respects the allowSelfSigned value (#4112)
* docs: add vfaergestad as a contributor for code (#4114)
* docs: update README.md
* docs: update .all-contributorsrc
---------
Co-authored-by: allcontributors[bot] <46447321+allcontributors[bot]@users.noreply.github.com>
* fix: handle currently available non-completed media (#4115)
* fix: check media status has changed before modifying request
fix: refactor: code cleanup
* fix: manually load database entity seasons
* fix: handle partial seasons more reliably (#4116)
refactor: remove matchingOldSeason variable
* fix: pwa app badge (#4117)
* fix: clear app badge at zero without notification
* fix: correct users check sometimes failing when searching push subs
* fix: filter specials from modal all seasons and watchlist (#4108)
* fix: filter specials from modal all seasons and watchlist
* fix: skip specials when marking available
* fix: edge case where specials were marked as completed
* fix: bypass specials when partial requests is disabled (#4126)
* refactor(MediaRequest): consolidate lifecycle hooks into subscriber & restrict cascade to prevent recursion (#4124)
* fix(mediarequest entity): narrow cascade to insert & remove to prevent hook recursion
Restrict cascade options on the MediaRequest→Media relation to only `insert` and `remove`to avoid
nested subscriber/AfterUpdate recursion when saving entities.
* fix(mediarequest): move methods modifying MediaRequest to its Subscriber
* fix(mediasubscriber): use event.manager for parent media updates on remove
Replace `getRepository(Media)` calls with `event.manager` in the `afterRemove` hook so that
parent-media status resets run within the same transaction/QueryRunner (important for postgresql.
Doesnt affect sqlite).
* refactor(mediasubscriber): make afterInsert and afterUpdate async and await internal operations
This should prevent unhandled promise rejections and ensure sequential execution of lifecycle
actions
---------
Co-authored-by: Gauthier <mail@gauthierth.fr>
* fix(mediaentity): change cascade from `update` to `remove` (#4135)
* fix(mediasubscriber): remove async from afterInsert and afterUpdate (#4136)
Asynchronous operations introduced in commit 3b9e195496c3db1f794549786b123a3ff55b08a0 caused issues
during media requests: the mediaId was not properly assigned and remained null.
---------
Co-authored-by: Isaac M <masesisaac@gmail.com>
Co-authored-by: Joseph Risk <j0srisk@gmail.com>
Co-authored-by: allcontributors[bot] <46447321+allcontributors[bot]@users.noreply.github.com>
Co-authored-by: Loetwiek <79059734+Loetwiek@users.noreply.github.com>
Co-authored-by: Loetwiek <lodommerholtcm@gmail.com>
Co-authored-by: Fallenbagel <98979876+Fallenbagel@users.noreply.github.com>
Co-authored-by: Fuochi <ffuochi@hotmail.com>
Co-authored-by: Weblate (bot) <hosted@weblate.org>
Co-authored-by: Cleiton Carvalho <cleitonsilvacarvalho@gmail.com>
Co-authored-by: Nandor Rusz <nandor.rusz@vodafone.de>
Co-authored-by: Thomas Schöneberg <ta.schoeneberg@gmail.com>
Co-authored-by: Anders Ecklon <aecklon@gmail.com>
Co-authored-by: Kenneth Hansen <erathor@live.dk>
Co-authored-by: BeardedWatermelon <BeardedWatermelon@users.noreply.hosted.weblate.org>
Co-authored-by: SoundwaveUwU <SoundwaveUwU@users.noreply.hosted.weblate.org>
Co-authored-by: SoundwaveUwU <noreply@1000-7.space>
Co-authored-by: Димитър Мазнеков (Topper) <d.maznekov@gmail.com>
Co-authored-by: Кирилл Тюрин <1337soundwave1337@gmail.com>
Co-authored-by: Don Cezar <goldie.czr@gmail.com>
Co-authored-by: Dragos <themsk@yahoo.com>
Co-authored-by: Eduard Oancea <uberfly@420blaze.it>
Co-authored-by: sct <sctsnipe@gmail.com>
Co-authored-by: Michael Michael <michaelvelosk@gmail.com>
Co-authored-by: Сергій <sergiy.goncharuk.1@gmail.com>
Co-authored-by: dtalens <databio@gmail.com>
Co-authored-by: Karel Krýda <karel.kryda@gmail.com>
Co-authored-by: Smexhy <roman.bartik@icloud.com>
Co-authored-by: Bruno Ševčenko <bs3vcenk@gmail.com>
Co-authored-by: Milo Ivir <mail@milotype.de>
Co-authored-by: Stjepan <stjepstjepanovic@gmail.com>
Co-authored-by: lpispek <lpispek@gmail.com>
Co-authored-by: Levente Szajkó <leviko112@gmail.com>
Co-authored-by: osh <osh@osh.cc>
Co-authored-by: Eryk Michalak <gnu.ewm@protonmail.com>
Co-authored-by: Francesco <francy.ammirati@hotmail.com>
Co-authored-by: Fhd-pro <juve.11@msn.com>
Co-authored-by: Kobe <kobaubarr@gmail.com>
Co-authored-by: gallegonovato <fran-carro@hotmail.es>
Co-authored-by: Baptiste <baptiste.nee@me.com>
Co-authored-by: Dimitri <dimitridroeck@gmail.com>
Co-authored-by: Maxime Lafarie <maxime.lafarie@gmail.com>
Co-authored-by: Miguel <mig.mllr@gmail.com>
Co-authored-by: asurare <jonathan.biteau16@gmail.com>
Co-authored-by: Per Erik <urbanlolface@gmail.com>
Co-authored-by: Shjosan <shjosan@kakmix.co>
Co-authored-by: bittin1ddc447d824349b2 <bittin@reimu.nl>
Co-authored-by: Eero Konttaniemi <eero.konttaniemi@gmail.com>
Co-authored-by: Milan Smudja <smudja@gmail.com>
Co-authored-by: Developer J <jshsakura@gmail.com>
Co-authored-by: Haohao Zhang <hyacz@foxmail.com>
Co-authored-by: lkw123 <lkw20010211@gmail.com>
Co-authored-by: Jordan Jones <me@jjones.tech>
Co-authored-by: Brandon Cohen <brandon@z3hn.dev>
Co-authored-by: David Emrich <demrich@me.com>
Co-authored-by: Max T. Kristiansen <me@maxtrier.dk>
Co-authored-by: Damien Fajole <60252259+DamsDev1@users.noreply.github.com>
Co-authored-by: Ahmed Siddiqui <36286128+AhmedNSidd@users.noreply.github.com>
Co-authored-by: Dargo <fuszi88@gmail.com>
Co-authored-by: senza <senza@users.noreply.hosted.weblate.org>
Co-authored-by: Robin Van de Vyvere <irazoxgames@gmail.com>
Co-authored-by: Frostar <dasangra@hotmail.com>
Co-authored-by: Nackophilz <zrv4flra@anonaddy.me>
Co-authored-by: TayZ3r <artimmo@hotmail.fr>
Co-authored-by: Oskari Lavinto <olavinto@protonmail.com>
Co-authored-by: W L <wl@mailhole.de>
Co-authored-by: Hyun Lee <hyun@yahoo.com>
Co-authored-by: cutiekeek <cutiekeek@gmail.com>
Co-authored-by: Rafael Souto <git@rafaelsouto.com>
Co-authored-by: Marc Lerno <mlerno1192@student.carlalbert.edu>
Co-authored-by: exentler <gurandsrud@gmail.com>
Co-authored-by: soup <s0up4200@pm.me>
Co-authored-by: JackOXI <53652452+JackW6809@users.noreply.github.com>
Co-authored-by: Stancu Florin <StancuFlorin@users.noreply.github.com>
Co-authored-by: Stancu Florin <florin@stancu.me>
Co-authored-by: Brandon Cohen <cohbrandon@gmail.com>
Co-authored-by: Felipe Garcia <garcia.o.felipe@gmail.com>
Co-authored-by: Rico <rico.jambor@gmail.com>
Co-authored-by: George L <lazugeorgem@gmail.com>
Co-authored-by: Yaroslav Buzko <yaroslav@buzko.com>
Co-authored-by: ugyes <ferenc.bodi@live.com>
Co-authored-by: Alberto Giardino <alberto.giardino@al-ce.it>
Co-authored-by: Lukas Miklosko <44380311+lmiklosko@users.noreply.github.com>
Co-authored-by: Ryan Cohen <ryan@sct.dev>
Co-authored-by: Andrew Kennedy <andrew-kennedy@users.noreply.github.com>
Co-authored-by: Danshil Kokil Mungur <me@danshilm.com>
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: st7105 <st7105@gmail.com>
Co-authored-by: danieledu007 <danielguillen274@gmail.com>
Co-authored-by: lolo <laurent.brelle@gmail.com>
Co-authored-by: Aleksi T <aleksi.tuhkanen@gmail.com>
Co-authored-by: rijohi <risto.hirvilammi@gmail.com>
Co-authored-by: vfaergestad <49147564+vfaergestad@users.noreply.github.com>
* feat(pushover): attach image to pushover notification payload (#3701)
* fix: api language query parameter (#3720)
* docs: add j0srisk as a contributor for code (#3745) [skip ci]
* docs: update README.md
* docs: update .all-contributorsrc
---------
Co-authored-by: allcontributors[bot] <46447321+allcontributors[bot]@users.noreply.github.com>
* feat(tooltip): add tooltip to display exact time on date hover (#3773)
Co-authored-by: Loetwiek <lodommerholtcm@gmail.com>
* docs: add Loetwiek as a contributor for code (#3776) [skip ci]
* docs: update README.md
* docs: update .all-contributorsrc
---------
Co-authored-by: allcontributors[bot] <46447321+allcontributors[bot]@users.noreply.github.com>
* fix(ui): ensure title fits into the `view collection` box (#3696)
* fix(docs): correct openapi docs minor issues (#3648)
* docs: add Fuochi as a contributor for doc (#3826)
Co-authored-by: allcontributors[bot] <46447321+allcontributors[bot]@users.noreply.github.com>
* feat: translations update from Hosted Weblate (#3597)
* feat(lang): translated using Weblate (Portuguese (Brazil))
Currently translated at 100.0% (1234 of 1234 strings)
feat(lang): translated using Weblate (Portuguese (Brazil))
Currently translated at 99.8% (1232 of 1234 strings)
Co-authored-by: Cleiton Carvalho <cleitonsilvacarvalho@gmail.com>
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/pt_BR/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (German)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (German)
Currently translated at 100.0% (1234 of 1234 strings)
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: Nandor Rusz <nandor.rusz@vodafone.de>
Co-authored-by: Thomas Schöneberg <ta.schoeneberg@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/de/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (Danish)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Danish)
Currently translated at 100.0% (1236 of 1236 strings)
feat(lang): translated using Weblate (Danish)
Currently translated at 100.0% (1234 of 1234 strings)
Co-authored-by: Anders Ecklon <aecklon@gmail.com>
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: Kenneth Hansen <erathor@live.dk>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/da/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (Greek)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Greek)
Currently translated at 100.0% (1236 of 1236 strings)
Co-authored-by: BeardedWatermelon <BeardedWatermelon@users.noreply.hosted.weblate.org>
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/el/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (Russian)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Russian)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Russian)
Currently translated at 99.5% (1234 of 1240 strings)
feat(lang): translated using Weblate (Russian)
Currently translated at 100.0% (1234 of 1234 strings)
feat(lang): translated using Weblate (Russian)
Currently translated at 100.0% (1234 of 1234 strings)
feat(lang): translated using Weblate (Russian)
Currently translated at 100.0% (1234 of 1234 strings)
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: SoundwaveUwU <SoundwaveUwU@users.noreply.hosted.weblate.org>
Co-authored-by: SoundwaveUwU <noreply@1000-7.space>
Co-authored-by: Димитър Мазнеков (Topper) <d.maznekov@gmail.com>
Co-authored-by: Кирилл Тюрин <1337soundwave1337@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/ru/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (Romanian)
Currently translated at 37.1% (461 of 1240 strings)
feat(lang): translated using Weblate (Romanian)
Currently translated at 37.0% (459 of 1240 strings)
feat(lang): translated using Weblate (Romanian)
Currently translated at 34.8% (432 of 1240 strings)
Co-authored-by: Don Cezar <goldie.czr@gmail.com>
Co-authored-by: Dragos <themsk@yahoo.com>
Co-authored-by: Eduard Oancea <uberfly@420blaze.it>
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/ro/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (Bulgarian)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Bulgarian)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Bulgarian)
Currently translated at 57.4% (712 of 1240 strings)
feat(lang): translated using Weblate (Bulgarian)
Currently translated at 13.2% (164 of 1240 strings)
feat(lang): translated using Weblate (Bulgarian)
Currently translated at 4.8% (60 of 1240 strings)
feat(lang): added translation using Weblate (Bulgarian)
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: sct <sctsnipe@gmail.com>
Co-authored-by: Димитър Мазнеков (Topper) <d.maznekov@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/bg/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (Ukrainian)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 99.1% (1230 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 99.1% (1230 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 99.1% (1230 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 97.9% (1215 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 82.0% (1017 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 72.9% (905 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 72.9% (905 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 71.3% (885 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 64.9% (805 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 64.4% (799 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 63.8% (792 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 63.7% (791 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 57.5% (714 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 49.9% (619 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 35.9% (446 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 35.9% (446 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 32.1% (399 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 24.6% (306 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 18.9% (235 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 17.5% (217 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 17.3% (215 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 8.0% (100 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 3.3% (41 of 1240 strings)
feat(lang): added translation using Weblate (Ukrainian)
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: Michael Michael <michaelvelosk@gmail.com>
Co-authored-by: sct <sctsnipe@gmail.com>
Co-authored-by: Сергій <sergiy.goncharuk.1@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/uk/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (Catalan)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Catalan)
Currently translated at 100.0% (1240 of 1240 strings)
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: dtalens <databio@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/ca/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (Czech)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Czech)
Currently translated at 99.6% (1236 of 1240 strings)
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: Karel Krýda <karel.kryda@gmail.com>
Co-authored-by: Smexhy <roman.bartik@icloud.com>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/cs/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (Croatian)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Croatian)
Currently translated at 99.8% (1238 of 1240 strings)
feat(lang): translated using Weblate (Croatian)
Currently translated at 99.8% (1238 of 1240 strings)
feat(lang): translated using Weblate (Croatian)
Currently translated at 99.6% (1236 of 1240 strings)
feat(lang): translated using Weblate (Croatian)
Currently translated at 99.5% (1235 of 1240 strings)
feat(lang): translated using Weblate (Croatian)
Currently translated at 99.5% (1235 of 1240 strings)
feat(lang): translated using Weblate (Croatian)
Currently translated at 99.1% (1230 of 1240 strings)
feat(lang): translated using Weblate (Croatian)
Currently translated at 97.5% (1210 of 1240 strings)
feat(lang): translated using Weblate (Croatian)
Currently translated at 95.5% (1185 of 1240 strings)
feat(lang): translated using Weblate (Croatian)
Currently translated at 95.6% (1182 of 1236 strings)
feat(lang): translated using Weblate (Croatian)
Currently translated at 95.6% (1182 of 1236 strings)
feat(lang): translated using Weblate (Croatian)
Currently translated at 95.2% (1177 of 1236 strings)
feat(lang): translated using Weblate (Croatian)
Currently translated at 95.2% (1177 of 1236 strings)
feat(lang): translated using Weblate (Croatian)
Currently translated at 94.3% (1166 of 1236 strings)
feat(lang): translated using Weblate (Croatian)
Currently translated at 91.7% (1134 of 1236 strings)
feat(lang): translated using Weblate (Croatian)
Currently translated at 91.7% (1134 of 1236 strings)
Co-authored-by: Bruno Ševčenko <bs3vcenk@gmail.com>
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: Milo Ivir <mail@milotype.de>
Co-authored-by: Stjepan <stjepstjepanovic@gmail.com>
Co-authored-by: lpispek <lpispek@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/hr/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (Hungarian)
Currently translated at 91.3% (1133 of 1240 strings)
feat(lang): translated using Weblate (Hungarian)
Currently translated at 89.3% (1108 of 1240 strings)
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: Levente Szajkó <leviko112@gmail.com>
Co-authored-by: Nandor Rusz <nandor.rusz@vodafone.de>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/hu/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (Hebrew)
Currently translated at 13.9% (172 of 1236 strings)
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: osh <osh@osh.cc>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/he/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (Polish)
Currently translated at 99.1% (1225 of 1236 strings)
Co-authored-by: Eryk Michalak <gnu.ewm@protonmail.com>
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/pl/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (Italian)
Currently translated at 92.8% (1148 of 1236 strings)
Co-authored-by: Francesco <francy.ammirati@hotmail.com>
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/it/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (Arabic)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Arabic)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Arabic)
Currently translated at 100.0% (1234 of 1234 strings)
Co-authored-by: Fhd-pro <juve.11@msn.com>
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/ar/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (Dutch)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Dutch)
Currently translated at 100.0% (1234 of 1234 strings)
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: Kobe <kobaubarr@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/nl/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (Spanish)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Spanish)
Currently translated at 100.0% (1236 of 1236 strings)
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: gallegonovato <fran-carro@hotmail.es>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/es/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (French)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (French)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (French)
Currently translated at 100.0% (1236 of 1236 strings)
feat(lang): translated using Weblate (French)
Currently translated at 99.9% (1235 of 1236 strings)
feat(lang): translated using Weblate (French)
Currently translated at 99.9% (1235 of 1236 strings)
Co-authored-by: Baptiste <baptiste.nee@me.com>
Co-authored-by: Dimitri <dimitridroeck@gmail.com>
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: Maxime Lafarie <maxime.lafarie@gmail.com>
Co-authored-by: Miguel <mig.mllr@gmail.com>
Co-authored-by: asurare <jonathan.biteau16@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/fr/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (Swedish)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Swedish)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Swedish)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Swedish)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Swedish)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Swedish)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Swedish)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Swedish)
Currently translated at 100.0% (1236 of 1236 strings)
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: Per Erik <urbanlolface@gmail.com>
Co-authored-by: Shjosan <shjosan@kakmix.co>
Co-authored-by: bittin1ddc447d824349b2 <bittin@reimu.nl>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/sv/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (Finnish)
Currently translated at 2.6% (33 of 1240 strings)
feat(lang): added translation using Weblate (Finnish)
Co-authored-by: Eero Konttaniemi <eero.konttaniemi@gmail.com>
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: sct <sctsnipe@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/fi/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (Serbian)
Currently translated at 50.8% (630 of 1240 strings)
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: Milan Smudja <smudja@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/sr/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (Korean)
Currently translated at 100.0% (1234 of 1234 strings)
Co-authored-by: Developer J <jshsakura@gmail.com>
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/ko/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (Chinese (Simplified))
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Chinese (Simplified))
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Chinese (Simplified))
Currently translated at 100.0% (1234 of 1234 strings)
Co-authored-by: Haohao Zhang <hyacz@foxmail.com>
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: lkw123 <lkw20010211@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/zh_Hans/
Translation: Overseerr/Overseerr Frontend
---------
Co-authored-by: Cleiton Carvalho <cleitonsilvacarvalho@gmail.com>
Co-authored-by: Nandor Rusz <nandor.rusz@vodafone.de>
Co-authored-by: Thomas Schöneberg <ta.schoeneberg@gmail.com>
Co-authored-by: Anders Ecklon <aecklon@gmail.com>
Co-authored-by: Kenneth Hansen <erathor@live.dk>
Co-authored-by: BeardedWatermelon <BeardedWatermelon@users.noreply.hosted.weblate.org>
Co-authored-by: SoundwaveUwU <SoundwaveUwU@users.noreply.hosted.weblate.org>
Co-authored-by: SoundwaveUwU <noreply@1000-7.space>
Co-authored-by: Димитър Мазнеков (Topper) <d.maznekov@gmail.com>
Co-authored-by: Кирилл Тюрин <1337soundwave1337@gmail.com>
Co-authored-by: Don Cezar <goldie.czr@gmail.com>
Co-authored-by: Dragos <themsk@yahoo.com>
Co-authored-by: Eduard Oancea <uberfly@420blaze.it>
Co-authored-by: sct <sctsnipe@gmail.com>
Co-authored-by: Michael Michael <michaelvelosk@gmail.com>
Co-authored-by: Сергій <sergiy.goncharuk.1@gmail.com>
Co-authored-by: dtalens <databio@gmail.com>
Co-authored-by: Karel Krýda <karel.kryda@gmail.com>
Co-authored-by: Smexhy <roman.bartik@icloud.com>
Co-authored-by: Bruno Ševčenko <bs3vcenk@gmail.com>
Co-authored-by: Milo Ivir <mail@milotype.de>
Co-authored-by: Stjepan <stjepstjepanovic@gmail.com>
Co-authored-by: lpispek <lpispek@gmail.com>
Co-authored-by: Levente Szajkó <leviko112@gmail.com>
Co-authored-by: osh <osh@osh.cc>
Co-authored-by: Eryk Michalak <gnu.ewm@protonmail.com>
Co-authored-by: Francesco <francy.ammirati@hotmail.com>
Co-authored-by: Fhd-pro <juve.11@msn.com>
Co-authored-by: Kobe <kobaubarr@gmail.com>
Co-authored-by: gallegonovato <fran-carro@hotmail.es>
Co-authored-by: Baptiste <baptiste.nee@me.com>
Co-authored-by: Dimitri <dimitridroeck@gmail.com>
Co-authored-by: Maxime Lafarie <maxime.lafarie@gmail.com>
Co-authored-by: Miguel <mig.mllr@gmail.com>
Co-authored-by: asurare <jonathan.biteau16@gmail.com>
Co-authored-by: Per Erik <urbanlolface@gmail.com>
Co-authored-by: Shjosan <shjosan@kakmix.co>
Co-authored-by: bittin1ddc447d824349b2 <bittin@reimu.nl>
Co-authored-by: Eero Konttaniemi <eero.konttaniemi@gmail.com>
Co-authored-by: Milan Smudja <smudja@gmail.com>
Co-authored-by: Developer J <jshsakura@gmail.com>
Co-authored-by: Haohao Zhang <hyacz@foxmail.com>
Co-authored-by: lkw123 <lkw20010211@gmail.com>
* feat(lang): add lang config for Bulgarian, Finnish, Ukrainian, Indonesian, Slovak, Turkish and Maori (#3834)
* fix: correct deeplinks on iPad (#3883)
* feat(studios): add a24 to studios list (#3902)
* docs: add demrich as a contributor for code (#3906) [skip ci]
* docs: update README.md
* docs: update .all-contributorsrc
---------
Co-authored-by: allcontributors[bot] <46447321+allcontributors[bot]@users.noreply.github.com>
* feat(watchlist): Cache watchlist requests with matching E-Tags (#3901)
* perf(watchlist): add E-Tag caching to Plex watchlist requests
* refactor(watchlist): increase frequency of watchlist requests
* fix: sync watchlist every 3 min instead of 3 sec
* docs: add maxnatamo as a contributor for code (#3907) [skip ci]
* docs: update README.md
* docs: update .all-contributorsrc
---------
Co-authored-by: allcontributors[bot] <46447321+allcontributors[bot]@users.noreply.github.com>
* feat(plex): refresh token schedule (#3875)
* feat: refresh token schedule
fix#3861
* fix(i18n): add i18n message
* refactor(plextv): use randomUUID crypto instead custom function
* docs: add DamsDev1 as a contributor for code (#3924) [skip ci]
* docs: update README.md
* docs: update .all-contributorsrc
---------
Co-authored-by: allcontributors[bot] <46447321+allcontributors[bot]@users.noreply.github.com>
* fix: correct icon showing on certain phones when not pulled (#3939)
* feat: add support for requesting "Specials" for TV Shows (#3724)
* feat: add support for requesting "Specials" for TV Shows
This commit is responsible for adding support in Overseerr for requesting "Special" episodes for TV
Shows. This request has become especially pertinent when you consider shows like "Doctor Who". These
shows have Specials that are critical to understanding the plot of a TV show.
fix#779
* chore(yarn.lock): undo inappropriate changes to yarn.lock
I was informed by @sct in a comment on the #3724 PR that it was not appropriate to commit the
changes that ended up being made to the yarn.lock file. This commit is responsible, then, for
undoing the changes to the yarn.lock file that ended up being submitted.
* refactor: change loose equality to strict equality
I received a comment from OwsleyJr pointing out that we are using loose equality when we could
alternatively just be using strict equality to increase the robustness of our code. This commit
does exactly that by squashing out previous usages of loose equality in my commits and replacing
them with strict equality
* refactor: move 'Specials' string to a global message
Owsley pointed out that we are redefining the 'Specials' string multiple times throughout this PR.
Instead, we can just move it as a global message. This commit does exactly that. It squashes out and
previous declarations of the 'Specials' string inside the src files, and moves it directly to the
global messages file.
* docs: add AhmedNSidd as a contributor for code (#3964) [skip ci]
* docs: update README.md
* docs: update .all-contributorsrc
---------
Co-authored-by: allcontributors[bot] <46447321+allcontributors[bot]@users.noreply.github.com>
* feat(lang): Translations update from Hosted Weblate (#3835)
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (Bulgarian)
Currently translated at 100.0% (1240 of 1240 strings)
Update translation files
Updated by "Cleanup translation files" hook in Weblate.
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: Димитър Мазнеков (Topper) <d.maznekov@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/bg/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 100.0% (1240 of 1240 strings)
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: Michael Michael <michaelvelosk@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/uk/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
feat(lang): translated using Weblate (Catalan)
Currently translated at 100.0% (1241 of 1241 strings)
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: dtalens <databio@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/ca/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
feat(lang): translated using Weblate (Hungarian)
Currently translated at 99.2% (1231 of 1240 strings)
Co-authored-by: Dargo <fuszi88@gmail.com>
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/hu/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
feat(lang): translated using Weblate (Polish)
Currently translated at 98.8% (1227 of 1241 strings)
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: senza <senza@users.noreply.hosted.weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/pl/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
feat(lang): translated using Weblate (Dutch)
Currently translated at 100.0% (1241 of 1241 strings)
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: Robin Van de Vyvere <irazoxgames@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/nl/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
feat(lang): translated using Weblate (Spanish)
Currently translated at 100.0% (1241 of 1241 strings)
feat(lang): translated using Weblate (Spanish)
Currently translated at 100.0% (1241 of 1241 strings)
Co-authored-by: Frostar <dasangra@hotmail.com>
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: gallegonovato <fran-carro@hotmail.es>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/es/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (French)
Currently translated at 100.0% (1240 of 1240 strings)
Update translation files
Updated by "Cleanup translation files" hook in Weblate.
feat(lang): translated using Weblate (French)
Currently translated at 100.0% (1241 of 1241 strings)
feat(lang): translated using Weblate (French)
Currently translated at 100.0% (1240 of 1240 strings)
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: Nackophilz <zrv4flra@anonaddy.me>
Co-authored-by: TayZ3r <artimmo@hotmail.fr>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/fr/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
feat(lang): translated using Weblate (Swedish)
Currently translated at 100.0% (1241 of 1241 strings)
feat(lang): translated using Weblate (Swedish)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Swedish)
Currently translated at 100.0% (1240 of 1240 strings)
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: Per Erik <urbanlolface@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/sv/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (Finnish)
Currently translated at 2.9% (36 of 1240 strings)
Co-authored-by: Oskari Lavinto <olavinto@protonmail.com>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/fi/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
feat(lang): translated using Weblate (Albanian)
Currently translated at 95.8% (1189 of 1240 strings)
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: W L <wl@mailhole.de>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/sq/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
feat(lang): translated using Weblate (Korean)
Currently translated at 100.0% (1241 of 1241 strings)
feat(lang): translated using Weblate (Korean)
Currently translated at 100.0% (1240 of 1240 strings)
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: Hyun Lee <hyun@yahoo.com>
Co-authored-by: cutiekeek <cutiekeek@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/ko/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
feat(lang): translated using Weblate (Portuguese (Portugal))
Currently translated at 98.4% (1221 of 1240 strings)
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: Rafael Souto <git@rafaelsouto.com>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/pt_PT/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (Chinese (Traditional Han script))
Currently translated at 99.9% (1239 of 1240 strings)
Update translation files
Updated by "Cleanup translation files" hook in Weblate.
feat(lang): translated using Weblate (Chinese (Traditional Han script))
Currently translated at 98.2% (1219 of 1241 strings)
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: Marc Lerno <mlerno1192@student.carlalbert.edu>
Co-authored-by: dtalens <databio@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/zh_Hant/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
feat(lang): translated using Weblate (Norwegian Bokmål)
Currently translated at 89.9% (1115 of 1240 strings)
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: exentler <gurandsrud@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/nb_NO/
Translation: Overseerr/Overseerr Frontend
---------
Co-authored-by: Димитър Мазнеков (Topper) <d.maznekov@gmail.com>
Co-authored-by: Michael Michael <michaelvelosk@gmail.com>
Co-authored-by: dtalens <databio@gmail.com>
Co-authored-by: Dargo <fuszi88@gmail.com>
Co-authored-by: senza <senza@users.noreply.hosted.weblate.org>
Co-authored-by: Robin Van de Vyvere <irazoxgames@gmail.com>
Co-authored-by: Frostar <dasangra@hotmail.com>
Co-authored-by: gallegonovato <fran-carro@hotmail.es>
Co-authored-by: Nackophilz <zrv4flra@anonaddy.me>
Co-authored-by: TayZ3r <artimmo@hotmail.fr>
Co-authored-by: Per Erik <urbanlolface@gmail.com>
Co-authored-by: Oskari Lavinto <olavinto@protonmail.com>
Co-authored-by: W L <wl@mailhole.de>
Co-authored-by: Hyun Lee <hyun@yahoo.com>
Co-authored-by: cutiekeek <cutiekeek@gmail.com>
Co-authored-by: Rafael Souto <git@rafaelsouto.com>
Co-authored-by: Marc Lerno <mlerno1192@student.carlalbert.edu>
Co-authored-by: exentler <gurandsrud@gmail.com>
* feat(ui): prevent password manager interference & improve service links (#3989)
* docs: add s0up4200 as a contributor for code (#4047) [skip ci]
* docs: update README.md
* docs: update .all-contributorsrc
---------
Co-authored-by: allcontributors[bot] <46447321+allcontributors[bot]@users.noreply.github.com>
* fix(ui): update Plex Logo (#3955)
* docs: add JackW6809 as a contributor for code (#4048) [skip ci]
* docs: update README.md
* docs: update .all-contributorsrc
---------
Co-authored-by: allcontributors[bot] <46447321+allcontributors[bot]@users.noreply.github.com>
* feat: requests/issues menu count (#3470)
* feat: request and issue count added to sidebar/mobile menu
* fix: added permission check for count visibility
* refactor: modified badge design for count
* fix: properly update issue and request counts in certain scenarios (#4051)
* fix: center count badge on sidebar and mobile menu (#4052)
* fix: request english trailers as a fallback when using other languages (#4009)
Co-authored-by: Stancu Florin <florin@stancu.me>
* docs: add StancuFlorin as a contributor for code (#4053) [skip ci]
* docs: update README.md
* docs: update .all-contributorsrc
---------
Co-authored-by: allcontributors[bot] <46447321+allcontributors[bot]@users.noreply.github.com>
* feat: added the PWA badge indicator for requests pending (#3411)
refactor: removed unnecessary code when sending web push notification
fix: moved all notify user logic into webpush
refactor: n
refactor: remove all unnecessary prettier changes
fix: n
fix: n
fix: n
fix: n
fix: increment sw version
fix: n
* fix: improve count badge styling (#4056)
* fix: improved web push management (#3421)
refactor: organized placement of new button + added comments
fix: added api routes for push registration
fix: modified get request to confirm key identity
fix: added back notification types to always show
feat: added a manageable device list
refactor: modified device list to make it mobile friendly
fix: correct typo for enabling notifications
* Revert "fix: improved web push management (#3421)" (#4058)
* fix: manage webpush notifications (#4059)
* feat(lang): Translations update from Hosted Weblate (#4025)
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
feat(lang): translated using Weblate (Portuguese (Brazil))
Currently translated at 100.0% (1240 of 1240 strings)
Co-authored-by: Felipe Garcia <garcia.o.felipe@gmail.com>
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/pt_BR/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
feat(lang): translated using Weblate (German)
Currently translated at 100.0% (1240 of 1240 strings)
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: Rico <rico.jambor@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/de/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (Romanian)
Currently translated at 40.8% (507 of 1240 strings)
Co-authored-by: George L <lazugeorgem@gmail.com>
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/ro/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 100.0% (1240 of 1240 strings)
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: Yaroslav Buzko <yaroslav@buzko.com>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/uk/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
feat(lang): translated using Weblate (Hungarian)
Currently translated at 99.9% (1239 of 1240 strings)
feat(lang): translated using Weblate (Hungarian)
Currently translated at 99.7% (1237 of 1240 strings)
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: ugyes <ferenc.bodi@live.com>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/hu/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
feat(lang): translated using Weblate (Italian)
Currently translated at 95.3% (1182 of 1240 strings)
feat(lang): translated using Weblate (Italian)
Currently translated at 95.3% (1182 of 1240 strings)
Co-authored-by: Alberto Giardino <alberto.giardino@al-ce.it>
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/it/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translation: Overseerr/Overseerr Frontend
* feat(lang): added translation using Weblate (Slovenian)
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: sct <sctsnipe@gmail.com>
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translation: Overseerr/Overseerr Frontend
---------
Co-authored-by: Felipe Garcia <garcia.o.felipe@gmail.com>
Co-authored-by: Rico <rico.jambor@gmail.com>
Co-authored-by: George L <lazugeorgem@gmail.com>
Co-authored-by: Yaroslav Buzko <yaroslav@buzko.com>
Co-authored-by: ugyes <ferenc.bodi@live.com>
Co-authored-by: Alberto Giardino <alberto.giardino@al-ce.it>
Co-authored-by: sct <sctsnipe@gmail.com>
* fix: change localhost to process.env.HOST for client requests (#3839)
* Change localhost to process.env.HOST for client requests
* refactor: reformat
* docs: add lmiklosko as a contributor for code (#4063) [skip ci]
* docs: update README.md
* docs: update .all-contributorsrc
---------
Co-authored-by: allcontributors[bot] <46447321+allcontributors[bot]@users.noreply.github.com>
* fix: set the correct TTL for the cookie store (#3946)
The time-to-live (TTL) of cookies stored in the database was incorrect because the connect-typeorm
library takes a TTL in seconds and not milliseconds, making cookies valid for ~82 years instead of
30 days.
Co-authored-by: Ryan Cohen <ryan@sct.dev>
* docs: add gauthier-th as a contributor for code (#4064) [skip ci]
* docs: update README.md
* docs: update .all-contributorsrc
---------
Co-authored-by: allcontributors[bot] <46447321+allcontributors[bot]@users.noreply.github.com>
* fix: update migration script (#4065)
* fix: update migration script
fix: remove insert for new entities
* fix: correct migration name
* fix: correct name inside migration
* fix(servarr): merge series tags instead of overwriting them (#4019)
* Merge series tags instead of overwriting when adding a series that already exists
Currently, a request coming in for a series that already exists in sonarr nukes the tags in sonarr for the series in favor of the tags coming from overseerr. This change merges the two lists of tags and deduplicates them before sending them to sonarr.
* fix(servarr api): merge request media tags with servarr instead of overwriting
---------
Co-authored-by: Danshil Kokil Mungur <me@danshilm.com>
* build(snap): update snap build actions
* build: temporarily disable snap builds (#4074)
* build: fix deploy docs action (#4076) [skip ci]
* fix: display request button when the show has requestable specials and is available (#4081)
* chore(deps): pin node.js (#4075)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
* fix(deps): pin dependencies (#4084)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
* feat(lang): Translations update from Hosted Weblate (#4060)
* feat(lang): translated using Weblate (Russian)
Currently translated at 100.0% (1259 of 1259 strings)
feat(lang): translated using Weblate (Russian)
Currently translated at 100.0% (1258 of 1258 strings)
Update translation files
Updated by "Cleanup translation files" hook in Weblate.
feat(lang): translated using Weblate (Russian)
Currently translated at 100.0% (1240 of 1240 strings)
Update translation files
Updated by "Cleanup translation files" hook in Weblate.
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: st7105 <st7105@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/ru/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (Romanian)
Currently translated at 50.6% (638 of 1259 strings)
feat(lang): translated using Weblate (Romanian)
Currently translated at 40.4% (509 of 1259 strings)
feat(lang): translated using Weblate (Romanian)
Currently translated at 40.3% (508 of 1259 strings)
Co-authored-by: George L <lazugeorgem@gmail.com>
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/ro/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (Italian)
Currently translated at 94.2% (1187 of 1259 strings)
Co-authored-by: danieledu007 <danielguillen274@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/it/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (French)
Currently translated at 100.0% (1259 of 1259 strings)
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: lolo <laurent.brelle@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/fr/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (Finnish)
Currently translated at 9.2% (117 of 1259 strings)
feat(lang): translated using Weblate (Finnish)
Currently translated at 8.6% (109 of 1259 strings)
Co-authored-by: Aleksi T <aleksi.tuhkanen@gmail.com>
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: rijohi <risto.hirvilammi@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/fi/
Translation: Overseerr/Overseerr Frontend
---------
Co-authored-by: st7105 <st7105@gmail.com>
Co-authored-by: George L <lazugeorgem@gmail.com>
Co-authored-by: danieledu007 <danielguillen274@gmail.com>
Co-authored-by: lolo <laurent.brelle@gmail.com>
Co-authored-by: Aleksi T <aleksi.tuhkanen@gmail.com>
Co-authored-by: rijohi <risto.hirvilammi@gmail.com>
* fix: correct specials affecting availability status (#4092)
* fix: remove specials affecting availability status
* refactor: add comments for scanner
* fix: prevent request badge showing when no related media (#4100)
* fix: availability sync requests (#3460)
* fix: modified media status handling when media has been deleted
fix: requests will now be updated to completed on scan
fix: modified components to display deleted as a status
fix: corrected media status switching away from deleted
fix: modified components to display deleted as a status
fix: corrected media status switching away from deleted
fix: base scanner will set requests to completed correctly
fix: mark available button correctly sets requests as completed
fix: status will now stay deleted after declined request
refactor: request completion handling moved to entity
fix: prevented notifications from sending to old deleted requests
refactor: cleaned up code and added more detail to logs
refactor: updated to reflect latest availability sync changes
* fix: fetch requests only if necessary in db and remove unneeded code
* fix: update request button logic to accomodate specials
fix: remove completed filtering in tv details
* fix: correctly set seasons status when using the manual button
* refactor: improve reliability of season request completion
refactor: remove seasonrequest code
* fix: send notification for 4k movies
fix: same for shows
* feat: add completed filter to requests list
refactor: correct label
* fix: correct series setting to partially available (#4109)
* fix: correct edge case with deletion not updating requests (#4110)
* fix: correct notification sending for wrong status (#4113)
* fix(notifications): sending test-notifications for email now respects the allowSelfSigned value (#4112)
* docs: add vfaergestad as a contributor for code (#4114)
* docs: update README.md
* docs: update .all-contributorsrc
---------
Co-authored-by: allcontributors[bot] <46447321+allcontributors[bot]@users.noreply.github.com>
* fix: handle currently available non-completed media (#4115)
* fix: check media status has changed before modifying request
fix: refactor: code cleanup
* fix: manually load database entity seasons
* fix: handle partial seasons more reliably (#4116)
refactor: remove matchingOldSeason variable
* fix: pwa app badge (#4117)
* fix: clear app badge at zero without notification
* fix: correct users check sometimes failing when searching push subs
* fix: filter specials from modal all seasons and watchlist (#4108)
* fix: filter specials from modal all seasons and watchlist
* fix: skip specials when marking available
* fix: edge case where specials were marked as completed
* fix: bypass specials when partial requests is disabled (#4126)
* refactor(MediaRequest): consolidate lifecycle hooks into subscriber & restrict cascade to prevent recursion (#4124)
* fix(mediarequest entity): narrow cascade to insert & remove to prevent hook recursion
Restrict cascade options on the MediaRequest→Media relation to only `insert` and `remove`to avoid
nested subscriber/AfterUpdate recursion when saving entities.
* fix(mediarequest): move methods modifying MediaRequest to its Subscriber
* fix(mediasubscriber): use event.manager for parent media updates on remove
Replace `getRepository(Media)` calls with `event.manager` in the `afterRemove` hook so that
parent-media status resets run within the same transaction/QueryRunner (important for postgresql.
Doesnt affect sqlite).
* refactor(mediasubscriber): make afterInsert and afterUpdate async and await internal operations
This should prevent unhandled promise rejections and ensure sequential execution of lifecycle
actions
---------
Co-authored-by: Gauthier <mail@gauthierth.fr>
* fix(mediaentity): change cascade from `update` to `remove` (#4135)
---------
Co-authored-by: Isaac M <masesisaac@gmail.com>
Co-authored-by: Joseph Risk <j0srisk@gmail.com>
Co-authored-by: allcontributors[bot] <46447321+allcontributors[bot]@users.noreply.github.com>
Co-authored-by: Loetwiek <79059734+Loetwiek@users.noreply.github.com>
Co-authored-by: Loetwiek <lodommerholtcm@gmail.com>
Co-authored-by: Fallenbagel <98979876+Fallenbagel@users.noreply.github.com>
Co-authored-by: Fuochi <ffuochi@hotmail.com>
Co-authored-by: Weblate (bot) <hosted@weblate.org>
Co-authored-by: Cleiton Carvalho <cleitonsilvacarvalho@gmail.com>
Co-authored-by: Nandor Rusz <nandor.rusz@vodafone.de>
Co-authored-by: Thomas Schöneberg <ta.schoeneberg@gmail.com>
Co-authored-by: Anders Ecklon <aecklon@gmail.com>
Co-authored-by: Kenneth Hansen <erathor@live.dk>
Co-authored-by: BeardedWatermelon <BeardedWatermelon@users.noreply.hosted.weblate.org>
Co-authored-by: SoundwaveUwU <SoundwaveUwU@users.noreply.hosted.weblate.org>
Co-authored-by: SoundwaveUwU <noreply@1000-7.space>
Co-authored-by: Димитър Мазнеков (Topper) <d.maznekov@gmail.com>
Co-authored-by: Кирилл Тюрин <1337soundwave1337@gmail.com>
Co-authored-by: Don Cezar <goldie.czr@gmail.com>
Co-authored-by: Dragos <themsk@yahoo.com>
Co-authored-by: Eduard Oancea <uberfly@420blaze.it>
Co-authored-by: sct <sctsnipe@gmail.com>
Co-authored-by: Michael Michael <michaelvelosk@gmail.com>
Co-authored-by: Сергій <sergiy.goncharuk.1@gmail.com>
Co-authored-by: dtalens <databio@gmail.com>
Co-authored-by: Karel Krýda <karel.kryda@gmail.com>
Co-authored-by: Smexhy <roman.bartik@icloud.com>
Co-authored-by: Bruno Ševčenko <bs3vcenk@gmail.com>
Co-authored-by: Milo Ivir <mail@milotype.de>
Co-authored-by: Stjepan <stjepstjepanovic@gmail.com>
Co-authored-by: lpispek <lpispek@gmail.com>
Co-authored-by: Levente Szajkó <leviko112@gmail.com>
Co-authored-by: osh <osh@osh.cc>
Co-authored-by: Eryk Michalak <gnu.ewm@protonmail.com>
Co-authored-by: Francesco <francy.ammirati@hotmail.com>
Co-authored-by: Fhd-pro <juve.11@msn.com>
Co-authored-by: Kobe <kobaubarr@gmail.com>
Co-authored-by: gallegonovato <fran-carro@hotmail.es>
Co-authored-by: Baptiste <baptiste.nee@me.com>
Co-authored-by: Dimitri <dimitridroeck@gmail.com>
Co-authored-by: Maxime Lafarie <maxime.lafarie@gmail.com>
Co-authored-by: Miguel <mig.mllr@gmail.com>
Co-authored-by: asurare <jonathan.biteau16@gmail.com>
Co-authored-by: Per Erik <urbanlolface@gmail.com>
Co-authored-by: Shjosan <shjosan@kakmix.co>
Co-authored-by: bittin1ddc447d824349b2 <bittin@reimu.nl>
Co-authored-by: Eero Konttaniemi <eero.konttaniemi@gmail.com>
Co-authored-by: Milan Smudja <smudja@gmail.com>
Co-authored-by: Developer J <jshsakura@gmail.com>
Co-authored-by: Haohao Zhang <hyacz@foxmail.com>
Co-authored-by: lkw123 <lkw20010211@gmail.com>
Co-authored-by: Jordan Jones <me@jjones.tech>
Co-authored-by: Brandon Cohen <brandon@z3hn.dev>
Co-authored-by: David Emrich <demrich@me.com>
Co-authored-by: Max T. Kristiansen <me@maxtrier.dk>
Co-authored-by: Damien Fajole <60252259+DamsDev1@users.noreply.github.com>
Co-authored-by: Ahmed Siddiqui <36286128+AhmedNSidd@users.noreply.github.com>
Co-authored-by: Dargo <fuszi88@gmail.com>
Co-authored-by: senza <senza@users.noreply.hosted.weblate.org>
Co-authored-by: Robin Van de Vyvere <irazoxgames@gmail.com>
Co-authored-by: Frostar <dasangra@hotmail.com>
Co-authored-by: Nackophilz <zrv4flra@anonaddy.me>
Co-authored-by: TayZ3r <artimmo@hotmail.fr>
Co-authored-by: Oskari Lavinto <olavinto@protonmail.com>
Co-authored-by: W L <wl@mailhole.de>
Co-authored-by: Hyun Lee <hyun@yahoo.com>
Co-authored-by: cutiekeek <cutiekeek@gmail.com>
Co-authored-by: Rafael Souto <git@rafaelsouto.com>
Co-authored-by: Marc Lerno <mlerno1192@student.carlalbert.edu>
Co-authored-by: exentler <gurandsrud@gmail.com>
Co-authored-by: soup <s0up4200@pm.me>
Co-authored-by: JackOXI <53652452+JackW6809@users.noreply.github.com>
Co-authored-by: Stancu Florin <StancuFlorin@users.noreply.github.com>
Co-authored-by: Stancu Florin <florin@stancu.me>
Co-authored-by: Brandon Cohen <cohbrandon@gmail.com>
Co-authored-by: Felipe Garcia <garcia.o.felipe@gmail.com>
Co-authored-by: Rico <rico.jambor@gmail.com>
Co-authored-by: George L <lazugeorgem@gmail.com>
Co-authored-by: Yaroslav Buzko <yaroslav@buzko.com>
Co-authored-by: ugyes <ferenc.bodi@live.com>
Co-authored-by: Alberto Giardino <alberto.giardino@al-ce.it>
Co-authored-by: Lukas Miklosko <44380311+lmiklosko@users.noreply.github.com>
Co-authored-by: Ryan Cohen <ryan@sct.dev>
Co-authored-by: Andrew Kennedy <andrew-kennedy@users.noreply.github.com>
Co-authored-by: Danshil Kokil Mungur <me@danshilm.com>
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: st7105 <st7105@gmail.com>
Co-authored-by: danieledu007 <danielguillen274@gmail.com>
Co-authored-by: lolo <laurent.brelle@gmail.com>
Co-authored-by: Aleksi T <aleksi.tuhkanen@gmail.com>
Co-authored-by: rijohi <risto.hirvilammi@gmail.com>
Co-authored-by: vfaergestad <49147564+vfaergestad@users.noreply.github.com>
Replaced regex-based URL validation with the native JavaScript URL constructor to improve
reliability. This approach should be more robust and should help prevent bugs like the one we
previously encountered with malformed regex.
fix#1539
Fixes a crash on the `/discover/watchlist` page that occurred when the number of items was exactly a
multiple of the page size (e.g., 80, 100, 120). The issue was caused by incorrect end-of-pagination
detection, leading to infinite data fetching. This update adjusts the `isReachingEnd` condition to
correctly handle these edge cases by checking if `totalResults` is less than or equal to the
expected total based on `size * pageSize`.
fix#1623
This PR corrects the order of the seasons displayed on the request card, because it was not always
ordered if the pending request was edited with random clicks.
* feat: add requests list media type filtering
* chore: some better indent
* fix(lint): missing break statements before case
* fix: yet another lint issue
* fix(lint): yet another lint issue
* Revert "fix(lint): yet another lint issue"
This reverts commit 24c3f90ed0.
* fix: lint issues
* feat: add person media type filtering
* feat: adjust filter to apply to cast and crew
* fix: fix layout issue
re #1513
* feat: revert unused server side api changes
* feat: move media type filtering to client side
Updates person details page to filter cast and crew sections by selected media type
re #1513
* feat(blacklist): add 'Hide Blacklisted Items' setting to general settings and UI
* feat(migration): add HideBlacklistedItems migration for PostgreSQL and SQLite
* feat(settings): add hideBlacklisted option to application settings
* feat(settings): add tooltips for hideAvailable and hideBlacklisted options in settings
* chore(migration): remove HideBlacklistedItems migration files for PostgreSQL and SQLite
* docs(settings): clarify description of 'Hide Blacklisted Items' setting to specify it affects all users
* docs(settings): update tooltip and description for 'Hide Blacklisted Items' to clarify it applies to all users, including administrators
* docs(settings): clarify 'Hide Blacklisted Items' functionality to specify it applies only to administrators with the "Manage Blacklist" permission
* fix(hooks): update permission check for 'Hide Blacklisted Items' to include 'Manage Blacklist'
* fix(settings): update tooltip for 'Hide Blacklisted Items' to clarify it applies to all users with the "Manage Blacklist" permission
* feat(settings): add experimental badge to settings tooltip for 'Hide Available' option
* feat(pushover): attach image to pushover notification payload (#3701)
* fix: api language query parameter (#3720)
* docs: add j0srisk as a contributor for code (#3745) [skip ci]
* docs: update README.md
* docs: update .all-contributorsrc
---------
Co-authored-by: allcontributors[bot] <46447321+allcontributors[bot]@users.noreply.github.com>
* feat(tooltip): add tooltip to display exact time on date hover (#3773)
Co-authored-by: Loetwiek <lodommerholtcm@gmail.com>
* docs: add Loetwiek as a contributor for code (#3776) [skip ci]
* docs: update README.md
* docs: update .all-contributorsrc
---------
Co-authored-by: allcontributors[bot] <46447321+allcontributors[bot]@users.noreply.github.com>
* fix(ui): ensure title fits into the `view collection` box (#3696)
* fix(docs): correct openapi docs minor issues (#3648)
* docs: add Fuochi as a contributor for doc (#3826)
Co-authored-by: allcontributors[bot] <46447321+allcontributors[bot]@users.noreply.github.com>
* feat: translations update from Hosted Weblate (#3597)
* feat(lang): translated using Weblate (Portuguese (Brazil))
Currently translated at 100.0% (1234 of 1234 strings)
feat(lang): translated using Weblate (Portuguese (Brazil))
Currently translated at 99.8% (1232 of 1234 strings)
Co-authored-by: Cleiton Carvalho <cleitonsilvacarvalho@gmail.com>
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/pt_BR/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (German)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (German)
Currently translated at 100.0% (1234 of 1234 strings)
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: Nandor Rusz <nandor.rusz@vodafone.de>
Co-authored-by: Thomas Schöneberg <ta.schoeneberg@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/de/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (Danish)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Danish)
Currently translated at 100.0% (1236 of 1236 strings)
feat(lang): translated using Weblate (Danish)
Currently translated at 100.0% (1234 of 1234 strings)
Co-authored-by: Anders Ecklon <aecklon@gmail.com>
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: Kenneth Hansen <erathor@live.dk>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/da/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (Greek)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Greek)
Currently translated at 100.0% (1236 of 1236 strings)
Co-authored-by: BeardedWatermelon <BeardedWatermelon@users.noreply.hosted.weblate.org>
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/el/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (Russian)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Russian)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Russian)
Currently translated at 99.5% (1234 of 1240 strings)
feat(lang): translated using Weblate (Russian)
Currently translated at 100.0% (1234 of 1234 strings)
feat(lang): translated using Weblate (Russian)
Currently translated at 100.0% (1234 of 1234 strings)
feat(lang): translated using Weblate (Russian)
Currently translated at 100.0% (1234 of 1234 strings)
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: SoundwaveUwU <SoundwaveUwU@users.noreply.hosted.weblate.org>
Co-authored-by: SoundwaveUwU <noreply@1000-7.space>
Co-authored-by: Димитър Мазнеков (Topper) <d.maznekov@gmail.com>
Co-authored-by: Кирилл Тюрин <1337soundwave1337@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/ru/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (Romanian)
Currently translated at 37.1% (461 of 1240 strings)
feat(lang): translated using Weblate (Romanian)
Currently translated at 37.0% (459 of 1240 strings)
feat(lang): translated using Weblate (Romanian)
Currently translated at 34.8% (432 of 1240 strings)
Co-authored-by: Don Cezar <goldie.czr@gmail.com>
Co-authored-by: Dragos <themsk@yahoo.com>
Co-authored-by: Eduard Oancea <uberfly@420blaze.it>
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/ro/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (Bulgarian)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Bulgarian)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Bulgarian)
Currently translated at 57.4% (712 of 1240 strings)
feat(lang): translated using Weblate (Bulgarian)
Currently translated at 13.2% (164 of 1240 strings)
feat(lang): translated using Weblate (Bulgarian)
Currently translated at 4.8% (60 of 1240 strings)
feat(lang): added translation using Weblate (Bulgarian)
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: sct <sctsnipe@gmail.com>
Co-authored-by: Димитър Мазнеков (Topper) <d.maznekov@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/bg/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (Ukrainian)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 99.1% (1230 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 99.1% (1230 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 99.1% (1230 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 97.9% (1215 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 82.0% (1017 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 72.9% (905 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 72.9% (905 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 71.3% (885 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 64.9% (805 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 64.4% (799 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 63.8% (792 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 63.7% (791 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 57.5% (714 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 49.9% (619 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 35.9% (446 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 35.9% (446 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 32.1% (399 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 24.6% (306 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 18.9% (235 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 17.5% (217 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 17.3% (215 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 8.0% (100 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 3.3% (41 of 1240 strings)
feat(lang): added translation using Weblate (Ukrainian)
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: Michael Michael <michaelvelosk@gmail.com>
Co-authored-by: sct <sctsnipe@gmail.com>
Co-authored-by: Сергій <sergiy.goncharuk.1@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/uk/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (Catalan)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Catalan)
Currently translated at 100.0% (1240 of 1240 strings)
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: dtalens <databio@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/ca/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (Czech)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Czech)
Currently translated at 99.6% (1236 of 1240 strings)
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: Karel Krýda <karel.kryda@gmail.com>
Co-authored-by: Smexhy <roman.bartik@icloud.com>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/cs/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (Croatian)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Croatian)
Currently translated at 99.8% (1238 of 1240 strings)
feat(lang): translated using Weblate (Croatian)
Currently translated at 99.8% (1238 of 1240 strings)
feat(lang): translated using Weblate (Croatian)
Currently translated at 99.6% (1236 of 1240 strings)
feat(lang): translated using Weblate (Croatian)
Currently translated at 99.5% (1235 of 1240 strings)
feat(lang): translated using Weblate (Croatian)
Currently translated at 99.5% (1235 of 1240 strings)
feat(lang): translated using Weblate (Croatian)
Currently translated at 99.1% (1230 of 1240 strings)
feat(lang): translated using Weblate (Croatian)
Currently translated at 97.5% (1210 of 1240 strings)
feat(lang): translated using Weblate (Croatian)
Currently translated at 95.5% (1185 of 1240 strings)
feat(lang): translated using Weblate (Croatian)
Currently translated at 95.6% (1182 of 1236 strings)
feat(lang): translated using Weblate (Croatian)
Currently translated at 95.6% (1182 of 1236 strings)
feat(lang): translated using Weblate (Croatian)
Currently translated at 95.2% (1177 of 1236 strings)
feat(lang): translated using Weblate (Croatian)
Currently translated at 95.2% (1177 of 1236 strings)
feat(lang): translated using Weblate (Croatian)
Currently translated at 94.3% (1166 of 1236 strings)
feat(lang): translated using Weblate (Croatian)
Currently translated at 91.7% (1134 of 1236 strings)
feat(lang): translated using Weblate (Croatian)
Currently translated at 91.7% (1134 of 1236 strings)
Co-authored-by: Bruno Ševčenko <bs3vcenk@gmail.com>
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: Milo Ivir <mail@milotype.de>
Co-authored-by: Stjepan <stjepstjepanovic@gmail.com>
Co-authored-by: lpispek <lpispek@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/hr/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (Hungarian)
Currently translated at 91.3% (1133 of 1240 strings)
feat(lang): translated using Weblate (Hungarian)
Currently translated at 89.3% (1108 of 1240 strings)
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: Levente Szajkó <leviko112@gmail.com>
Co-authored-by: Nandor Rusz <nandor.rusz@vodafone.de>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/hu/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (Hebrew)
Currently translated at 13.9% (172 of 1236 strings)
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: osh <osh@osh.cc>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/he/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (Polish)
Currently translated at 99.1% (1225 of 1236 strings)
Co-authored-by: Eryk Michalak <gnu.ewm@protonmail.com>
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/pl/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (Italian)
Currently translated at 92.8% (1148 of 1236 strings)
Co-authored-by: Francesco <francy.ammirati@hotmail.com>
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/it/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (Arabic)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Arabic)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Arabic)
Currently translated at 100.0% (1234 of 1234 strings)
Co-authored-by: Fhd-pro <juve.11@msn.com>
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/ar/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (Dutch)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Dutch)
Currently translated at 100.0% (1234 of 1234 strings)
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: Kobe <kobaubarr@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/nl/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (Spanish)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Spanish)
Currently translated at 100.0% (1236 of 1236 strings)
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: gallegonovato <fran-carro@hotmail.es>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/es/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (French)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (French)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (French)
Currently translated at 100.0% (1236 of 1236 strings)
feat(lang): translated using Weblate (French)
Currently translated at 99.9% (1235 of 1236 strings)
feat(lang): translated using Weblate (French)
Currently translated at 99.9% (1235 of 1236 strings)
Co-authored-by: Baptiste <baptiste.nee@me.com>
Co-authored-by: Dimitri <dimitridroeck@gmail.com>
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: Maxime Lafarie <maxime.lafarie@gmail.com>
Co-authored-by: Miguel <mig.mllr@gmail.com>
Co-authored-by: asurare <jonathan.biteau16@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/fr/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (Swedish)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Swedish)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Swedish)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Swedish)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Swedish)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Swedish)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Swedish)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Swedish)
Currently translated at 100.0% (1236 of 1236 strings)
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: Per Erik <urbanlolface@gmail.com>
Co-authored-by: Shjosan <shjosan@kakmix.co>
Co-authored-by: bittin1ddc447d824349b2 <bittin@reimu.nl>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/sv/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (Finnish)
Currently translated at 2.6% (33 of 1240 strings)
feat(lang): added translation using Weblate (Finnish)
Co-authored-by: Eero Konttaniemi <eero.konttaniemi@gmail.com>
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: sct <sctsnipe@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/fi/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (Serbian)
Currently translated at 50.8% (630 of 1240 strings)
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: Milan Smudja <smudja@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/sr/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (Korean)
Currently translated at 100.0% (1234 of 1234 strings)
Co-authored-by: Developer J <jshsakura@gmail.com>
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/ko/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (Chinese (Simplified))
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Chinese (Simplified))
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Chinese (Simplified))
Currently translated at 100.0% (1234 of 1234 strings)
Co-authored-by: Haohao Zhang <hyacz@foxmail.com>
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: lkw123 <lkw20010211@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/zh_Hans/
Translation: Overseerr/Overseerr Frontend
---------
Co-authored-by: Cleiton Carvalho <cleitonsilvacarvalho@gmail.com>
Co-authored-by: Nandor Rusz <nandor.rusz@vodafone.de>
Co-authored-by: Thomas Schöneberg <ta.schoeneberg@gmail.com>
Co-authored-by: Anders Ecklon <aecklon@gmail.com>
Co-authored-by: Kenneth Hansen <erathor@live.dk>
Co-authored-by: BeardedWatermelon <BeardedWatermelon@users.noreply.hosted.weblate.org>
Co-authored-by: SoundwaveUwU <SoundwaveUwU@users.noreply.hosted.weblate.org>
Co-authored-by: SoundwaveUwU <noreply@1000-7.space>
Co-authored-by: Димитър Мазнеков (Topper) <d.maznekov@gmail.com>
Co-authored-by: Кирилл Тюрин <1337soundwave1337@gmail.com>
Co-authored-by: Don Cezar <goldie.czr@gmail.com>
Co-authored-by: Dragos <themsk@yahoo.com>
Co-authored-by: Eduard Oancea <uberfly@420blaze.it>
Co-authored-by: sct <sctsnipe@gmail.com>
Co-authored-by: Michael Michael <michaelvelosk@gmail.com>
Co-authored-by: Сергій <sergiy.goncharuk.1@gmail.com>
Co-authored-by: dtalens <databio@gmail.com>
Co-authored-by: Karel Krýda <karel.kryda@gmail.com>
Co-authored-by: Smexhy <roman.bartik@icloud.com>
Co-authored-by: Bruno Ševčenko <bs3vcenk@gmail.com>
Co-authored-by: Milo Ivir <mail@milotype.de>
Co-authored-by: Stjepan <stjepstjepanovic@gmail.com>
Co-authored-by: lpispek <lpispek@gmail.com>
Co-authored-by: Levente Szajkó <leviko112@gmail.com>
Co-authored-by: osh <osh@osh.cc>
Co-authored-by: Eryk Michalak <gnu.ewm@protonmail.com>
Co-authored-by: Francesco <francy.ammirati@hotmail.com>
Co-authored-by: Fhd-pro <juve.11@msn.com>
Co-authored-by: Kobe <kobaubarr@gmail.com>
Co-authored-by: gallegonovato <fran-carro@hotmail.es>
Co-authored-by: Baptiste <baptiste.nee@me.com>
Co-authored-by: Dimitri <dimitridroeck@gmail.com>
Co-authored-by: Maxime Lafarie <maxime.lafarie@gmail.com>
Co-authored-by: Miguel <mig.mllr@gmail.com>
Co-authored-by: asurare <jonathan.biteau16@gmail.com>
Co-authored-by: Per Erik <urbanlolface@gmail.com>
Co-authored-by: Shjosan <shjosan@kakmix.co>
Co-authored-by: bittin1ddc447d824349b2 <bittin@reimu.nl>
Co-authored-by: Eero Konttaniemi <eero.konttaniemi@gmail.com>
Co-authored-by: Milan Smudja <smudja@gmail.com>
Co-authored-by: Developer J <jshsakura@gmail.com>
Co-authored-by: Haohao Zhang <hyacz@foxmail.com>
Co-authored-by: lkw123 <lkw20010211@gmail.com>
* feat(lang): add lang config for Bulgarian, Finnish, Ukrainian, Indonesian, Slovak, Turkish and Maori (#3834)
* fix: correct deeplinks on iPad (#3883)
* feat(studios): add a24 to studios list (#3902)
* docs: add demrich as a contributor for code (#3906) [skip ci]
* docs: update README.md
* docs: update .all-contributorsrc
---------
Co-authored-by: allcontributors[bot] <46447321+allcontributors[bot]@users.noreply.github.com>
* feat(watchlist): Cache watchlist requests with matching E-Tags (#3901)
* perf(watchlist): add E-Tag caching to Plex watchlist requests
* refactor(watchlist): increase frequency of watchlist requests
* fix: sync watchlist every 3 min instead of 3 sec
* docs: add maxnatamo as a contributor for code (#3907) [skip ci]
* docs: update README.md
* docs: update .all-contributorsrc
---------
Co-authored-by: allcontributors[bot] <46447321+allcontributors[bot]@users.noreply.github.com>
* feat(plex): refresh token schedule (#3875)
* feat: refresh token schedule
fix#3861
* fix(i18n): add i18n message
* refactor(plextv): use randomUUID crypto instead custom function
* docs: add DamsDev1 as a contributor for code (#3924) [skip ci]
* docs: update README.md
* docs: update .all-contributorsrc
---------
Co-authored-by: allcontributors[bot] <46447321+allcontributors[bot]@users.noreply.github.com>
* fix: correct icon showing on certain phones when not pulled (#3939)
* feat: add support for requesting "Specials" for TV Shows (#3724)
* feat: add support for requesting "Specials" for TV Shows
This commit is responsible for adding support in Overseerr for requesting "Special" episodes for TV
Shows. This request has become especially pertinent when you consider shows like "Doctor Who". These
shows have Specials that are critical to understanding the plot of a TV show.
fix#779
* chore(yarn.lock): undo inappropriate changes to yarn.lock
I was informed by @sct in a comment on the #3724 PR that it was not appropriate to commit the
changes that ended up being made to the yarn.lock file. This commit is responsible, then, for
undoing the changes to the yarn.lock file that ended up being submitted.
* refactor: change loose equality to strict equality
I received a comment from OwsleyJr pointing out that we are using loose equality when we could
alternatively just be using strict equality to increase the robustness of our code. This commit
does exactly that by squashing out previous usages of loose equality in my commits and replacing
them with strict equality
* refactor: move 'Specials' string to a global message
Owsley pointed out that we are redefining the 'Specials' string multiple times throughout this PR.
Instead, we can just move it as a global message. This commit does exactly that. It squashes out and
previous declarations of the 'Specials' string inside the src files, and moves it directly to the
global messages file.
* docs: add AhmedNSidd as a contributor for code (#3964) [skip ci]
* docs: update README.md
* docs: update .all-contributorsrc
---------
Co-authored-by: allcontributors[bot] <46447321+allcontributors[bot]@users.noreply.github.com>
* feat(lang): Translations update from Hosted Weblate (#3835)
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (Bulgarian)
Currently translated at 100.0% (1240 of 1240 strings)
Update translation files
Updated by "Cleanup translation files" hook in Weblate.
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: Димитър Мазнеков (Topper) <d.maznekov@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/bg/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 100.0% (1240 of 1240 strings)
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: Michael Michael <michaelvelosk@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/uk/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
feat(lang): translated using Weblate (Catalan)
Currently translated at 100.0% (1241 of 1241 strings)
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: dtalens <databio@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/ca/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
feat(lang): translated using Weblate (Hungarian)
Currently translated at 99.2% (1231 of 1240 strings)
Co-authored-by: Dargo <fuszi88@gmail.com>
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/hu/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
feat(lang): translated using Weblate (Polish)
Currently translated at 98.8% (1227 of 1241 strings)
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: senza <senza@users.noreply.hosted.weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/pl/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
feat(lang): translated using Weblate (Dutch)
Currently translated at 100.0% (1241 of 1241 strings)
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: Robin Van de Vyvere <irazoxgames@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/nl/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
feat(lang): translated using Weblate (Spanish)
Currently translated at 100.0% (1241 of 1241 strings)
feat(lang): translated using Weblate (Spanish)
Currently translated at 100.0% (1241 of 1241 strings)
Co-authored-by: Frostar <dasangra@hotmail.com>
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: gallegonovato <fran-carro@hotmail.es>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/es/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (French)
Currently translated at 100.0% (1240 of 1240 strings)
Update translation files
Updated by "Cleanup translation files" hook in Weblate.
feat(lang): translated using Weblate (French)
Currently translated at 100.0% (1241 of 1241 strings)
feat(lang): translated using Weblate (French)
Currently translated at 100.0% (1240 of 1240 strings)
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: Nackophilz <zrv4flra@anonaddy.me>
Co-authored-by: TayZ3r <artimmo@hotmail.fr>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/fr/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
feat(lang): translated using Weblate (Swedish)
Currently translated at 100.0% (1241 of 1241 strings)
feat(lang): translated using Weblate (Swedish)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Swedish)
Currently translated at 100.0% (1240 of 1240 strings)
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: Per Erik <urbanlolface@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/sv/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (Finnish)
Currently translated at 2.9% (36 of 1240 strings)
Co-authored-by: Oskari Lavinto <olavinto@protonmail.com>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/fi/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
feat(lang): translated using Weblate (Albanian)
Currently translated at 95.8% (1189 of 1240 strings)
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: W L <wl@mailhole.de>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/sq/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
feat(lang): translated using Weblate (Korean)
Currently translated at 100.0% (1241 of 1241 strings)
feat(lang): translated using Weblate (Korean)
Currently translated at 100.0% (1240 of 1240 strings)
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: Hyun Lee <hyun@yahoo.com>
Co-authored-by: cutiekeek <cutiekeek@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/ko/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
feat(lang): translated using Weblate (Portuguese (Portugal))
Currently translated at 98.4% (1221 of 1240 strings)
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: Rafael Souto <git@rafaelsouto.com>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/pt_PT/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (Chinese (Traditional Han script))
Currently translated at 99.9% (1239 of 1240 strings)
Update translation files
Updated by "Cleanup translation files" hook in Weblate.
feat(lang): translated using Weblate (Chinese (Traditional Han script))
Currently translated at 98.2% (1219 of 1241 strings)
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: Marc Lerno <mlerno1192@student.carlalbert.edu>
Co-authored-by: dtalens <databio@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/zh_Hant/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
feat(lang): translated using Weblate (Norwegian Bokmål)
Currently translated at 89.9% (1115 of 1240 strings)
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: exentler <gurandsrud@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/nb_NO/
Translation: Overseerr/Overseerr Frontend
---------
Co-authored-by: Димитър Мазнеков (Topper) <d.maznekov@gmail.com>
Co-authored-by: Michael Michael <michaelvelosk@gmail.com>
Co-authored-by: dtalens <databio@gmail.com>
Co-authored-by: Dargo <fuszi88@gmail.com>
Co-authored-by: senza <senza@users.noreply.hosted.weblate.org>
Co-authored-by: Robin Van de Vyvere <irazoxgames@gmail.com>
Co-authored-by: Frostar <dasangra@hotmail.com>
Co-authored-by: gallegonovato <fran-carro@hotmail.es>
Co-authored-by: Nackophilz <zrv4flra@anonaddy.me>
Co-authored-by: TayZ3r <artimmo@hotmail.fr>
Co-authored-by: Per Erik <urbanlolface@gmail.com>
Co-authored-by: Oskari Lavinto <olavinto@protonmail.com>
Co-authored-by: W L <wl@mailhole.de>
Co-authored-by: Hyun Lee <hyun@yahoo.com>
Co-authored-by: cutiekeek <cutiekeek@gmail.com>
Co-authored-by: Rafael Souto <git@rafaelsouto.com>
Co-authored-by: Marc Lerno <mlerno1192@student.carlalbert.edu>
Co-authored-by: exentler <gurandsrud@gmail.com>
* feat(ui): prevent password manager interference & improve service links (#3989)
* docs: add s0up4200 as a contributor for code (#4047) [skip ci]
* docs: update README.md
* docs: update .all-contributorsrc
---------
Co-authored-by: allcontributors[bot] <46447321+allcontributors[bot]@users.noreply.github.com>
* fix(ui): update Plex Logo (#3955)
* docs: add JackW6809 as a contributor for code (#4048) [skip ci]
* docs: update README.md
* docs: update .all-contributorsrc
---------
Co-authored-by: allcontributors[bot] <46447321+allcontributors[bot]@users.noreply.github.com>
* feat: requests/issues menu count (#3470)
* feat: request and issue count added to sidebar/mobile menu
* fix: added permission check for count visibility
* refactor: modified badge design for count
* fix: properly update issue and request counts in certain scenarios (#4051)
* fix: center count badge on sidebar and mobile menu (#4052)
* fix: request english trailers as a fallback when using other languages (#4009)
Co-authored-by: Stancu Florin <florin@stancu.me>
* docs: add StancuFlorin as a contributor for code (#4053) [skip ci]
* docs: update README.md
* docs: update .all-contributorsrc
---------
Co-authored-by: allcontributors[bot] <46447321+allcontributors[bot]@users.noreply.github.com>
* feat: added the PWA badge indicator for requests pending (#3411)
refactor: removed unnecessary code when sending web push notification
fix: moved all notify user logic into webpush
refactor: n
refactor: remove all unnecessary prettier changes
fix: n
fix: n
fix: n
fix: n
fix: increment sw version
fix: n
* fix: improve count badge styling (#4056)
* fix: improved web push management (#3421)
refactor: organized placement of new button + added comments
fix: added api routes for push registration
fix: modified get request to confirm key identity
fix: added back notification types to always show
feat: added a manageable device list
refactor: modified device list to make it mobile friendly
fix: correct typo for enabling notifications
* Revert "fix: improved web push management (#3421)" (#4058)
* fix: manage webpush notifications (#4059)
* feat(lang): Translations update from Hosted Weblate (#4025)
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
feat(lang): translated using Weblate (Portuguese (Brazil))
Currently translated at 100.0% (1240 of 1240 strings)
Co-authored-by: Felipe Garcia <garcia.o.felipe@gmail.com>
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/pt_BR/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
feat(lang): translated using Weblate (German)
Currently translated at 100.0% (1240 of 1240 strings)
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: Rico <rico.jambor@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/de/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (Romanian)
Currently translated at 40.8% (507 of 1240 strings)
Co-authored-by: George L <lazugeorgem@gmail.com>
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/ro/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 100.0% (1240 of 1240 strings)
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: Yaroslav Buzko <yaroslav@buzko.com>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/uk/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
feat(lang): translated using Weblate (Hungarian)
Currently translated at 99.9% (1239 of 1240 strings)
feat(lang): translated using Weblate (Hungarian)
Currently translated at 99.7% (1237 of 1240 strings)
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: ugyes <ferenc.bodi@live.com>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/hu/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
feat(lang): translated using Weblate (Italian)
Currently translated at 95.3% (1182 of 1240 strings)
feat(lang): translated using Weblate (Italian)
Currently translated at 95.3% (1182 of 1240 strings)
Co-authored-by: Alberto Giardino <alberto.giardino@al-ce.it>
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/it/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translation: Overseerr/Overseerr Frontend
* feat(lang): added translation using Weblate (Slovenian)
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: sct <sctsnipe@gmail.com>
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translation: Overseerr/Overseerr Frontend
---------
Co-authored-by: Felipe Garcia <garcia.o.felipe@gmail.com>
Co-authored-by: Rico <rico.jambor@gmail.com>
Co-authored-by: George L <lazugeorgem@gmail.com>
Co-authored-by: Yaroslav Buzko <yaroslav@buzko.com>
Co-authored-by: ugyes <ferenc.bodi@live.com>
Co-authored-by: Alberto Giardino <alberto.giardino@al-ce.it>
Co-authored-by: sct <sctsnipe@gmail.com>
* fix: change localhost to process.env.HOST for client requests (#3839)
* Change localhost to process.env.HOST for client requests
* refactor: reformat
* docs: add lmiklosko as a contributor for code (#4063) [skip ci]
* docs: update README.md
* docs: update .all-contributorsrc
---------
Co-authored-by: allcontributors[bot] <46447321+allcontributors[bot]@users.noreply.github.com>
* fix: set the correct TTL for the cookie store (#3946)
The time-to-live (TTL) of cookies stored in the database was incorrect because the connect-typeorm
library takes a TTL in seconds and not milliseconds, making cookies valid for ~82 years instead of
30 days.
Co-authored-by: Ryan Cohen <ryan@sct.dev>
* docs: add gauthier-th as a contributor for code (#4064) [skip ci]
* docs: update README.md
* docs: update .all-contributorsrc
---------
Co-authored-by: allcontributors[bot] <46447321+allcontributors[bot]@users.noreply.github.com>
* fix: update migration script (#4065)
* fix: update migration script
fix: remove insert for new entities
* fix: correct migration name
* fix: correct name inside migration
* fix(servarr): merge series tags instead of overwriting them (#4019)
* Merge series tags instead of overwriting when adding a series that already exists
Currently, a request coming in for a series that already exists in sonarr nukes the tags in sonarr for the series in favor of the tags coming from overseerr. This change merges the two lists of tags and deduplicates them before sending them to sonarr.
* fix(servarr api): merge request media tags with servarr instead of overwriting
---------
Co-authored-by: Danshil Kokil Mungur <me@danshilm.com>
* build(snap): update snap build actions
* build: temporarily disable snap builds (#4074)
* build: fix deploy docs action (#4076) [skip ci]
* fix: display request button when the show has requestable specials and is available (#4081)
* chore(deps): pin node.js (#4075)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
* fix(deps): pin dependencies (#4084)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
* feat(lang): Translations update from Hosted Weblate (#4060)
* feat(lang): translated using Weblate (Russian)
Currently translated at 100.0% (1259 of 1259 strings)
feat(lang): translated using Weblate (Russian)
Currently translated at 100.0% (1258 of 1258 strings)
Update translation files
Updated by "Cleanup translation files" hook in Weblate.
feat(lang): translated using Weblate (Russian)
Currently translated at 100.0% (1240 of 1240 strings)
Update translation files
Updated by "Cleanup translation files" hook in Weblate.
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: st7105 <st7105@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/ru/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (Romanian)
Currently translated at 50.6% (638 of 1259 strings)
feat(lang): translated using Weblate (Romanian)
Currently translated at 40.4% (509 of 1259 strings)
feat(lang): translated using Weblate (Romanian)
Currently translated at 40.3% (508 of 1259 strings)
Co-authored-by: George L <lazugeorgem@gmail.com>
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/ro/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (Italian)
Currently translated at 94.2% (1187 of 1259 strings)
Co-authored-by: danieledu007 <danielguillen274@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/it/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (French)
Currently translated at 100.0% (1259 of 1259 strings)
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: lolo <laurent.brelle@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/fr/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (Finnish)
Currently translated at 9.2% (117 of 1259 strings)
feat(lang): translated using Weblate (Finnish)
Currently translated at 8.6% (109 of 1259 strings)
Co-authored-by: Aleksi T <aleksi.tuhkanen@gmail.com>
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: rijohi <risto.hirvilammi@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/fi/
Translation: Overseerr/Overseerr Frontend
---------
Co-authored-by: st7105 <st7105@gmail.com>
Co-authored-by: George L <lazugeorgem@gmail.com>
Co-authored-by: danieledu007 <danielguillen274@gmail.com>
Co-authored-by: lolo <laurent.brelle@gmail.com>
Co-authored-by: Aleksi T <aleksi.tuhkanen@gmail.com>
Co-authored-by: rijohi <risto.hirvilammi@gmail.com>
* fix: correct specials affecting availability status (#4092)
* fix: remove specials affecting availability status
* refactor: add comments for scanner
* fix: prevent request badge showing when no related media (#4100)
* fix: availability sync requests (#3460)
* fix: modified media status handling when media has been deleted
fix: requests will now be updated to completed on scan
fix: modified components to display deleted as a status
fix: corrected media status switching away from deleted
fix: modified components to display deleted as a status
fix: corrected media status switching away from deleted
fix: base scanner will set requests to completed correctly
fix: mark available button correctly sets requests as completed
fix: status will now stay deleted after declined request
refactor: request completion handling moved to entity
fix: prevented notifications from sending to old deleted requests
refactor: cleaned up code and added more detail to logs
refactor: updated to reflect latest availability sync changes
* fix: fetch requests only if necessary in db and remove unneeded code
* fix: update request button logic to accomodate specials
fix: remove completed filtering in tv details
* fix: correctly set seasons status when using the manual button
* refactor: improve reliability of season request completion
refactor: remove seasonrequest code
* fix: send notification for 4k movies
fix: same for shows
* feat: add completed filter to requests list
refactor: correct label
* fix: correct series setting to partially available (#4109)
* fix: correct edge case with deletion not updating requests (#4110)
* fix: correct notification sending for wrong status (#4113)
* fix(notifications): sending test-notifications for email now respects the allowSelfSigned value (#4112)
* docs: add vfaergestad as a contributor for code (#4114)
* docs: update README.md
* docs: update .all-contributorsrc
---------
Co-authored-by: allcontributors[bot] <46447321+allcontributors[bot]@users.noreply.github.com>
* fix: handle currently available non-completed media (#4115)
* fix: check media status has changed before modifying request
fix: refactor: code cleanup
* fix: manually load database entity seasons
* fix: handle partial seasons more reliably (#4116)
refactor: remove matchingOldSeason variable
* fix: pwa app badge (#4117)
* fix: clear app badge at zero without notification
* fix: correct users check sometimes failing when searching push subs
* fix: filter specials from modal all seasons and watchlist (#4108)
* fix: filter specials from modal all seasons and watchlist
* fix: skip specials when marking available
* fix: edge case where specials were marked as completed
* fix: bypass specials when partial requests is disabled (#4126)
* refactor(MediaRequest): consolidate lifecycle hooks into subscriber & restrict cascade to prevent recursion (#4124)
* fix(mediarequest entity): narrow cascade to insert & remove to prevent hook recursion
Restrict cascade options on the MediaRequest→Media relation to only `insert` and `remove`to avoid
nested subscriber/AfterUpdate recursion when saving entities.
* fix(mediarequest): move methods modifying MediaRequest to its Subscriber
* fix(mediasubscriber): use event.manager for parent media updates on remove
Replace `getRepository(Media)` calls with `event.manager` in the `afterRemove` hook so that
parent-media status resets run within the same transaction/QueryRunner (important for postgresql.
Doesnt affect sqlite).
* refactor(mediasubscriber): make afterInsert and afterUpdate async and await internal operations
This should prevent unhandled promise rejections and ensure sequential execution of lifecycle
actions
---------
Co-authored-by: Gauthier <mail@gauthierth.fr>
* fix: add missing translations
* fix: remove useless changes
---------
Co-authored-by: Isaac M <masesisaac@gmail.com>
Co-authored-by: Joseph Risk <j0srisk@gmail.com>
Co-authored-by: allcontributors[bot] <46447321+allcontributors[bot]@users.noreply.github.com>
Co-authored-by: Loetwiek <79059734+Loetwiek@users.noreply.github.com>
Co-authored-by: Loetwiek <lodommerholtcm@gmail.com>
Co-authored-by: Fallenbagel <98979876+Fallenbagel@users.noreply.github.com>
Co-authored-by: Fuochi <ffuochi@hotmail.com>
Co-authored-by: Weblate (bot) <hosted@weblate.org>
Co-authored-by: Cleiton Carvalho <cleitonsilvacarvalho@gmail.com>
Co-authored-by: Nandor Rusz <nandor.rusz@vodafone.de>
Co-authored-by: Thomas Schöneberg <ta.schoeneberg@gmail.com>
Co-authored-by: Anders Ecklon <aecklon@gmail.com>
Co-authored-by: Kenneth Hansen <erathor@live.dk>
Co-authored-by: BeardedWatermelon <BeardedWatermelon@users.noreply.hosted.weblate.org>
Co-authored-by: SoundwaveUwU <SoundwaveUwU@users.noreply.hosted.weblate.org>
Co-authored-by: SoundwaveUwU <noreply@1000-7.space>
Co-authored-by: Димитър Мазнеков (Topper) <d.maznekov@gmail.com>
Co-authored-by: Кирилл Тюрин <1337soundwave1337@gmail.com>
Co-authored-by: Don Cezar <goldie.czr@gmail.com>
Co-authored-by: Dragos <themsk@yahoo.com>
Co-authored-by: Eduard Oancea <uberfly@420blaze.it>
Co-authored-by: sct <sctsnipe@gmail.com>
Co-authored-by: Michael Michael <michaelvelosk@gmail.com>
Co-authored-by: Сергій <sergiy.goncharuk.1@gmail.com>
Co-authored-by: dtalens <databio@gmail.com>
Co-authored-by: Karel Krýda <karel.kryda@gmail.com>
Co-authored-by: Smexhy <roman.bartik@icloud.com>
Co-authored-by: Bruno Ševčenko <bs3vcenk@gmail.com>
Co-authored-by: Milo Ivir <mail@milotype.de>
Co-authored-by: Stjepan <stjepstjepanovic@gmail.com>
Co-authored-by: lpispek <lpispek@gmail.com>
Co-authored-by: Levente Szajkó <leviko112@gmail.com>
Co-authored-by: osh <osh@osh.cc>
Co-authored-by: Eryk Michalak <gnu.ewm@protonmail.com>
Co-authored-by: Francesco <francy.ammirati@hotmail.com>
Co-authored-by: Fhd-pro <juve.11@msn.com>
Co-authored-by: Kobe <kobaubarr@gmail.com>
Co-authored-by: gallegonovato <fran-carro@hotmail.es>
Co-authored-by: Baptiste <baptiste.nee@me.com>
Co-authored-by: Dimitri <dimitridroeck@gmail.com>
Co-authored-by: Maxime Lafarie <maxime.lafarie@gmail.com>
Co-authored-by: Miguel <mig.mllr@gmail.com>
Co-authored-by: asurare <jonathan.biteau16@gmail.com>
Co-authored-by: Per Erik <urbanlolface@gmail.com>
Co-authored-by: Shjosan <shjosan@kakmix.co>
Co-authored-by: bittin1ddc447d824349b2 <bittin@reimu.nl>
Co-authored-by: Eero Konttaniemi <eero.konttaniemi@gmail.com>
Co-authored-by: Milan Smudja <smudja@gmail.com>
Co-authored-by: Developer J <jshsakura@gmail.com>
Co-authored-by: Haohao Zhang <hyacz@foxmail.com>
Co-authored-by: lkw123 <lkw20010211@gmail.com>
Co-authored-by: Jordan Jones <me@jjones.tech>
Co-authored-by: Brandon Cohen <brandon@z3hn.dev>
Co-authored-by: David Emrich <demrich@me.com>
Co-authored-by: Max T. Kristiansen <me@maxtrier.dk>
Co-authored-by: Damien Fajole <60252259+DamsDev1@users.noreply.github.com>
Co-authored-by: Ahmed Siddiqui <36286128+AhmedNSidd@users.noreply.github.com>
Co-authored-by: Dargo <fuszi88@gmail.com>
Co-authored-by: senza <senza@users.noreply.hosted.weblate.org>
Co-authored-by: Robin Van de Vyvere <irazoxgames@gmail.com>
Co-authored-by: Frostar <dasangra@hotmail.com>
Co-authored-by: Nackophilz <zrv4flra@anonaddy.me>
Co-authored-by: TayZ3r <artimmo@hotmail.fr>
Co-authored-by: Oskari Lavinto <olavinto@protonmail.com>
Co-authored-by: W L <wl@mailhole.de>
Co-authored-by: Hyun Lee <hyun@yahoo.com>
Co-authored-by: cutiekeek <cutiekeek@gmail.com>
Co-authored-by: Rafael Souto <git@rafaelsouto.com>
Co-authored-by: Marc Lerno <mlerno1192@student.carlalbert.edu>
Co-authored-by: exentler <gurandsrud@gmail.com>
Co-authored-by: soup <s0up4200@pm.me>
Co-authored-by: JackOXI <53652452+JackW6809@users.noreply.github.com>
Co-authored-by: Stancu Florin <StancuFlorin@users.noreply.github.com>
Co-authored-by: Stancu Florin <florin@stancu.me>
Co-authored-by: Brandon Cohen <cohbrandon@gmail.com>
Co-authored-by: Felipe Garcia <garcia.o.felipe@gmail.com>
Co-authored-by: Rico <rico.jambor@gmail.com>
Co-authored-by: George L <lazugeorgem@gmail.com>
Co-authored-by: Yaroslav Buzko <yaroslav@buzko.com>
Co-authored-by: ugyes <ferenc.bodi@live.com>
Co-authored-by: Alberto Giardino <alberto.giardino@al-ce.it>
Co-authored-by: Lukas Miklosko <44380311+lmiklosko@users.noreply.github.com>
Co-authored-by: Ryan Cohen <ryan@sct.dev>
Co-authored-by: Andrew Kennedy <andrew-kennedy@users.noreply.github.com>
Co-authored-by: Danshil Kokil Mungur <me@danshilm.com>
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: st7105 <st7105@gmail.com>
Co-authored-by: danieledu007 <danielguillen274@gmail.com>
Co-authored-by: lolo <laurent.brelle@gmail.com>
Co-authored-by: Aleksi T <aleksi.tuhkanen@gmail.com>
Co-authored-by: rijohi <risto.hirvilammi@gmail.com>
Co-authored-by: vfaergestad <49147564+vfaergestad@users.noreply.github.com>
* feat(pushover): attach image to pushover notification payload (#3701)
* fix: api language query parameter (#3720)
* docs: add j0srisk as a contributor for code (#3745) [skip ci]
* docs: update README.md
* docs: update .all-contributorsrc
---------
Co-authored-by: allcontributors[bot] <46447321+allcontributors[bot]@users.noreply.github.com>
* feat(tooltip): add tooltip to display exact time on date hover (#3773)
Co-authored-by: Loetwiek <lodommerholtcm@gmail.com>
* docs: add Loetwiek as a contributor for code (#3776) [skip ci]
* docs: update README.md
* docs: update .all-contributorsrc
---------
Co-authored-by: allcontributors[bot] <46447321+allcontributors[bot]@users.noreply.github.com>
* fix(ui): ensure title fits into the `view collection` box (#3696)
* fix(docs): correct openapi docs minor issues (#3648)
* docs: add Fuochi as a contributor for doc (#3826)
Co-authored-by: allcontributors[bot] <46447321+allcontributors[bot]@users.noreply.github.com>
* feat: translations update from Hosted Weblate (#3597)
* feat(lang): translated using Weblate (Portuguese (Brazil))
Currently translated at 100.0% (1234 of 1234 strings)
feat(lang): translated using Weblate (Portuguese (Brazil))
Currently translated at 99.8% (1232 of 1234 strings)
Co-authored-by: Cleiton Carvalho <cleitonsilvacarvalho@gmail.com>
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/pt_BR/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (German)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (German)
Currently translated at 100.0% (1234 of 1234 strings)
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: Nandor Rusz <nandor.rusz@vodafone.de>
Co-authored-by: Thomas Schöneberg <ta.schoeneberg@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/de/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (Danish)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Danish)
Currently translated at 100.0% (1236 of 1236 strings)
feat(lang): translated using Weblate (Danish)
Currently translated at 100.0% (1234 of 1234 strings)
Co-authored-by: Anders Ecklon <aecklon@gmail.com>
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: Kenneth Hansen <erathor@live.dk>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/da/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (Greek)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Greek)
Currently translated at 100.0% (1236 of 1236 strings)
Co-authored-by: BeardedWatermelon <BeardedWatermelon@users.noreply.hosted.weblate.org>
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/el/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (Russian)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Russian)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Russian)
Currently translated at 99.5% (1234 of 1240 strings)
feat(lang): translated using Weblate (Russian)
Currently translated at 100.0% (1234 of 1234 strings)
feat(lang): translated using Weblate (Russian)
Currently translated at 100.0% (1234 of 1234 strings)
feat(lang): translated using Weblate (Russian)
Currently translated at 100.0% (1234 of 1234 strings)
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: SoundwaveUwU <SoundwaveUwU@users.noreply.hosted.weblate.org>
Co-authored-by: SoundwaveUwU <noreply@1000-7.space>
Co-authored-by: Димитър Мазнеков (Topper) <d.maznekov@gmail.com>
Co-authored-by: Кирилл Тюрин <1337soundwave1337@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/ru/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (Romanian)
Currently translated at 37.1% (461 of 1240 strings)
feat(lang): translated using Weblate (Romanian)
Currently translated at 37.0% (459 of 1240 strings)
feat(lang): translated using Weblate (Romanian)
Currently translated at 34.8% (432 of 1240 strings)
Co-authored-by: Don Cezar <goldie.czr@gmail.com>
Co-authored-by: Dragos <themsk@yahoo.com>
Co-authored-by: Eduard Oancea <uberfly@420blaze.it>
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/ro/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (Bulgarian)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Bulgarian)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Bulgarian)
Currently translated at 57.4% (712 of 1240 strings)
feat(lang): translated using Weblate (Bulgarian)
Currently translated at 13.2% (164 of 1240 strings)
feat(lang): translated using Weblate (Bulgarian)
Currently translated at 4.8% (60 of 1240 strings)
feat(lang): added translation using Weblate (Bulgarian)
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: sct <sctsnipe@gmail.com>
Co-authored-by: Димитър Мазнеков (Topper) <d.maznekov@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/bg/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (Ukrainian)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 99.1% (1230 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 99.1% (1230 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 99.1% (1230 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 97.9% (1215 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 82.0% (1017 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 72.9% (905 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 72.9% (905 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 71.3% (885 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 64.9% (805 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 64.4% (799 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 63.8% (792 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 63.7% (791 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 57.5% (714 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 49.9% (619 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 35.9% (446 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 35.9% (446 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 32.1% (399 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 24.6% (306 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 18.9% (235 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 17.5% (217 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 17.3% (215 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 8.0% (100 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 3.3% (41 of 1240 strings)
feat(lang): added translation using Weblate (Ukrainian)
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: Michael Michael <michaelvelosk@gmail.com>
Co-authored-by: sct <sctsnipe@gmail.com>
Co-authored-by: Сергій <sergiy.goncharuk.1@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/uk/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (Catalan)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Catalan)
Currently translated at 100.0% (1240 of 1240 strings)
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: dtalens <databio@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/ca/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (Czech)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Czech)
Currently translated at 99.6% (1236 of 1240 strings)
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: Karel Krýda <karel.kryda@gmail.com>
Co-authored-by: Smexhy <roman.bartik@icloud.com>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/cs/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (Croatian)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Croatian)
Currently translated at 99.8% (1238 of 1240 strings)
feat(lang): translated using Weblate (Croatian)
Currently translated at 99.8% (1238 of 1240 strings)
feat(lang): translated using Weblate (Croatian)
Currently translated at 99.6% (1236 of 1240 strings)
feat(lang): translated using Weblate (Croatian)
Currently translated at 99.5% (1235 of 1240 strings)
feat(lang): translated using Weblate (Croatian)
Currently translated at 99.5% (1235 of 1240 strings)
feat(lang): translated using Weblate (Croatian)
Currently translated at 99.1% (1230 of 1240 strings)
feat(lang): translated using Weblate (Croatian)
Currently translated at 97.5% (1210 of 1240 strings)
feat(lang): translated using Weblate (Croatian)
Currently translated at 95.5% (1185 of 1240 strings)
feat(lang): translated using Weblate (Croatian)
Currently translated at 95.6% (1182 of 1236 strings)
feat(lang): translated using Weblate (Croatian)
Currently translated at 95.6% (1182 of 1236 strings)
feat(lang): translated using Weblate (Croatian)
Currently translated at 95.2% (1177 of 1236 strings)
feat(lang): translated using Weblate (Croatian)
Currently translated at 95.2% (1177 of 1236 strings)
feat(lang): translated using Weblate (Croatian)
Currently translated at 94.3% (1166 of 1236 strings)
feat(lang): translated using Weblate (Croatian)
Currently translated at 91.7% (1134 of 1236 strings)
feat(lang): translated using Weblate (Croatian)
Currently translated at 91.7% (1134 of 1236 strings)
Co-authored-by: Bruno Ševčenko <bs3vcenk@gmail.com>
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: Milo Ivir <mail@milotype.de>
Co-authored-by: Stjepan <stjepstjepanovic@gmail.com>
Co-authored-by: lpispek <lpispek@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/hr/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (Hungarian)
Currently translated at 91.3% (1133 of 1240 strings)
feat(lang): translated using Weblate (Hungarian)
Currently translated at 89.3% (1108 of 1240 strings)
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: Levente Szajkó <leviko112@gmail.com>
Co-authored-by: Nandor Rusz <nandor.rusz@vodafone.de>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/hu/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (Hebrew)
Currently translated at 13.9% (172 of 1236 strings)
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: osh <osh@osh.cc>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/he/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (Polish)
Currently translated at 99.1% (1225 of 1236 strings)
Co-authored-by: Eryk Michalak <gnu.ewm@protonmail.com>
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/pl/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (Italian)
Currently translated at 92.8% (1148 of 1236 strings)
Co-authored-by: Francesco <francy.ammirati@hotmail.com>
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/it/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (Arabic)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Arabic)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Arabic)
Currently translated at 100.0% (1234 of 1234 strings)
Co-authored-by: Fhd-pro <juve.11@msn.com>
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/ar/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (Dutch)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Dutch)
Currently translated at 100.0% (1234 of 1234 strings)
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: Kobe <kobaubarr@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/nl/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (Spanish)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Spanish)
Currently translated at 100.0% (1236 of 1236 strings)
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: gallegonovato <fran-carro@hotmail.es>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/es/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (French)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (French)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (French)
Currently translated at 100.0% (1236 of 1236 strings)
feat(lang): translated using Weblate (French)
Currently translated at 99.9% (1235 of 1236 strings)
feat(lang): translated using Weblate (French)
Currently translated at 99.9% (1235 of 1236 strings)
Co-authored-by: Baptiste <baptiste.nee@me.com>
Co-authored-by: Dimitri <dimitridroeck@gmail.com>
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: Maxime Lafarie <maxime.lafarie@gmail.com>
Co-authored-by: Miguel <mig.mllr@gmail.com>
Co-authored-by: asurare <jonathan.biteau16@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/fr/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (Swedish)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Swedish)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Swedish)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Swedish)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Swedish)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Swedish)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Swedish)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Swedish)
Currently translated at 100.0% (1236 of 1236 strings)
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: Per Erik <urbanlolface@gmail.com>
Co-authored-by: Shjosan <shjosan@kakmix.co>
Co-authored-by: bittin1ddc447d824349b2 <bittin@reimu.nl>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/sv/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (Finnish)
Currently translated at 2.6% (33 of 1240 strings)
feat(lang): added translation using Weblate (Finnish)
Co-authored-by: Eero Konttaniemi <eero.konttaniemi@gmail.com>
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: sct <sctsnipe@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/fi/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (Serbian)
Currently translated at 50.8% (630 of 1240 strings)
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: Milan Smudja <smudja@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/sr/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (Korean)
Currently translated at 100.0% (1234 of 1234 strings)
Co-authored-by: Developer J <jshsakura@gmail.com>
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/ko/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (Chinese (Simplified))
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Chinese (Simplified))
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Chinese (Simplified))
Currently translated at 100.0% (1234 of 1234 strings)
Co-authored-by: Haohao Zhang <hyacz@foxmail.com>
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: lkw123 <lkw20010211@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/zh_Hans/
Translation: Overseerr/Overseerr Frontend
---------
Co-authored-by: Cleiton Carvalho <cleitonsilvacarvalho@gmail.com>
Co-authored-by: Nandor Rusz <nandor.rusz@vodafone.de>
Co-authored-by: Thomas Schöneberg <ta.schoeneberg@gmail.com>
Co-authored-by: Anders Ecklon <aecklon@gmail.com>
Co-authored-by: Kenneth Hansen <erathor@live.dk>
Co-authored-by: BeardedWatermelon <BeardedWatermelon@users.noreply.hosted.weblate.org>
Co-authored-by: SoundwaveUwU <SoundwaveUwU@users.noreply.hosted.weblate.org>
Co-authored-by: SoundwaveUwU <noreply@1000-7.space>
Co-authored-by: Димитър Мазнеков (Topper) <d.maznekov@gmail.com>
Co-authored-by: Кирилл Тюрин <1337soundwave1337@gmail.com>
Co-authored-by: Don Cezar <goldie.czr@gmail.com>
Co-authored-by: Dragos <themsk@yahoo.com>
Co-authored-by: Eduard Oancea <uberfly@420blaze.it>
Co-authored-by: sct <sctsnipe@gmail.com>
Co-authored-by: Michael Michael <michaelvelosk@gmail.com>
Co-authored-by: Сергій <sergiy.goncharuk.1@gmail.com>
Co-authored-by: dtalens <databio@gmail.com>
Co-authored-by: Karel Krýda <karel.kryda@gmail.com>
Co-authored-by: Smexhy <roman.bartik@icloud.com>
Co-authored-by: Bruno Ševčenko <bs3vcenk@gmail.com>
Co-authored-by: Milo Ivir <mail@milotype.de>
Co-authored-by: Stjepan <stjepstjepanovic@gmail.com>
Co-authored-by: lpispek <lpispek@gmail.com>
Co-authored-by: Levente Szajkó <leviko112@gmail.com>
Co-authored-by: osh <osh@osh.cc>
Co-authored-by: Eryk Michalak <gnu.ewm@protonmail.com>
Co-authored-by: Francesco <francy.ammirati@hotmail.com>
Co-authored-by: Fhd-pro <juve.11@msn.com>
Co-authored-by: Kobe <kobaubarr@gmail.com>
Co-authored-by: gallegonovato <fran-carro@hotmail.es>
Co-authored-by: Baptiste <baptiste.nee@me.com>
Co-authored-by: Dimitri <dimitridroeck@gmail.com>
Co-authored-by: Maxime Lafarie <maxime.lafarie@gmail.com>
Co-authored-by: Miguel <mig.mllr@gmail.com>
Co-authored-by: asurare <jonathan.biteau16@gmail.com>
Co-authored-by: Per Erik <urbanlolface@gmail.com>
Co-authored-by: Shjosan <shjosan@kakmix.co>
Co-authored-by: bittin1ddc447d824349b2 <bittin@reimu.nl>
Co-authored-by: Eero Konttaniemi <eero.konttaniemi@gmail.com>
Co-authored-by: Milan Smudja <smudja@gmail.com>
Co-authored-by: Developer J <jshsakura@gmail.com>
Co-authored-by: Haohao Zhang <hyacz@foxmail.com>
Co-authored-by: lkw123 <lkw20010211@gmail.com>
* feat(lang): add lang config for Bulgarian, Finnish, Ukrainian, Indonesian, Slovak, Turkish and Maori (#3834)
* fix: correct deeplinks on iPad (#3883)
* feat(studios): add a24 to studios list (#3902)
* docs: add demrich as a contributor for code (#3906) [skip ci]
* docs: update README.md
* docs: update .all-contributorsrc
---------
Co-authored-by: allcontributors[bot] <46447321+allcontributors[bot]@users.noreply.github.com>
* feat(watchlist): Cache watchlist requests with matching E-Tags (#3901)
* perf(watchlist): add E-Tag caching to Plex watchlist requests
* refactor(watchlist): increase frequency of watchlist requests
* fix: sync watchlist every 3 min instead of 3 sec
* docs: add maxnatamo as a contributor for code (#3907) [skip ci]
* docs: update README.md
* docs: update .all-contributorsrc
---------
Co-authored-by: allcontributors[bot] <46447321+allcontributors[bot]@users.noreply.github.com>
* feat(plex): refresh token schedule (#3875)
* feat: refresh token schedule
fix#3861
* fix(i18n): add i18n message
* refactor(plextv): use randomUUID crypto instead custom function
* docs: add DamsDev1 as a contributor for code (#3924) [skip ci]
* docs: update README.md
* docs: update .all-contributorsrc
---------
Co-authored-by: allcontributors[bot] <46447321+allcontributors[bot]@users.noreply.github.com>
* fix: correct icon showing on certain phones when not pulled (#3939)
* feat: add support for requesting "Specials" for TV Shows (#3724)
* feat: add support for requesting "Specials" for TV Shows
This commit is responsible for adding support in Overseerr for requesting "Special" episodes for TV
Shows. This request has become especially pertinent when you consider shows like "Doctor Who". These
shows have Specials that are critical to understanding the plot of a TV show.
fix#779
* chore(yarn.lock): undo inappropriate changes to yarn.lock
I was informed by @sct in a comment on the #3724 PR that it was not appropriate to commit the
changes that ended up being made to the yarn.lock file. This commit is responsible, then, for
undoing the changes to the yarn.lock file that ended up being submitted.
* refactor: change loose equality to strict equality
I received a comment from OwsleyJr pointing out that we are using loose equality when we could
alternatively just be using strict equality to increase the robustness of our code. This commit
does exactly that by squashing out previous usages of loose equality in my commits and replacing
them with strict equality
* refactor: move 'Specials' string to a global message
Owsley pointed out that we are redefining the 'Specials' string multiple times throughout this PR.
Instead, we can just move it as a global message. This commit does exactly that. It squashes out and
previous declarations of the 'Specials' string inside the src files, and moves it directly to the
global messages file.
* docs: add AhmedNSidd as a contributor for code (#3964) [skip ci]
* docs: update README.md
* docs: update .all-contributorsrc
---------
Co-authored-by: allcontributors[bot] <46447321+allcontributors[bot]@users.noreply.github.com>
* feat(lang): Translations update from Hosted Weblate (#3835)
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (Bulgarian)
Currently translated at 100.0% (1240 of 1240 strings)
Update translation files
Updated by "Cleanup translation files" hook in Weblate.
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: Димитър Мазнеков (Topper) <d.maznekov@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/bg/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 100.0% (1240 of 1240 strings)
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: Michael Michael <michaelvelosk@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/uk/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
feat(lang): translated using Weblate (Catalan)
Currently translated at 100.0% (1241 of 1241 strings)
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: dtalens <databio@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/ca/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
feat(lang): translated using Weblate (Hungarian)
Currently translated at 99.2% (1231 of 1240 strings)
Co-authored-by: Dargo <fuszi88@gmail.com>
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/hu/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
feat(lang): translated using Weblate (Polish)
Currently translated at 98.8% (1227 of 1241 strings)
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: senza <senza@users.noreply.hosted.weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/pl/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
feat(lang): translated using Weblate (Dutch)
Currently translated at 100.0% (1241 of 1241 strings)
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: Robin Van de Vyvere <irazoxgames@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/nl/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
feat(lang): translated using Weblate (Spanish)
Currently translated at 100.0% (1241 of 1241 strings)
feat(lang): translated using Weblate (Spanish)
Currently translated at 100.0% (1241 of 1241 strings)
Co-authored-by: Frostar <dasangra@hotmail.com>
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: gallegonovato <fran-carro@hotmail.es>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/es/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (French)
Currently translated at 100.0% (1240 of 1240 strings)
Update translation files
Updated by "Cleanup translation files" hook in Weblate.
feat(lang): translated using Weblate (French)
Currently translated at 100.0% (1241 of 1241 strings)
feat(lang): translated using Weblate (French)
Currently translated at 100.0% (1240 of 1240 strings)
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: Nackophilz <zrv4flra@anonaddy.me>
Co-authored-by: TayZ3r <artimmo@hotmail.fr>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/fr/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
feat(lang): translated using Weblate (Swedish)
Currently translated at 100.0% (1241 of 1241 strings)
feat(lang): translated using Weblate (Swedish)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Swedish)
Currently translated at 100.0% (1240 of 1240 strings)
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: Per Erik <urbanlolface@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/sv/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (Finnish)
Currently translated at 2.9% (36 of 1240 strings)
Co-authored-by: Oskari Lavinto <olavinto@protonmail.com>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/fi/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
feat(lang): translated using Weblate (Albanian)
Currently translated at 95.8% (1189 of 1240 strings)
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: W L <wl@mailhole.de>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/sq/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
feat(lang): translated using Weblate (Korean)
Currently translated at 100.0% (1241 of 1241 strings)
feat(lang): translated using Weblate (Korean)
Currently translated at 100.0% (1240 of 1240 strings)
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: Hyun Lee <hyun@yahoo.com>
Co-authored-by: cutiekeek <cutiekeek@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/ko/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
feat(lang): translated using Weblate (Portuguese (Portugal))
Currently translated at 98.4% (1221 of 1240 strings)
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: Rafael Souto <git@rafaelsouto.com>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/pt_PT/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (Chinese (Traditional Han script))
Currently translated at 99.9% (1239 of 1240 strings)
Update translation files
Updated by "Cleanup translation files" hook in Weblate.
feat(lang): translated using Weblate (Chinese (Traditional Han script))
Currently translated at 98.2% (1219 of 1241 strings)
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: Marc Lerno <mlerno1192@student.carlalbert.edu>
Co-authored-by: dtalens <databio@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/zh_Hant/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
feat(lang): translated using Weblate (Norwegian Bokmål)
Currently translated at 89.9% (1115 of 1240 strings)
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: exentler <gurandsrud@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/nb_NO/
Translation: Overseerr/Overseerr Frontend
---------
Co-authored-by: Димитър Мазнеков (Topper) <d.maznekov@gmail.com>
Co-authored-by: Michael Michael <michaelvelosk@gmail.com>
Co-authored-by: dtalens <databio@gmail.com>
Co-authored-by: Dargo <fuszi88@gmail.com>
Co-authored-by: senza <senza@users.noreply.hosted.weblate.org>
Co-authored-by: Robin Van de Vyvere <irazoxgames@gmail.com>
Co-authored-by: Frostar <dasangra@hotmail.com>
Co-authored-by: gallegonovato <fran-carro@hotmail.es>
Co-authored-by: Nackophilz <zrv4flra@anonaddy.me>
Co-authored-by: TayZ3r <artimmo@hotmail.fr>
Co-authored-by: Per Erik <urbanlolface@gmail.com>
Co-authored-by: Oskari Lavinto <olavinto@protonmail.com>
Co-authored-by: W L <wl@mailhole.de>
Co-authored-by: Hyun Lee <hyun@yahoo.com>
Co-authored-by: cutiekeek <cutiekeek@gmail.com>
Co-authored-by: Rafael Souto <git@rafaelsouto.com>
Co-authored-by: Marc Lerno <mlerno1192@student.carlalbert.edu>
Co-authored-by: exentler <gurandsrud@gmail.com>
* feat(ui): prevent password manager interference & improve service links (#3989)
* docs: add s0up4200 as a contributor for code (#4047) [skip ci]
* docs: update README.md
* docs: update .all-contributorsrc
---------
Co-authored-by: allcontributors[bot] <46447321+allcontributors[bot]@users.noreply.github.com>
* fix(ui): update Plex Logo (#3955)
* docs: add JackW6809 as a contributor for code (#4048) [skip ci]
* docs: update README.md
* docs: update .all-contributorsrc
---------
Co-authored-by: allcontributors[bot] <46447321+allcontributors[bot]@users.noreply.github.com>
* feat: requests/issues menu count (#3470)
* feat: request and issue count added to sidebar/mobile menu
* fix: added permission check for count visibility
* refactor: modified badge design for count
* fix: properly update issue and request counts in certain scenarios (#4051)
* fix: center count badge on sidebar and mobile menu (#4052)
* fix: request english trailers as a fallback when using other languages (#4009)
Co-authored-by: Stancu Florin <florin@stancu.me>
* docs: add StancuFlorin as a contributor for code (#4053) [skip ci]
* docs: update README.md
* docs: update .all-contributorsrc
---------
Co-authored-by: allcontributors[bot] <46447321+allcontributors[bot]@users.noreply.github.com>
* feat: added the PWA badge indicator for requests pending (#3411)
refactor: removed unnecessary code when sending web push notification
fix: moved all notify user logic into webpush
refactor: n
refactor: remove all unnecessary prettier changes
fix: n
fix: n
fix: n
fix: n
fix: increment sw version
fix: n
* fix: improve count badge styling (#4056)
* fix: improved web push management (#3421)
refactor: organized placement of new button + added comments
fix: added api routes for push registration
fix: modified get request to confirm key identity
fix: added back notification types to always show
feat: added a manageable device list
refactor: modified device list to make it mobile friendly
fix: correct typo for enabling notifications
* Revert "fix: improved web push management (#3421)" (#4058)
* fix: manage webpush notifications (#4059)
* feat(lang): Translations update from Hosted Weblate (#4025)
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
feat(lang): translated using Weblate (Portuguese (Brazil))
Currently translated at 100.0% (1240 of 1240 strings)
Co-authored-by: Felipe Garcia <garcia.o.felipe@gmail.com>
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/pt_BR/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
feat(lang): translated using Weblate (German)
Currently translated at 100.0% (1240 of 1240 strings)
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: Rico <rico.jambor@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/de/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (Romanian)
Currently translated at 40.8% (507 of 1240 strings)
Co-authored-by: George L <lazugeorgem@gmail.com>
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/ro/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 100.0% (1240 of 1240 strings)
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: Yaroslav Buzko <yaroslav@buzko.com>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/uk/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
feat(lang): translated using Weblate (Hungarian)
Currently translated at 99.9% (1239 of 1240 strings)
feat(lang): translated using Weblate (Hungarian)
Currently translated at 99.7% (1237 of 1240 strings)
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: ugyes <ferenc.bodi@live.com>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/hu/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
feat(lang): translated using Weblate (Italian)
Currently translated at 95.3% (1182 of 1240 strings)
feat(lang): translated using Weblate (Italian)
Currently translated at 95.3% (1182 of 1240 strings)
Co-authored-by: Alberto Giardino <alberto.giardino@al-ce.it>
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/it/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translation: Overseerr/Overseerr Frontend
* feat(lang): added translation using Weblate (Slovenian)
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: sct <sctsnipe@gmail.com>
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translation: Overseerr/Overseerr Frontend
---------
Co-authored-by: Felipe Garcia <garcia.o.felipe@gmail.com>
Co-authored-by: Rico <rico.jambor@gmail.com>
Co-authored-by: George L <lazugeorgem@gmail.com>
Co-authored-by: Yaroslav Buzko <yaroslav@buzko.com>
Co-authored-by: ugyes <ferenc.bodi@live.com>
Co-authored-by: Alberto Giardino <alberto.giardino@al-ce.it>
Co-authored-by: sct <sctsnipe@gmail.com>
* fix: change localhost to process.env.HOST for client requests (#3839)
* Change localhost to process.env.HOST for client requests
* refactor: reformat
* docs: add lmiklosko as a contributor for code (#4063) [skip ci]
* docs: update README.md
* docs: update .all-contributorsrc
---------
Co-authored-by: allcontributors[bot] <46447321+allcontributors[bot]@users.noreply.github.com>
* fix: set the correct TTL for the cookie store (#3946)
The time-to-live (TTL) of cookies stored in the database was incorrect because the connect-typeorm
library takes a TTL in seconds and not milliseconds, making cookies valid for ~82 years instead of
30 days.
Co-authored-by: Ryan Cohen <ryan@sct.dev>
* docs: add gauthier-th as a contributor for code (#4064) [skip ci]
* docs: update README.md
* docs: update .all-contributorsrc
---------
Co-authored-by: allcontributors[bot] <46447321+allcontributors[bot]@users.noreply.github.com>
* fix: update migration script (#4065)
* fix: update migration script
fix: remove insert for new entities
* fix: correct migration name
* fix: correct name inside migration
* fix(servarr): merge series tags instead of overwriting them (#4019)
* Merge series tags instead of overwriting when adding a series that already exists
Currently, a request coming in for a series that already exists in sonarr nukes the tags in sonarr for the series in favor of the tags coming from overseerr. This change merges the two lists of tags and deduplicates them before sending them to sonarr.
* fix(servarr api): merge request media tags with servarr instead of overwriting
---------
Co-authored-by: Danshil Kokil Mungur <me@danshilm.com>
* build(snap): update snap build actions
* build: temporarily disable snap builds (#4074)
* build: fix deploy docs action (#4076) [skip ci]
* fix: display request button when the show has requestable specials and is available (#4081)
* chore(deps): pin node.js (#4075)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
* fix(deps): pin dependencies (#4084)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
* feat(lang): Translations update from Hosted Weblate (#4060)
* feat(lang): translated using Weblate (Russian)
Currently translated at 100.0% (1259 of 1259 strings)
feat(lang): translated using Weblate (Russian)
Currently translated at 100.0% (1258 of 1258 strings)
Update translation files
Updated by "Cleanup translation files" hook in Weblate.
feat(lang): translated using Weblate (Russian)
Currently translated at 100.0% (1240 of 1240 strings)
Update translation files
Updated by "Cleanup translation files" hook in Weblate.
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: st7105 <st7105@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/ru/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (Romanian)
Currently translated at 50.6% (638 of 1259 strings)
feat(lang): translated using Weblate (Romanian)
Currently translated at 40.4% (509 of 1259 strings)
feat(lang): translated using Weblate (Romanian)
Currently translated at 40.3% (508 of 1259 strings)
Co-authored-by: George L <lazugeorgem@gmail.com>
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/ro/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (Italian)
Currently translated at 94.2% (1187 of 1259 strings)
Co-authored-by: danieledu007 <danielguillen274@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/it/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (French)
Currently translated at 100.0% (1259 of 1259 strings)
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: lolo <laurent.brelle@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/fr/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (Finnish)
Currently translated at 9.2% (117 of 1259 strings)
feat(lang): translated using Weblate (Finnish)
Currently translated at 8.6% (109 of 1259 strings)
Co-authored-by: Aleksi T <aleksi.tuhkanen@gmail.com>
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: rijohi <risto.hirvilammi@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/fi/
Translation: Overseerr/Overseerr Frontend
---------
Co-authored-by: st7105 <st7105@gmail.com>
Co-authored-by: George L <lazugeorgem@gmail.com>
Co-authored-by: danieledu007 <danielguillen274@gmail.com>
Co-authored-by: lolo <laurent.brelle@gmail.com>
Co-authored-by: Aleksi T <aleksi.tuhkanen@gmail.com>
Co-authored-by: rijohi <risto.hirvilammi@gmail.com>
* fix: correct specials affecting availability status (#4092)
* fix: remove specials affecting availability status
* refactor: add comments for scanner
* fix: prevent request badge showing when no related media (#4100)
* fix: availability sync requests (#3460)
* fix: modified media status handling when media has been deleted
fix: requests will now be updated to completed on scan
fix: modified components to display deleted as a status
fix: corrected media status switching away from deleted
fix: modified components to display deleted as a status
fix: corrected media status switching away from deleted
fix: base scanner will set requests to completed correctly
fix: mark available button correctly sets requests as completed
fix: status will now stay deleted after declined request
refactor: request completion handling moved to entity
fix: prevented notifications from sending to old deleted requests
refactor: cleaned up code and added more detail to logs
refactor: updated to reflect latest availability sync changes
* fix: fetch requests only if necessary in db and remove unneeded code
* fix: update request button logic to accomodate specials
fix: remove completed filtering in tv details
* fix: correctly set seasons status when using the manual button
* refactor: improve reliability of season request completion
refactor: remove seasonrequest code
* fix: send notification for 4k movies
fix: same for shows
* feat: add completed filter to requests list
refactor: correct label
* fix: correct series setting to partially available (#4109)
* fix: correct edge case with deletion not updating requests (#4110)
* fix: correct notification sending for wrong status (#4113)
* fix: add missing translations
* fix: update lockfile
* fix(notifications): sending test-notifications for email now respects the allowSelfSigned value (#4112)
* docs: add vfaergestad as a contributor for code (#4114)
* docs: update README.md
* docs: update .all-contributorsrc
---------
Co-authored-by: allcontributors[bot] <46447321+allcontributors[bot]@users.noreply.github.com>
* fix: handle currently available non-completed media (#4115)
* fix: check media status has changed before modifying request
fix: refactor: code cleanup
* fix: manually load database entity seasons
* fix: handle partial seasons more reliably (#4116)
refactor: remove matchingOldSeason variable
* fix: pwa app badge (#4117)
* fix: clear app badge at zero without notification
* fix: correct users check sometimes failing when searching push subs
* fix: filter specials from modal all seasons and watchlist (#4108)
* fix: filter specials from modal all seasons and watchlist
* fix: skip specials when marking available
* fix: edge case where specials were marked as completed
* fix: add proper migrations
* fix: remove undesirable i18n changes
---------
Co-authored-by: Isaac M <masesisaac@gmail.com>
Co-authored-by: Joseph Risk <j0srisk@gmail.com>
Co-authored-by: allcontributors[bot] <46447321+allcontributors[bot]@users.noreply.github.com>
Co-authored-by: Loetwiek <79059734+Loetwiek@users.noreply.github.com>
Co-authored-by: Loetwiek <lodommerholtcm@gmail.com>
Co-authored-by: Fallenbagel <98979876+Fallenbagel@users.noreply.github.com>
Co-authored-by: Fuochi <ffuochi@hotmail.com>
Co-authored-by: Weblate (bot) <hosted@weblate.org>
Co-authored-by: Cleiton Carvalho <cleitonsilvacarvalho@gmail.com>
Co-authored-by: Nandor Rusz <nandor.rusz@vodafone.de>
Co-authored-by: Thomas Schöneberg <ta.schoeneberg@gmail.com>
Co-authored-by: Anders Ecklon <aecklon@gmail.com>
Co-authored-by: Kenneth Hansen <erathor@live.dk>
Co-authored-by: BeardedWatermelon <BeardedWatermelon@users.noreply.hosted.weblate.org>
Co-authored-by: SoundwaveUwU <SoundwaveUwU@users.noreply.hosted.weblate.org>
Co-authored-by: SoundwaveUwU <noreply@1000-7.space>
Co-authored-by: Димитър Мазнеков (Topper) <d.maznekov@gmail.com>
Co-authored-by: Кирилл Тюрин <1337soundwave1337@gmail.com>
Co-authored-by: Don Cezar <goldie.czr@gmail.com>
Co-authored-by: Dragos <themsk@yahoo.com>
Co-authored-by: Eduard Oancea <uberfly@420blaze.it>
Co-authored-by: sct <sctsnipe@gmail.com>
Co-authored-by: Michael Michael <michaelvelosk@gmail.com>
Co-authored-by: Сергій <sergiy.goncharuk.1@gmail.com>
Co-authored-by: dtalens <databio@gmail.com>
Co-authored-by: Karel Krýda <karel.kryda@gmail.com>
Co-authored-by: Smexhy <roman.bartik@icloud.com>
Co-authored-by: Bruno Ševčenko <bs3vcenk@gmail.com>
Co-authored-by: Milo Ivir <mail@milotype.de>
Co-authored-by: Stjepan <stjepstjepanovic@gmail.com>
Co-authored-by: lpispek <lpispek@gmail.com>
Co-authored-by: Levente Szajkó <leviko112@gmail.com>
Co-authored-by: osh <osh@osh.cc>
Co-authored-by: Eryk Michalak <gnu.ewm@protonmail.com>
Co-authored-by: Francesco <francy.ammirati@hotmail.com>
Co-authored-by: Fhd-pro <juve.11@msn.com>
Co-authored-by: Kobe <kobaubarr@gmail.com>
Co-authored-by: gallegonovato <fran-carro@hotmail.es>
Co-authored-by: Baptiste <baptiste.nee@me.com>
Co-authored-by: Dimitri <dimitridroeck@gmail.com>
Co-authored-by: Maxime Lafarie <maxime.lafarie@gmail.com>
Co-authored-by: Miguel <mig.mllr@gmail.com>
Co-authored-by: asurare <jonathan.biteau16@gmail.com>
Co-authored-by: Per Erik <urbanlolface@gmail.com>
Co-authored-by: Shjosan <shjosan@kakmix.co>
Co-authored-by: bittin1ddc447d824349b2 <bittin@reimu.nl>
Co-authored-by: Eero Konttaniemi <eero.konttaniemi@gmail.com>
Co-authored-by: Milan Smudja <smudja@gmail.com>
Co-authored-by: Developer J <jshsakura@gmail.com>
Co-authored-by: Haohao Zhang <hyacz@foxmail.com>
Co-authored-by: lkw123 <lkw20010211@gmail.com>
Co-authored-by: Jordan Jones <me@jjones.tech>
Co-authored-by: Brandon Cohen <brandon@z3hn.dev>
Co-authored-by: David Emrich <demrich@me.com>
Co-authored-by: Max T. Kristiansen <me@maxtrier.dk>
Co-authored-by: Damien Fajole <60252259+DamsDev1@users.noreply.github.com>
Co-authored-by: Ahmed Siddiqui <36286128+AhmedNSidd@users.noreply.github.com>
Co-authored-by: Dargo <fuszi88@gmail.com>
Co-authored-by: senza <senza@users.noreply.hosted.weblate.org>
Co-authored-by: Robin Van de Vyvere <irazoxgames@gmail.com>
Co-authored-by: Frostar <dasangra@hotmail.com>
Co-authored-by: Nackophilz <zrv4flra@anonaddy.me>
Co-authored-by: TayZ3r <artimmo@hotmail.fr>
Co-authored-by: Oskari Lavinto <olavinto@protonmail.com>
Co-authored-by: W L <wl@mailhole.de>
Co-authored-by: Hyun Lee <hyun@yahoo.com>
Co-authored-by: cutiekeek <cutiekeek@gmail.com>
Co-authored-by: Rafael Souto <git@rafaelsouto.com>
Co-authored-by: Marc Lerno <mlerno1192@student.carlalbert.edu>
Co-authored-by: exentler <gurandsrud@gmail.com>
Co-authored-by: soup <s0up4200@pm.me>
Co-authored-by: JackOXI <53652452+JackW6809@users.noreply.github.com>
Co-authored-by: Stancu Florin <StancuFlorin@users.noreply.github.com>
Co-authored-by: Stancu Florin <florin@stancu.me>
Co-authored-by: Brandon Cohen <cohbrandon@gmail.com>
Co-authored-by: Felipe Garcia <garcia.o.felipe@gmail.com>
Co-authored-by: Rico <rico.jambor@gmail.com>
Co-authored-by: George L <lazugeorgem@gmail.com>
Co-authored-by: Yaroslav Buzko <yaroslav@buzko.com>
Co-authored-by: ugyes <ferenc.bodi@live.com>
Co-authored-by: Alberto Giardino <alberto.giardino@al-ce.it>
Co-authored-by: Lukas Miklosko <44380311+lmiklosko@users.noreply.github.com>
Co-authored-by: Ryan Cohen <ryan@sct.dev>
Co-authored-by: Andrew Kennedy <andrew-kennedy@users.noreply.github.com>
Co-authored-by: Danshil Kokil Mungur <me@danshilm.com>
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: st7105 <st7105@gmail.com>
Co-authored-by: danieledu007 <danielguillen274@gmail.com>
Co-authored-by: lolo <laurent.brelle@gmail.com>
Co-authored-by: Aleksi T <aleksi.tuhkanen@gmail.com>
Co-authored-by: rijohi <risto.hirvilammi@gmail.com>
Co-authored-by: vfaergestad <49147564+vfaergestad@users.noreply.github.com>
* feat(blacklist): add blacktag settings to main settings page
* feat(blacklist): create blacktag logic and infrastructure
* feat(blacklist): add scheduling for blacktags job
* feat(blacklist): create blacktag ui badge for blacklist
* docs(blacklist): document blacktags in using-jellyseerr
* fix(blacklist): batch blacklist and media db removes to avoid expression tree too large error
* feat(blacklist): allow easy import and export of blacktag configuration
* fix(settings): don't copy the API key every time you press enter on the main settings
* fix(blacklist): move filter inline with page title to match all the other pages
* feat(blacklist): allow filtering between manually blacklisted and automatically blacklisted entries
* docs(blacklist): reword blacktag documentation a little
* refactor(blacklist): remove blacktag settings from public settings interfaces
There's no reason for it to be there
* refactor(blacklist): remove unused variable from processResults in blacktagsProcessor
* refactor(blacklist): change all instances of blacktag to blacklistedTag and update doc to match
* docs(blacklist): update general documentation for blacklisted tag settings
* fix(blacklist): update setting use of "blacklisted tag" to match between modals
* perf(blacklist): remove media type constraint from existing blacklist entry query
Doesn't make sense to keep it because tmdbid has a unique constraint on it
* fix(blacklist): remove whitespace line causing prettier to fail in CI
* refactor(blacklist): swap out some != and == for !s and _s
* fix(blacklist): merge back CopyButton changes, disable button when there's nothing to copy
* refactor(blacklist): use axios instead of fetch for blacklisted tag queries
* style(blacklist): use templated axios types and remove redundant try-catches
This PR fixes the "Delete from *arr" button in the request list. It checks from the API whether the
*arr server corresponding to the request still exists before displaying the remove button, and fixes
a cache removal issue that could cause problems when deleting recently added media. This PR also
reverts #1476, which introduced problems during removal.
fix#1494
This PR fixes a bug where the avaibility sync job was not removing properly 4k items when the same
Radarr server was used for both non-4k and 4k media.
* fix(avatar): fix avatar cache busting by using avatarVersion
Previously, avatar caching did not update the avatar when the remote image changed. This commit adds
logic to check if the avatar was modified remotely by comparing aremote last-modified timestamp with
a locally stored version (avatarVersion). If a change is detected, the cache is cleared, a new image
is fetched, and avatarVersionis updated. Otherwise, the cached image is retained.
* chore(db): add db migrations
* refactor: refactor imagehelpers util to where its used
* refactor: remove remnants from previous cache busting versions
If the deviceID becomes an empty string, login fails since jellyfin
requires a non-null deviceID. This commit adds a fallback to guarantee
that deviceID is always set, preventing accidental lockout.
* feat(pushover): attach image to pushover notification payload (#3701)
* fix: api language query parameter (#3720)
* docs: add j0srisk as a contributor for code (#3745) [skip ci]
* docs: update README.md
* docs: update .all-contributorsrc
---------
Co-authored-by: allcontributors[bot] <46447321+allcontributors[bot]@users.noreply.github.com>
* feat(tooltip): add tooltip to display exact time on date hover (#3773)
Co-authored-by: Loetwiek <lodommerholtcm@gmail.com>
* docs: add Loetwiek as a contributor for code (#3776) [skip ci]
* docs: update README.md
* docs: update .all-contributorsrc
---------
Co-authored-by: allcontributors[bot] <46447321+allcontributors[bot]@users.noreply.github.com>
* fix(ui): ensure title fits into the `view collection` box (#3696)
* fix(docs): correct openapi docs minor issues (#3648)
* docs: add Fuochi as a contributor for doc (#3826)
Co-authored-by: allcontributors[bot] <46447321+allcontributors[bot]@users.noreply.github.com>
* feat: translations update from Hosted Weblate (#3597)
* feat(lang): translated using Weblate (Portuguese (Brazil))
Currently translated at 100.0% (1234 of 1234 strings)
feat(lang): translated using Weblate (Portuguese (Brazil))
Currently translated at 99.8% (1232 of 1234 strings)
Co-authored-by: Cleiton Carvalho <cleitonsilvacarvalho@gmail.com>
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/pt_BR/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (German)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (German)
Currently translated at 100.0% (1234 of 1234 strings)
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: Nandor Rusz <nandor.rusz@vodafone.de>
Co-authored-by: Thomas Schöneberg <ta.schoeneberg@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/de/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (Danish)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Danish)
Currently translated at 100.0% (1236 of 1236 strings)
feat(lang): translated using Weblate (Danish)
Currently translated at 100.0% (1234 of 1234 strings)
Co-authored-by: Anders Ecklon <aecklon@gmail.com>
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: Kenneth Hansen <erathor@live.dk>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/da/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (Greek)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Greek)
Currently translated at 100.0% (1236 of 1236 strings)
Co-authored-by: BeardedWatermelon <BeardedWatermelon@users.noreply.hosted.weblate.org>
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/el/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (Russian)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Russian)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Russian)
Currently translated at 99.5% (1234 of 1240 strings)
feat(lang): translated using Weblate (Russian)
Currently translated at 100.0% (1234 of 1234 strings)
feat(lang): translated using Weblate (Russian)
Currently translated at 100.0% (1234 of 1234 strings)
feat(lang): translated using Weblate (Russian)
Currently translated at 100.0% (1234 of 1234 strings)
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: SoundwaveUwU <SoundwaveUwU@users.noreply.hosted.weblate.org>
Co-authored-by: SoundwaveUwU <noreply@1000-7.space>
Co-authored-by: Димитър Мазнеков (Topper) <d.maznekov@gmail.com>
Co-authored-by: Кирилл Тюрин <1337soundwave1337@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/ru/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (Romanian)
Currently translated at 37.1% (461 of 1240 strings)
feat(lang): translated using Weblate (Romanian)
Currently translated at 37.0% (459 of 1240 strings)
feat(lang): translated using Weblate (Romanian)
Currently translated at 34.8% (432 of 1240 strings)
Co-authored-by: Don Cezar <goldie.czr@gmail.com>
Co-authored-by: Dragos <themsk@yahoo.com>
Co-authored-by: Eduard Oancea <uberfly@420blaze.it>
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/ro/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (Bulgarian)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Bulgarian)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Bulgarian)
Currently translated at 57.4% (712 of 1240 strings)
feat(lang): translated using Weblate (Bulgarian)
Currently translated at 13.2% (164 of 1240 strings)
feat(lang): translated using Weblate (Bulgarian)
Currently translated at 4.8% (60 of 1240 strings)
feat(lang): added translation using Weblate (Bulgarian)
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: sct <sctsnipe@gmail.com>
Co-authored-by: Димитър Мазнеков (Topper) <d.maznekov@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/bg/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (Ukrainian)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 99.1% (1230 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 99.1% (1230 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 99.1% (1230 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 97.9% (1215 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 82.0% (1017 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 72.9% (905 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 72.9% (905 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 71.3% (885 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 64.9% (805 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 64.4% (799 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 63.8% (792 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 63.7% (791 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 57.5% (714 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 49.9% (619 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 35.9% (446 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 35.9% (446 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 32.1% (399 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 24.6% (306 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 18.9% (235 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 17.5% (217 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 17.3% (215 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 8.0% (100 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 3.3% (41 of 1240 strings)
feat(lang): added translation using Weblate (Ukrainian)
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: Michael Michael <michaelvelosk@gmail.com>
Co-authored-by: sct <sctsnipe@gmail.com>
Co-authored-by: Сергій <sergiy.goncharuk.1@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/uk/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (Catalan)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Catalan)
Currently translated at 100.0% (1240 of 1240 strings)
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: dtalens <databio@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/ca/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (Czech)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Czech)
Currently translated at 99.6% (1236 of 1240 strings)
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: Karel Krýda <karel.kryda@gmail.com>
Co-authored-by: Smexhy <roman.bartik@icloud.com>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/cs/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (Croatian)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Croatian)
Currently translated at 99.8% (1238 of 1240 strings)
feat(lang): translated using Weblate (Croatian)
Currently translated at 99.8% (1238 of 1240 strings)
feat(lang): translated using Weblate (Croatian)
Currently translated at 99.6% (1236 of 1240 strings)
feat(lang): translated using Weblate (Croatian)
Currently translated at 99.5% (1235 of 1240 strings)
feat(lang): translated using Weblate (Croatian)
Currently translated at 99.5% (1235 of 1240 strings)
feat(lang): translated using Weblate (Croatian)
Currently translated at 99.1% (1230 of 1240 strings)
feat(lang): translated using Weblate (Croatian)
Currently translated at 97.5% (1210 of 1240 strings)
feat(lang): translated using Weblate (Croatian)
Currently translated at 95.5% (1185 of 1240 strings)
feat(lang): translated using Weblate (Croatian)
Currently translated at 95.6% (1182 of 1236 strings)
feat(lang): translated using Weblate (Croatian)
Currently translated at 95.6% (1182 of 1236 strings)
feat(lang): translated using Weblate (Croatian)
Currently translated at 95.2% (1177 of 1236 strings)
feat(lang): translated using Weblate (Croatian)
Currently translated at 95.2% (1177 of 1236 strings)
feat(lang): translated using Weblate (Croatian)
Currently translated at 94.3% (1166 of 1236 strings)
feat(lang): translated using Weblate (Croatian)
Currently translated at 91.7% (1134 of 1236 strings)
feat(lang): translated using Weblate (Croatian)
Currently translated at 91.7% (1134 of 1236 strings)
Co-authored-by: Bruno Ševčenko <bs3vcenk@gmail.com>
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: Milo Ivir <mail@milotype.de>
Co-authored-by: Stjepan <stjepstjepanovic@gmail.com>
Co-authored-by: lpispek <lpispek@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/hr/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (Hungarian)
Currently translated at 91.3% (1133 of 1240 strings)
feat(lang): translated using Weblate (Hungarian)
Currently translated at 89.3% (1108 of 1240 strings)
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: Levente Szajkó <leviko112@gmail.com>
Co-authored-by: Nandor Rusz <nandor.rusz@vodafone.de>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/hu/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (Hebrew)
Currently translated at 13.9% (172 of 1236 strings)
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: osh <osh@osh.cc>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/he/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (Polish)
Currently translated at 99.1% (1225 of 1236 strings)
Co-authored-by: Eryk Michalak <gnu.ewm@protonmail.com>
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/pl/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (Italian)
Currently translated at 92.8% (1148 of 1236 strings)
Co-authored-by: Francesco <francy.ammirati@hotmail.com>
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/it/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (Arabic)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Arabic)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Arabic)
Currently translated at 100.0% (1234 of 1234 strings)
Co-authored-by: Fhd-pro <juve.11@msn.com>
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/ar/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (Dutch)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Dutch)
Currently translated at 100.0% (1234 of 1234 strings)
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: Kobe <kobaubarr@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/nl/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (Spanish)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Spanish)
Currently translated at 100.0% (1236 of 1236 strings)
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: gallegonovato <fran-carro@hotmail.es>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/es/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (French)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (French)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (French)
Currently translated at 100.0% (1236 of 1236 strings)
feat(lang): translated using Weblate (French)
Currently translated at 99.9% (1235 of 1236 strings)
feat(lang): translated using Weblate (French)
Currently translated at 99.9% (1235 of 1236 strings)
Co-authored-by: Baptiste <baptiste.nee@me.com>
Co-authored-by: Dimitri <dimitridroeck@gmail.com>
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: Maxime Lafarie <maxime.lafarie@gmail.com>
Co-authored-by: Miguel <mig.mllr@gmail.com>
Co-authored-by: asurare <jonathan.biteau16@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/fr/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (Swedish)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Swedish)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Swedish)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Swedish)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Swedish)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Swedish)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Swedish)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Swedish)
Currently translated at 100.0% (1236 of 1236 strings)
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: Per Erik <urbanlolface@gmail.com>
Co-authored-by: Shjosan <shjosan@kakmix.co>
Co-authored-by: bittin1ddc447d824349b2 <bittin@reimu.nl>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/sv/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (Finnish)
Currently translated at 2.6% (33 of 1240 strings)
feat(lang): added translation using Weblate (Finnish)
Co-authored-by: Eero Konttaniemi <eero.konttaniemi@gmail.com>
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: sct <sctsnipe@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/fi/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (Serbian)
Currently translated at 50.8% (630 of 1240 strings)
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: Milan Smudja <smudja@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/sr/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (Korean)
Currently translated at 100.0% (1234 of 1234 strings)
Co-authored-by: Developer J <jshsakura@gmail.com>
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/ko/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (Chinese (Simplified))
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Chinese (Simplified))
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Chinese (Simplified))
Currently translated at 100.0% (1234 of 1234 strings)
Co-authored-by: Haohao Zhang <hyacz@foxmail.com>
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: lkw123 <lkw20010211@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/zh_Hans/
Translation: Overseerr/Overseerr Frontend
---------
Co-authored-by: Cleiton Carvalho <cleitonsilvacarvalho@gmail.com>
Co-authored-by: Nandor Rusz <nandor.rusz@vodafone.de>
Co-authored-by: Thomas Schöneberg <ta.schoeneberg@gmail.com>
Co-authored-by: Anders Ecklon <aecklon@gmail.com>
Co-authored-by: Kenneth Hansen <erathor@live.dk>
Co-authored-by: BeardedWatermelon <BeardedWatermelon@users.noreply.hosted.weblate.org>
Co-authored-by: SoundwaveUwU <SoundwaveUwU@users.noreply.hosted.weblate.org>
Co-authored-by: SoundwaveUwU <noreply@1000-7.space>
Co-authored-by: Димитър Мазнеков (Topper) <d.maznekov@gmail.com>
Co-authored-by: Кирилл Тюрин <1337soundwave1337@gmail.com>
Co-authored-by: Don Cezar <goldie.czr@gmail.com>
Co-authored-by: Dragos <themsk@yahoo.com>
Co-authored-by: Eduard Oancea <uberfly@420blaze.it>
Co-authored-by: sct <sctsnipe@gmail.com>
Co-authored-by: Michael Michael <michaelvelosk@gmail.com>
Co-authored-by: Сергій <sergiy.goncharuk.1@gmail.com>
Co-authored-by: dtalens <databio@gmail.com>
Co-authored-by: Karel Krýda <karel.kryda@gmail.com>
Co-authored-by: Smexhy <roman.bartik@icloud.com>
Co-authored-by: Bruno Ševčenko <bs3vcenk@gmail.com>
Co-authored-by: Milo Ivir <mail@milotype.de>
Co-authored-by: Stjepan <stjepstjepanovic@gmail.com>
Co-authored-by: lpispek <lpispek@gmail.com>
Co-authored-by: Levente Szajkó <leviko112@gmail.com>
Co-authored-by: osh <osh@osh.cc>
Co-authored-by: Eryk Michalak <gnu.ewm@protonmail.com>
Co-authored-by: Francesco <francy.ammirati@hotmail.com>
Co-authored-by: Fhd-pro <juve.11@msn.com>
Co-authored-by: Kobe <kobaubarr@gmail.com>
Co-authored-by: gallegonovato <fran-carro@hotmail.es>
Co-authored-by: Baptiste <baptiste.nee@me.com>
Co-authored-by: Dimitri <dimitridroeck@gmail.com>
Co-authored-by: Maxime Lafarie <maxime.lafarie@gmail.com>
Co-authored-by: Miguel <mig.mllr@gmail.com>
Co-authored-by: asurare <jonathan.biteau16@gmail.com>
Co-authored-by: Per Erik <urbanlolface@gmail.com>
Co-authored-by: Shjosan <shjosan@kakmix.co>
Co-authored-by: bittin1ddc447d824349b2 <bittin@reimu.nl>
Co-authored-by: Eero Konttaniemi <eero.konttaniemi@gmail.com>
Co-authored-by: Milan Smudja <smudja@gmail.com>
Co-authored-by: Developer J <jshsakura@gmail.com>
Co-authored-by: Haohao Zhang <hyacz@foxmail.com>
Co-authored-by: lkw123 <lkw20010211@gmail.com>
* feat(lang): add lang config for Bulgarian, Finnish, Ukrainian, Indonesian, Slovak, Turkish and Maori (#3834)
* fix: correct deeplinks on iPad (#3883)
* feat(studios): add a24 to studios list (#3902)
* docs: add demrich as a contributor for code (#3906) [skip ci]
* docs: update README.md
* docs: update .all-contributorsrc
---------
Co-authored-by: allcontributors[bot] <46447321+allcontributors[bot]@users.noreply.github.com>
* feat(watchlist): Cache watchlist requests with matching E-Tags (#3901)
* perf(watchlist): add E-Tag caching to Plex watchlist requests
* refactor(watchlist): increase frequency of watchlist requests
* fix: sync watchlist every 3 min instead of 3 sec
* docs: add maxnatamo as a contributor for code (#3907) [skip ci]
* docs: update README.md
* docs: update .all-contributorsrc
---------
Co-authored-by: allcontributors[bot] <46447321+allcontributors[bot]@users.noreply.github.com>
* feat(plex): refresh token schedule (#3875)
* feat: refresh token schedule
fix#3861
* fix(i18n): add i18n message
* refactor(plextv): use randomUUID crypto instead custom function
* docs: add DamsDev1 as a contributor for code (#3924) [skip ci]
* docs: update README.md
* docs: update .all-contributorsrc
---------
Co-authored-by: allcontributors[bot] <46447321+allcontributors[bot]@users.noreply.github.com>
* fix: correct icon showing on certain phones when not pulled (#3939)
* feat: add support for requesting "Specials" for TV Shows (#3724)
* feat: add support for requesting "Specials" for TV Shows
This commit is responsible for adding support in Overseerr for requesting "Special" episodes for TV
Shows. This request has become especially pertinent when you consider shows like "Doctor Who". These
shows have Specials that are critical to understanding the plot of a TV show.
fix#779
* chore(yarn.lock): undo inappropriate changes to yarn.lock
I was informed by @sct in a comment on the #3724 PR that it was not appropriate to commit the
changes that ended up being made to the yarn.lock file. This commit is responsible, then, for
undoing the changes to the yarn.lock file that ended up being submitted.
* refactor: change loose equality to strict equality
I received a comment from OwsleyJr pointing out that we are using loose equality when we could
alternatively just be using strict equality to increase the robustness of our code. This commit
does exactly that by squashing out previous usages of loose equality in my commits and replacing
them with strict equality
* refactor: move 'Specials' string to a global message
Owsley pointed out that we are redefining the 'Specials' string multiple times throughout this PR.
Instead, we can just move it as a global message. This commit does exactly that. It squashes out and
previous declarations of the 'Specials' string inside the src files, and moves it directly to the
global messages file.
* docs: add AhmedNSidd as a contributor for code (#3964) [skip ci]
* docs: update README.md
* docs: update .all-contributorsrc
---------
Co-authored-by: allcontributors[bot] <46447321+allcontributors[bot]@users.noreply.github.com>
* feat(lang): Translations update from Hosted Weblate (#3835)
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (Bulgarian)
Currently translated at 100.0% (1240 of 1240 strings)
Update translation files
Updated by "Cleanup translation files" hook in Weblate.
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: Димитър Мазнеков (Topper) <d.maznekov@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/bg/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 100.0% (1240 of 1240 strings)
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: Michael Michael <michaelvelosk@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/uk/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
feat(lang): translated using Weblate (Catalan)
Currently translated at 100.0% (1241 of 1241 strings)
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: dtalens <databio@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/ca/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
feat(lang): translated using Weblate (Hungarian)
Currently translated at 99.2% (1231 of 1240 strings)
Co-authored-by: Dargo <fuszi88@gmail.com>
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/hu/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
feat(lang): translated using Weblate (Polish)
Currently translated at 98.8% (1227 of 1241 strings)
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: senza <senza@users.noreply.hosted.weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/pl/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
feat(lang): translated using Weblate (Dutch)
Currently translated at 100.0% (1241 of 1241 strings)
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: Robin Van de Vyvere <irazoxgames@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/nl/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
feat(lang): translated using Weblate (Spanish)
Currently translated at 100.0% (1241 of 1241 strings)
feat(lang): translated using Weblate (Spanish)
Currently translated at 100.0% (1241 of 1241 strings)
Co-authored-by: Frostar <dasangra@hotmail.com>
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: gallegonovato <fran-carro@hotmail.es>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/es/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (French)
Currently translated at 100.0% (1240 of 1240 strings)
Update translation files
Updated by "Cleanup translation files" hook in Weblate.
feat(lang): translated using Weblate (French)
Currently translated at 100.0% (1241 of 1241 strings)
feat(lang): translated using Weblate (French)
Currently translated at 100.0% (1240 of 1240 strings)
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: Nackophilz <zrv4flra@anonaddy.me>
Co-authored-by: TayZ3r <artimmo@hotmail.fr>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/fr/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
feat(lang): translated using Weblate (Swedish)
Currently translated at 100.0% (1241 of 1241 strings)
feat(lang): translated using Weblate (Swedish)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Swedish)
Currently translated at 100.0% (1240 of 1240 strings)
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: Per Erik <urbanlolface@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/sv/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (Finnish)
Currently translated at 2.9% (36 of 1240 strings)
Co-authored-by: Oskari Lavinto <olavinto@protonmail.com>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/fi/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
feat(lang): translated using Weblate (Albanian)
Currently translated at 95.8% (1189 of 1240 strings)
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: W L <wl@mailhole.de>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/sq/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
feat(lang): translated using Weblate (Korean)
Currently translated at 100.0% (1241 of 1241 strings)
feat(lang): translated using Weblate (Korean)
Currently translated at 100.0% (1240 of 1240 strings)
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: Hyun Lee <hyun@yahoo.com>
Co-authored-by: cutiekeek <cutiekeek@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/ko/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
feat(lang): translated using Weblate (Portuguese (Portugal))
Currently translated at 98.4% (1221 of 1240 strings)
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: Rafael Souto <git@rafaelsouto.com>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/pt_PT/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (Chinese (Traditional Han script))
Currently translated at 99.9% (1239 of 1240 strings)
Update translation files
Updated by "Cleanup translation files" hook in Weblate.
feat(lang): translated using Weblate (Chinese (Traditional Han script))
Currently translated at 98.2% (1219 of 1241 strings)
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: Marc Lerno <mlerno1192@student.carlalbert.edu>
Co-authored-by: dtalens <databio@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/zh_Hant/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
feat(lang): translated using Weblate (Norwegian Bokmål)
Currently translated at 89.9% (1115 of 1240 strings)
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: exentler <gurandsrud@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/nb_NO/
Translation: Overseerr/Overseerr Frontend
---------
Co-authored-by: Димитър Мазнеков (Topper) <d.maznekov@gmail.com>
Co-authored-by: Michael Michael <michaelvelosk@gmail.com>
Co-authored-by: dtalens <databio@gmail.com>
Co-authored-by: Dargo <fuszi88@gmail.com>
Co-authored-by: senza <senza@users.noreply.hosted.weblate.org>
Co-authored-by: Robin Van de Vyvere <irazoxgames@gmail.com>
Co-authored-by: Frostar <dasangra@hotmail.com>
Co-authored-by: gallegonovato <fran-carro@hotmail.es>
Co-authored-by: Nackophilz <zrv4flra@anonaddy.me>
Co-authored-by: TayZ3r <artimmo@hotmail.fr>
Co-authored-by: Per Erik <urbanlolface@gmail.com>
Co-authored-by: Oskari Lavinto <olavinto@protonmail.com>
Co-authored-by: W L <wl@mailhole.de>
Co-authored-by: Hyun Lee <hyun@yahoo.com>
Co-authored-by: cutiekeek <cutiekeek@gmail.com>
Co-authored-by: Rafael Souto <git@rafaelsouto.com>
Co-authored-by: Marc Lerno <mlerno1192@student.carlalbert.edu>
Co-authored-by: exentler <gurandsrud@gmail.com>
* feat(ui): prevent password manager interference & improve service links (#3989)
* docs: add s0up4200 as a contributor for code (#4047) [skip ci]
* docs: update README.md
* docs: update .all-contributorsrc
---------
Co-authored-by: allcontributors[bot] <46447321+allcontributors[bot]@users.noreply.github.com>
* fix(ui): update Plex Logo (#3955)
* docs: add JackW6809 as a contributor for code (#4048) [skip ci]
* docs: update README.md
* docs: update .all-contributorsrc
---------
Co-authored-by: allcontributors[bot] <46447321+allcontributors[bot]@users.noreply.github.com>
* feat: requests/issues menu count (#3470)
* feat: request and issue count added to sidebar/mobile menu
* fix: added permission check for count visibility
* refactor: modified badge design for count
* fix: properly update issue and request counts in certain scenarios (#4051)
* fix: center count badge on sidebar and mobile menu (#4052)
* fix: request english trailers as a fallback when using other languages (#4009)
Co-authored-by: Stancu Florin <florin@stancu.me>
* docs: add StancuFlorin as a contributor for code (#4053) [skip ci]
* docs: update README.md
* docs: update .all-contributorsrc
---------
Co-authored-by: allcontributors[bot] <46447321+allcontributors[bot]@users.noreply.github.com>
* feat: added the PWA badge indicator for requests pending (#3411)
refactor: removed unnecessary code when sending web push notification
fix: moved all notify user logic into webpush
refactor: n
refactor: remove all unnecessary prettier changes
fix: n
fix: n
fix: n
fix: n
fix: increment sw version
fix: n
* fix: improve count badge styling (#4056)
* fix: improved web push management (#3421)
refactor: organized placement of new button + added comments
fix: added api routes for push registration
fix: modified get request to confirm key identity
fix: added back notification types to always show
feat: added a manageable device list
refactor: modified device list to make it mobile friendly
fix: correct typo for enabling notifications
* Revert "fix: improved web push management (#3421)" (#4058)
* fix: manage webpush notifications (#4059)
* feat(lang): Translations update from Hosted Weblate (#4025)
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
feat(lang): translated using Weblate (Portuguese (Brazil))
Currently translated at 100.0% (1240 of 1240 strings)
Co-authored-by: Felipe Garcia <garcia.o.felipe@gmail.com>
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/pt_BR/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
feat(lang): translated using Weblate (German)
Currently translated at 100.0% (1240 of 1240 strings)
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: Rico <rico.jambor@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/de/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (Romanian)
Currently translated at 40.8% (507 of 1240 strings)
Co-authored-by: George L <lazugeorgem@gmail.com>
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/ro/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 100.0% (1240 of 1240 strings)
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: Yaroslav Buzko <yaroslav@buzko.com>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/uk/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
feat(lang): translated using Weblate (Hungarian)
Currently translated at 99.9% (1239 of 1240 strings)
feat(lang): translated using Weblate (Hungarian)
Currently translated at 99.7% (1237 of 1240 strings)
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: ugyes <ferenc.bodi@live.com>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/hu/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
feat(lang): translated using Weblate (Italian)
Currently translated at 95.3% (1182 of 1240 strings)
feat(lang): translated using Weblate (Italian)
Currently translated at 95.3% (1182 of 1240 strings)
Co-authored-by: Alberto Giardino <alberto.giardino@al-ce.it>
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/it/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translation: Overseerr/Overseerr Frontend
* feat(lang): added translation using Weblate (Slovenian)
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: sct <sctsnipe@gmail.com>
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translation: Overseerr/Overseerr Frontend
---------
Co-authored-by: Felipe Garcia <garcia.o.felipe@gmail.com>
Co-authored-by: Rico <rico.jambor@gmail.com>
Co-authored-by: George L <lazugeorgem@gmail.com>
Co-authored-by: Yaroslav Buzko <yaroslav@buzko.com>
Co-authored-by: ugyes <ferenc.bodi@live.com>
Co-authored-by: Alberto Giardino <alberto.giardino@al-ce.it>
Co-authored-by: sct <sctsnipe@gmail.com>
* fix: change localhost to process.env.HOST for client requests (#3839)
* Change localhost to process.env.HOST for client requests
* refactor: reformat
* docs: add lmiklosko as a contributor for code (#4063) [skip ci]
* docs: update README.md
* docs: update .all-contributorsrc
---------
Co-authored-by: allcontributors[bot] <46447321+allcontributors[bot]@users.noreply.github.com>
* fix: set the correct TTL for the cookie store (#3946)
The time-to-live (TTL) of cookies stored in the database was incorrect because the connect-typeorm
library takes a TTL in seconds and not milliseconds, making cookies valid for ~82 years instead of
30 days.
Co-authored-by: Ryan Cohen <ryan@sct.dev>
* docs: add gauthier-th as a contributor for code (#4064) [skip ci]
* docs: update README.md
* docs: update .all-contributorsrc
---------
Co-authored-by: allcontributors[bot] <46447321+allcontributors[bot]@users.noreply.github.com>
* fix: update migration script (#4065)
* fix: update migration script
fix: remove insert for new entities
* fix: correct migration name
* fix: correct name inside migration
* fix(servarr): merge series tags instead of overwriting them (#4019)
* Merge series tags instead of overwriting when adding a series that already exists
Currently, a request coming in for a series that already exists in sonarr nukes the tags in sonarr for the series in favor of the tags coming from overseerr. This change merges the two lists of tags and deduplicates them before sending them to sonarr.
* fix(servarr api): merge request media tags with servarr instead of overwriting
---------
Co-authored-by: Danshil Kokil Mungur <me@danshilm.com>
---------
Co-authored-by: Isaac M <masesisaac@gmail.com>
Co-authored-by: Joseph Risk <j0srisk@gmail.com>
Co-authored-by: allcontributors[bot] <46447321+allcontributors[bot]@users.noreply.github.com>
Co-authored-by: Loetwiek <79059734+Loetwiek@users.noreply.github.com>
Co-authored-by: Loetwiek <lodommerholtcm@gmail.com>
Co-authored-by: Fallenbagel <98979876+Fallenbagel@users.noreply.github.com>
Co-authored-by: Fuochi <ffuochi@hotmail.com>
Co-authored-by: Weblate (bot) <hosted@weblate.org>
Co-authored-by: Cleiton Carvalho <cleitonsilvacarvalho@gmail.com>
Co-authored-by: Nandor Rusz <nandor.rusz@vodafone.de>
Co-authored-by: Thomas Schöneberg <ta.schoeneberg@gmail.com>
Co-authored-by: Anders Ecklon <aecklon@gmail.com>
Co-authored-by: Kenneth Hansen <erathor@live.dk>
Co-authored-by: BeardedWatermelon <BeardedWatermelon@users.noreply.hosted.weblate.org>
Co-authored-by: SoundwaveUwU <SoundwaveUwU@users.noreply.hosted.weblate.org>
Co-authored-by: SoundwaveUwU <noreply@1000-7.space>
Co-authored-by: Димитър Мазнеков (Topper) <d.maznekov@gmail.com>
Co-authored-by: Кирилл Тюрин <1337soundwave1337@gmail.com>
Co-authored-by: Don Cezar <goldie.czr@gmail.com>
Co-authored-by: Dragos <themsk@yahoo.com>
Co-authored-by: Eduard Oancea <uberfly@420blaze.it>
Co-authored-by: sct <sctsnipe@gmail.com>
Co-authored-by: Michael Michael <michaelvelosk@gmail.com>
Co-authored-by: Сергій <sergiy.goncharuk.1@gmail.com>
Co-authored-by: dtalens <databio@gmail.com>
Co-authored-by: Karel Krýda <karel.kryda@gmail.com>
Co-authored-by: Smexhy <roman.bartik@icloud.com>
Co-authored-by: Bruno Ševčenko <bs3vcenk@gmail.com>
Co-authored-by: Milo Ivir <mail@milotype.de>
Co-authored-by: Stjepan <stjepstjepanovic@gmail.com>
Co-authored-by: lpispek <lpispek@gmail.com>
Co-authored-by: Levente Szajkó <leviko112@gmail.com>
Co-authored-by: osh <osh@osh.cc>
Co-authored-by: Eryk Michalak <gnu.ewm@protonmail.com>
Co-authored-by: Francesco <francy.ammirati@hotmail.com>
Co-authored-by: Fhd-pro <juve.11@msn.com>
Co-authored-by: Kobe <kobaubarr@gmail.com>
Co-authored-by: gallegonovato <fran-carro@hotmail.es>
Co-authored-by: Baptiste <baptiste.nee@me.com>
Co-authored-by: Dimitri <dimitridroeck@gmail.com>
Co-authored-by: Maxime Lafarie <maxime.lafarie@gmail.com>
Co-authored-by: Miguel <mig.mllr@gmail.com>
Co-authored-by: asurare <jonathan.biteau16@gmail.com>
Co-authored-by: Per Erik <urbanlolface@gmail.com>
Co-authored-by: Shjosan <shjosan@kakmix.co>
Co-authored-by: bittin1ddc447d824349b2 <bittin@reimu.nl>
Co-authored-by: Eero Konttaniemi <eero.konttaniemi@gmail.com>
Co-authored-by: Milan Smudja <smudja@gmail.com>
Co-authored-by: Developer J <jshsakura@gmail.com>
Co-authored-by: Haohao Zhang <hyacz@foxmail.com>
Co-authored-by: lkw123 <lkw20010211@gmail.com>
Co-authored-by: Jordan Jones <me@jjones.tech>
Co-authored-by: Brandon Cohen <brandon@z3hn.dev>
Co-authored-by: David Emrich <demrich@me.com>
Co-authored-by: Max T. Kristiansen <me@maxtrier.dk>
Co-authored-by: Damien Fajole <60252259+DamsDev1@users.noreply.github.com>
Co-authored-by: Ahmed Siddiqui <36286128+AhmedNSidd@users.noreply.github.com>
Co-authored-by: Dargo <fuszi88@gmail.com>
Co-authored-by: senza <senza@users.noreply.hosted.weblate.org>
Co-authored-by: Robin Van de Vyvere <irazoxgames@gmail.com>
Co-authored-by: Frostar <dasangra@hotmail.com>
Co-authored-by: Nackophilz <zrv4flra@anonaddy.me>
Co-authored-by: TayZ3r <artimmo@hotmail.fr>
Co-authored-by: Oskari Lavinto <olavinto@protonmail.com>
Co-authored-by: W L <wl@mailhole.de>
Co-authored-by: Hyun Lee <hyun@yahoo.com>
Co-authored-by: cutiekeek <cutiekeek@gmail.com>
Co-authored-by: Rafael Souto <git@rafaelsouto.com>
Co-authored-by: Marc Lerno <mlerno1192@student.carlalbert.edu>
Co-authored-by: exentler <gurandsrud@gmail.com>
Co-authored-by: soup <s0up4200@pm.me>
Co-authored-by: JackOXI <53652452+JackW6809@users.noreply.github.com>
Co-authored-by: Stancu Florin <StancuFlorin@users.noreply.github.com>
Co-authored-by: Stancu Florin <florin@stancu.me>
Co-authored-by: Brandon Cohen <cohbrandon@gmail.com>
Co-authored-by: Felipe Garcia <garcia.o.felipe@gmail.com>
Co-authored-by: Rico <rico.jambor@gmail.com>
Co-authored-by: George L <lazugeorgem@gmail.com>
Co-authored-by: Yaroslav Buzko <yaroslav@buzko.com>
Co-authored-by: ugyes <ferenc.bodi@live.com>
Co-authored-by: Alberto Giardino <alberto.giardino@al-ce.it>
Co-authored-by: Lukas Miklosko <44380311+lmiklosko@users.noreply.github.com>
Co-authored-by: Ryan Cohen <ryan@sct.dev>
Co-authored-by: Andrew Kennedy <andrew-kennedy@users.noreply.github.com>
Co-authored-by: Danshil Kokil Mungur <me@danshilm.com>
* revert(airdate): reverts airdate offset and changes relative time to only display date (not time)
This reverts #1390 as it created more confusion when we offsetted the air date in relevance to the
timezone. It also changes the relative time to use date instead of time (so it will say `aired
yesterday` `today` `5 days ago` instead of `aired x hours ago` since we dont really the airtime
data.
* fix: relate time in days instead of hours
* fix: relative time in days
* fix: relative time in days (but properly)
* Update LocalLogin.tsx
remove data-bwignore="false" from attributes to let Bitwarden Autofill
* Update JellyfinLogin.tsx
remove data-bwignore="false" from attributes to let Bitwarden Autofill
* revert: reverts csrf-csrf back to csurf
This reverts csrf-csrf change brought on by `9e3119` in #1393 back to `csurf` that is maintained
* fix: type declarations for csurf
PostgreSQL requires that the ORDER BY expression must appear in the SELECT list when using DISTINCT.
Since we were using a computed expression in the ORDER BY clause, we need to include it in the
SELECT list as well.
re #1333
* fix: allows every user to be added to the override rules
* chore: code cleanup
* fix(overriderules): displaying more than ten users at a time
* fix(overriderules): pageSize unaffected by duplicate includeIds
Co-authored-by: Gauthier <mail@gauthierth.fr>
* fix: allows every user to be added to the override rules
* chore(overriderules): readding override rules after rebase
* chore(overriderules): removing empty file
* chore(overriderules): fixing bad merge
---------
Co-authored-by: Gauthier <mail@gauthierth.fr>
* feat(ui): prevent password manager interference & improve service links (#3989)
(cherry picked from commit ef18b5d1de)
* feat(ui): prevent password manager autofill on Jellyfin setup form
* fix: rebase mess
* feat(ui): set data-form-type attribute
For Dashlane password manager
* feat(ui): add data attribs for dashlane
* feat(ui): set data-form-type to JellyfinLogin
* fix(settings): remove dns server option
This PR removes the DNS Servers option added in #1266 because it doesn't seem to work reliably.
* style: remove whitespace change
Fix Jellyfin/Emby item retrieval to work properly with api tokens by using user-independent item
endpoints. This will resolve the issue where disabled libraries for jellyseerr owner's would fail to
scan even when we migrated to API tokens due to using the user-dependent item view endpoints.
* feat(pushover): attach image to pushover notification payload (#3701)
* fix: api language query parameter (#3720)
* docs: add j0srisk as a contributor for code (#3745) [skip ci]
* docs: update README.md
* docs: update .all-contributorsrc
---------
Co-authored-by: allcontributors[bot] <46447321+allcontributors[bot]@users.noreply.github.com>
* feat(tooltip): add tooltip to display exact time on date hover (#3773)
Co-authored-by: Loetwiek <lodommerholtcm@gmail.com>
* docs: add Loetwiek as a contributor for code (#3776) [skip ci]
* docs: update README.md
* docs: update .all-contributorsrc
---------
Co-authored-by: allcontributors[bot] <46447321+allcontributors[bot]@users.noreply.github.com>
* fix(ui): ensure title fits into the `view collection` box (#3696)
* fix(docs): correct openapi docs minor issues (#3648)
* docs: add Fuochi as a contributor for doc (#3826)
Co-authored-by: allcontributors[bot] <46447321+allcontributors[bot]@users.noreply.github.com>
* feat: translations update from Hosted Weblate (#3597)
* feat(lang): translated using Weblate (Portuguese (Brazil))
Currently translated at 100.0% (1234 of 1234 strings)
feat(lang): translated using Weblate (Portuguese (Brazil))
Currently translated at 99.8% (1232 of 1234 strings)
Co-authored-by: Cleiton Carvalho <cleitonsilvacarvalho@gmail.com>
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/pt_BR/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (German)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (German)
Currently translated at 100.0% (1234 of 1234 strings)
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: Nandor Rusz <nandor.rusz@vodafone.de>
Co-authored-by: Thomas Schöneberg <ta.schoeneberg@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/de/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (Danish)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Danish)
Currently translated at 100.0% (1236 of 1236 strings)
feat(lang): translated using Weblate (Danish)
Currently translated at 100.0% (1234 of 1234 strings)
Co-authored-by: Anders Ecklon <aecklon@gmail.com>
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: Kenneth Hansen <erathor@live.dk>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/da/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (Greek)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Greek)
Currently translated at 100.0% (1236 of 1236 strings)
Co-authored-by: BeardedWatermelon <BeardedWatermelon@users.noreply.hosted.weblate.org>
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/el/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (Russian)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Russian)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Russian)
Currently translated at 99.5% (1234 of 1240 strings)
feat(lang): translated using Weblate (Russian)
Currently translated at 100.0% (1234 of 1234 strings)
feat(lang): translated using Weblate (Russian)
Currently translated at 100.0% (1234 of 1234 strings)
feat(lang): translated using Weblate (Russian)
Currently translated at 100.0% (1234 of 1234 strings)
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: SoundwaveUwU <SoundwaveUwU@users.noreply.hosted.weblate.org>
Co-authored-by: SoundwaveUwU <noreply@1000-7.space>
Co-authored-by: Димитър Мазнеков (Topper) <d.maznekov@gmail.com>
Co-authored-by: Кирилл Тюрин <1337soundwave1337@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/ru/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (Romanian)
Currently translated at 37.1% (461 of 1240 strings)
feat(lang): translated using Weblate (Romanian)
Currently translated at 37.0% (459 of 1240 strings)
feat(lang): translated using Weblate (Romanian)
Currently translated at 34.8% (432 of 1240 strings)
Co-authored-by: Don Cezar <goldie.czr@gmail.com>
Co-authored-by: Dragos <themsk@yahoo.com>
Co-authored-by: Eduard Oancea <uberfly@420blaze.it>
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/ro/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (Bulgarian)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Bulgarian)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Bulgarian)
Currently translated at 57.4% (712 of 1240 strings)
feat(lang): translated using Weblate (Bulgarian)
Currently translated at 13.2% (164 of 1240 strings)
feat(lang): translated using Weblate (Bulgarian)
Currently translated at 4.8% (60 of 1240 strings)
feat(lang): added translation using Weblate (Bulgarian)
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: sct <sctsnipe@gmail.com>
Co-authored-by: Димитър Мазнеков (Topper) <d.maznekov@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/bg/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (Ukrainian)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 99.1% (1230 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 99.1% (1230 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 99.1% (1230 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 97.9% (1215 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 82.0% (1017 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 72.9% (905 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 72.9% (905 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 71.3% (885 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 64.9% (805 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 64.4% (799 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 63.8% (792 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 63.7% (791 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 57.5% (714 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 49.9% (619 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 35.9% (446 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 35.9% (446 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 32.1% (399 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 24.6% (306 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 18.9% (235 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 17.5% (217 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 17.3% (215 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 8.0% (100 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 3.3% (41 of 1240 strings)
feat(lang): added translation using Weblate (Ukrainian)
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: Michael Michael <michaelvelosk@gmail.com>
Co-authored-by: sct <sctsnipe@gmail.com>
Co-authored-by: Сергій <sergiy.goncharuk.1@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/uk/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (Catalan)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Catalan)
Currently translated at 100.0% (1240 of 1240 strings)
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: dtalens <databio@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/ca/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (Czech)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Czech)
Currently translated at 99.6% (1236 of 1240 strings)
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: Karel Krýda <karel.kryda@gmail.com>
Co-authored-by: Smexhy <roman.bartik@icloud.com>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/cs/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (Croatian)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Croatian)
Currently translated at 99.8% (1238 of 1240 strings)
feat(lang): translated using Weblate (Croatian)
Currently translated at 99.8% (1238 of 1240 strings)
feat(lang): translated using Weblate (Croatian)
Currently translated at 99.6% (1236 of 1240 strings)
feat(lang): translated using Weblate (Croatian)
Currently translated at 99.5% (1235 of 1240 strings)
feat(lang): translated using Weblate (Croatian)
Currently translated at 99.5% (1235 of 1240 strings)
feat(lang): translated using Weblate (Croatian)
Currently translated at 99.1% (1230 of 1240 strings)
feat(lang): translated using Weblate (Croatian)
Currently translated at 97.5% (1210 of 1240 strings)
feat(lang): translated using Weblate (Croatian)
Currently translated at 95.5% (1185 of 1240 strings)
feat(lang): translated using Weblate (Croatian)
Currently translated at 95.6% (1182 of 1236 strings)
feat(lang): translated using Weblate (Croatian)
Currently translated at 95.6% (1182 of 1236 strings)
feat(lang): translated using Weblate (Croatian)
Currently translated at 95.2% (1177 of 1236 strings)
feat(lang): translated using Weblate (Croatian)
Currently translated at 95.2% (1177 of 1236 strings)
feat(lang): translated using Weblate (Croatian)
Currently translated at 94.3% (1166 of 1236 strings)
feat(lang): translated using Weblate (Croatian)
Currently translated at 91.7% (1134 of 1236 strings)
feat(lang): translated using Weblate (Croatian)
Currently translated at 91.7% (1134 of 1236 strings)
Co-authored-by: Bruno Ševčenko <bs3vcenk@gmail.com>
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: Milo Ivir <mail@milotype.de>
Co-authored-by: Stjepan <stjepstjepanovic@gmail.com>
Co-authored-by: lpispek <lpispek@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/hr/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (Hungarian)
Currently translated at 91.3% (1133 of 1240 strings)
feat(lang): translated using Weblate (Hungarian)
Currently translated at 89.3% (1108 of 1240 strings)
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: Levente Szajkó <leviko112@gmail.com>
Co-authored-by: Nandor Rusz <nandor.rusz@vodafone.de>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/hu/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (Hebrew)
Currently translated at 13.9% (172 of 1236 strings)
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: osh <osh@osh.cc>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/he/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (Polish)
Currently translated at 99.1% (1225 of 1236 strings)
Co-authored-by: Eryk Michalak <gnu.ewm@protonmail.com>
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/pl/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (Italian)
Currently translated at 92.8% (1148 of 1236 strings)
Co-authored-by: Francesco <francy.ammirati@hotmail.com>
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/it/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (Arabic)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Arabic)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Arabic)
Currently translated at 100.0% (1234 of 1234 strings)
Co-authored-by: Fhd-pro <juve.11@msn.com>
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/ar/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (Dutch)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Dutch)
Currently translated at 100.0% (1234 of 1234 strings)
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: Kobe <kobaubarr@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/nl/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (Spanish)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Spanish)
Currently translated at 100.0% (1236 of 1236 strings)
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: gallegonovato <fran-carro@hotmail.es>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/es/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (French)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (French)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (French)
Currently translated at 100.0% (1236 of 1236 strings)
feat(lang): translated using Weblate (French)
Currently translated at 99.9% (1235 of 1236 strings)
feat(lang): translated using Weblate (French)
Currently translated at 99.9% (1235 of 1236 strings)
Co-authored-by: Baptiste <baptiste.nee@me.com>
Co-authored-by: Dimitri <dimitridroeck@gmail.com>
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: Maxime Lafarie <maxime.lafarie@gmail.com>
Co-authored-by: Miguel <mig.mllr@gmail.com>
Co-authored-by: asurare <jonathan.biteau16@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/fr/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (Swedish)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Swedish)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Swedish)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Swedish)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Swedish)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Swedish)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Swedish)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Swedish)
Currently translated at 100.0% (1236 of 1236 strings)
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: Per Erik <urbanlolface@gmail.com>
Co-authored-by: Shjosan <shjosan@kakmix.co>
Co-authored-by: bittin1ddc447d824349b2 <bittin@reimu.nl>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/sv/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (Finnish)
Currently translated at 2.6% (33 of 1240 strings)
feat(lang): added translation using Weblate (Finnish)
Co-authored-by: Eero Konttaniemi <eero.konttaniemi@gmail.com>
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: sct <sctsnipe@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/fi/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (Serbian)
Currently translated at 50.8% (630 of 1240 strings)
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: Milan Smudja <smudja@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/sr/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (Korean)
Currently translated at 100.0% (1234 of 1234 strings)
Co-authored-by: Developer J <jshsakura@gmail.com>
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/ko/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (Chinese (Simplified))
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Chinese (Simplified))
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Chinese (Simplified))
Currently translated at 100.0% (1234 of 1234 strings)
Co-authored-by: Haohao Zhang <hyacz@foxmail.com>
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: lkw123 <lkw20010211@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/zh_Hans/
Translation: Overseerr/Overseerr Frontend
---------
Co-authored-by: Cleiton Carvalho <cleitonsilvacarvalho@gmail.com>
Co-authored-by: Nandor Rusz <nandor.rusz@vodafone.de>
Co-authored-by: Thomas Schöneberg <ta.schoeneberg@gmail.com>
Co-authored-by: Anders Ecklon <aecklon@gmail.com>
Co-authored-by: Kenneth Hansen <erathor@live.dk>
Co-authored-by: BeardedWatermelon <BeardedWatermelon@users.noreply.hosted.weblate.org>
Co-authored-by: SoundwaveUwU <SoundwaveUwU@users.noreply.hosted.weblate.org>
Co-authored-by: SoundwaveUwU <noreply@1000-7.space>
Co-authored-by: Димитър Мазнеков (Topper) <d.maznekov@gmail.com>
Co-authored-by: Кирилл Тюрин <1337soundwave1337@gmail.com>
Co-authored-by: Don Cezar <goldie.czr@gmail.com>
Co-authored-by: Dragos <themsk@yahoo.com>
Co-authored-by: Eduard Oancea <uberfly@420blaze.it>
Co-authored-by: sct <sctsnipe@gmail.com>
Co-authored-by: Michael Michael <michaelvelosk@gmail.com>
Co-authored-by: Сергій <sergiy.goncharuk.1@gmail.com>
Co-authored-by: dtalens <databio@gmail.com>
Co-authored-by: Karel Krýda <karel.kryda@gmail.com>
Co-authored-by: Smexhy <roman.bartik@icloud.com>
Co-authored-by: Bruno Ševčenko <bs3vcenk@gmail.com>
Co-authored-by: Milo Ivir <mail@milotype.de>
Co-authored-by: Stjepan <stjepstjepanovic@gmail.com>
Co-authored-by: lpispek <lpispek@gmail.com>
Co-authored-by: Levente Szajkó <leviko112@gmail.com>
Co-authored-by: osh <osh@osh.cc>
Co-authored-by: Eryk Michalak <gnu.ewm@protonmail.com>
Co-authored-by: Francesco <francy.ammirati@hotmail.com>
Co-authored-by: Fhd-pro <juve.11@msn.com>
Co-authored-by: Kobe <kobaubarr@gmail.com>
Co-authored-by: gallegonovato <fran-carro@hotmail.es>
Co-authored-by: Baptiste <baptiste.nee@me.com>
Co-authored-by: Dimitri <dimitridroeck@gmail.com>
Co-authored-by: Maxime Lafarie <maxime.lafarie@gmail.com>
Co-authored-by: Miguel <mig.mllr@gmail.com>
Co-authored-by: asurare <jonathan.biteau16@gmail.com>
Co-authored-by: Per Erik <urbanlolface@gmail.com>
Co-authored-by: Shjosan <shjosan@kakmix.co>
Co-authored-by: bittin1ddc447d824349b2 <bittin@reimu.nl>
Co-authored-by: Eero Konttaniemi <eero.konttaniemi@gmail.com>
Co-authored-by: Milan Smudja <smudja@gmail.com>
Co-authored-by: Developer J <jshsakura@gmail.com>
Co-authored-by: Haohao Zhang <hyacz@foxmail.com>
Co-authored-by: lkw123 <lkw20010211@gmail.com>
* feat(lang): add lang config for Bulgarian, Finnish, Ukrainian, Indonesian, Slovak, Turkish and Maori (#3834)
* fix: correct deeplinks on iPad (#3883)
* feat(studios): add a24 to studios list (#3902)
* docs: add demrich as a contributor for code (#3906) [skip ci]
* docs: update README.md
* docs: update .all-contributorsrc
---------
Co-authored-by: allcontributors[bot] <46447321+allcontributors[bot]@users.noreply.github.com>
* feat(watchlist): Cache watchlist requests with matching E-Tags (#3901)
* perf(watchlist): add E-Tag caching to Plex watchlist requests
* refactor(watchlist): increase frequency of watchlist requests
* fix: sync watchlist every 3 min instead of 3 sec
* docs: add maxnatamo as a contributor for code (#3907) [skip ci]
* docs: update README.md
* docs: update .all-contributorsrc
---------
Co-authored-by: allcontributors[bot] <46447321+allcontributors[bot]@users.noreply.github.com>
* feat(plex): refresh token schedule (#3875)
* feat: refresh token schedule
fix#3861
* fix(i18n): add i18n message
* refactor(plextv): use randomUUID crypto instead custom function
* docs: add DamsDev1 as a contributor for code (#3924) [skip ci]
* docs: update README.md
* docs: update .all-contributorsrc
---------
Co-authored-by: allcontributors[bot] <46447321+allcontributors[bot]@users.noreply.github.com>
* fix: correct icon showing on certain phones when not pulled (#3939)
* feat: add support for requesting "Specials" for TV Shows (#3724)
* feat: add support for requesting "Specials" for TV Shows
This commit is responsible for adding support in Overseerr for requesting "Special" episodes for TV
Shows. This request has become especially pertinent when you consider shows like "Doctor Who". These
shows have Specials that are critical to understanding the plot of a TV show.
fix#779
* chore(yarn.lock): undo inappropriate changes to yarn.lock
I was informed by @sct in a comment on the #3724 PR that it was not appropriate to commit the
changes that ended up being made to the yarn.lock file. This commit is responsible, then, for
undoing the changes to the yarn.lock file that ended up being submitted.
* refactor: change loose equality to strict equality
I received a comment from OwsleyJr pointing out that we are using loose equality when we could
alternatively just be using strict equality to increase the robustness of our code. This commit
does exactly that by squashing out previous usages of loose equality in my commits and replacing
them with strict equality
* refactor: move 'Specials' string to a global message
Owsley pointed out that we are redefining the 'Specials' string multiple times throughout this PR.
Instead, we can just move it as a global message. This commit does exactly that. It squashes out and
previous declarations of the 'Specials' string inside the src files, and moves it directly to the
global messages file.
* docs: add AhmedNSidd as a contributor for code (#3964) [skip ci]
* docs: update README.md
* docs: update .all-contributorsrc
---------
Co-authored-by: allcontributors[bot] <46447321+allcontributors[bot]@users.noreply.github.com>
* feat(lang): Translations update from Hosted Weblate (#3835)
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (Bulgarian)
Currently translated at 100.0% (1240 of 1240 strings)
Update translation files
Updated by "Cleanup translation files" hook in Weblate.
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: Димитър Мазнеков (Topper) <d.maznekov@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/bg/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 100.0% (1240 of 1240 strings)
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: Michael Michael <michaelvelosk@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/uk/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
feat(lang): translated using Weblate (Catalan)
Currently translated at 100.0% (1241 of 1241 strings)
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: dtalens <databio@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/ca/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
feat(lang): translated using Weblate (Hungarian)
Currently translated at 99.2% (1231 of 1240 strings)
Co-authored-by: Dargo <fuszi88@gmail.com>
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/hu/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
feat(lang): translated using Weblate (Polish)
Currently translated at 98.8% (1227 of 1241 strings)
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: senza <senza@users.noreply.hosted.weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/pl/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
feat(lang): translated using Weblate (Dutch)
Currently translated at 100.0% (1241 of 1241 strings)
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: Robin Van de Vyvere <irazoxgames@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/nl/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
feat(lang): translated using Weblate (Spanish)
Currently translated at 100.0% (1241 of 1241 strings)
feat(lang): translated using Weblate (Spanish)
Currently translated at 100.0% (1241 of 1241 strings)
Co-authored-by: Frostar <dasangra@hotmail.com>
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: gallegonovato <fran-carro@hotmail.es>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/es/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (French)
Currently translated at 100.0% (1240 of 1240 strings)
Update translation files
Updated by "Cleanup translation files" hook in Weblate.
feat(lang): translated using Weblate (French)
Currently translated at 100.0% (1241 of 1241 strings)
feat(lang): translated using Weblate (French)
Currently translated at 100.0% (1240 of 1240 strings)
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: Nackophilz <zrv4flra@anonaddy.me>
Co-authored-by: TayZ3r <artimmo@hotmail.fr>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/fr/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
feat(lang): translated using Weblate (Swedish)
Currently translated at 100.0% (1241 of 1241 strings)
feat(lang): translated using Weblate (Swedish)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Swedish)
Currently translated at 100.0% (1240 of 1240 strings)
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: Per Erik <urbanlolface@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/sv/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (Finnish)
Currently translated at 2.9% (36 of 1240 strings)
Co-authored-by: Oskari Lavinto <olavinto@protonmail.com>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/fi/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
feat(lang): translated using Weblate (Albanian)
Currently translated at 95.8% (1189 of 1240 strings)
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: W L <wl@mailhole.de>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/sq/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
feat(lang): translated using Weblate (Korean)
Currently translated at 100.0% (1241 of 1241 strings)
feat(lang): translated using Weblate (Korean)
Currently translated at 100.0% (1240 of 1240 strings)
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: Hyun Lee <hyun@yahoo.com>
Co-authored-by: cutiekeek <cutiekeek@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/ko/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
feat(lang): translated using Weblate (Portuguese (Portugal))
Currently translated at 98.4% (1221 of 1240 strings)
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: Rafael Souto <git@rafaelsouto.com>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/pt_PT/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (Chinese (Traditional Han script))
Currently translated at 99.9% (1239 of 1240 strings)
Update translation files
Updated by "Cleanup translation files" hook in Weblate.
feat(lang): translated using Weblate (Chinese (Traditional Han script))
Currently translated at 98.2% (1219 of 1241 strings)
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: Marc Lerno <mlerno1192@student.carlalbert.edu>
Co-authored-by: dtalens <databio@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/zh_Hant/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translation: Overseerr/Overseerr Frontend
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
feat(lang): translated using Weblate (Norwegian Bokmål)
Currently translated at 89.9% (1115 of 1240 strings)
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: exentler <gurandsrud@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/nb_NO/
Translation: Overseerr/Overseerr Frontend
---------
Co-authored-by: Димитър Мазнеков (Topper) <d.maznekov@gmail.com>
Co-authored-by: Michael Michael <michaelvelosk@gmail.com>
Co-authored-by: dtalens <databio@gmail.com>
Co-authored-by: Dargo <fuszi88@gmail.com>
Co-authored-by: senza <senza@users.noreply.hosted.weblate.org>
Co-authored-by: Robin Van de Vyvere <irazoxgames@gmail.com>
Co-authored-by: Frostar <dasangra@hotmail.com>
Co-authored-by: gallegonovato <fran-carro@hotmail.es>
Co-authored-by: Nackophilz <zrv4flra@anonaddy.me>
Co-authored-by: TayZ3r <artimmo@hotmail.fr>
Co-authored-by: Per Erik <urbanlolface@gmail.com>
Co-authored-by: Oskari Lavinto <olavinto@protonmail.com>
Co-authored-by: W L <wl@mailhole.de>
Co-authored-by: Hyun Lee <hyun@yahoo.com>
Co-authored-by: cutiekeek <cutiekeek@gmail.com>
Co-authored-by: Rafael Souto <git@rafaelsouto.com>
Co-authored-by: Marc Lerno <mlerno1192@student.carlalbert.edu>
Co-authored-by: exentler <gurandsrud@gmail.com>
* feat(ui): prevent password manager interference & improve service links (#3989)
* docs: add s0up4200 as a contributor for code (#4047) [skip ci]
* docs: update README.md
* docs: update .all-contributorsrc
---------
Co-authored-by: allcontributors[bot] <46447321+allcontributors[bot]@users.noreply.github.com>
* fix(ui): update Plex Logo (#3955)
* docs: add JackW6809 as a contributor for code (#4048) [skip ci]
* docs: update README.md
* docs: update .all-contributorsrc
---------
Co-authored-by: allcontributors[bot] <46447321+allcontributors[bot]@users.noreply.github.com>
* feat: requests/issues menu count (#3470)
* feat: request and issue count added to sidebar/mobile menu
* fix: added permission check for count visibility
* refactor: modified badge design for count
* fix: properly update issue and request counts in certain scenarios (#4051)
* fix: center count badge on sidebar and mobile menu (#4052)
* fix: request english trailers as a fallback when using other languages (#4009)
Co-authored-by: Stancu Florin <florin@stancu.me>
* docs: add StancuFlorin as a contributor for code (#4053) [skip ci]
* docs: update README.md
* docs: update .all-contributorsrc
---------
Co-authored-by: allcontributors[bot] <46447321+allcontributors[bot]@users.noreply.github.com>
* feat: added the PWA badge indicator for requests pending (#3411)
refactor: removed unnecessary code when sending web push notification
fix: moved all notify user logic into webpush
refactor: n
refactor: remove all unnecessary prettier changes
fix: n
fix: n
fix: n
fix: n
fix: increment sw version
fix: n
---------
Co-authored-by: Isaac M <masesisaac@gmail.com>
Co-authored-by: Joseph Risk <j0srisk@gmail.com>
Co-authored-by: allcontributors[bot] <46447321+allcontributors[bot]@users.noreply.github.com>
Co-authored-by: Loetwiek <79059734+Loetwiek@users.noreply.github.com>
Co-authored-by: Loetwiek <lodommerholtcm@gmail.com>
Co-authored-by: Fallenbagel <98979876+Fallenbagel@users.noreply.github.com>
Co-authored-by: Fuochi <ffuochi@hotmail.com>
Co-authored-by: Weblate (bot) <hosted@weblate.org>
Co-authored-by: Cleiton Carvalho <cleitonsilvacarvalho@gmail.com>
Co-authored-by: Nandor Rusz <nandor.rusz@vodafone.de>
Co-authored-by: Thomas Schöneberg <ta.schoeneberg@gmail.com>
Co-authored-by: Anders Ecklon <aecklon@gmail.com>
Co-authored-by: Kenneth Hansen <erathor@live.dk>
Co-authored-by: BeardedWatermelon <BeardedWatermelon@users.noreply.hosted.weblate.org>
Co-authored-by: SoundwaveUwU <SoundwaveUwU@users.noreply.hosted.weblate.org>
Co-authored-by: SoundwaveUwU <noreply@1000-7.space>
Co-authored-by: Димитър Мазнеков (Topper) <d.maznekov@gmail.com>
Co-authored-by: Кирилл Тюрин <1337soundwave1337@gmail.com>
Co-authored-by: Don Cezar <goldie.czr@gmail.com>
Co-authored-by: Dragos <themsk@yahoo.com>
Co-authored-by: Eduard Oancea <uberfly@420blaze.it>
Co-authored-by: sct <sctsnipe@gmail.com>
Co-authored-by: Michael Michael <michaelvelosk@gmail.com>
Co-authored-by: Сергій <sergiy.goncharuk.1@gmail.com>
Co-authored-by: dtalens <databio@gmail.com>
Co-authored-by: Karel Krýda <karel.kryda@gmail.com>
Co-authored-by: Smexhy <roman.bartik@icloud.com>
Co-authored-by: Bruno Ševčenko <bs3vcenk@gmail.com>
Co-authored-by: Milo Ivir <mail@milotype.de>
Co-authored-by: Stjepan <stjepstjepanovic@gmail.com>
Co-authored-by: lpispek <lpispek@gmail.com>
Co-authored-by: Levente Szajkó <leviko112@gmail.com>
Co-authored-by: osh <osh@osh.cc>
Co-authored-by: Eryk Michalak <gnu.ewm@protonmail.com>
Co-authored-by: Francesco <francy.ammirati@hotmail.com>
Co-authored-by: Fhd-pro <juve.11@msn.com>
Co-authored-by: Kobe <kobaubarr@gmail.com>
Co-authored-by: gallegonovato <fran-carro@hotmail.es>
Co-authored-by: Baptiste <baptiste.nee@me.com>
Co-authored-by: Dimitri <dimitridroeck@gmail.com>
Co-authored-by: Maxime Lafarie <maxime.lafarie@gmail.com>
Co-authored-by: Miguel <mig.mllr@gmail.com>
Co-authored-by: asurare <jonathan.biteau16@gmail.com>
Co-authored-by: Per Erik <urbanlolface@gmail.com>
Co-authored-by: Shjosan <shjosan@kakmix.co>
Co-authored-by: bittin1ddc447d824349b2 <bittin@reimu.nl>
Co-authored-by: Eero Konttaniemi <eero.konttaniemi@gmail.com>
Co-authored-by: Milan Smudja <smudja@gmail.com>
Co-authored-by: Developer J <jshsakura@gmail.com>
Co-authored-by: Haohao Zhang <hyacz@foxmail.com>
Co-authored-by: lkw123 <lkw20010211@gmail.com>
Co-authored-by: Jordan Jones <me@jjones.tech>
Co-authored-by: Brandon Cohen <brandon@z3hn.dev>
Co-authored-by: David Emrich <demrich@me.com>
Co-authored-by: Max T. Kristiansen <me@maxtrier.dk>
Co-authored-by: Damien Fajole <60252259+DamsDev1@users.noreply.github.com>
Co-authored-by: Ahmed Siddiqui <36286128+AhmedNSidd@users.noreply.github.com>
Co-authored-by: Dargo <fuszi88@gmail.com>
Co-authored-by: senza <senza@users.noreply.hosted.weblate.org>
Co-authored-by: Robin Van de Vyvere <irazoxgames@gmail.com>
Co-authored-by: Frostar <dasangra@hotmail.com>
Co-authored-by: Nackophilz <zrv4flra@anonaddy.me>
Co-authored-by: TayZ3r <artimmo@hotmail.fr>
Co-authored-by: Oskari Lavinto <olavinto@protonmail.com>
Co-authored-by: W L <wl@mailhole.de>
Co-authored-by: Hyun Lee <hyun@yahoo.com>
Co-authored-by: cutiekeek <cutiekeek@gmail.com>
Co-authored-by: Rafael Souto <git@rafaelsouto.com>
Co-authored-by: Marc Lerno <mlerno1192@student.carlalbert.edu>
Co-authored-by: exentler <gurandsrud@gmail.com>
Co-authored-by: soup <s0up4200@pm.me>
Co-authored-by: JackOXI <53652452+JackW6809@users.noreply.github.com>
Co-authored-by: Stancu Florin <StancuFlorin@users.noreply.github.com>
Co-authored-by: Stancu Florin <florin@stancu.me>
Co-authored-by: Brandon Cohen <cohbrandon@gmail.com>
* refactor: rename some remaining Overseerr occurrences
This PR renames some remaining occurrences of Overseerr to Jellyseerr. This includes the OpenAPI
specification, log file names and some variables and console messages.
* fix(i18n): add missing translation
This PR will ensure that the airdate is in the user's local timezone so that its more user friendly and the relative time calculation would be consistent
fix#1373
* fix: add email requirement for local users
Because of a misunderstanding, and the requirement to have a mandatory email for local users was
removed, when it shouldn't have been.
re #900fix#1367
* fix: add missing check for Emby
* feat: support disabling jellyfin login
* feat: revamp login screen
Update the login screen for better usability, especially with OpenID
Connect and Plex login, allowing one-click login and removing the
accordion layout. Additionally, ensures that media server login is
hidden when disabled in the settings.
* test: update cypress login command
Fix the "Remove From *arr" button in the slideover of the movie/series details page. The issue was
caused by an attempt to delete a file that didn't exist.
* refactor(overriderules): move override rules out of the service modal
This PR moves override rules out of the service modal. This will make override rules more visible
than inside the service modal popup. This will also avoid having a modal inside a modal (override
rules modal inside of service modal)
* fix: resolve typing error
* feat(linked-accounts): create page and display linked media server accounts
* feat(dropdown): add new shared Dropdown component
Adds a shared component for plain dropdown menus, based on the headlessui Menu component. Updates
the `ButtonWithDropdown` component to use the same inner components, ensuring that the only
difference between the two components is the trigger button, and both use the same components for
the actual dropdown menu.
* refactor(modal): add support for configuring button props
* feat(linked-accounts): add support for linking/unlinking jellyfin accounts
* feat(linked-accounts): support linking/unlinking plex accounts
* fix(linked-accounts): probibit unlinking accounts in certain cases
Prevents the primary administrator from unlinking their media server account (which would break
sync). Additionally, prevents users without a configured local email and password from unlinking
their accounts, which would render them unable to log in.
* feat(linked-accounts): support linking/unlinking emby accounts
* style(dropdown): improve style class application
* fix(server): improve error handling and API spec
* style(usersettings): improve syntax & performance of user password checks
* style(linkedaccounts): use applicationName in page description
* fix(linkedaccounts): resolve typo
* refactor(app): remove RequestError class
By default, useSWRInfinite revalidates the first page every time a new page is loaded, resulting in
additional requests being sent. This PR disables this behavior.
fix#1380
* feat(settings): add a disclaimer for dns servers and ipv4 first settings
This PR adds a disclaimer to warn the user that he should use the network settings of his
containers/system first instead of this one.
* fix: add missing translations
* feat: create a new Advanced Network Settings section
* Update src/components/Settings/SettingsNetwork/index.tsx
Co-authored-by: fallenbagel <98979876+fallenbagel@users.noreply.github.com>
* Update src/i18n/locale/en.json
Co-authored-by: fallenbagel <98979876+fallenbagel@users.noreply.github.com>
* fix: rename to Force IPv4 Resolution First
---------
Co-authored-by: fallenbagel <98979876+fallenbagel@users.noreply.github.com>
* refactor(settings): move network settings to their own settings tab
This PR moves the network settings out of the General Settings section to a new Netowrk Settings
tab.
* fix: add missing translations
* fix: fix cypress tests for network settings
* refactor: create a separate section for network settings
* fix: assign the keep-alive value explicitly
The Node.js documentation mentions that the default keep-alive value is not used when creating a
global agent manually, which is done in customProxyAgent.ts.
re #1365
* fix: typo
* ci: set the pnpm version number explicitly
pnpm latest version is now v10. We still use v9, and the latest version of pnpm was used in
Dockerfile instead of v9.
* ci: add missing pnpm v9
By default, the jellyfinAuthToken of every user was always retrieved from the database, and
sometimes sent back to the client. Any logged-in user could retrieve this token via a request
containing admin user information, and use it to gain full access to Jellyfin. This PR removes the
auth token and the device ID from the fields selected by default by TypeORM.
Due to merging issues with upstream, some jobs for the Plex media server where also running on
Jellyfin/Emby instances. This PR makes them run only when the media server is Plex.
fix#1329
This PR fixes a bug where the validation error message is displayed over and over because of a React
useEffect dependency issue. Previously, the `validateLibraries()` function was being called inside a
useEffect that depended on a state that this function was updating.
* ci: push individual arch digest only and merge from digest
* ci: correct syntax for docker manifest
* ci: add the missing id to the build step
* ci: set proper ids and output digest that is dependant on matrix.id
* ci: proper dynamic outputs by manually echoing it out
* ci: remove unnecessary test step
* ci: fix typo when passing sanitised platform to github env
* ci: hardcode a platform & owner for testing sanitation
* ci: fix typo
* ci: fix typo
* ci: fix yet another typo
* ci: fix yet another typo
* ci: another typo when echoing the tested variables fixed
* ci: properly echo the values from github env
* ci: attempt to echo out the sanitised variables
* ci: finalise the sanitation test and remove it from lint & test build
This has to be done now that arm64 and amd64 runs as two seperate jobs. Otherwise, whichever
finishes the last would override the other one when pushed
Added platform specific cache scoping and turned off provenance to prevent manifest merging. In
addition we are now using ubuntu24.04 in an attempt to get the job to run as ubuntu-22.04 were
stalled for more than 18 hours.
* ci: utilise the linux arm64 hosted runners
This is an attempt to utilise the linux arm64 hosted runners which should reduce the build times
significantly. In addition, this should leverage the github's built-in caching.
* ci: fix typo
- upgrade jellyseerr to 2.3.0
- disable HPA as it's not documented and not useful
- migrate container image to ghcr.io registry
Signed-off-by: Ludovic Ortega <ludovic.ortega@adminafk.fr>
* feat(settings): add settings for custom DNS servers and IPv4 resolution first
This PR adds settings to change the DNS servers Jellyseerr uses and to force Jellyseerr to resolve
DNS queries using IPv4 first. These settings aim to make it easier for less experienced users to fix
network errors related to DNS resolution.
* style: fix missing newline
* docs: update the current list of features we offer
* docs: add the missing `)`
Co-authored-by: Gauthier <mail@gauthierth.fr>
* docs: use proper acronym case
Co-authored-by: Gauthier <mail@gauthierth.fr>
* docs: add the missing `)`
Co-authored-by: Gauthier <mail@gauthierth.fr>
---------
Co-authored-by: Gauthier <mail@gauthierth.fr>
If you setup an override rule on a service that is not created yet, the override rule doesn't get
added to the service because it has no ID, but a record for that override rule is nonthless created.
This PR allows override rules only when the service is setup.
This change is done to adhere with the TMDB rule of having one apikey per app and since jellyseerr
has diverged from overseerr, it is best practice to use our own apikey so that TMDB can properly
identify any issues that could be caused by jellyseerr
Adds a guard clause to skip region migration if discoverRegion and
streamingRegion properties already exist in settings. This prevents
accidental overwrites of existing region settings during multiple runs
and ensures the migration only executes when needed.
Previously, the migration would run every time regardless of whether the
new region properties existed, potentially overwriting user preferences.
fix#1251
* fix: resolve plex user mismatch due to caching issues
This commit addresses an issue where cached responses for PlexTV API
requests could return incorrect user data when multiple users were logged in.
This was caused by a shared cache key that did not account for differences
in auth tokens, i.e `X-Plex-Token`. The `serializeCacheKey` method should
now include headers in the cache key generation to ensure unique cache keys.
This should fix the plex user mismatch that occurred due to the same
cache key being used without accounting for the difference in auth
token.
fix#1227
* fix: adds the default params and optional params, add the headers in all methods
* refactor: apply review commits and rename params to options in cachekey
* chore: update nodejs to 22 in an attempt to fix undici errors
This is an attempt to fix the undici errors introduced after the switch
from axios to native fetch. The decision was made as it native fetch on
node 20 seems to be "experimental" and
> since native fetch is no longer experimental since Node 21
* chore: increase the required node version
* build: update nodejs version to 22
* chore: update nodejs version to 22
* chore: update @types/node to v22
* chore(gen-docs): update the gen-docs node engine requirement to 22
* refactor: replace streaming providers' name with their corresponding logo
re #919
* refactor: change default image opacity and the on hover opacity as well to match the overall ui/ux
---------
Co-authored-by: JoaquinOlivero <joaquin.olivero@hotmail.com>
This commit resolves an issue where the continue button in setup step 3 remained disabled after a
page refresh even when libraries are toggled. This was happening because
`mediaServerSettingsComplete` state was reset on refresh and not correctly re-initialized.
This change optimises the media updates to avoid unneccessary lifecycle hook executions which
results in potential recursion for POSTGRESQL compatibility. This should prevent an issue where
after a TV request, the tv request would get sent to sonarr and notification for it would get sent
over and over and over again
This PR clears the Radarr/Sonarr cache after a request has been made, because the media status on
Radarr/Sonarr will no longer be good. It also resolves a bug that prevented the media from being
deleted after a request had been sent to Radarr/Sonarr.
fix#1207
This PR adds an error message when the database has no admin user and Jellyseerr has already been
set up (i.e. settings.json is filled in), instead of having a generic error message.
When a series is requested, an event is triggered by TypeORM after the request status has been
updated. The function executed by this event updated the request status to "PROCESSING", even if the
request already had this status. This triggered the same function once again, which repeated the
update, in an endless loop.
The request count subquery was causing issues with some PostgreSQL
configurations due to case sensitivity in column aliases. Modified the
query to use an explicit subquery with a properly named alias to ensure
consistent behavior across different database setups.
When the streaming region is set to another value than the default one, the setting starts toggling
itself from the default value to the new value and vice-versa constantly
fix#1200
* fix: properly fetch sonarr/radarr specific override rules and fix its application
- This will fetch the proper sonarr/radarr specific override rule to apply.
- This will skip override rules for anime TV shows unless the `overrideRule`
explicitly includes the anime keyword.
- Apply the most specific override rule first (e.g., rules with multiple
conditions like `genre`, `language`, and `keywords`)
- Debug logs to for override rules
* fix(overriderules): apply overrides to "auto_approve" permission users but not "advaned_request"
This decision is done because it makes no sense to give advanced request users who gets to choose
what values to choose but then the minute they request, it gets overridden, rendering the whole
modal completely useless. In addition, admin/manage_request permission users who modify requests,
the minute they modify it will get overridden as well so it makes no sense to override their
requests
* fix: use default service instance for override rules
---------
Co-authored-by: Gauthier <mail@gauthierth.fr>
Updated the logic of override rules to be applied during the request phase and not during
send-to-arr phase. In addition, override rules will only apply for non-admin/non-auto-approve users.
fix#1195
* feat: add a setting for special episodes
This PR adds a separate setting for special episodes and disables them by default, to avoid unwanted
library status updates.
* refactor(settings): re-order setting for allow specials request
---------
Co-authored-by: fallenbagel <98979876+Fallenbagel@users.noreply.github.com>
* feat: create the basis for the override rules
* feat: add support for sonarr and keywords to override rules
* feat: apply override rules in the media request
* feat: add users to override rules
* fix: save the settings modified by the override rules
* fix: resolve type errors
* style: run prettier
* fix: add missing migration
* fix: correct sonarr override rules
* fix: create PostgreSQL migration and fix SQLite migration
* fix: resolve type naming and fix i18n issue
* fix: remove unrelated changes to the PR
The Sort Direction was loaded with values from the localStorage, but `undefined` was assigned if no
previous Sort Direction existed, causing the client to send undefined as a string for the Sort
Direction.
fix#1147
If Jellyseerr can't connect to Radarr/Sonarr, the "Recent Requests" slider will not load because of
the error throwed when trying to get the Quality Profile. This PR catch this error so the recent
requests are well displayed.
* feat: add separate setting for streaming region
Currently, the "Currently Streaming On" information is based on the Discover Region setting. This PR
adds a new setting to specify which region should be used to display the streaming region.
re #890
* fix: add missing newline
* fix: rename migration function
* fix: use tmdb first as metadata provider and fallback to tvdb
This PR changes the order of the metadata provider to TMDB first and then fallback to TheTVDB if no
TMDB metadata is available. Previously, TheTVDB was used first and there was no fallback if the
latter failed.
fix#1137
* feat: add logs
* fix: add logs
* fix: add show name
Previously, the "Play on Jellyfin" or "Watch Trailers" buttons used the onClick event and
window.open to open links, instead of using 'a' elements with a href.
* docs: add a troubleshooting page
This troubleshooting page explains how to solve dns blockage issues from ISPs and how to fix some
slowdowns / ipv6 errors with the forceIpv4First environment variable.
fix#1098
* fix: specify the difference between DNS blocking and total blocking from the ISP
Refactoring avatarproxy to retrieve avatars from the Jellyfin API instead of the public endpoint
broke Emby avatars that doesn't have this API method.
fix#1101
When writing the settings.json file ensure that the file is fully written by writing it to temporary
file before renaming it to the final settings path. This should prevent issues where the config gets
lost due to the file being corrupted.
* feat(pushover): attach image to pushover notification payload (#3701)
* fix: api language query parameter (#3720)
* docs: add j0srisk as a contributor for code (#3745) [skip ci]
* docs: update README.md
* docs: update .all-contributorsrc
---------
Co-authored-by: allcontributors[bot] <46447321+allcontributors[bot]@users.noreply.github.com>
* feat(tooltip): add tooltip to display exact time on date hover (#3773)
Co-authored-by: Loetwiek <lodommerholtcm@gmail.com>
* docs: add Loetwiek as a contributor for code (#3776) [skip ci]
* docs: update README.md
* docs: update .all-contributorsrc
---------
Co-authored-by: allcontributors[bot] <46447321+allcontributors[bot]@users.noreply.github.com>
* fix(ui): ensure title fits into the `view collection` box (#3696)
* fix(docs): correct openapi docs minor issues (#3648)
* docs: add Fuochi as a contributor for doc (#3826)
Co-authored-by: allcontributors[bot] <46447321+allcontributors[bot]@users.noreply.github.com>
* feat: translations update from Hosted Weblate (#3597)
* feat(lang): translated using Weblate (Portuguese (Brazil))
Currently translated at 100.0% (1234 of 1234 strings)
feat(lang): translated using Weblate (Portuguese (Brazil))
Currently translated at 99.8% (1232 of 1234 strings)
Co-authored-by: Cleiton Carvalho <cleitonsilvacarvalho@gmail.com>
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/pt_BR/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (German)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (German)
Currently translated at 100.0% (1234 of 1234 strings)
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: Nandor Rusz <nandor.rusz@vodafone.de>
Co-authored-by: Thomas Schöneberg <ta.schoeneberg@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/de/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (Danish)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Danish)
Currently translated at 100.0% (1236 of 1236 strings)
feat(lang): translated using Weblate (Danish)
Currently translated at 100.0% (1234 of 1234 strings)
Co-authored-by: Anders Ecklon <aecklon@gmail.com>
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: Kenneth Hansen <erathor@live.dk>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/da/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (Greek)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Greek)
Currently translated at 100.0% (1236 of 1236 strings)
Co-authored-by: BeardedWatermelon <BeardedWatermelon@users.noreply.hosted.weblate.org>
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/el/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (Russian)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Russian)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Russian)
Currently translated at 99.5% (1234 of 1240 strings)
feat(lang): translated using Weblate (Russian)
Currently translated at 100.0% (1234 of 1234 strings)
feat(lang): translated using Weblate (Russian)
Currently translated at 100.0% (1234 of 1234 strings)
feat(lang): translated using Weblate (Russian)
Currently translated at 100.0% (1234 of 1234 strings)
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: SoundwaveUwU <SoundwaveUwU@users.noreply.hosted.weblate.org>
Co-authored-by: SoundwaveUwU <noreply@1000-7.space>
Co-authored-by: Димитър Мазнеков (Topper) <d.maznekov@gmail.com>
Co-authored-by: Кирилл Тюрин <1337soundwave1337@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/ru/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (Romanian)
Currently translated at 37.1% (461 of 1240 strings)
feat(lang): translated using Weblate (Romanian)
Currently translated at 37.0% (459 of 1240 strings)
feat(lang): translated using Weblate (Romanian)
Currently translated at 34.8% (432 of 1240 strings)
Co-authored-by: Don Cezar <goldie.czr@gmail.com>
Co-authored-by: Dragos <themsk@yahoo.com>
Co-authored-by: Eduard Oancea <uberfly@420blaze.it>
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/ro/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (Bulgarian)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Bulgarian)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Bulgarian)
Currently translated at 57.4% (712 of 1240 strings)
feat(lang): translated using Weblate (Bulgarian)
Currently translated at 13.2% (164 of 1240 strings)
feat(lang): translated using Weblate (Bulgarian)
Currently translated at 4.8% (60 of 1240 strings)
feat(lang): added translation using Weblate (Bulgarian)
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: sct <sctsnipe@gmail.com>
Co-authored-by: Димитър Мазнеков (Topper) <d.maznekov@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/bg/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (Ukrainian)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 99.1% (1230 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 99.1% (1230 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 99.1% (1230 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 97.9% (1215 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 82.0% (1017 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 72.9% (905 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 72.9% (905 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 71.3% (885 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 64.9% (805 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 64.4% (799 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 63.8% (792 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 63.7% (791 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 57.5% (714 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 49.9% (619 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 35.9% (446 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 35.9% (446 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 32.1% (399 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 24.6% (306 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 18.9% (235 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 17.5% (217 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 17.3% (215 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 8.0% (100 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 3.3% (41 of 1240 strings)
feat(lang): added translation using Weblate (Ukrainian)
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: Michael Michael <michaelvelosk@gmail.com>
Co-authored-by: sct <sctsnipe@gmail.com>
Co-authored-by: Сергій <sergiy.goncharuk.1@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/uk/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (Catalan)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Catalan)
Currently translated at 100.0% (1240 of 1240 strings)
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: dtalens <databio@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/ca/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (Czech)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Czech)
Currently translated at 99.6% (1236 of 1240 strings)
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: Karel Krýda <karel.kryda@gmail.com>
Co-authored-by: Smexhy <roman.bartik@icloud.com>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/cs/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (Croatian)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Croatian)
Currently translated at 99.8% (1238 of 1240 strings)
feat(lang): translated using Weblate (Croatian)
Currently translated at 99.8% (1238 of 1240 strings)
feat(lang): translated using Weblate (Croatian)
Currently translated at 99.6% (1236 of 1240 strings)
feat(lang): translated using Weblate (Croatian)
Currently translated at 99.5% (1235 of 1240 strings)
feat(lang): translated using Weblate (Croatian)
Currently translated at 99.5% (1235 of 1240 strings)
feat(lang): translated using Weblate (Croatian)
Currently translated at 99.1% (1230 of 1240 strings)
feat(lang): translated using Weblate (Croatian)
Currently translated at 97.5% (1210 of 1240 strings)
feat(lang): translated using Weblate (Croatian)
Currently translated at 95.5% (1185 of 1240 strings)
feat(lang): translated using Weblate (Croatian)
Currently translated at 95.6% (1182 of 1236 strings)
feat(lang): translated using Weblate (Croatian)
Currently translated at 95.6% (1182 of 1236 strings)
feat(lang): translated using Weblate (Croatian)
Currently translated at 95.2% (1177 of 1236 strings)
feat(lang): translated using Weblate (Croatian)
Currently translated at 95.2% (1177 of 1236 strings)
feat(lang): translated using Weblate (Croatian)
Currently translated at 94.3% (1166 of 1236 strings)
feat(lang): translated using Weblate (Croatian)
Currently translated at 91.7% (1134 of 1236 strings)
feat(lang): translated using Weblate (Croatian)
Currently translated at 91.7% (1134 of 1236 strings)
Co-authored-by: Bruno Ševčenko <bs3vcenk@gmail.com>
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: Milo Ivir <mail@milotype.de>
Co-authored-by: Stjepan <stjepstjepanovic@gmail.com>
Co-authored-by: lpispek <lpispek@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/hr/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (Hungarian)
Currently translated at 91.3% (1133 of 1240 strings)
feat(lang): translated using Weblate (Hungarian)
Currently translated at 89.3% (1108 of 1240 strings)
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: Levente Szajkó <leviko112@gmail.com>
Co-authored-by: Nandor Rusz <nandor.rusz@vodafone.de>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/hu/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (Hebrew)
Currently translated at 13.9% (172 of 1236 strings)
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: osh <osh@osh.cc>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/he/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (Polish)
Currently translated at 99.1% (1225 of 1236 strings)
Co-authored-by: Eryk Michalak <gnu.ewm@protonmail.com>
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/pl/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (Italian)
Currently translated at 92.8% (1148 of 1236 strings)
Co-authored-by: Francesco <francy.ammirati@hotmail.com>
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/it/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (Arabic)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Arabic)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Arabic)
Currently translated at 100.0% (1234 of 1234 strings)
Co-authored-by: Fhd-pro <juve.11@msn.com>
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/ar/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (Dutch)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Dutch)
Currently translated at 100.0% (1234 of 1234 strings)
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: Kobe <kobaubarr@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/nl/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (Spanish)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Spanish)
Currently translated at 100.0% (1236 of 1236 strings)
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: gallegonovato <fran-carro@hotmail.es>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/es/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (French)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (French)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (French)
Currently translated at 100.0% (1236 of 1236 strings)
feat(lang): translated using Weblate (French)
Currently translated at 99.9% (1235 of 1236 strings)
feat(lang): translated using Weblate (French)
Currently translated at 99.9% (1235 of 1236 strings)
Co-authored-by: Baptiste <baptiste.nee@me.com>
Co-authored-by: Dimitri <dimitridroeck@gmail.com>
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: Maxime Lafarie <maxime.lafarie@gmail.com>
Co-authored-by: Miguel <mig.mllr@gmail.com>
Co-authored-by: asurare <jonathan.biteau16@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/fr/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (Swedish)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Swedish)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Swedish)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Swedish)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Swedish)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Swedish)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Swedish)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Swedish)
Currently translated at 100.0% (1236 of 1236 strings)
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: Per Erik <urbanlolface@gmail.com>
Co-authored-by: Shjosan <shjosan@kakmix.co>
Co-authored-by: bittin1ddc447d824349b2 <bittin@reimu.nl>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/sv/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (Finnish)
Currently translated at 2.6% (33 of 1240 strings)
feat(lang): added translation using Weblate (Finnish)
Co-authored-by: Eero Konttaniemi <eero.konttaniemi@gmail.com>
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: sct <sctsnipe@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/fi/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (Serbian)
Currently translated at 50.8% (630 of 1240 strings)
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: Milan Smudja <smudja@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/sr/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (Korean)
Currently translated at 100.0% (1234 of 1234 strings)
Co-authored-by: Developer J <jshsakura@gmail.com>
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/ko/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (Chinese (Simplified))
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Chinese (Simplified))
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Chinese (Simplified))
Currently translated at 100.0% (1234 of 1234 strings)
Co-authored-by: Haohao Zhang <hyacz@foxmail.com>
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: lkw123 <lkw20010211@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/zh_Hans/
Translation: Overseerr/Overseerr Frontend
---------
Co-authored-by: Cleiton Carvalho <cleitonsilvacarvalho@gmail.com>
Co-authored-by: Nandor Rusz <nandor.rusz@vodafone.de>
Co-authored-by: Thomas Schöneberg <ta.schoeneberg@gmail.com>
Co-authored-by: Anders Ecklon <aecklon@gmail.com>
Co-authored-by: Kenneth Hansen <erathor@live.dk>
Co-authored-by: BeardedWatermelon <BeardedWatermelon@users.noreply.hosted.weblate.org>
Co-authored-by: SoundwaveUwU <SoundwaveUwU@users.noreply.hosted.weblate.org>
Co-authored-by: SoundwaveUwU <noreply@1000-7.space>
Co-authored-by: Димитър Мазнеков (Topper) <d.maznekov@gmail.com>
Co-authored-by: Кирилл Тюрин <1337soundwave1337@gmail.com>
Co-authored-by: Don Cezar <goldie.czr@gmail.com>
Co-authored-by: Dragos <themsk@yahoo.com>
Co-authored-by: Eduard Oancea <uberfly@420blaze.it>
Co-authored-by: sct <sctsnipe@gmail.com>
Co-authored-by: Michael Michael <michaelvelosk@gmail.com>
Co-authored-by: Сергій <sergiy.goncharuk.1@gmail.com>
Co-authored-by: dtalens <databio@gmail.com>
Co-authored-by: Karel Krýda <karel.kryda@gmail.com>
Co-authored-by: Smexhy <roman.bartik@icloud.com>
Co-authored-by: Bruno Ševčenko <bs3vcenk@gmail.com>
Co-authored-by: Milo Ivir <mail@milotype.de>
Co-authored-by: Stjepan <stjepstjepanovic@gmail.com>
Co-authored-by: lpispek <lpispek@gmail.com>
Co-authored-by: Levente Szajkó <leviko112@gmail.com>
Co-authored-by: osh <osh@osh.cc>
Co-authored-by: Eryk Michalak <gnu.ewm@protonmail.com>
Co-authored-by: Francesco <francy.ammirati@hotmail.com>
Co-authored-by: Fhd-pro <juve.11@msn.com>
Co-authored-by: Kobe <kobaubarr@gmail.com>
Co-authored-by: gallegonovato <fran-carro@hotmail.es>
Co-authored-by: Baptiste <baptiste.nee@me.com>
Co-authored-by: Dimitri <dimitridroeck@gmail.com>
Co-authored-by: Maxime Lafarie <maxime.lafarie@gmail.com>
Co-authored-by: Miguel <mig.mllr@gmail.com>
Co-authored-by: asurare <jonathan.biteau16@gmail.com>
Co-authored-by: Per Erik <urbanlolface@gmail.com>
Co-authored-by: Shjosan <shjosan@kakmix.co>
Co-authored-by: bittin1ddc447d824349b2 <bittin@reimu.nl>
Co-authored-by: Eero Konttaniemi <eero.konttaniemi@gmail.com>
Co-authored-by: Milan Smudja <smudja@gmail.com>
Co-authored-by: Developer J <jshsakura@gmail.com>
Co-authored-by: Haohao Zhang <hyacz@foxmail.com>
Co-authored-by: lkw123 <lkw20010211@gmail.com>
* feat(lang): add lang config for Bulgarian, Finnish, Ukrainian, Indonesian, Slovak, Turkish and Maori (#3834)
* fix: correct deeplinks on iPad (#3883)
* feat(studios): add a24 to studios list (#3902)
* docs: add demrich as a contributor for code (#3906) [skip ci]
* docs: update README.md
* docs: update .all-contributorsrc
---------
Co-authored-by: allcontributors[bot] <46447321+allcontributors[bot]@users.noreply.github.com>
* feat(watchlist): Cache watchlist requests with matching E-Tags (#3901)
* perf(watchlist): add E-Tag caching to Plex watchlist requests
* refactor(watchlist): increase frequency of watchlist requests
* fix: sync watchlist every 3 min instead of 3 sec
* docs: add maxnatamo as a contributor for code (#3907) [skip ci]
* docs: update README.md
* docs: update .all-contributorsrc
---------
Co-authored-by: allcontributors[bot] <46447321+allcontributors[bot]@users.noreply.github.com>
* feat(plex): refresh token schedule (#3875)
* feat: refresh token schedule
fix#3861
* fix(i18n): add i18n message
* refactor(plextv): use randomUUID crypto instead custom function
* docs: add DamsDev1 as a contributor for code (#3924) [skip ci]
* docs: update README.md
* docs: update .all-contributorsrc
---------
Co-authored-by: allcontributors[bot] <46447321+allcontributors[bot]@users.noreply.github.com>
* fix: correct icon showing on certain phones when not pulled (#3939)
* feat: add support for requesting "Specials" for TV Shows (#3724)
* feat: add support for requesting "Specials" for TV Shows
This commit is responsible for adding support in Overseerr for requesting "Special" episodes for TV
Shows. This request has become especially pertinent when you consider shows like "Doctor Who". These
shows have Specials that are critical to understanding the plot of a TV show.
fix#779
* chore(yarn.lock): undo inappropriate changes to yarn.lock
I was informed by @sct in a comment on the #3724 PR that it was not appropriate to commit the
changes that ended up being made to the yarn.lock file. This commit is responsible, then, for
undoing the changes to the yarn.lock file that ended up being submitted.
* refactor: change loose equality to strict equality
I received a comment from OwsleyJr pointing out that we are using loose equality when we could
alternatively just be using strict equality to increase the robustness of our code. This commit
does exactly that by squashing out previous usages of loose equality in my commits and replacing
them with strict equality
* refactor: move 'Specials' string to a global message
Owsley pointed out that we are redefining the 'Specials' string multiple times throughout this PR.
Instead, we can just move it as a global message. This commit does exactly that. It squashes out and
previous declarations of the 'Specials' string inside the src files, and moves it directly to the
global messages file.
* docs: add AhmedNSidd as a contributor for code (#3964) [skip ci]
* docs: update README.md
* docs: update .all-contributorsrc
---------
Co-authored-by: allcontributors[bot] <46447321+allcontributors[bot]@users.noreply.github.com>
---------
Co-authored-by: Isaac M <masesisaac@gmail.com>
Co-authored-by: Joseph Risk <j0srisk@gmail.com>
Co-authored-by: allcontributors[bot] <46447321+allcontributors[bot]@users.noreply.github.com>
Co-authored-by: Loetwiek <79059734+Loetwiek@users.noreply.github.com>
Co-authored-by: Loetwiek <lodommerholtcm@gmail.com>
Co-authored-by: Fallenbagel <98979876+Fallenbagel@users.noreply.github.com>
Co-authored-by: Fuochi <ffuochi@hotmail.com>
Co-authored-by: Weblate (bot) <hosted@weblate.org>
Co-authored-by: Cleiton Carvalho <cleitonsilvacarvalho@gmail.com>
Co-authored-by: Nandor Rusz <nandor.rusz@vodafone.de>
Co-authored-by: Thomas Schöneberg <ta.schoeneberg@gmail.com>
Co-authored-by: Anders Ecklon <aecklon@gmail.com>
Co-authored-by: Kenneth Hansen <erathor@live.dk>
Co-authored-by: BeardedWatermelon <BeardedWatermelon@users.noreply.hosted.weblate.org>
Co-authored-by: SoundwaveUwU <SoundwaveUwU@users.noreply.hosted.weblate.org>
Co-authored-by: SoundwaveUwU <noreply@1000-7.space>
Co-authored-by: Димитър Мазнеков (Topper) <d.maznekov@gmail.com>
Co-authored-by: Кирилл Тюрин <1337soundwave1337@gmail.com>
Co-authored-by: Don Cezar <goldie.czr@gmail.com>
Co-authored-by: Dragos <themsk@yahoo.com>
Co-authored-by: Eduard Oancea <uberfly@420blaze.it>
Co-authored-by: sct <sctsnipe@gmail.com>
Co-authored-by: Michael Michael <michaelvelosk@gmail.com>
Co-authored-by: Сергій <sergiy.goncharuk.1@gmail.com>
Co-authored-by: dtalens <databio@gmail.com>
Co-authored-by: Karel Krýda <karel.kryda@gmail.com>
Co-authored-by: Smexhy <roman.bartik@icloud.com>
Co-authored-by: Bruno Ševčenko <bs3vcenk@gmail.com>
Co-authored-by: Milo Ivir <mail@milotype.de>
Co-authored-by: Stjepan <stjepstjepanovic@gmail.com>
Co-authored-by: lpispek <lpispek@gmail.com>
Co-authored-by: Levente Szajkó <leviko112@gmail.com>
Co-authored-by: osh <osh@osh.cc>
Co-authored-by: Eryk Michalak <gnu.ewm@protonmail.com>
Co-authored-by: Francesco <francy.ammirati@hotmail.com>
Co-authored-by: Fhd-pro <juve.11@msn.com>
Co-authored-by: Kobe <kobaubarr@gmail.com>
Co-authored-by: gallegonovato <fran-carro@hotmail.es>
Co-authored-by: Baptiste <baptiste.nee@me.com>
Co-authored-by: Dimitri <dimitridroeck@gmail.com>
Co-authored-by: Maxime Lafarie <maxime.lafarie@gmail.com>
Co-authored-by: Miguel <mig.mllr@gmail.com>
Co-authored-by: asurare <jonathan.biteau16@gmail.com>
Co-authored-by: Per Erik <urbanlolface@gmail.com>
Co-authored-by: Shjosan <shjosan@kakmix.co>
Co-authored-by: bittin1ddc447d824349b2 <bittin@reimu.nl>
Co-authored-by: Eero Konttaniemi <eero.konttaniemi@gmail.com>
Co-authored-by: Milan Smudja <smudja@gmail.com>
Co-authored-by: Developer J <jshsakura@gmail.com>
Co-authored-by: Haohao Zhang <hyacz@foxmail.com>
Co-authored-by: lkw123 <lkw20010211@gmail.com>
Co-authored-by: Jordan Jones <me@jjones.tech>
Co-authored-by: Brandon Cohen <brandon@z3hn.dev>
Co-authored-by: David Emrich <demrich@me.com>
Co-authored-by: Max T. Kristiansen <me@maxtrier.dk>
Co-authored-by: Damien Fajole <60252259+DamsDev1@users.noreply.github.com>
Co-authored-by: Ahmed Siddiqui <36286128+AhmedNSidd@users.noreply.github.com>
When a series has no equivalent in TheTVDB used by Sonarr, a popup is displayed to select the series
on TheTVDB. The images in this popup come from artworks.thetvdb.com, which was not an authorized
domain for Next.js images.
fix#1075
* fix: use less strict validation for external URLs
Default url validation from the Yup module doesn't allow URLs like "http://custom-host", while it is
a correct value for an external URL.
fix#1068
* fix: resolve GitHub CodeQL review
* feat: improve discord notifications
Added a field in the general notification settings to allow a role to be mentioned in the webhook
message via discord notification agent
* feat: add discord role id notification - locales
* Update reverse-proxy.mdx
Fix posters not showing up when using sub-folder (at least with NPM)
* Update docs/extending-jellyseerr/reverse-proxy.mdx
Added `avatarproxy` support
Co-authored-by: Gauthier <mail@gauthierth.fr>
---------
Co-authored-by: Gauthier <mail@gauthierth.fr>
This commit improves the logging of jellyfin api. This will also fix the wrong logging of throwing
an invalid credentials when jellyfin/emby is unreachable.
re #1053
* perf: remove eager load of Blacklist entity from Media entity
Try to resolve some performance issues by removing the eager loading of Blacklist items from the
Media entity
* fix: fix ManageSlideOver for blacklist
* perf(blacklist): request data only when modal is shown
For admin users, the button to blacklist a media (used on every media card) was displaying a Modal,
that was requesting data BEFORE the modal was displayed. This resulted in dozens of additional
requests everytime media cards were displayed.
* perf(blacklist): remove useless ratelimit
This PR fix a bug when a translation message has two single quote like "message": "hello 'world'",
the extractMessages function was escaping the message correcly.
This commit adds extraction of basic authentication credentials from the URL and then pass the
credentials as the `Authorization` header. And then credentials are removed from the URL before
being passed to fetch. This is done because fetch request cannot be constructed using a URL with
credentials
fix#1027
* fix: use fs/promises for settings
This PR switches from synchronous operations with the 'fs' module to asynchronous operations with
the 'fs/promises' module. It also corrects a small error with hostname migration.
* fix: add missing merge function of default and current config
* feat: add bypass list, bypass local addresses and username/password to proxy setting
This PR adds more options to the proxy setting, like username/password authentication, bypass list
of domains and bypass local addresses. The UX is taken from *arrs.
* fix: add error handling for proxy creating
* fix: remove logs
* fix: use fs/promises for settings
This PR switches from synchronous operations with the 'fs' module to asynchronous operations with
the 'fs/promises' module. It also corrects a small error with hostname migration.
* fix: add missing merge function of default and current config
* refactor: add more logs to migration
Currently, the language profiles removed with Sonarr v4 are still available for compatibility
reasons. However, Jellyseerr still queries and displays language profiles (marking them as
“Deprecated”). This PR hides and does not query language profiles unless Sonarr v3 is used.
fix#207
* feat: add more logs to migrations and create a settings backup
* fix: avoid backup to be replaced at next startup
* fix: resolve review comments
* fix: try to fix CodeQL warnings
* fix: cache Jellyfin/Emby avatars from API
Previously, avatars were cached using image links from Jellyfin/Emby. Now, avatar images are
obtained directly from the API to avoid some configuration bugs.
* fix: update avatar on new login
* fix: rewrite avatarproxy and CachedImage
Avatar proxy was allowing every request to be proxied, no matter the original ressource's origin or
filetype. This PR fixes it be allowing only relevant resources to be cached, i.e. Jellyfin/Emby
images and TMDB images.
fix#1012, #1013
* fix: resolve CodeQL error
* fix: resolve CodeQL error
* fix: resolve review comments
* fix: resolve review comment
* fix: resolve CodeQL error
* fix: update imageproxy path
During the migration from Axios to fetch, we overlooked the fact that Axios automatically handled
CSRF tokens, while fetch does not. When CSRF protection was turned on, requests were failing with an
"invalid CSRF token" error for users accessing the app even via HTTPS. This commit
overrides fetch to ensure that the CSRF token is included in all requests.
fix#1011
Currently, we sync with sonarr/radarr with whatever value those return. Radarr/Sonarr syncs the
activity from the download clients every few minutes. This leads to inaccurate estimated download
times, because of the refresh delay with Jellyseerr and the *arrs.
This PR fixes this by making a request to the *arrs to refresh the monitored downloads just before
we get these downloads information.
re #866
The time-to-live (TTL) of cookies stored in the database was incorrect because the connect-typeorm
library takes a TTL in seconds and not milliseconds, making cookies valid for ~82 years instead of
30 days.
fix#991
* feat: allow requests managers to delete media files
* fix(i18n): add missing translations
* fix(i18n): remove french translation
* refactor: use fetch API
* fix(blacklist): add blacklist to mobile menu
The "Blacklist" menu was only available in the desktop sidebar, not in the mobile menu.
fix#979
* fix: export translations
* refactor: proxy and cache user avatar images
* fix: extract keys
* fix: set avatar image URL
* fix: show the correct avatar in the list of available users in advanced request
* fix(s): set correct src URL for cached image
* fix: remove unexpired unused image when a user changes their avatar
* fix: requested changes
* refactor: use 'mime' package to detmerine file extension
* style: grammar
* refactor: checks if the default avatar is cached to avoid creating duplicates for different users
* fix: fix vulnerability
* fix: fix incomplete URL substring sanitization
* refactor: only cache avatar with http url protocol
* fix: remove log and correctly set the if statement for the cached image component
* fix: avatar images not showing on issues page
* style: formatting
---------
Co-authored-by: JoaquinOlivero <joaquin.olivero@hotmail.com>
* feat: blacklist media items
re #490
* feat: blacklist media items
* feat: blacklist media items
* style: formatting
* refactor: close the manage slide-over when the media item is removed from the blacklist
* fix: fix media data in the db when blacklisting an item
* refactor: refactor component to accept show boolean
* refactor: hide watchlist button in the media page when it's blacklisted. Also add a blacklist button
* style: formatting
---------
Co-authored-by: JoaquinOlivero <joaquin.olivero@hotmail.com>
This fix changes the behavior of how Overseerr requests series data from Sonarr. Previously, when adding new seasons to a partially available series, Overseerr would initiate a SeriesSearch, causing Sonarr to search for all monitored seasons of the series, including those already available. This behavior is now corrected by executing a MissingEpisodeSearchCommand for the specific seriesId, which aligns with the intended behavior of only searching for and adding the newly requested seasons that are not already available.
Resolves: https://github.com/Fallenbagel/jellyseerr/issues/710
* Added the ability to set the API key with the env var API_KEY
* Adding debug statements
* Updating
* feat: adding env var for API key
* feat: update
* fix(settings/index.ts): remove a print statement that logs the API key to the console
* Update en.json
* docs: added documentation about API_KEY environment variable
* feat: add a check to ensure API key always uses env var if provided
* feat: always check the API_KEY env var at startup
* chore: add back the gitkeeps under ./config, accidentally deleted in prev commit
* chore: revert change made to docker-compose that was accidentally committed
When the email is modified in the user settings and it is already taken by someone else, a generic
message saying that something wrong happened, without saying that it is because the email is already
taken by another user. This PR adds this error message for the email.
* feat: add Media Server Selection to Setup Page
Introduce the ability to select the media server type on the setup page. Users can now choose their
preferred media server (e.g., Plex through the Plex sign-in or Emby/Jellyfin sign-in to select
either Emby or Jellyfin). The selected media server type is then reflected in the application
settings. This enhancement provides users with increased flexibility and customization options
during the initial setup process, eliminating the need to rely on environment variables (which
cannot be set if using platforms like snaps). Existing Emby users, who use the environment variable,
should log out and log back in after updating to set their mediaServerType to Emby.
BREAKING CHANGE: This commit deprecates the JELLYFIN_TYPE variable to identify Emby media server and
instead rely on the mediaServerType that is set in the `settings.json`. Existing environment
variable users can log out and log back in to set the mediaServerType to `3` (Emby).
* feat(api): add severType to the api
BREAKING CHANGE: This adds a serverType to the `/auth/jellyfin` which requires a serverType to be
set (`jellyfin`/`emby`)
* refactor: use enums for serverType and rename selectedservice to serverType
* refactor(auth): jellyfin/emby authentication to set MediaServerType
* fix: issue page formatMessage for 4k media
* refactor: cleaner way of handling serverType change using MediaServerType instead of strings
instead of using strings now it will use MediaServerType enums for serverType
* revert: removed conditional render of the auto-request permission
reverts the conditional render toshow the auto-request permission if the mediaServerType was set to
Plex as this should be handled in a different PR and Cypress tests should be modified
accordingly(currently cypress test would fail if this conditional check is there)
* feat: add server type step to setup
* feat: migrate existing emby setups to use emby mediaServerType
* fix: scan jobs not running when media server type is emby
* fix: emby media server type migration
* refactor: change emby logo to full logo
* style: decrease emby logo size in setup screen
* refactor: use title case for servertype i18n message
* refactor(i18n): fix a typo
* refactor: use enums instead of numbers
* fix: remove old references to JELLYFIN_TYPE environment variable
* fix: go back to the last step when refresh the setup page
* fix: move "scanning in background" tip next to the scanning section
* fix: redirect the setup page when Jellyseerr is already setup
---------
Co-authored-by: Gauthier <mail@gauthierth.fr>
* fix: handle status badge for season packs
When a series is downloaded with a season pack, the status tooltip displays only the name of the
first episode as a title, and displays a list of all episodes as a description, with the same file
being repeated for each episode. This PR fixes this, using the season number as the tooltip title
and showing only the season pack file currently being downloaded.
* fix: add missing i18n translation
* feat(jellyfinapi): create Jellyfin API key from admin user
* fix(jellyfinapi): add migration script for Jellyfin API key
* feat(jellyfinapi): use Jellyfin API key instead of admin auth token
* fix(jellyfinapi): fix api key migration
* feat(jellyfinapi): add API key field to Jellyfin settings
* fix: move the API key field in the Jellyfin settings
* feat: adds button on the page of a media item to add or remove it from a user's watchlist
re #730
* fix: whitespace and i18n key
* style: fix code format to the required standards
* refactor: change axios for the fetch api
---------
Co-authored-by: JoaquinOlivero <joaquin.olivero@hotmail.com>
* fix: remove email requirement for the user, and use the username if no email provided
* fix: update translations
* fix: remove useless console.log
* test: fix user list test
* fix: disallow Plex users from changing their email
This commit reverts the nextjs error handler fix that was introduced in #882 as that change requires
further refactor which should be held off for another version owing to the fact that there are
currently a lot of changes ready for the next version of jellyseerr.
* refactor: auto close manage slide on media delete
re #841
* fix: close manage slide-over when removing media item from *arr
---------
Co-authored-by: JoaquinOlivero <joaquin.olivero@hotmail.com>
* refactor: switch ExternalAPI to Fetch API
* fix: add missing auth token in Plex request
* fix: send proper URL params
* ci: try to fix format checker
* ci: ci: try to fix format checker
* ci: try to fix format checker
* refactor: make tautulli use the ExternalAPI class
* refactor: add rate limit to fetch api
* refactor: add rate limit to fetch api
* refactor: switch server from axios to fetch api
* refactor: switch frontend from axios to fetch api
* fix: switch from URL objects to strings
* fix: use the right search params for ExternalAPI
* fix: better log for ExternalAPI errors
* feat: add retry to external API requests
* fix: try to fix network errors with IPv6
* fix: imageProxy rate limit
* revert: remove retry to external API requests
* feat: set IPv4 first as an option
* fix(jellyfinapi): add missing argument in JellyfinAPI constructor
* refactor: clean the rate limit utility
* docs: add querystring support to docker methods
* docs: add query string support to the rest of the tabs
* docs: add admonition for named volumes and emby variable
* docs: setup docusaurus for documentation
* docs: setup tailwind content for docusaurus
* chore: ensure tailwindcss is installed so pages deploy works
* docs: add cname to point to docs
* ci: override format checking for pnpm-lock in gen-docs folder
* docs(gen-docs): readme for docusaurus
* chore(gen-docs): remove unnecessary image files
* docs: remove installation instructions (moved to docs)
* ci: rename docusaurus workflows to a more explicit name
* style(gen-docs): custom color for links
* docs: add more doc pages
* style: gradient menu link bg, proper jellyseerr font & footer bg color
* docs: fix proper link to relative pages
* style: tab-items also now uses the proper jellyseerr colors
* style: use prismTheme shadesOfPurple for codeblock/syntax highlighting
* docs: fix broken links
* docs: fix broken links
* docs: fix broken anchors
* chore(gen-docs): local search bar
* style(gen-docs): tab colors
* docs: reverse-proxy documentation
* style(gen-docs): jellyseerr-like cards
* docs: rename baremetal to build from source
* docs: nixpkg version check component
* docs: conditionally render override package derivation block and admonitions
* docs: users section of the documentation
This fix aborts the media availability sync job if the following conditions are met:
a) auth token has expired
b) connection to jellyfin/emby has been lost
Previously, the sync job will continue even if auth token was invalid or
connection was lost, thereby, resulting in removal of series/movies that
were never removed on jellyfin/emby/sonarr/radarr. This also removed the
requests. With the current fix, the sync job should refuse to run unless
the auth token is valid.
* build(postinstall): postinstall script to downgrade typeorm on windows
This is a temporary fix for windows baremetal users until we fix#478
re #478
* fix: use win32 as explained in nodejs docs
* fix: remove DNS caching
DNS caching was initially implemented to avoid too many DNS requests, as Node.js does not cache
them. However, the cacheable-lookup library we used to implement this cache created more problems
than it solved, as it caused many unresolved DNS request errors that weren't occurring before.
* fix: add PNPM lock file to Prettier ignore list
* revert: prettier on PNPM
* refactor: update Next.js and React.js
* refactor: update Next.js images
* refactor: update ESLint rules and fix warnings/errors
* fix: remove old intl polyfill
* fix: add proper size to next/image components
* fix: adjust full-size for next/image components
* fix: temporary allow all domains for image optimization
* build: fixes an issue where dev env could lead to javascript heap out of memory
* fix: resolve webpack cache issue with country-flag-icons
* refactor: switch compiler from Babel to SWC
* fix: resize logo in sidebar
* fix: break word on long path to avoid text overflow
* chore: added sharp for production image optimisation
* fix: change extract script for i18n to a custom script
* fix: resolve GitHub CodeQL alert
* chore: temporarily remove builds for ARMv7
* fix: resize avatar images
* refactor: update Node.js to v20
* fix: resolve various UI issues
* build: migrate yarn to pnpm and restrict engine to node@^20.0.0
* ci: specify the pnpm version to use in workflow actions
* ci: fix typo in pnpm action-setup for cypress workflow
* test(cypress): use pnpm instead of yarn
* style: ran prettier on pnpm-lock
* ci(cypress): setup nodejs v20 in cypress workflow
* ci: pnpm cache to reduce install time
* ci: use sh shell to get pnpm store directory
* build(dockerfile): migrate to pnpm from yarn in docker builds
* build(dockerfile): copy the proper pnpm lockfile
* build: install pnpm for all platforms
* build(dockerfile): remove unnecessary `&&` on apk installation steps
* build: migrate pnpm 8 to 9
* build(dockerfile): add node-gyp back in
* build(dockerfile): install node-gyp through npm
* build(dockerfile): ignore scripts to not run husky install when devdependencies are pruned
* build: migrate to pnpm from yarn
* chore: remove a section that is no longer relevant
---------
Co-authored-by: fallenbagel <98979876+Fallenbagel@users.noreply.github.com>
* feat(pushover): attach image to pushover notification payload (#3701)
* fix: api language query parameter (#3720)
* docs: add j0srisk as a contributor for code (#3745) [skip ci]
* docs: update README.md
* docs: update .all-contributorsrc
---------
Co-authored-by: allcontributors[bot] <46447321+allcontributors[bot]@users.noreply.github.com>
* feat(tooltip): add tooltip to display exact time on date hover (#3773)
Co-authored-by: Loetwiek <lodommerholtcm@gmail.com>
* docs: add Loetwiek as a contributor for code (#3776) [skip ci]
* docs: update README.md
* docs: update .all-contributorsrc
---------
Co-authored-by: allcontributors[bot] <46447321+allcontributors[bot]@users.noreply.github.com>
* fix(ui): ensure title fits into the `view collection` box (#3696)
* fix(docs): correct openapi docs minor issues (#3648)
* docs: add Fuochi as a contributor for doc (#3826)
Co-authored-by: allcontributors[bot] <46447321+allcontributors[bot]@users.noreply.github.com>
* feat: translations update from Hosted Weblate (#3597)
* feat(lang): translated using Weblate (Portuguese (Brazil))
Currently translated at 100.0% (1234 of 1234 strings)
feat(lang): translated using Weblate (Portuguese (Brazil))
Currently translated at 99.8% (1232 of 1234 strings)
Co-authored-by: Cleiton Carvalho <cleitonsilvacarvalho@gmail.com>
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/pt_BR/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (German)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (German)
Currently translated at 100.0% (1234 of 1234 strings)
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: Nandor Rusz <nandor.rusz@vodafone.de>
Co-authored-by: Thomas Schöneberg <ta.schoeneberg@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/de/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (Danish)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Danish)
Currently translated at 100.0% (1236 of 1236 strings)
feat(lang): translated using Weblate (Danish)
Currently translated at 100.0% (1234 of 1234 strings)
Co-authored-by: Anders Ecklon <aecklon@gmail.com>
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: Kenneth Hansen <erathor@live.dk>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/da/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (Greek)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Greek)
Currently translated at 100.0% (1236 of 1236 strings)
Co-authored-by: BeardedWatermelon <BeardedWatermelon@users.noreply.hosted.weblate.org>
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/el/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (Russian)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Russian)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Russian)
Currently translated at 99.5% (1234 of 1240 strings)
feat(lang): translated using Weblate (Russian)
Currently translated at 100.0% (1234 of 1234 strings)
feat(lang): translated using Weblate (Russian)
Currently translated at 100.0% (1234 of 1234 strings)
feat(lang): translated using Weblate (Russian)
Currently translated at 100.0% (1234 of 1234 strings)
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: SoundwaveUwU <SoundwaveUwU@users.noreply.hosted.weblate.org>
Co-authored-by: SoundwaveUwU <noreply@1000-7.space>
Co-authored-by: Димитър Мазнеков (Topper) <d.maznekov@gmail.com>
Co-authored-by: Кирилл Тюрин <1337soundwave1337@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/ru/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (Romanian)
Currently translated at 37.1% (461 of 1240 strings)
feat(lang): translated using Weblate (Romanian)
Currently translated at 37.0% (459 of 1240 strings)
feat(lang): translated using Weblate (Romanian)
Currently translated at 34.8% (432 of 1240 strings)
Co-authored-by: Don Cezar <goldie.czr@gmail.com>
Co-authored-by: Dragos <themsk@yahoo.com>
Co-authored-by: Eduard Oancea <uberfly@420blaze.it>
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/ro/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (Bulgarian)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Bulgarian)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Bulgarian)
Currently translated at 57.4% (712 of 1240 strings)
feat(lang): translated using Weblate (Bulgarian)
Currently translated at 13.2% (164 of 1240 strings)
feat(lang): translated using Weblate (Bulgarian)
Currently translated at 4.8% (60 of 1240 strings)
feat(lang): added translation using Weblate (Bulgarian)
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: sct <sctsnipe@gmail.com>
Co-authored-by: Димитър Мазнеков (Topper) <d.maznekov@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/bg/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (Ukrainian)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 99.1% (1230 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 99.1% (1230 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 99.1% (1230 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 97.9% (1215 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 82.0% (1017 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 72.9% (905 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 72.9% (905 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 71.3% (885 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 64.9% (805 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 64.4% (799 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 63.8% (792 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 63.7% (791 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 57.5% (714 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 49.9% (619 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 35.9% (446 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 35.9% (446 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 32.1% (399 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 24.6% (306 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 18.9% (235 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 17.5% (217 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 17.3% (215 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 8.0% (100 of 1240 strings)
feat(lang): translated using Weblate (Ukrainian)
Currently translated at 3.3% (41 of 1240 strings)
feat(lang): added translation using Weblate (Ukrainian)
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: Michael Michael <michaelvelosk@gmail.com>
Co-authored-by: sct <sctsnipe@gmail.com>
Co-authored-by: Сергій <sergiy.goncharuk.1@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/uk/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (Catalan)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Catalan)
Currently translated at 100.0% (1240 of 1240 strings)
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: dtalens <databio@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/ca/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (Czech)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Czech)
Currently translated at 99.6% (1236 of 1240 strings)
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: Karel Krýda <karel.kryda@gmail.com>
Co-authored-by: Smexhy <roman.bartik@icloud.com>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/cs/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (Croatian)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Croatian)
Currently translated at 99.8% (1238 of 1240 strings)
feat(lang): translated using Weblate (Croatian)
Currently translated at 99.8% (1238 of 1240 strings)
feat(lang): translated using Weblate (Croatian)
Currently translated at 99.6% (1236 of 1240 strings)
feat(lang): translated using Weblate (Croatian)
Currently translated at 99.5% (1235 of 1240 strings)
feat(lang): translated using Weblate (Croatian)
Currently translated at 99.5% (1235 of 1240 strings)
feat(lang): translated using Weblate (Croatian)
Currently translated at 99.1% (1230 of 1240 strings)
feat(lang): translated using Weblate (Croatian)
Currently translated at 97.5% (1210 of 1240 strings)
feat(lang): translated using Weblate (Croatian)
Currently translated at 95.5% (1185 of 1240 strings)
feat(lang): translated using Weblate (Croatian)
Currently translated at 95.6% (1182 of 1236 strings)
feat(lang): translated using Weblate (Croatian)
Currently translated at 95.6% (1182 of 1236 strings)
feat(lang): translated using Weblate (Croatian)
Currently translated at 95.2% (1177 of 1236 strings)
feat(lang): translated using Weblate (Croatian)
Currently translated at 95.2% (1177 of 1236 strings)
feat(lang): translated using Weblate (Croatian)
Currently translated at 94.3% (1166 of 1236 strings)
feat(lang): translated using Weblate (Croatian)
Currently translated at 91.7% (1134 of 1236 strings)
feat(lang): translated using Weblate (Croatian)
Currently translated at 91.7% (1134 of 1236 strings)
Co-authored-by: Bruno Ševčenko <bs3vcenk@gmail.com>
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: Milo Ivir <mail@milotype.de>
Co-authored-by: Stjepan <stjepstjepanovic@gmail.com>
Co-authored-by: lpispek <lpispek@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/hr/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (Hungarian)
Currently translated at 91.3% (1133 of 1240 strings)
feat(lang): translated using Weblate (Hungarian)
Currently translated at 89.3% (1108 of 1240 strings)
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: Levente Szajkó <leviko112@gmail.com>
Co-authored-by: Nandor Rusz <nandor.rusz@vodafone.de>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/hu/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (Hebrew)
Currently translated at 13.9% (172 of 1236 strings)
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: osh <osh@osh.cc>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/he/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (Polish)
Currently translated at 99.1% (1225 of 1236 strings)
Co-authored-by: Eryk Michalak <gnu.ewm@protonmail.com>
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/pl/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (Italian)
Currently translated at 92.8% (1148 of 1236 strings)
Co-authored-by: Francesco <francy.ammirati@hotmail.com>
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/it/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (Arabic)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Arabic)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Arabic)
Currently translated at 100.0% (1234 of 1234 strings)
Co-authored-by: Fhd-pro <juve.11@msn.com>
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/ar/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (Dutch)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Dutch)
Currently translated at 100.0% (1234 of 1234 strings)
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: Kobe <kobaubarr@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/nl/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (Spanish)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Spanish)
Currently translated at 100.0% (1236 of 1236 strings)
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: gallegonovato <fran-carro@hotmail.es>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/es/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (French)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (French)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (French)
Currently translated at 100.0% (1236 of 1236 strings)
feat(lang): translated using Weblate (French)
Currently translated at 99.9% (1235 of 1236 strings)
feat(lang): translated using Weblate (French)
Currently translated at 99.9% (1235 of 1236 strings)
Co-authored-by: Baptiste <baptiste.nee@me.com>
Co-authored-by: Dimitri <dimitridroeck@gmail.com>
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: Maxime Lafarie <maxime.lafarie@gmail.com>
Co-authored-by: Miguel <mig.mllr@gmail.com>
Co-authored-by: asurare <jonathan.biteau16@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/fr/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (Swedish)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Swedish)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Swedish)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Swedish)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Swedish)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Swedish)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Swedish)
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Swedish)
Currently translated at 100.0% (1236 of 1236 strings)
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: Per Erik <urbanlolface@gmail.com>
Co-authored-by: Shjosan <shjosan@kakmix.co>
Co-authored-by: bittin1ddc447d824349b2 <bittin@reimu.nl>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/sv/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (Finnish)
Currently translated at 2.6% (33 of 1240 strings)
feat(lang): added translation using Weblate (Finnish)
Co-authored-by: Eero Konttaniemi <eero.konttaniemi@gmail.com>
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: sct <sctsnipe@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/fi/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (Serbian)
Currently translated at 50.8% (630 of 1240 strings)
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: Milan Smudja <smudja@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/sr/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (Korean)
Currently translated at 100.0% (1234 of 1234 strings)
Co-authored-by: Developer J <jshsakura@gmail.com>
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/ko/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (Chinese (Simplified))
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Chinese (Simplified))
Currently translated at 100.0% (1240 of 1240 strings)
feat(lang): translated using Weblate (Chinese (Simplified))
Currently translated at 100.0% (1234 of 1234 strings)
Co-authored-by: Haohao Zhang <hyacz@foxmail.com>
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: lkw123 <lkw20010211@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/zh_Hans/
Translation: Overseerr/Overseerr Frontend
---------
Co-authored-by: Cleiton Carvalho <cleitonsilvacarvalho@gmail.com>
Co-authored-by: Nandor Rusz <nandor.rusz@vodafone.de>
Co-authored-by: Thomas Schöneberg <ta.schoeneberg@gmail.com>
Co-authored-by: Anders Ecklon <aecklon@gmail.com>
Co-authored-by: Kenneth Hansen <erathor@live.dk>
Co-authored-by: BeardedWatermelon <BeardedWatermelon@users.noreply.hosted.weblate.org>
Co-authored-by: SoundwaveUwU <SoundwaveUwU@users.noreply.hosted.weblate.org>
Co-authored-by: SoundwaveUwU <noreply@1000-7.space>
Co-authored-by: Димитър Мазнеков (Topper) <d.maznekov@gmail.com>
Co-authored-by: Кирилл Тюрин <1337soundwave1337@gmail.com>
Co-authored-by: Don Cezar <goldie.czr@gmail.com>
Co-authored-by: Dragos <themsk@yahoo.com>
Co-authored-by: Eduard Oancea <uberfly@420blaze.it>
Co-authored-by: sct <sctsnipe@gmail.com>
Co-authored-by: Michael Michael <michaelvelosk@gmail.com>
Co-authored-by: Сергій <sergiy.goncharuk.1@gmail.com>
Co-authored-by: dtalens <databio@gmail.com>
Co-authored-by: Karel Krýda <karel.kryda@gmail.com>
Co-authored-by: Smexhy <roman.bartik@icloud.com>
Co-authored-by: Bruno Ševčenko <bs3vcenk@gmail.com>
Co-authored-by: Milo Ivir <mail@milotype.de>
Co-authored-by: Stjepan <stjepstjepanovic@gmail.com>
Co-authored-by: lpispek <lpispek@gmail.com>
Co-authored-by: Levente Szajkó <leviko112@gmail.com>
Co-authored-by: osh <osh@osh.cc>
Co-authored-by: Eryk Michalak <gnu.ewm@protonmail.com>
Co-authored-by: Francesco <francy.ammirati@hotmail.com>
Co-authored-by: Fhd-pro <juve.11@msn.com>
Co-authored-by: Kobe <kobaubarr@gmail.com>
Co-authored-by: gallegonovato <fran-carro@hotmail.es>
Co-authored-by: Baptiste <baptiste.nee@me.com>
Co-authored-by: Dimitri <dimitridroeck@gmail.com>
Co-authored-by: Maxime Lafarie <maxime.lafarie@gmail.com>
Co-authored-by: Miguel <mig.mllr@gmail.com>
Co-authored-by: asurare <jonathan.biteau16@gmail.com>
Co-authored-by: Per Erik <urbanlolface@gmail.com>
Co-authored-by: Shjosan <shjosan@kakmix.co>
Co-authored-by: bittin1ddc447d824349b2 <bittin@reimu.nl>
Co-authored-by: Eero Konttaniemi <eero.konttaniemi@gmail.com>
Co-authored-by: Milan Smudja <smudja@gmail.com>
Co-authored-by: Developer J <jshsakura@gmail.com>
Co-authored-by: Haohao Zhang <hyacz@foxmail.com>
Co-authored-by: lkw123 <lkw20010211@gmail.com>
* feat(lang): add lang config for Bulgarian, Finnish, Ukrainian, Indonesian, Slovak, Turkish and Maori (#3834)
---------
Co-authored-by: Isaac M <masesisaac@gmail.com>
Co-authored-by: Joseph Risk <j0srisk@gmail.com>
Co-authored-by: allcontributors[bot] <46447321+allcontributors[bot]@users.noreply.github.com>
Co-authored-by: Loetwiek <79059734+Loetwiek@users.noreply.github.com>
Co-authored-by: Loetwiek <lodommerholtcm@gmail.com>
Co-authored-by: Fuochi <ffuochi@hotmail.com>
Co-authored-by: Weblate (bot) <hosted@weblate.org>
Co-authored-by: Cleiton Carvalho <cleitonsilvacarvalho@gmail.com>
Co-authored-by: Nandor Rusz <nandor.rusz@vodafone.de>
Co-authored-by: Thomas Schöneberg <ta.schoeneberg@gmail.com>
Co-authored-by: Anders Ecklon <aecklon@gmail.com>
Co-authored-by: Kenneth Hansen <erathor@live.dk>
Co-authored-by: BeardedWatermelon <BeardedWatermelon@users.noreply.hosted.weblate.org>
Co-authored-by: SoundwaveUwU <SoundwaveUwU@users.noreply.hosted.weblate.org>
Co-authored-by: SoundwaveUwU <noreply@1000-7.space>
Co-authored-by: Димитър Мазнеков (Topper) <d.maznekov@gmail.com>
Co-authored-by: Кирилл Тюрин <1337soundwave1337@gmail.com>
Co-authored-by: Don Cezar <goldie.czr@gmail.com>
Co-authored-by: Dragos <themsk@yahoo.com>
Co-authored-by: Eduard Oancea <uberfly@420blaze.it>
Co-authored-by: sct <sctsnipe@gmail.com>
Co-authored-by: Michael Michael <michaelvelosk@gmail.com>
Co-authored-by: Сергій <sergiy.goncharuk.1@gmail.com>
Co-authored-by: dtalens <databio@gmail.com>
Co-authored-by: Karel Krýda <karel.kryda@gmail.com>
Co-authored-by: Smexhy <roman.bartik@icloud.com>
Co-authored-by: Bruno Ševčenko <bs3vcenk@gmail.com>
Co-authored-by: Milo Ivir <mail@milotype.de>
Co-authored-by: Stjepan <stjepstjepanovic@gmail.com>
Co-authored-by: lpispek <lpispek@gmail.com>
Co-authored-by: Levente Szajkó <leviko112@gmail.com>
Co-authored-by: osh <osh@osh.cc>
Co-authored-by: Eryk Michalak <gnu.ewm@protonmail.com>
Co-authored-by: Francesco <francy.ammirati@hotmail.com>
Co-authored-by: Fhd-pro <juve.11@msn.com>
Co-authored-by: Kobe <kobaubarr@gmail.com>
Co-authored-by: gallegonovato <fran-carro@hotmail.es>
Co-authored-by: Baptiste <baptiste.nee@me.com>
Co-authored-by: Dimitri <dimitridroeck@gmail.com>
Co-authored-by: Maxime Lafarie <maxime.lafarie@gmail.com>
Co-authored-by: Miguel <mig.mllr@gmail.com>
Co-authored-by: asurare <jonathan.biteau16@gmail.com>
Co-authored-by: Per Erik <urbanlolface@gmail.com>
Co-authored-by: Shjosan <shjosan@kakmix.co>
Co-authored-by: bittin1ddc447d824349b2 <bittin@reimu.nl>
Co-authored-by: Eero Konttaniemi <eero.konttaniemi@gmail.com>
Co-authored-by: Milan Smudja <smudja@gmail.com>
Co-authored-by: Developer J <jshsakura@gmail.com>
Co-authored-by: Haohao Zhang <hyacz@foxmail.com>
Co-authored-by: lkw123 <lkw20010211@gmail.com>
Co-authored-by: Jordan Jones <me@jjones.tech>
* refactor(jellyfinsettings): abstract jellyfin hostname, updated ui to reflect it, better validation
This PR refactors and abstracts jellyfin hostname into, jellyfin ip, jellyfin port, jellyfin useSsl,
and jellyfin urlBase. This makes it more consistent with how plex settings are stored as well. In
addition, this improves validation as validation can be applied seperately to them instead of as one
whole regex doing the work to validate the url.
UI was updated to reflect this.
BREAKING CHANGE: Jellyfin settings now does not include a hostname. Instead it abstracted it to ip,
port, useSsl, and urlBase. However, migration of old settings to new settings should work
automatically.
* refactor: remove console logs and use getHostname and ApiErrorCodes
* fix: store req.body jellyfin settings temporarily and store only if valid
This should fix the issue where settings are saved even if the url
was invalid. Now the settings will only be saved if the url is
valid. Sort of like a test connection.
* refactor: clean up commented out code
* refactor(i18n): extract translation keys
* fix(auth): auth failing with jellyfin login is disabled
* fix(settings): jellyfin migrations replacing the rest of the settings
* fix(settings): jellyfin hostname should be carried out if hostname exists
* fix(settings): merging the wrong settings source
* refactor(settings): use migrator for dynamic settings migrations
* refactor(settingsmigrator): settings migration handler and the migrations
* test(cypress): fix cypress tests failing
cypress settings were lacking some of the jobs so when the startJobs() is called when the app
starts, it was failing to schedule the jobs where their cron timings were not specified in the
cypress settings. Therefore, this commit adds those jobs back. In addition, other setting options
were added to keep cypress settings consistent with a normal user.
* chore(prettierignore): ignore cypress/config/settings.cypress.json as it does not need prettier
* chore(prettier): ran formatter on cypress config to fix format check error
format check locally passes on this file. However, it fails during the github actions format check.
Therefore, json language features formatter was run instead of prettier to see if that fixes the
issue.
* test(cypress): add only missing jobs to the cypress settings
* ci: attempt at trying to get formatter to pass on cypress config json file
* refactor: revert the changes brought to try and fix formatter
added back the rest of the cypress settings and removed cypress settings from .prettierignore
* refactor(settings): better erorr logging when jellyfin connection test fails in settings page
validation for ipv6 was sort of broken where for example `::1` was being sent as `1`, therefore,
logins were broken. This PR fixes it by using nodejs `net.isIPv4()` & `net.isIPv6` for ipv4 and ipv6
validation.
possibly related to and fixes#795
After the Media Availability Sync job rund on deleted media, the setting button is still visible
even if neither the media file nor the media request no longer exists. This PR hides this button
when it's no longer the case
When you have a 4k server setup, and request a 4k item, when it becomes available it also sets the
normal item as available thus not allowing the user to request for the normal item
Email is mandatory for every user and required during the setup of Jellyseerr, but it is possible to
set it empty afterwards in the user settings. When the email is empty, users are not able to connect
to Jellyseer. This PR makes the email field mandatory in the user settings.
fix#803
* refactor(jellyfinapi): use the external api class for jellyfin api requests
refactors jellyfin api requests to be handled by the external api
to be consistent with how other external api requests are made
related #728, related #387
* style: prettier formatted
* refactor(jellyfinapi): rename device in auth header as jellyseerr
* refactor(error): rename api error code generic to unknown
* refactor(errorcodes): consistent casing of error code enums
* fix(api): save user email on the first try
fix#227
* fix(api): remove todo
* fix(logging): handle media server connection refused error/toast (#748)
* fix(logging): handle media server connection refused error/toast
Properly log as connection refused if the jellyfin/emby server is unreachable. Previously it used to
throw a credentials error which lead to a lot of confusion
* refactor(i8n): extract translation keys
* refactor(auth): error message for a more consistent format
* refactor(auth/errors): use custom error types and error codes instead of abusing error messages
* refactor(i8n): replace connection refused translation key with invalidurl
* fix(error): combine auth and api error class into a single one called network error
* fix(error): use the new network error and network error codes in auth/api
* refactor(error): rename NetworkError to ApiError
---------
Co-authored-by: Fallenbagel <98979876+Fallenbagel@users.noreply.github.com>
* fix(logging): handle media server connection refused error/toast
Properly log as connection refused if the jellyfin/emby server is unreachable. Previously it used to
throw a credentials error which lead to a lot of confusion
* refactor(i8n): extract translation keys
* refactor(auth): error message for a more consistent format
* refactor(auth/errors): use custom error types and error codes instead of abusing error messages
* refactor(i8n): replace connection refused translation key with invalidurl
* fix(error): combine auth and api error class into a single one called network error
* fix(error): use the new network error and network error codes in auth/api
* refactor(error): rename NetworkError to ApiError
* fix(jellyfinapi): refactors jellyfin library sync to support automatic grouping and collections
Previously, #450 added support for automatic library grouping. However, some users reported that
they were getting a 401 when using custom authentication such as LDAP. Therefore, that PR was
reverted (#524). This PR adds back the support for automatic library grouping for jellyfin
authentication users using the endpoint `/Library/MediaFolders` and fallsback to User views endpoint
if they're unable to sync the libraries (some, not all LDAP users had issues. Some reported that it
worked despite having custom authentication). Once it falls back to user views endpoint for syncing,
now it will detect if automatic grouping is enabled giving a warning that its not supported when
using some custom authentication methods. This PR also fixed collection syncing by expanding the
boxsets when syncing.
fix#256, fix#489, re #450, #524, fix#515, fix#474, fix#473
* refactor(i18n): adds the suffix "jellyfin" to jellyfin library sync message keys
* refactor(i18n): extract translation keys
* refactor: remove console logs
* refactor: remove more console logs
* refactor: apply review suggestions
* chore: fix prettier failing on .github file
The jellyfinMediaId(4k) properties were inferred as string | undefined, causing them to be set to
undefined when assigning null. This prevented the media from being saved correctly to the SQLite
database, as it doesn't accept undefined values. This resolves the availabilitySync job issue where
the "play on" button wasn't being removed for all media server types.
fix#668
* feat: merge check if first jellyfin user is admin
re #610
* refactor(i18n): extract admin error message into en locale
---------
Co-authored-by: fallenbagel <98979876+Fallenbagel@users.noreply.github.com>
Previously `jellyfinMediaId4k` was being assigned even if 4k server was not setup or even if 4k
content were not present. This fixes it by conditionally assigning the jellyfinMediaId and
JellyfinMediaId4k
fix#681
* refactor: jellyfin authentication
This refactor standardizes the authentication approach in Jellyfin to mirror the method employed in
Plex authentication for consistency
* feat: use gravatar for jellyfin users' with missing jellyfin avatars
* feat(job): media availability support for jellyfin/emby
This refactors the media availability job to support jellyfin/emby for media removal automatically.
Needs further testing on 4k items (as I have not yet tested with 4k), however, non-4k items work as
intended.
fix#406, fix#193, fix#516, fix#362, fix#84
* fix(availabilitysync): use the correct 4k jellyfinMediaId
* fix: season mapping for plex
Fixes a bug introduced with this PR where media availability sync job removed the seasons from all
series even when those seasons existed
All seasons are processed now, but those without any episodes are filtered out again as unavailable.
This fixes in issue where jellyfin reports all seasons as virtual
This disables seasonfolder option in sonarr for jellyfin/emby users as physical seasonFolders are
necessary as virtualFolders are ignored since #126fix#575
This commit addresses a rendering issue with the date picker component.
The problem was traced back to a misconfiguration in the tailwindcss settings, resulting in an
incorrect width for the popup.
fix#415
This fix addresses an issue on the Watchlist page where changes to the watchlist were not
immediately reflected. Previously, after removing an item from the watchlist, the update
required a full page reload or revalidating upon focusing the window or tab. With this fix,
the watchlist now correctly mutates and updates in real-time, providing a seamless user
experience.
This fix resolves a Watchlist page bug where the isAddedToWatchlist prop was missing.
Without this prop, the removal button for watchlist items was absent. In this fix, the
isAddedToWatchlist prop is re-added and set to true, allowing users to remove items from
their local watchlist directly on the Watchlist page.
Adding Jellyfin Setting for Custom "Forgot Password" URL. Useful in cases where you are using a custom authentication provider such as the LDAP plugin, Authelia, lldap, or any other external auth scheme with its own password reset page.
As allcontributors bot does not support having two lists of allcontributors seperately,
unfortunately had to remove upstream contributors from the .all-contributorsrc. However, they will
be added manually by @Fallenbagel to the README.md
Previously when you expand the `Your Watchlist` slider from the discover page to see all your
watchlist items, you only see the first 20 items. This commit fixes that so you can see all your
local watchlist items when you expand that slider. In addition, this commit also fixes the visiblity
of profile watchlist slider for local watchlists
In an attempt to fix version compatibility of `GLIBC_2.28` base was upgraded from core18 to core20.
Node-js plugin was deprecated for core20 and instead npm plugin has to be used. As npm plugin cannot
specify the package manager to use, yarn is now installed globally during the override-build phase.
Changes base to core20 in an attempt to fix the error `node: /lib/x86_64-linux-gnu/libc.so.6:
version `GLIBC_2.28' not found (required by node)` during snap builds
Implemented dynamic URL generation for the 'Forgot Password' feature. If jellyfin external hostname
is set, the URL is generated based on it; otherwise, jellyfin hostname is used as the base URL. The
URL includes additional parameters to handle emby support.
fix#199, fix#424, re #212
Reverted #450 which addressed the issue where the automatic grouping enabled libraries were not
functioning correctly. The previous fix inadvertently caused a bug for Jellyfin LDAP users,
preventing library syncing with a 401 error. Reverting this change temporarily until support for
automatic library grouping can be re-implemented
fix#489
* feat: select default seriesType for anime
Added flexibility to set default anime series type in service settings. Now you can choose
'standard' for anime if you prefer it, making it easier to use features like searching for season
packs on Sonarr.
fix#3626
* feat: extracted translations
* feat(lang): translated using Weblate (Korean)
Currently translated at 100.0% (1233 of 1233 strings)
feat(lang): translated using Weblate (Korean)
Currently translated at 100.0% (1233 of 1233 strings)
feat(lang): translated using Weblate (Korean)
Currently translated at 11.2% (139 of 1233 strings)
feat(lang): translated using Weblate (Korean)
Currently translated at 11.3% (139 of 1226 strings)
feat(lang): translated using Weblate (Korean)
Currently translated at 7.8% (96 of 1226 strings)
feat(lang): translated using Weblate (Korean)
Currently translated at 7.4% (91 of 1226 strings)
feat(lang): translated using Weblate (Korean)
Currently translated at 1.7% (21 of 1226 strings)
feat(lang): added translation using Weblate (Korean)
Co-authored-by: Developer J <jshsakura@gmail.com>
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: sct <sctsnipe@gmail.com>
Co-authored-by: 김상구 (Studio) <spair0039@gmail.com>
Co-authored-by: 최효근 <gyrms7532@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/ko/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (Greek)
Currently translated at 100.0% (1234 of 1234 strings)
feat(lang): translated using Weblate (Greek)
Currently translated at 100.0% (1233 of 1233 strings)
feat(lang): translated using Weblate (Greek)
Currently translated at 100.0% (1233 of 1233 strings)
feat(lang): translated using Weblate (Greek)
Currently translated at 100.0% (1233 of 1233 strings)
Co-authored-by: BeardedWatermelon <periklis.karantonis@gmail.com>
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/el/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (Serbian)
Currently translated at 49.7% (608 of 1222 strings)
Co-authored-by: Dzonkins <nikoladjordjevic.ns@gmail.com>
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/sr/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (Spanish)
Currently translated at 100.0% (1234 of 1234 strings)
feat(lang): translated using Weblate (Spanish)
Currently translated at 100.0% (1233 of 1233 strings)
feat(lang): translated using Weblate (Spanish)
Currently translated at 100.0% (1228 of 1228 strings)
feat(lang): translated using Weblate (Spanish)
Currently translated at 100.0% (1226 of 1226 strings)
feat(lang): translated using Weblate (Spanish)
Currently translated at 100.0% (1224 of 1224 strings)
feat(lang): translated using Weblate (Spanish)
Currently translated at 100.0% (1223 of 1223 strings)
feat(lang): translated using Weblate (Spanish)
Currently translated at 100.0% (1222 of 1222 strings)
feat(lang): translated using Weblate (Spanish)
Currently translated at 100.0% (1222 of 1222 strings)
Co-authored-by: Angel <adelpozoman@gmail.com>
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: gallegonovato <fran-carro@hotmail.es>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/es/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (Romanian)
Currently translated at 33.0% (408 of 1234 strings)
feat(lang): translated using Weblate (Romanian)
Currently translated at 29.7% (367 of 1234 strings)
feat(lang): translated using Weblate (Romanian)
Currently translated at 27.9% (345 of 1234 strings)
feat(lang): translated using Weblate (Romanian)
Currently translated at 27.8% (344 of 1233 strings)
feat(lang): translated using Weblate (Romanian)
Currently translated at 27.6% (339 of 1226 strings)
feat(lang): translated using Weblate (Romanian)
Currently translated at 27.4% (337 of 1226 strings)
feat(lang): translated using Weblate (Romanian)
Currently translated at 22.8% (279 of 1223 strings)
Co-authored-by: Bunduc Dragos <bunduc.dragos@gmail.com>
Co-authored-by: DragoPrime <emperordrago@gmail.com>
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/ro/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (Russian)
Currently translated at 100.0% (1223 of 1223 strings)
feat(lang): translated using Weblate (Russian)
Currently translated at 87.4% (1069 of 1223 strings)
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: Kirill Zhukov <siper13@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/ru/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (Danish)
Currently translated at 100.0% (1233 of 1233 strings)
feat(lang): translated using Weblate (Danish)
Currently translated at 100.0% (1226 of 1226 strings)
feat(lang): translated using Weblate (Danish)
Currently translated at 100.0% (1222 of 1222 strings)
feat(lang): translated using Weblate (Danish)
Currently translated at 100.0% (1222 of 1222 strings)
Co-authored-by: Anders Ecklon <aecklon@gmail.com>
Co-authored-by: Emil Nymann <ens@hiper.dk>
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/da/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (Hungarian)
Currently translated at 86.3% (1055 of 1222 strings)
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: ZsiGiT <zsigit@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/hu/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (Dutch)
Currently translated at 99.4% (1226 of 1233 strings)
feat(lang): translated using Weblate (Dutch)
Currently translated at 100.0% (1226 of 1226 strings)
feat(lang): translated using Weblate (Dutch)
Currently translated at 100.0% (1224 of 1224 strings)
feat(lang): translated using Weblate (Dutch)
Currently translated at 100.0% (1223 of 1223 strings)
feat(lang): translated using Weblate (Dutch)
Currently translated at 100.0% (1222 of 1222 strings)
Co-authored-by: Bas <bashankamp+weblate@gmail.com>
Co-authored-by: COTMO <moermantom1@gmail.com>
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: Kobe <kobaubarr@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/nl/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (Portuguese (Brazil))
Currently translated at 99.6% (1229 of 1233 strings)
feat(lang): translated using Weblate (Portuguese (Brazil))
Currently translated at 100.0% (1228 of 1228 strings)
feat(lang): translated using Weblate (Portuguese (Brazil))
Currently translated at 100.0% (1226 of 1226 strings)
feat(lang): translated using Weblate (Portuguese (Brazil))
Currently translated at 100.0% (1224 of 1224 strings)
feat(lang): translated using Weblate (Portuguese (Brazil))
Currently translated at 100.0% (1223 of 1223 strings)
feat(lang): translated using Weblate (Portuguese (Brazil))
Currently translated at 100.0% (1222 of 1222 strings)
feat(lang): translated using Weblate (Portuguese (Brazil))
Currently translated at 99.2% (1213 of 1222 strings)
feat(lang): translated using Weblate (Portuguese (Brazil))
Currently translated at 99.1% (1212 of 1222 strings)
feat(lang): translated using Weblate (Portuguese (Brazil))
Currently translated at 99.1% (1212 of 1222 strings)
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: Mateus <mateusbernardo@protonmail.com>
Co-authored-by: Rafael Vieira <rafaelvieiras@pm.me>
Co-authored-by: Tijuco <sendtomy@protonmail.com>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/pt_BR/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (Czech)
Currently translated at 100.0% (1233 of 1233 strings)
feat(lang): translated using Weblate (Czech)
Currently translated at 99.7% (1223 of 1226 strings)
feat(lang): translated using Weblate (Czech)
Currently translated at 100.0% (1223 of 1223 strings)
feat(lang): translated using Weblate (Czech)
Currently translated at 96.4% (1179 of 1222 strings)
feat(lang): translated using Weblate (Czech)
Currently translated at 89.1% (1090 of 1222 strings)
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: Marek <marek@pavelka.xyz>
Co-authored-by: Smexhy <roman.bartik@icloud.com>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/cs/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (Arabic)
Currently translated at 100.0% (1234 of 1234 strings)
feat(lang): translated using Weblate (Arabic)
Currently translated at 100.0% (1234 of 1234 strings)
feat(lang): translated using Weblate (Arabic)
Currently translated at 100.0% (1233 of 1233 strings)
feat(lang): translated using Weblate (Arabic)
Currently translated at 100.0% (1233 of 1233 strings)
feat(lang): translated using Weblate (Arabic)
Currently translated at 100.0% (1233 of 1233 strings)
Co-authored-by: Fhd-pro <juve.11@msn.com>
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/ar/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (Portuguese (Portugal))
Currently translated at 100.0% (1222 of 1222 strings)
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: ssantos <ssantos@web.de>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/pt_PT/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (German)
Currently translated at 99.9% (1233 of 1234 strings)
feat(lang): translated using Weblate (German)
Currently translated at 99.5% (1228 of 1234 strings)
feat(lang): translated using Weblate (German)
Currently translated at 99.5% (1227 of 1233 strings)
feat(lang): translated using Weblate (German)
Currently translated at 100.0% (1226 of 1226 strings)
feat(lang): translated using Weblate (German)
Currently translated at 100.0% (1224 of 1224 strings)
feat(lang): translated using Weblate (German)
Currently translated at 95.9% (1172 of 1222 strings)
feat(lang): translated using Weblate (German)
Currently translated at 95.9% (1172 of 1222 strings)
feat(lang): translated using Weblate (German)
Currently translated at 94.7% (1158 of 1222 strings)
Co-authored-by: Ben <ben.david.wallner@gmail.com>
Co-authored-by: Furkan Çakar <cakar.55.furkan@gmail.com>
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: Juli <snowjuli@protonmail.com>
Co-authored-by: Leo Schultheiss <leoschultheiss@yahoo.de>
Co-authored-by: inkarnation <94744834+inkarnation@users.noreply.github.com>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/de/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (Swedish)
Currently translated at 100.0% (1234 of 1234 strings)
feat(lang): translated using Weblate (Swedish)
Currently translated at 100.0% (1234 of 1234 strings)
feat(lang): translated using Weblate (Swedish)
Currently translated at 99.6% (1229 of 1233 strings)
feat(lang): translated using Weblate (Swedish)
Currently translated at 100.0% (1228 of 1228 strings)
feat(lang): translated using Weblate (Swedish)
Currently translated at 100.0% (1226 of 1226 strings)
feat(lang): translated using Weblate (Swedish)
Currently translated at 90.0% (1104 of 1226 strings)
feat(lang): translated using Weblate (Swedish)
Currently translated at 90.0% (1101 of 1222 strings)
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: Luna Jernberg <droidbittin@gmail.com>
Co-authored-by: Shjosan <shjosan@kakmix.co>
Co-authored-by: Topfield99 <timmiesonne@live.se>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/sv/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (Lithuanian)
Currently translated at 58.7% (725 of 1233 strings)
feat(lang): translated using Weblate (Lithuanian)
Currently translated at 58.6% (719 of 1226 strings)
feat(lang): translated using Weblate (Lithuanian)
Currently translated at 51.0% (624 of 1222 strings)
feat(lang): translated using Weblate (Lithuanian)
Currently translated at 43.9% (537 of 1222 strings)
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: PovilasID <povilas.sidaravicius@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/lt/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (Catalan)
Currently translated at 100.0% (1226 of 1226 strings)
feat(lang): translated using Weblate (Catalan)
Currently translated at 100.0% (1224 of 1224 strings)
feat(lang): translated using Weblate (Catalan)
Currently translated at 100.0% (1224 of 1224 strings)
feat(lang): translated using Weblate (Catalan)
Currently translated at 100.0% (1223 of 1223 strings)
feat(lang): translated using Weblate (Catalan)
Currently translated at 99.5% (1217 of 1223 strings)
feat(lang): translated using Weblate (Catalan)
Currently translated at 99.4% (1216 of 1223 strings)
feat(lang): translated using Weblate (Catalan)
Currently translated at 98.6% (1207 of 1223 strings)
feat(lang): translated using Weblate (Catalan)
Currently translated at 97.2% (1189 of 1223 strings)
feat(lang): translated using Weblate (Catalan)
Currently translated at 94.3% (1154 of 1223 strings)
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: Maite Guix <maite.guix@gmail.com>
Co-authored-by: dtalens <databio@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/ca/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (Croatian)
Currently translated at 89.9% (1103 of 1226 strings)
Co-authored-by: Bruno Ševčenko <bs3vcenk@gmail.com>
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/hr/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (Italian)
Currently translated at 92.2% (1138 of 1233 strings)
feat(lang): translated using Weblate (Italian)
Currently translated at 88.5% (1092 of 1233 strings)
feat(lang): translated using Weblate (Italian)
Currently translated at 85.8% (1058 of 1233 strings)
feat(lang): translated using Weblate (Italian)
Currently translated at 86.0% (1052 of 1223 strings)
feat(lang): translated using Weblate (Italian)
Currently translated at 83.2% (1017 of 1222 strings)
Co-authored-by: Francesco <francy.ammirati@hotmail.com>
Co-authored-by: Gian Marco Cinalli <gm.cinalli@gmail.com>
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: Mirco Cau <mircocau@gmail.com>
Co-authored-by: eggermn <egger.mn@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/it/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (Chinese (Simplified))
Currently translated at 100.0% (1233 of 1233 strings)
feat(lang): translated using Weblate (Chinese (Simplified))
Currently translated at 100.0% (1226 of 1226 strings)
feat(lang): translated using Weblate (Chinese (Simplified))
Currently translated at 99.9% (1225 of 1226 strings)
feat(lang): translated using Weblate (Chinese (Simplified))
Currently translated at 99.9% (1225 of 1226 strings)
feat(lang): translated using Weblate (Chinese (Simplified))
Currently translated at 99.8% (1224 of 1226 strings)
feat(lang): translated using Weblate (Chinese (Simplified))
Currently translated at 99.9% (1223 of 1224 strings)
feat(lang): translated using Weblate (Chinese (Simplified))
Currently translated at 100.0% (1222 of 1222 strings)
feat(lang): translated using Weblate (Chinese (Simplified))
Currently translated at 98.0% (1198 of 1222 strings)
feat(lang): translated using Weblate (Chinese (Simplified))
Currently translated at 96.7% (1182 of 1222 strings)
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: Jassy lin <linjiaxinme@gmail.com>
Co-authored-by: anpplex <anpplex@gmail.com>
Co-authored-by: kx <yoboy.rox@gmail.com>
Co-authored-by: lkw123 <lkw20010211@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/zh_Hans/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (French)
Currently translated at 100.0% (1234 of 1234 strings)
feat(lang): translated using Weblate (French)
Currently translated at 100.0% (1233 of 1233 strings)
feat(lang): translated using Weblate (French)
Currently translated at 99.9% (1225 of 1226 strings)
feat(lang): translated using Weblate (French)
Currently translated at 100.0% (1224 of 1224 strings)
feat(lang): translated using Weblate (French)
Currently translated at 100.0% (1223 of 1223 strings)
feat(lang): translated using Weblate (French)
Currently translated at 100.0% (1222 of 1222 strings)
feat(lang): translated using Weblate (French)
Currently translated at 100.0% (1222 of 1222 strings)
feat(lang): translated using Weblate (French)
Currently translated at 99.5% (1216 of 1222 strings)
feat(lang): translated using Weblate (French)
Currently translated at 99.5% (1216 of 1222 strings)
feat(lang): translated using Weblate (French)
Currently translated at 99.5% (1216 of 1222 strings)
feat(lang): translated using Weblate (French)
Currently translated at 100.0% (1222 of 1222 strings)
Co-authored-by: Hordo <hordocast@mailo.com>
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: Mathieu <math_du_88@yahoo.fr>
Co-authored-by: Maxent <rouaultmaxent@gmail.com>
Co-authored-by: Rémi Guerrero <remidu34070@hotmail.fr>
Co-authored-by: Sulli <susu.leduc@gmail.com>
Co-authored-by: Symness <simon@frayssines.fr>
Co-authored-by: Valentin <droidente@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/fr/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (Chinese (Traditional))
Currently translated at 99.7% (1219 of 1222 strings)
feat(lang): translated using Weblate (Chinese (Traditional))
Currently translated at 89.6% (1095 of 1222 strings)
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: 주서현 <adan.89lion@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/zh_Hant/
Translation: Overseerr/Overseerr Frontend
---------
Co-authored-by: Developer J <jshsakura@gmail.com>
Co-authored-by: sct <sctsnipe@gmail.com>
Co-authored-by: 김상구 (Studio) <spair0039@gmail.com>
Co-authored-by: 최효근 <gyrms7532@gmail.com>
Co-authored-by: BeardedWatermelon <periklis.karantonis@gmail.com>
Co-authored-by: Dzonkins <nikoladjordjevic.ns@gmail.com>
Co-authored-by: Angel <adelpozoman@gmail.com>
Co-authored-by: gallegonovato <fran-carro@hotmail.es>
Co-authored-by: Bunduc Dragos <bunduc.dragos@gmail.com>
Co-authored-by: DragoPrime <emperordrago@gmail.com>
Co-authored-by: Kirill Zhukov <siper13@gmail.com>
Co-authored-by: Anders Ecklon <aecklon@gmail.com>
Co-authored-by: Emil Nymann <ens@hiper.dk>
Co-authored-by: ZsiGiT <zsigit@gmail.com>
Co-authored-by: Bas <bashankamp+weblate@gmail.com>
Co-authored-by: COTMO <moermantom1@gmail.com>
Co-authored-by: Kobe <kobaubarr@gmail.com>
Co-authored-by: Mateus <mateusbernardo@protonmail.com>
Co-authored-by: Rafael Vieira <rafaelvieiras@pm.me>
Co-authored-by: Tijuco <sendtomy@protonmail.com>
Co-authored-by: Marek <marek@pavelka.xyz>
Co-authored-by: Smexhy <roman.bartik@icloud.com>
Co-authored-by: Fhd-pro <juve.11@msn.com>
Co-authored-by: ssantos <ssantos@web.de>
Co-authored-by: Ben <ben.david.wallner@gmail.com>
Co-authored-by: Furkan Çakar <cakar.55.furkan@gmail.com>
Co-authored-by: Juli <snowjuli@protonmail.com>
Co-authored-by: Leo Schultheiss <leoschultheiss@yahoo.de>
Co-authored-by: inkarnation <94744834+inkarnation@users.noreply.github.com>
Co-authored-by: Luna Jernberg <droidbittin@gmail.com>
Co-authored-by: Shjosan <shjosan@kakmix.co>
Co-authored-by: Topfield99 <timmiesonne@live.se>
Co-authored-by: PovilasID <povilas.sidaravicius@gmail.com>
Co-authored-by: Maite Guix <maite.guix@gmail.com>
Co-authored-by: dtalens <databio@gmail.com>
Co-authored-by: Bruno Ševčenko <bs3vcenk@gmail.com>
Co-authored-by: Francesco <francy.ammirati@hotmail.com>
Co-authored-by: Gian Marco Cinalli <gm.cinalli@gmail.com>
Co-authored-by: Mirco Cau <mircocau@gmail.com>
Co-authored-by: eggermn <egger.mn@gmail.com>
Co-authored-by: Jassy lin <linjiaxinme@gmail.com>
Co-authored-by: anpplex <anpplex@gmail.com>
Co-authored-by: kx <yoboy.rox@gmail.com>
Co-authored-by: lkw123 <lkw20010211@gmail.com>
Co-authored-by: Hordo <hordocast@mailo.com>
Co-authored-by: Mathieu <math_du_88@yahoo.fr>
Co-authored-by: Maxent <rouaultmaxent@gmail.com>
Co-authored-by: Rémi Guerrero <remidu34070@hotmail.fr>
Co-authored-by: Sulli <susu.leduc@gmail.com>
Co-authored-by: Symness <simon@frayssines.fr>
Co-authored-by: Valentin <droidente@gmail.com>
Co-authored-by: 주서현 <adan.89lion@gmail.com>
* fix: Include all defaults in payload
* style(src/components/settings/notifications/notificationswebhook/index.tsx): prettier format
format changes from previous commit using prettier. line length requirement now met.
* fix(server/lib/settings.ts): update default settings for first install
* fix: handle issue causing incorrect media to change back to unknown
* fix: prevent start if plex client is unavailable
* fix: initialize radarr and sonarr clients before the scan starts
* fix: compensate for multiple *arr servers
* fix: added a more reliable season lookup
* refactor: modified tuples to increase code readability
* fix: importing friends
update checkUserAccess to use getUsers
* refactor(server/api/plextv.ts): clean up
removed unused getFriends function, and its interface.
renamed friends variable.
* Make a (shallow) copy of radarr/sonarr tags into a request before adding user tags
* Undo random formatting changes
* more undoing formatting changes
* Fix undefined case.
* Prettier format
* feat: auto tagging requested media with username
Relating to discussion: https://github.com/sct/overseerr/discussions/3313
Adding an option to the Radarr and Sonarr service to enable automatic tagging
with the username requesting the media.
Current format, to reduce tag clutter if a user changes displayname:
`[user.id] - [user.displayName]`
* fix: modified new secondary tip language
---------
Co-authored-by: Brandon Cohen <brandon@z3hn.dev>
* refactor: decoupled PTR by removing import and creating new touch logic
* fix: overscroll behavior on mobile is now prevented on the y axis
* feat: added shadow effects to icon
* fix: modified cypress test
* fix: added better scroll lock functionality
* fix: hide icon if scroll value is negative
* fix: changed to allow usage on all touch devices
* fix: added extra check for unmonitored movies in radarr
* feat: created new radarr/sonarr routes to grab existing series data
* refactor: updated job routes to check by external service id
* fix: season check will now also look at episode file count
This PR disables availability sync temporarily as the current one does not have jellyfin/emby sync
ported into it. This would ensure that jellyseerr does not bug out and start removing availability
from media despite it being available on jellyfin/emby/*arr as well as their requests.
Currently when display specials within season is enabled, it increases the indexed episode count of
the season. This is a problem due to the way our jellyfin sync works as it requires total standard
episodes to be equal to season episode count for the `AVAILABLE` badge for that season. However,
when the display specials within season is enabled, the scan sets that season as `PARTIALLY
AVAILABLE`. This workaround fixes this behaviour. In addition, this fix **might** also fix the
recurring availability notifications (recurring notifications might be occurring due to the scan
initially setting the season as available, thus the series is set as available and sends the
notification, but then it sets the season as partially available due to the aforementioned sync flow
until next scan and repeats.)
fix#215#176#246
* feat: add availability synchronization job
fix#377
* fix: feedback on PR
* perf: use pagination for Media Availability Synchronization job
The original approach loaded all media items from the database at once. With large libraries, this
could lead to performance issues. We're now using a paginated approach with a page size of 50.
* feat: updated the availability sync to work with 4k
* fix: corrected detection of media in plex
* refactor: code cleanup and minimized unnecessary calls
* fix: if media is not found, media check will continue
* fix: if non-4k or 4k show media is updated, seasons and request is now properly updated
* refactor: consolidated media updater into one function
* fix: season requests are now removed if season has been deleted
* refactor: removed joincolumn
* fix: makes sure we will always check radarr/sonarr to see if media exists
* fix: media will now only be updated to unavailable and deletion will be prevented
* fix: changed types in Media entity
* fix: prevent season deletion in preference of setting season to unknown
---------
Co-authored-by: Jari Zwarts <jari@oberon.nl>
Co-authored-by: Sebastian Kappen <sebastian@kappen.dev>
* fix(ui): remove opacity classes from transition enter and leave props
The flickering was caused by the opacity classes in the `leave` prop to take effect as the
transition ends; when the `leaveTo` prop classes are no longer applied, but the `leave` prop classes
are still applied.
* fix(ui): resolve transition issues for all components
1. Remove opacity classes from `enter` and `leave` props
2. Fix some class name typos
3. Remove transform classes since those are automatically applied as from TailwindCSS v3.0
4. Narrow down `transition` classes to only the properties being transitioned in Transition components
* fix: added a refresh interval if download status is in progress
* refactor: switched to a function instead of useEffect
* feat: added editable download sync schedule
CDNs such as Cloudflare bypass their cache if cookies are set in the response.
clearCookies
middleware removes the header before imageproxy serves the image.
* fix(build): use env variable to login with snapcraft 7
* refactor(build): replace deprecated set-output command in GHA
* fix(build): use correct environment variable for output
* style(build): run prettier
* docs(installation): add PORT env variable to Docker CLI & Docker Compose examples
* docs(installation): fix typo
* docs(installation): clarify hint about named volumes for windows installation example
Added missing German translations and fixed some spelling mistakes.
Changed some German translations to match informal address of user.
Unification of wordings like "Episoden" and "Folgen".
* fix: series would show an empty season on season list or tv request modal
* fix: request more would show even if all requestable seasons are already requested
* fix: will check if request or season length is longer
* fix(deps): update dependency @heroicons/react to v2
* fix: update imports and fix icon name changes for heroicons
* fix: also update MiniStatusBadge to use new check icon
* fix: update last place with old import
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: sct <ryan@sct.dev>
Jellyfin allows combined episodes, like `S01E01-E02`,
but seasons containing such episodes are only recognized
as `Partially Available`. This commit should fix that.
* fix(ui): hide available media on person page
* fix(ui): set correct label for image cache settings
* fix(ui): disable status badge tooltip for collections
* fix(ui): replace empty space when no episodes in season
* fix: suggested changes
* fix(jobs): set watchlist sync to short interval
* chore: run i18n:extract
* fix: suggested changes
The updated `next.js` dependency has a new regex match in the code for `/^\/_next\/data\//`.
This `sub_filter` creates invalid regex `/^\/overseerr/_next\/data\//`
```nginx
sub_filter '/_next' '/$app/_next';
```
It needs to be updated to substitute the correct the regex `/^\/overseerr\/_next\/data\//`
```nginx
sub_filter '\/_next' '\/$app\/_next';
sub_filter '/_next' '/$app/_next';
```
if all seasons are requested for a TV show, show each indivdual season badge. This prevents the
admin from needing to open a second tab / navigate to see how many seasons / what seasons have been
requested.
* feat(logs): add search filter
* refactor(logs): move loading spinner inside log viewer
Inputting text in the search bar on the logs page would refresh the page
losing focus on the search bar.
This moves the loading spinner inside the log viewer, so that it is not
as disruptive as it would
* fix(logs): escape string for search filter
* chore: rebase
* fix(logs): suggested changes
* feat: pull down to refresh functionality
Custom pull down to refresh added to replace the default browser pull down to refresh. This will
allow you to manually reload the page if you are using it as a PWA.
* test: update test to check api call correctly
changed api call for test and made sure it pulls down all the way to trigger refresh
* fix: changed positioning of pull to refresh
Refresh indicator now has absolute positioning and will prevent the top edge from pulling down.
* fix(jobs): reset job schedule edit modal values when closed
* feat(jobs): show job's current frequency
* fix(jobs): reset job schedule edit modal values when cancelled
* chore: rebase
* refactor(jobs): use reducer instead of several react states
* fix(jobs): reset modal state when opening instead of closing the modal
This prevents the modal state from glitching when saving/closing the modal
* feat(jobs): parse job schedule cron string
unavailable locale will fallback to english
* feat(lang): translated using Weblate (French)
Currently translated at 99.4% (1067 of 1073 strings)
feat(lang): translated using Weblate (French)
Currently translated at 97.1% (1040 of 1071 strings)
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: Mathieu <math_du_88@yahoo.fr>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/fr/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (Portuguese (Brazil))
Currently translated at 99.2% (1063 of 1071 strings)
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: Tijuco <sendtomy@protonmail.com>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/pt_BR/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (Chinese (Traditional))
Currently translated at 99.8% (1083 of 1085 strings)
feat(lang): translated using Weblate (Chinese (Traditional))
Currently translated at 99.6% (1081 of 1085 strings)
feat(lang): translated using Weblate (Chinese (Traditional))
Currently translated at 100.0% (1073 of 1073 strings)
feat(lang): translated using Weblate (Chinese (Traditional))
Currently translated at 99.4% (1067 of 1073 strings)
feat(lang): translated using Weblate (Chinese (Traditional))
Currently translated at 99.5% (1066 of 1071 strings)
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: TheCatLady <o40yoym9@anonaddy.me>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/zh_Hant/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (German)
Currently translated at 100.0% (1073 of 1073 strings)
feat(lang): translated using Weblate (German)
Currently translated at 100.0% (1073 of 1073 strings)
feat(lang): translated using Weblate (German)
Currently translated at 99.6% (1067 of 1071 strings)
Co-authored-by: Ben <ben.david.wallner@gmail.com>
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/de/
Translation: Overseerr/Overseerr Frontend
Co-authored-by: Mathieu <math_du_88@yahoo.fr>
Co-authored-by: Tijuco <sendtomy@protonmail.com>
Co-authored-by: TheCatLady <o40yoym9@anonaddy.me>
Co-authored-by: Ben <ben.david.wallner@gmail.com>
* feat(perms): add new permission for viewing recently added media
* test: update login test to check for Trending instead of Recently Added
* fix: avoid conflict with new watchlist perms
The delete user modal will now show the user that is being deleted and the delete button will now
ask you to confirm deletion similar to the delete request button.
* build(snap): try re-enabling snap workflow
* build: try adding a safe directory exception?
* build(snap): disable cypress binary install
* build(snap): add yarnrc to force frozen lockfile and timeout arguments
* build(snap): add back in release snap workflow
* build(snap): revert back to only running on dev branch
Manual scan in setup says "Jellyfin will scan your Jellyfin's server" and same with emby, so I
replaced jellyfin with jellyseerr. And also added emby to login page
Fixed translation issue where it showed as import {mediaServerName} user as it was using the same
variable both inside the plex import modal and also outside in userlist on the button
Fixes jellyfin forgot password as it had a wrong url that lead to an empty page and also adds in
emby forgot password link if the environmental variable is set
fix#99
TMDB API would only return 40 results and the recommendations page expected more. This would cause
an infinite amount of network requests. A limit was implemented to specifically to solve this
problem
* fix: fixed recommendations page causing infinite network requests to tmdb api
TMDB API would only return 40 results and the recommendations page expected more. This would cause
an infinite amount of network requests. I set a limit specifically for this solving the problem.
fix#2710
* fix(tautulli): fetch additional user history as necessary to return 20 unique media
* refactor: rename var for clarity
* refactor: make single DB query for recently watched media
* fix: resolve query builder weirdness
* refactor: use find instead of qb
* refactor: minor refactor
* fix: also find 4K rating keys
* feat: if local sign-in disabled, verify Plex server access during auth for existing users
* fix: disable local/password login by default
* fix: set localLogin to disabled in getInitialProps
* fix: verify Plex server access on local logins as well
* feat(lang): translated using Weblate (Japanese)
Currently translated at 46.5% (485 of 1041 strings)
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: TheCatLady <o40yoym9@anonaddy.me>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/ja/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (Albanian)
Currently translated at 100.0% (1041 of 1041 strings)
feat(lang): translated using Weblate (Albanian)
Currently translated at 100.0% (1041 of 1041 strings)
feat(lang): translated using Weblate (Albanian)
Currently translated at 100.0% (1041 of 1041 strings)
feat(lang): translated using Weblate (Albanian)
Currently translated at 100.0% (1041 of 1041 strings)
feat(lang): translated using Weblate (Albanian)
Currently translated at 100.0% (1041 of 1041 strings)
feat(lang): translated using Weblate (Albanian)
Currently translated at 62.6% (652 of 1041 strings)
feat(lang): translated using Weblate (Albanian)
Currently translated at 50.7% (528 of 1041 strings)
feat(lang): translated using Weblate (Albanian)
Currently translated at 16.3% (170 of 1041 strings)
feat(lang): added translation using Weblate (Albanian)
Co-authored-by: Denis Çerri <deniscerri3@gmail.com>
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: TheCatLady <o40yoym9@anonaddy.me>
Co-authored-by: sct <sctsnipe@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/sq/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (French)
Currently translated at 100.0% (1041 of 1041 strings)
feat(lang): translated using Weblate (French)
Currently translated at 100.0% (1041 of 1041 strings)
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: Nackophilz <zrv4flra@anonaddy.me>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/fr/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (Polish)
Currently translated at 100.0% (1041 of 1041 strings)
feat(lang): translated using Weblate (Polish)
Currently translated at 100.0% (1041 of 1041 strings)
feat(lang): translated using Weblate (Polish)
Currently translated at 100.0% (1041 of 1041 strings)
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: TheCatLady <o40yoym9@anonaddy.me>
Co-authored-by: tomgacz <tomgacz@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/pl/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (Portuguese (Brazil))
Currently translated at 100.0% (1041 of 1041 strings)
feat(lang): translated using Weblate (Portuguese (Brazil))
Currently translated at 98.5% (1026 of 1041 strings)
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: Tijuco <sendtomy@protonmail.com>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/pt_BR/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (Italian)
Currently translated at 100.0% (1041 of 1041 strings)
feat(lang): translated using Weblate (Italian)
Currently translated at 99.8% (1039 of 1041 strings)
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: Simone Chiavaccini <mazzetta86@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/it/
Translation: Overseerr/Overseerr Frontend
Co-authored-by: TheCatLady <o40yoym9@anonaddy.me>
Co-authored-by: Denis Çerri <deniscerri3@gmail.com>
Co-authored-by: sct <sctsnipe@gmail.com>
Co-authored-by: Nackophilz <zrv4flra@anonaddy.me>
Co-authored-by: tomgacz <tomgacz@gmail.com>
Co-authored-by: Tijuco <sendtomy@protonmail.com>
Co-authored-by: Simone Chiavaccini <mazzetta86@gmail.com>
* feat(lang): translated using Weblate (Serbian)
Currently translated at 49.9% (518 of 1038 strings)
feat(lang): translated using Weblate (Serbian)
Currently translated at 47.3% (492 of 1038 strings)
Co-authored-by: Dalibor Radovanović <darkobg@gmail.com>
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/sr/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (German)
Currently translated at 100.0% (1038 of 1038 strings)
feat(lang): translated using Weblate (German)
Currently translated at 100.0% (1038 of 1038 strings)
Co-authored-by: Ben <ben.david.wallner@gmail.com>
Co-authored-by: Ben Wallner <ben.david.wallner@gmail.com>
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/de/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (Norwegian Bokmål)
Currently translated at 100.0% (1038 of 1038 strings)
feat(lang): translated using Weblate (Norwegian Bokmål)
Currently translated at 100.0% (1038 of 1038 strings)
feat(lang): translated using Weblate (Norwegian Bokmål)
Currently translated at 100.0% (1038 of 1038 strings)
feat(lang): translated using Weblate (Norwegian Bokmål)
Currently translated at 100.0% (1038 of 1038 strings)
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: exentler <gurandsrud@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/nb_NO/
Translation: Overseerr/Overseerr Frontend
Co-authored-by: Dalibor Radovanović <darkobg@gmail.com>
Co-authored-by: Ben <ben.david.wallner@gmail.com>
Co-authored-by: exentler <gurandsrud@gmail.com>
* feat: media/user watch history data via Tautulli
* fix(frontend): only display slideover cog button if there is media to manage
* fix(lang): tweak permission denied messages
* refactor: reorder Media section in slideover
* refactor: use new Tautulli stats API
* fix(frontend): do not attempt to fetch data when user lacks req perms
* fix: remove unneccessary get_user requests
* feat(frontend): display user avatars
* feat: add external URL setting
* feat: add play counts for past week/month
* fix(lang): tweak strings
Co-authored-by: Ryan Cohen <ryan@sct.dev>
* feat(frontend): open media management slideover on status badge click
* fix(frontend): use Link component for in-app badge links
* fix: check for query param value of '1'
* fix: correct query param check
* fix: available badges should still link to Plex
* build(deps): bump dependencies
* build(deps): bump next to 12.0.8
* build(deps): bump swr to 1.1.2
* build(deps): bump more dependencies
* build(deps): bump husky to 7.0.4
* fix: remove user list button outlines
* build(deps): bump dependencies again
* build(deps): bump dependencies once more
* docs(contrib): clarify when to squash commits
* docs(support): ask for more details when requesting support
* docs(install): specify more container details
* docs(contrib): suggested changes
* fix(notif): show event in pop up notification for slack
fix#2408
* fix(notifs): suggested changes
* fix(notif): add fallback text to slack embed builder
Co-authored-by: Ryan Cohen <ryan@sct.dev>
* fix(frontend): theme-color meta tag
* fix(frontend): add theme-color to offline.html
* fix(frontend): reorder application-name meta tag instead
* fix(lang): regenerate strings
* refactor: optimize Trakt logo SVG
* feat(api): allow importing of only selected Plex users
* feat(frontend): modal for importing Plex users
* feat: add alert if 'Enable New Plex Sign-In' setting is enabled
* refactor: fetch all existing Plex users in a single DB query
Co-authored-by: Ryan Cohen <ryan@sct.dev>
* feat(search): search by id
This adds the ability to search by ID (starting with TMDb ID).
Since there doesn't seem to be way of searching across movies, tv and persons,
I have to search through all 3 and use the first one in the order: movie -> tv -> person
Searching by ID is triggered using a 'prefix' just like in the *arrs.
* fix: missed some refactoring
* feat(search): use locale language
* feat(search): search using imdb id
* feat(search): search using tvdb id
* fix: alias type import
* fix: missed some refactoring
* fix(search): account for id being a string
* feat(search): account for movies/tvs/persons with the same id
* feat(search): remove non-null assertion
Co-authored-by: Ryan Cohen <ryan@sct.dev>
* fix: order collection parts by release date
* feat(frontend): add posters & release years to collection request modal
* fix(frontend): wrap movie titles in collection request modal
* feat(ui): allow admins to edit & accept request from request modal
This changes the "Edit Request" button in the advanced request modal to "Edit & Accept Request"
since the only thing an admin would do next is to accept the request.
The button would stay the same for users without the manage request permissions;
users who are editing their own requests or requesting content.
* feat(ui): suggested changes
* feat: add quotas, advanced options, and toggles to collection request modal
* fix: use correct requiredquota strings
* refactor: clean up collection part request status logic
* revert: undo changes to effect dependencies
* fix(lang): tweak TV request modal request button strings
* fix: don't try to fetch other users' quotas without MANAGE_USERS perm
* feat(lang): translated using Weblate (Catalan)
Currently translated at 100.0% (992 of 992 strings)
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: dtalens <databio@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/ca/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (Danish)
Currently translated at 99.1% (984 of 992 strings)
feat(lang): translated using Weblate (Danish)
Currently translated at 99.1% (984 of 992 strings)
feat(lang): translated using Weblate (Danish)
Currently translated at 99.1% (984 of 992 strings)
feat(lang): translated using Weblate (Danish)
Currently translated at 90.7% (900 of 992 strings)
feat(lang): translated using Weblate (Danish)
Currently translated at 88.9% (882 of 992 strings)
feat(lang): translated using Weblate (Danish)
Currently translated at 72.1% (716 of 992 strings)
feat(lang): translated using Weblate (Danish)
Currently translated at 56.9% (565 of 992 strings)
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: Simon Thyregod <p2v2w8ar@simon.thyregod.eu>
Co-authored-by: TheCatLady <o40yoym9@anonaddy.me>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/da/
Translation: Overseerr/Overseerr Frontend
* feat(lang): translated using Weblate (Chinese (Simplified))
Currently translated at 90.7% (900 of 992 strings)
feat(lang): translated using Weblate (Chinese (Simplified))
Currently translated at 90.6% (899 of 992 strings)
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: Jassy lin <linjiaxinme@gmail.com>
Co-authored-by: TheCatLady <o40yoym9@anonaddy.me>
Translate-URL: https://hosted.weblate.org/projects/overseerr/overseerr-frontend/zh_Hans/
Translation: Overseerr/Overseerr Frontend
Co-authored-by: dtalens <databio@gmail.com>
Co-authored-by: Simon Thyregod <p2v2w8ar@simon.thyregod.eu>
Co-authored-by: TheCatLady <o40yoym9@anonaddy.me>
Co-authored-by: Jassy lin <linjiaxinme@gmail.com>
* fix(api): fix requestedBy logic in request edits
* fix(frontend): do not display empty advanced request options box
* fix(frontend): set max height on modal backdrop
* fix: users should always be able to view their own issues
* fix: apply route guards to issues pages instead
* fix(api): only allow users w/ issue perms to edit comments / delete issues
* fix(frontend): more issues-related fixes
* fix: permission VIEW_ISSUES is also sufficient for viewing issues in slideover
* fix(frontend): only display issue notif types user is eligible to receive
* fix: don't display issues block in slideover if no open issues
* fix: move year out of link in issue details header
* fix: use 'view' global string for issue block button
* fix: issue/request/user list sort options
* feat(notif): add Pushbullet and Pushover agents to user notification settings
* docs(notif): add "hint" about user notifications to Pushbullet and Pushover pages
* fix: regenerate DB migration
* fix(lang): string edits
* fix: correct notif type ordering
* fix(lang): a few more edits
* fix(frontend): align & wrap media attributes properly
* fix(lang): use consistent cache names
* fix(email): do not attempt to display logo if app URL not configured
* fix(email): prevent Gmail from turning usernames with periods into hyperlinks
* fix(email): fix(email): use displayName instead of username/plexUserName and improve Gmail link fix
* feat(ui): link processing/requested status badges to service URL where available
* refactor: add URL prop to Badge component
* fix(css): tweak font weight of media rating values and request card link hover effect
* fix: only set StatusBadge serviceUrl for admins
* feat(servarr): auto fill base url when testing service if missing
This will fill the base URL of the *arr service only if it's missing and the base URL hasn't been
provided beforehand
* fix(servarr): replace redundant check
* fix(servarr): suggested changes
* feat: dynamically fetch login screen backdrop images
* fix: remove media check from backdrops endpoint
* fix: remove mapping and work with TMDb data directly
* feat(jobs): backend implementation
* feat(jobs): initial frontend implementation
* feat(jobs): store job settings as Record
* feat(jobs): use heroicons/react instead of inline svgs
* feat(jobs): use presets instead of cron expressions
* feat(jobs): ran `yarn i18n:extract`
* feat(jobs): suggested changes
- use job ids in settings
- add intervalDuration to jobs to allow choosing only minutes or hours for the job schedule
- move job schedule defaults to settings.json
- better TS types for jobs in settings cache component
- make suggested changes to wording
- plural form for label when job schedule can be defined in minutes
- add fixed job interval duration
- add predefined interval choices for minutes and hours
- add new schema for job to overseerr api
* feat(jobs): required change for CI to not fail
* feat(jobs): suggested changes
* fix(jobs): revert offending type refactor
* docs: improve Docker documentation
* docs: suggested changes
* docs: minor formatting changes
* docs: add Doplarr to list of third-party integrations
* docs: rename docker run tab
* docs: add link to official Docker CLI docs
* docs: minor edits
* feat: display release dates for theatrical, digital, and physical release types
* fix(ui): use disc icon for physical release
* style: reformat to make new version of Prettier happy
Thanks for taking the time to fill out this bug report!
Please note that we use GitHub issues exclusively for bug reports and feature requests. For support requests, please use our other support channels to get help.
- type:textarea
id:description
attributes:
label:Description
description:Please provide a clear and concise description of the bug or issue.
validations:
required:true
- type:input
id:version
attributes:
label:Version
description:What version of Jellyseerr are you running? (You can find this in Settings → About → Version.)
validations:
required:true
- type:textarea
id:repro-steps
attributes:
label:Steps to Reproduce
description:Please tell us how we can reproduce the undesired behavior.
placeholder:|
1. Go to [...]
2. Click on [...]
3. Scroll down to [...]
4. See error in [...]
validations:
required:true
- type:textarea
id:screenshots
attributes:
label:Screenshots
description:If applicable, please provide screenshots depicting the problem.
- type:textarea
id:logs
attributes:
label:Logs
description:Please copy and paste any relevant log output. (This will be automatically formatted into code, so no need for backticks.)
description:Please provide any additional information that may be relevant or helpful.
- type:checkboxes
id:terms
attributes:
label:Code of Conduct
description:By submitting this issue, you agree to follow our [Code of Conduct](https://github.com/fallenbagel/jellyseerr/blob/develop/CODE_OF_CONDUCT.md)
options:
- label:I agree to follow Jellyseerr's Code of Conduct
Thanks for taking the time to fill out this feature request!
Please note that we use GitHub issues exclusively for bug reports and feature requests. For support requests, please use our other support channels to get help.
- type:textarea
id:description
attributes:
label:Description
description:Is your feature request related to a problem? If so, please provide a clear and concise description of the problem; e.g., "I'm always frustrated when [...]."
validations:
required:true
- type:textarea
id:desired-behavior
attributes:
label:Desired Behavior
description:Provide a clear and concise description of what you want to happen.
validations:
required:true
- type:textarea
id:additional-context
attributes:
label:Additional Context
description:Provide any additional information or screenshots that may be relevant or helpful.
- type:checkboxes
id:terms
attributes:
label:Code of Conduct
description:By submitting this issue, you agree to follow our [Code of Conduct](https://github.com/fallenbagel/jellyseerr/blob/develop/CODE_OF_CONDUCT.md)
options:
- label:I agree to follow Jellyseerr's Code of Conduct
Is your feature request related to a problem? If so, please provide a clear and concise description of the problem. E.g., "I'm always frustrated when [...]."
#### Desired Behavior
Provide a clear and concise description of what you want to happen.
#### Additional Context
Provide any additional information or screenshots that may be relevant or helpful.
@@ -17,14 +17,14 @@ All help is welcome and greatly appreciated! If you would like to contribute to
1. [Fork](https://help.github.com/articles/fork-a-repo/) the repository to your own GitHub account and [clone](https://help.github.com/articles/cloning-a-repository/) it to your local device:
@@ -48,35 +48,50 @@ All help is welcome and greatly appreciated! If you would like to contribute to
4. Run the development environment:
```bash
yarn
yarn dev
pnpm install
pnpm dev
```
- Alternatively, you can use [Docker](https://www.docker.com/) with `docker-compose up -d`. This method does not require installing NodeJS or Yarn on your machine directly.
- Alternatively, you can use [Docker](https://www.docker.com/) with `dockercompose up -d`. This method does not require installing NodeJS or Yarn on your machine directly.
5. Create your patch and test your changes.
- Be sure to follow both the [code](#contributing-code) and [UI text](#ui-text-style) guidelines.
- Should you need to update your fork, you can do so by rebasing from `upstream`:
3. Update the `version` in `charts/jellyseerr-chart/Chart.yaml` following [Semantic Versioning (SemVer)](https://semver.org/).
4. Run the `helm-docs` command to regenerate the chart's README.
### Contributing Code
- If you are taking on an existing bug or feature ticket, please comment on the [issue](https://github.com/sct/overseerr/issues) to avoid multiple people working on the same thing.
- If you are taking on an existing bug or feature ticket, please comment on the [issue](https://github.com/fallenbagel/jellyseerr/issues) to avoid multiple people working on the same thing.
- All commits **must** follow [Conventional Commits](https://www.conventionalcommits.org/en/v1.0.0/)
- It is okay to squash your pull request down into a single commit that fits this standard.
- Pull requests with commits not following this standard will **not** be merged.
- Please make meaningful commits, or squash them.
- Please make meaningful commits, or squash them prior to opening a pull request.
- Do not squash commits once people have begun reviewing your changes.
- Always rebase your commit to the latest `develop` branch. Do **not** merge `develop` into your branch.
- It is your responsibility to keep your branch up-to-date. Your work will **not** be merged unless it is rebased off the latest `develop` branch.
- You can create a "draft" pull request early to get feedback on your work.
- Your code **must** be formatted correctly, or the tests will fail.
- We use Prettier to format our code base. It should automatically run with a Git hook, but it is recommended to have the Prettier extension installed in your editor and format on save.
- If you have questions or need help, you can reach out via [Discussions](https://github.com/sct/overseerr/discussions) or our [Discord server](https://discord.gg/overseerr).
- If you have questions or need help, you can reach out via [Discussions](https://github.com/fallenbagel/jellyseerr/discussions) or our [Discord server](https://discord.gg/ckbvBtDJgC).
- Only open pull requests to `develop`, never `master`! Any pull requests opened to `master` will be closed.
### UI Text Style
@@ -86,21 +101,61 @@ When adding new UI text, please try to adhere to the following guidelines:
1. Be concise and clear, and use as few words as possible to make your point.
2. Use the Oxford comma where appropriate.
3. Use the appropriate Unicode characters for ellipses, arrows, and other special characters/symbols.
4. Capitalize proper nouns, such as Plex, Radarr, Sonarr, Telegram, Slack, Pushover, etc. Be sure to also use the official capitalization for any abbreviations; e.g., TMDb and IMDb have a lowercase 'b', whereas TheTVDB has a capital 'B'.
4. Capitalize proper nouns, such as Plex, Radarr, Sonarr, Telegram, Slack, Pushover, etc. Be sure to also use the official capitalization for any abbreviations; e.g., IMDb has a lowercase 'b', whereas TMDB and TheTVDB have a capital 'B'.
5. Title case headings, button text, and form labels. Note that verbs such as "is" should be capitalized, whereas prepositions like "from" should be lowercase (unless as the first or last word of the string, in which case they are also capitalized).
6. Capitalize the first word in validation error messages, dropdowns, and form "tips." These strings should not end in punctuation.
7. Ensure that toast notification strings are complete sentences ending in punctuation.
8. If an additional description or "tip" is required for a form field, it should be styled using the global CSS class `label-tip`.
9. In full sentences, abbreviations like "info" or "auto" should not be used in place of full words, unless referencing the name/label of a specific setting or option which has an abbreviation in its name.
10. Do your best to check for spelling errors and grammatical mistakes.
11. Do not misspell "Overseerr."
11. Do not misspell "Jellyseerr."
## Translation
We use [Weblate](https://hosted.weblate.org/engage/overseerr/) for our translations, and your help with localizing Overseerr would be greatly appreciated! If your language is not listed below, please [open a feature request](https://github.com/sct/overseerr/issues/new/choose).
We use [Weblate](https://jellyseerr.borgcube.de/projects/jellyseerr/jellyseerr-frontend/) for our translations, and your help with localizing Jellyseerr would be greatly appreciated! If your language is not listed below, please [open a feature request](https://github.com/fallenbagel/jellyseerr/issues/new/choose).
If you are adding a new feature that requires a database migration, you will need to create 2 migrations: one for SQLite and one for PostgreSQL. Here is how you could do it:
1. Create a PostgreSQL database or use an existing one:
This contribution guide was inspired by the [Next.js](https://github.com/vercel/next.js) and [Radarr](https://github.com/Radarr/Radarr) contribution guides.
This contribution guide was inspired by the [Next.js](https://github.com/vercel/next.js), [Radarr](https://github.com/Radarr/Radarr), and [Overseerr](https://github.com/sct/Overseerr) contribution guides.
**Jellyseerr** is a free and open source fork of Overseerr for managing requests for your media library. It integrates with your existing services, such as **[Sonarr](https://sonarr.tv/)**, **[Radarr](https://radarr.video/)**, and **[Jellyfin](https://jellyfin.org/)**!
**Jellyseerr** is a free and open source software application for managing requests for your media library. It integrates with the media server of your choice: [Jellyfin](https://jellyfin.org), [Plex](https://plex.tv), and [Emby](https://emby.media/). In addition, it integrates with your existing services, such as **[Sonarr](https://sonarr.tv/)**, **[Radarr](https://radarr.video/)**.
## Current Features
- Jellyfin support
-Easy integration with your existing services. Currently, Jellyseerr supports Sonarr and Radarr.
-Jellyfin library scan, to keep track of the titles which are already available.
- Full Jellyfin/Emby/Plex integration including authentication with user import & management.
-Support for **PostgreSQL** and **SQLite** databases.
-Supports Movies, Shows and Mixed Libraries.
- Ability to change email addresses for SMTP purposes.
- Easy integration with your existing services. Currently, Jellyseerr supports Sonarr and Radarr. More to come!
- Jellyfin/Emby/Plex library scan, to keep track of the titles which are already available.
- Customizable request system, which allows users to request individual seasons or movies in a friendly, easy-to-use interface.
- Incredibly simple request management UI. Don't dig through the app to simply approve recent requests!
- Granular permission system.
- Support for various notification agents.
- Mobile-friendly design, for when you need to approve requests on the go!
- Support for watchlisting & blacklisting media.
Check out our [issue tracker](https://github.com/Fallenbagel/jellyseerr/issues).
## Supported Architectures
Jellyseerr image support multiple architectures such as x86-64, arm64 and armv7.
**NOTE: `:arm` and `:armv7` tag has been deprecated and replaced with `:latest`.**
| **Architecture** | **Tag** |
| ---------------- | ------- |
| x86-64 | latest |
| ARM64 | latest |
| ARMv7 | latest |
With more features on the way! Check out our [issue tracker](https://github.com/fallenbagel/jellyseerr/issues) to see the features which have already been requested.
## Getting Started
Check out our dockerhub for instructions on how to install and run Jellyseerr:
https://hub.docker.com/r/fallenbagel/jellyseerr
Check out our documentation for instructions on how to install and run Jellyseerr:
- Check out the [Jellyseerr Documentation](https://docs.jellyseerr.dev) before asking for help. Your question might already be in the docs!
- You can get support on [Discord](https://discord.gg/ckbvBtDJgC).
-Bug reports and feature requests can be submitted via [GitHub Issues](https://github.com/sct/overseerr/issues).
-You can ask questions in the Help category of our [GitHub Discussions](https://github.com/fallenbagel/jellyseerr/discussions).
- Bug reports and feature requests can be submitted via [GitHub Issues](https://github.com/fallenbagel/jellyseerr/issues).
## API Documentation
You can access the API documentation from your local Jellyseerr install at http://localhost:5055/api-docs
## Community
You can ask questions, share ideas, and more in [GitHub Discussions](https://github.com/fallenbagel/jellyseerr/discussions).
If you would like to chat with other members of our growing community, [join the Jellyseerr Discord server](https://discord.gg/ckbvBtDJgC)!
Our [Code of Conduct](https://github.com/fallenbagel/jellyseerr/blob/develop/CODE_OF_CONDUCT.md) applies to all Jellyseerr community channels.
## Contributing
You can help improve Jellyseerr too! Check out our [Contribution Guide](https://github.com/fallenbagel/jellyseerr/blob/develop/CONTRIBUTING.md) to get started.
## Contributors ✨
Thanks goes to these wonderful people from Overseerr ([emoji key](https://allcontributors.org/docs/en/emoji-key)) and all those that contributed directly to Jellyseerr:
### Jellyseerr Contributors ✨
<!-- ALL-CONTRIBUTORS-LIST:START - Do not remove or modify this section -->
<td align="center" valign="top" width="14.28%"><a href="https://nvds.be"><img src="https://avatars.githubusercontent.com/u/5257222?v=4?s=100" width="100px;" alt="Nicolai Van der Storm"/><br /><sub><b>Nicolai Van der Storm</b></sub></a><br /><a href="https://github.com/fallenbagel/jellyseerr/commits?author=NicolaiVdS" title="Code">💻</a></td>
**Jellyseerr** is a free and open source software application for managing requests for your media library. It integrates with the media server of your choice: [Jellyfin](https://jellyfin.org), [Plex](https://plex.tv), and [Emby](https://emby.media/). In addition, it integrates with your existing services, such as **[Sonarr](https://sonarr.tv/)**, **[Radarr](https://radarr.video/)**.
## Features
- **Full Plex integration**. Login and manage user access with Plex.
- **Syncs to your Plex library** to show what titles you already have.
- **Full Jellyfin/Emby/Plex integration**. Login and manage user access with Jellyfin/Emby/Plex.
- **Syncs to your Jellyfin/Emby/Plex library** to show what titles you already have.
- Supports Movies, Shows and Mixed Libraries.
- **Integrates with Sonarr and Radarr**. With more services to come in the future.
- Optionally set **Override rules** for requests to match with your defined conditions.
- **Easy to use request system** allowing users to request individual seasons or movies in a friendly, clean UI.
- **Simple request management UI**. Don't dig through the app to approve recent requests.
- **Mobile-friendly design**, for when you need to approve requests on the go.
- Granular permission system.
- Localization into other languages.
- Support for **PostgreSQL** and **SQLite** databases.
- Support for various notification agents.
- Easily **Watchlist** or **Blacklist** media.
- More features to come!
## Motivation
The primary motivation for starting this project was to have an incredibly performant and easy to use application. There is a heavy focus on the user experience for both the server owner and the users. We feel requesting should be **effortless for the user**. Find the media you want, click request, and branch off efficiently into other titles that interest you, all in one seamless flow. For the server owner, Overseerr takes all the hassle out of approving your users' requests.
The primary motivation for starting Jellyseerr was to bring Jellyfin and Emby support to Overseerr. However, over time, **Jellyseerr** has evolved into its own distinct application with unique features. Designed as a one-stop shop for media requests, it offers a simple, easy-to-use experience for managing requests on Jellyfin, Emby, and Plex servers.
## We need your help!
Overseerr is an ambitious project. We have already poured a lot of work into this, and have a lot more to do. We need your valuable feedback and help to find and fix bugs. Also, with Overseerr being an open-source project, anyone is welcome to contribute. Contribution includes building new features, patching bugs, translating the application, or even just writing documentation.
[Jellyseerr](https://github.com/Fallenbagel/jellyseerr) is an ambitious project where developers/contributors poured a lot of work into, and that builds on top of [Overseerr](https://github.com/sct/overseerr). And we have a lot more to do as well.
If you would like to contribute, please be sure to review our [contribution guidelines](https://github.com/sct/overseerr/blob/develop/CONTRIBUTING.md).
We value your feedback and support in identifying and fixing bugs to make Jellyseerr even better. As an open-source project, we welcome contributions from everyone. While Jellyseerr has diverged from Overseerr and evolved into its own unique application, we still encourage contributions to Overseerr, as it played a crucial role in inspiring what Jellyseerr has become today.
Contribution includes building new features, patching bugs, translating the application, or even just writing documentation.
If you would like to contribute, please be sure to review our [contribution guidelines](https://github.com/fallenbagel/jellyseerr/blob/develop/CONTRIBUTING.md).
description: Configure the database for Jellyseerr
sidebar_position: 2
---
# Configuring the Database
Jellyseerr supports SQLite and PostgreSQL. The database connection can be configured using the following environment variables:
## SQLite Options
If you want to use SQLite, you can simply set the `DB_TYPE` environment variable to `sqlite`. This is the default configuration so even if you don't set any other options, SQLite will be used.
```dotenv
DB_TYPE="sqlite" # Which DB engine to use, either "sqlite" or "postgres". The default is "sqlite".
CONFIG_DIRECTORY="config" # (optional) The path to the config directory where the db file is stored. The default is "config".
DB_LOG_QUERIES="false" # (optional) Whether to log the DB queries for debugging. The default is "false".
```
## PostgreSQL Options
### TCP Connection
If your PostgreSQL server is configured to accept TCP connections, you can specify the host and port using the `DB_HOST` and `DB_PORT` environment variables. This is useful for remote connections where the server uses a network host and port.
```dotenv
DB_TYPE="postgres" # Which DB engine to use, either "sqlite" or "postgres". The default is "sqlite".
DB_HOST="localhost" # (optional) The host (URL) of the database. The default is "localhost".
DB_PORT="5432" # (optional) The port to connect to. The default is "5432".
DB_USER= # (required) Username used to connect to the database.
DB_PASS= # (required) Password of the user used to connect to the database.
DB_NAME="jellyseerr" # (optional) The name of the database to connect to. The default is "jellyseerr".
DB_LOG_QUERIES="false" # (optional) Whether to log the DB queries for debugging. The default is "false".
```
### Unix Socket Connection
If your PostgreSQL server is configured to accept Unix socket connections, you can specify the path to the socket directory using the `DB_SOCKET_PATH` environment variable. This is useful for local connections where the server uses a Unix socket.
```dotenv
DB_TYPE="postgres" # Which DB engine to use, either "sqlite" or "postgres". The default is "sqlite".
DB_SOCKET_PATH="/var/run/postgresql" # (required) The path to the PostgreSQL Unix socket directory.
DB_USER= # (required) Username used to connect to the database.
DB_PASS= # (optional) Password of the user used to connect to the database, depending on the server's authentication configuration.
DB_NAME="jellyseerr" # (optional) The name of the database to connect to. The default is "jellyseerr".
DB_LOG_QUERIES="false" # (optional) Whether to log the DB queries for debugging. The default is "false".
```
### SSL configuration
The following options can be used to further configure ssl. Certificates can be provided as a string or a file path, with the string version taking precedence.
```dotenv
DB_USE_SSL="false" # (optional) Whether to enable ssl for database connection. This must be "true" to use the other ssl options. The default is "false".
DB_SSL_REJECT_UNAUTHORIZED="true" # (optional) Whether to reject ssl connections with unverifiable certificates i.e. self-signed certificates without providing the below settings. The default is "true".
DB_SSL_CA= # (optional) The CA certificate to verify the connection, provided as a string. The default is "".
DB_SSL_CA_FILE= # (optional) The path to a CA certificate to verify the connection. The default is "".
DB_SSL_KEY= # (optional) The private key for the connection in PEM format, provided as a string. The default is "".
DB_SSL_KEY_FILE= # (optinal) Path to the private key for the connection in PEM format. The default is "".
DB_SSL_CERT= # (optional) Certificate chain in pem format for the private key, provided as a string. The default is "".
DB_SSL_CERT_FILE= # (optional) Path to certificate chain in pem format for the private key. The default is "".
```
---
### Migrating from SQLite to PostgreSQL
1. Set up your PostgreSQL database and configure Jellyseerr to use it
2. Run Jellyseerr to create the tables in the PostgreSQL database
3. Stop Jellyseerr
4. Run the following command to export the data from the SQLite database and import it into the PostgreSQL database:
:::info
Edit the postgres connection string to match your setup.
If you don't have or don't want to use docker, you can build the working pgloader version [in this PR](https://github.com/dimitri/pgloader/pull/1531) from source and use the same options as below.
:::
:::caution
The most recent release of pgloader has an issue quoting the table columns. Use the version in the docker container to avoid this issue.
description: Configure a reverse proxy for Jellyseerr.
sidebar_position: 1
---
# Reverse Proxy
{% hint style="warning" %}
Base URLs cannot be configured in Overseerr. With this limitation, only subdomain configurations are supported.
:::warning
Base URLs cannot be configured in Jellyseerr. With this limitation, only subdomain configurations are supported.
A Nginx subfolder workaround configuration is provided below, but it is not officially supported.
{% endhint %}
:::
## Nginx
{% tabs %}
{% tab title="SWAG" %}
import Tabs from '@theme/Tabs';
import TabItem from '@theme/TabItem';
A sample proxy configuration is included in [SWAG (Secure Web Application Gateway)](https://github.com/linuxserver/docker-swag).
However, this page is still the only source of truth, so the SWAG sample configuration is not guaranteed to be up-to-date. If you find an inconsistency, please [report it to the LinuxServer team](https://github.com/linuxserver/reverse-proxy-confs/issues/new) or [submit a pull request to update it](https://github.com/linuxserver/reverse-proxy-confs/pulls).
To use the bundled configuration file, simply rename `overseerr.subdomain.conf.sample` in the `proxy-confs` folder to `overseerr.subdomain.conf`.
Alternatively, you can create a new file `overseerr.subdomain.conf` in `proxy-confs` with the following configuration:
This Nginx subfolder reverse proxy is an unsupported workaround, and only provided as an example. The filters may stop working when Overseerr is updated.
:::warning
This Nginx subfolder reverse proxy is an unsupported workaround, and only provided as an example. The filters may stop working when Jellyseerr is updated.
If you encounter any issues with Overseerr while using this workaround, we may ask you to try to reproduce the problem without the Nginx proxy.
{% endhint %}
If you encounter any issues with Jellyseerr while using this workaround, we may ask you to try to reproduce the problem without the Nginx proxy.
:::
Add the following location block to your existing `nginx.conf` file.
```nginx
location ^~ /overseerr {
set $app 'overseerr';
location ^~ /jellyseerr {
set $app 'jellyseerr';
# Remove /overseerr path to pass to the app
rewrite ^/overseerr/?(.*)$ /$1 break;
# Remove /jellyseerr path to pass to the app
rewrite ^/jellyseerr/?(.*)$ /$1 break;
proxy_pass http://127.0.0.1:5055; # NO TRAILING SLASH
A sample proxy configuration is included in [SWAG (Secure Web Application Gateway)](https://github.com/linuxserver/docker-swag).
However, this page is still the only source of truth, so the SWAG sample configuration is not guaranteed to be up-to-date. If you find an inconsistency, please [report it to the LinuxServer team](https://github.com/linuxserver/reverse-proxy-confs/issues/new) or [submit a pull request to update it](https://github.com/linuxserver/reverse-proxy-confs/pulls).
To use the bundled configuration file, simply rename `jellyseerr.subdomain.conf.sample` in the `proxy-confs` folder to `jellyseerr.subdomain.conf`.
Alternatively, you can create a new file `jellyseerr.subdomain.conf` in `proxy-confs` with the following configuration:
You can then add a jail using this filter in `jail.local`. Please see the [Fail2ban documetation](https://www.fail2ban.org/wiki/index.php/MANUAL_0_8#Jails) for details on how to configure the jail.
We do not officially support these third-party integrations. If you run into any issues, please seek help on the appropriate support channels for the integration itself!
{% endhint %}
- [Organizr](https://organizr.app/), a HTPC/homelab services organizer
- [Heimdall](https://github.com/linuxserver/Heimdall), an application dashboard and launcher
- [LunaSea](https://docs.lunasea.app/modules/overseerr), a self-hosted controller for mobile and macOS
- [Requestrr](https://github.com/darkalfx/requestrr/wiki/Configuring-Overseerr), a Discord chatbot
- [ha-overseerr](https://github.com/vaparr/ha-overseerr), a custom Home Assistant component
- [OverCLIrr](https://github.com/WillFantom/OverCLIrr), a command-line tool
- [Overseerr Exporter](https://github.com/WillFantom/overseerr-exporter), a Prometheus exporter
You can now access Jellyseerr by visiting `http://localhost:5055` in your web browser.
:::
#### Extending the installation
<Tabs groupId="unix-extensions" queryString>
<TabItem value="linux" label="Linux">
To run jellyseerr as a systemd service:
1. create the environment file at `/etc/jellyseerr/jellyseerr.conf`:
```bash
## Jellyseerr's default port is 5055, if you want to use both, change this.
## specify on which port to listen
PORT=5055
## specify on which interface to listen, by default jellyseerr listens on all interfaces
#HOST=127.0.0.1
## Uncomment if you want to force Node.js to resolve IPv4 before IPv6 (advanced users only)
# FORCE_IPV4_FIRST=true
```
2. Then run the following commands:
```bash
which node
```
Copy the path to node, it should be something like `/usr/bin/node`.
3. Create the systemd service file at `/etc/systemd/system/jellyseerr.service`, using either `sudo systemctl edit jellyseerr` or `sudo nano /etc/systemd/system/jellyseerr.service`:
```bash
[Unit]
Description=Jellyseerr Service
Wants=network-online.target
After=network-online.target
[Service]
EnvironmentFile=/etc/jellyseerr/jellyseerr.conf
Environment=NODE_ENV=production
Type=exec
Restart=on-failure
WorkingDirectory=/opt/jellyseerr
ExecStart=/usr/bin/node dist/index.js
[Install]
WantedBy=multi-user.target
```
:::note
If you are using a different path to node, replace `/usr/bin/node` with the path to node.
:::
4. Enable and start the service:
```bash
sudo systemctl enable jellyseerr
sudo systemctl start jellyseerr
```
</TabItem>
<TabItem value="macos" label="macOS">
To run jellyseerr as a launchd service:
1. Find the path to node:
```bash
which node
```
Copy the path to node, it should be something like `/usr/local/bin/node`.
2. Create a launchd plist file at `~/Library/LaunchAgents/com.jellyseerr.plist`:
```xml
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>Label</key>
<string>com.jellyseerr</string>
<key>ProgramArguments</key>
<array>
<string>/usr/local/bin/node</string>
<string>/opt/jellyseerr/dist/index.js</string>
</array>
<key>WorkingDirectory</key>
<string>/opt/jellyseerr</string>
<key>EnvironmentVariables</key>
<dict>
<key>NODE_ENV</key>
<string>production</string>
<key>PORT</key>
<string>5055</string>
</dict>
<key>RunAtLoad</key>
<true/>
<key>KeepAlive</key>
<true/>
</dict>
</plist>
```
:::note
If you are using a different path to node, replace `/usr/local/bin/node` with the path to node.
Details on how to install Docker can be found on the [official Docker website](https://docs.docker.com/get-docker/).
Refer to [Configuring Databases](/extending-jellyseerr/database-config#postgresql-options) for details on how to configure your database.
:::
## Unix (Linux, macOS)
:::warning
Be sure to replace `/path/to/appdata/config` in the below examples with a valid host directory path. If this volume mount is not configured correctly, your Jellyseerr settings/data will not be persisted when the container is recreated (e.g., when updating the image or rebooting your machine).
The `TZ` environment variable value should also be set to the [TZ database name](https://en.wikipedia.org/wiki/List_of_tz_database_time_zones) of your time zone!
:::
import Tabs from '@theme/Tabs';
import TabItem from '@theme/TabItem';
<Tabs groupId="docker-methods" queryString>
<TabItem value="docker-cli" label="Docker CLI">
For details on the Docker CLI, please [review the official `docker run` documentation](https://docs.docker.com/engine/reference/run/).
#### Installation:
```bash
docker run -d \
--name jellyseerr \
-e LOG_LEVEL=debug \
-e TZ=Asia/Tashkent \
-e PORT=5055 `#optional` \
-p 5055:5055 \
-v /path/to/appdata/config:/app/config \
--restart unless-stopped \
fallenbagel/jellyseerr
```
To run the container as a specific user/group, you may optionally add `--user=[ user | user:group | uid | uid:gid | user:gid | uid:group ]` to the above command.
#### Updating:
Stop and remove the existing container:
```bash
docker stop jellyseerr && docker rm Jellyseerr
```
Pull the latest image:
```bash
docker pull fallenbagel/jellyseerr
```
Finally, run the container with the same parameters originally used to create the container:
```bash
docker run -d ...
```
:::tip
You may alternatively use a third-party updating mechanism, such as [Watchtower](https://github.com/containrrr/watchtower) or [Ouroboros](https://github.com/pyouroboros/ouroboros), to keep Jellyseerr up-to-date automatically.
You could also use [diun](https://github.com/crazy-max/diun) to receive notifications when a new image is available.
For details on how to use Docker Compose, please [review the official Compose documentation](https://docs.docker.com/compose/reference/).
#### Installation:
Define the `jellyseerr` service in your `compose.yaml` as follows:
```yaml
---
services:
jellyseerr:
image: fallenbagel/jellyseerr:latest
container_name: jellyseerr
environment:
- LOG_LEVEL=debug
- TZ=Asia/Tashkent
- PORT=5055 #optional
ports:
- 5055:5055
volumes:
- /path/to/appdata/config:/app/config
restart: unless-stopped
```
Then, start all services defined in the Compose file:
```bash
docker compose up -d
```
#### Updating:
Pull the latest image:
```bash
docker compose pull jellyseerr
```
Then, restart all services defined in the Compose file:
```bash
docker compose up -d
```
:::tip
You may alternatively use a third-party mechanism like [dockge](https://github.com/louislam/dockge) to manage your docker compose files.
:::
</TabItem>
</Tabs>
## Unraid
1. Ensure you have the **Community Applications** plugin installed.
2. Inside the **Community Applications** app store, search for **Jellyseerr**.
3. Click the **Install Button**.
4. On the following **Add Container** screen, make changes to the **Host Port** and **Host Path 1** \(Appdata\) as needed.
5. Click apply and access "Jellyseerr" at your `<ServerIP:HostPort>` in a web browser.
## Windows
Please refer to the [Docker Desktop for Windows user manual](https://docs.docker.com/docker-for-windows/) for details on how to install Docker on Windows. There is no need to install a Linux distro if using named volumes like in the example below.
:::warning
**WSL2 will need to be installed to prevent DB corruption!** Please see the [Docker Desktop WSL 2 backend documentation](https://docs.docker.com/docker-for-windows/wsl/) for instructions on how to enable WSL2. The commands below will only work with WSL2 installed!
:::
First, create a volume to store the configuration data for Jellyseerr using using either the Docker CLI:
```bash
docker volume create jellyseerr-data
```
or the Docker Desktop app:
1. Open the Docker Desktop app
2. Head to the Volumes tab
3. Click on the "New Volume" button near the top right
4. Enter a name for the volume (example: `jellyseerr-data`) and hit "Create"
Then, restart all services defined in the Compose file:
```bash
docker compose up -d
```
</TabItem>
</Tabs>
To access the files inside the volume created above, navigate to `\\wsl$\docker-desktop-data\version-pack-data\community\docker\volumes\jellyseerr-data\_data` using File Explorer.
:::info
Docker on Windows works differently than it does on Linux; it runs Docker inside of a stripped-down Linux VM. Volume mounts are exposed to Docker inside this VM via SMB mounts. While this is fine for media, it is unacceptable for the `/app/config` directory because SMB does not support file locking. This will eventually corrupt your database, which can lead to slow behavior and crashes.
**If you must run Docker on Windows, you should put the `/app/config` directory mount inside the VM and not on the Windows host.** (This also applies to other containers with SQLite databases.)
Named volumes, like in the example commands above, are automatically mounted inside the VM. Therefore the warning on the setup about the `/app/config` folder being incorrectly mounted page should be ignored.
# Run the Overseerr container with the same parameters as before
docker run -d ...
```
{% endtab %}
{% endtabs %}
{% hint style="info" %}
Use a 3rd party updating mechanism such as [Watchtower](https://github.com/containrrr/watchtower) or [Ouroboros](https://github.com/pyouroboros/ouroboros) to keep Overseerr up-to-date automatically.
{% endhint %}
## Unraid
1. Ensure you have the **Community Applications** plugin installed.
2. Inside the **Community Applications** app store, search for **Overseerr**.
3. Click the **Install Button**.
4. On the following **Add Container** screen, make changes to the **Host Port** and **Host Path 1**\(Appdata\) as needed.
5. Click apply and access "Overseerr" at your `<ServerIP:HostPort>` in a web browser.
## Windows
Please refer to the [Docker Desktop for Windows user manual](https://docs.docker.com/docker-for-windows/) for details on how to install Docker on Windows. There is no need to install a Linux distro if using named volumes like in the example below.
{% hint style="danger" %}
**WSL2 will need to be installed to prevent DB corruption!** Please see the [Docker Desktop WSL 2 backend documentation](https://docs.docker.com/docker-for-windows/wsl/) for instructions on how to enable WSL2. The commands below will only work with WSL2 installed!
{% endhint %}
First, create a volume to store the configuration data for Overseerr using using either the Docker CLI:
```bash
docker volume create overseerr-data
```
or the Docker Desktop app:
1. Open the Docker Desktop app
2. Head to the Volumes tab
3. Click on the "New Volume" button near the top right
4. Enter a name for the volume (example: `overseerr-data`) and hit "Create"
If using a named volume like above, you can safely ignore the warning about the `/app/config` folder being incorrectly mounted on the setup page.
To access the files inside the volume created above, navigate to `\\wsl$\docker-desktop-data\version-pack-data\community\docker\volumes\overseerr-data\_data` using File Explorer.
{% hint style="info" %}
Docker on Windows works differently than it does on Linux; it runs Docker inside of a stripped-down Linux VM. Volume mounts are exposed to Docker inside this VM via SMB mounts. While this is fine for media, it is unacceptable for the `/app/config` directory because SMB does not support file locking. This will eventually corrupt your database, which can lead to slow behavior and crashes.
**If you must run Docker on Windows, you should put the `/app/config` directory mount inside the VM and not on the Windows host.** (This also applies to other containers with SQLite databases.)
Named volumes, like in the example commands above, are automatically mounted inside the VM.
{% endhint %}
## Linux
{% hint style="info" %}
The [Overseerr snap](https://snapcraft.io/overseerr) is the only officially supported Linux install method aside from [Docker](#docker).
Currently, the listening port cannot be changed, so port `5055` will need to be available on your host. To install `snapd`, please refer to the [Snapcraft documentation](https://snapcraft.io/docs/installing-snapd).
{% endhint %}
**To install:**
```
sudo snap install overseerr
```
**Updating:**
Snap will keep Overseerr up-to-date automatically. You can force a refresh by using the following command.
```
sudo snap refresh
```
**To install the development build:**
```
sudo snap install overseerr --edge
```
{% hint style="danger" %}
This version can break any moment. Be prepared to troubleshoot any issues that arise!
Once installed, you will not be notified of updates, so you can update with:
```bash
emerge @live-rebuild
```
or use `app-portage/smart-live-rebuild`
{% hint style="danger" %}
This version can break any moment. Be prepared to troubleshoot any issues that arise!
{% endhint %}
{% endtab %}
{% tab title="Swizzin" %}
{% hint style="danger" %}
This implementation is not yet merged to master due to missing functionality. You can beta test the limited implementation or follow the status on [the pull request](https://github.com/swizzin/swizzin/pull/567).
{% endhint %}
The installation is not implemented via Docker, but barebones. The latest release version of Overseerr will be used.
Please see the [swizzin documentation](https://swizzin.ltd/applications/overseerr) for more information.
Helm values can be found in the Jellyseerr repository under [charts/jellyseerr-chart/README.md](https://github.com/Fallenbagel/jellyseerr/tree/develop/charts/jellyseerr-chart).
Verify the signature with [cosign](https://docs.sigstore.dev/cosign/system_config/installation/) (replace [tag], with the TAG you want to verify) :
In order to use postgres, you will need to add override the default module of jellyseerr with the following as the current default module is not compatible with postgres:
If you can't find the solution to your problem here, please read [Need Help?](./need-help.md) and reach out to us on [Discord](https://discord.gg/overseerr).
_Please do not post questions or support requests on the GitHub issue tracker!_
{% endhint %}
## General
### How do I keep Overseerr up-to-date?
Use a third-party update mechanism (such as [Watchtower](https://github.com/containrrr/watchtower), [Ouroboros](https://github.com/pyouroboros/ouroboros), or [Pullio](https://hotio.dev/pullio)) to keep Overseerr up-to-date automatically.
### How can I access Overseerr outside of my home network?
The easiest but least secure method is to simply forward an external port (e.g., `5055`) on your router to the internal port used by Overseerr (default is TCP `5055`). Visit [Port Forward](http://portforward.com/) for instructions for your particular router. You would then be able to access Overseerr via `http://EXTERNAL-IP-ADDRESS:5055`.
A more advanced, user-friendly, and secure (if using SSL) method is to set up a web server and use a reverse proxy to access Overseerr. Please refer to our [reverse proxy examples](../extending-overseerr/reverse-proxy.md) for more information.
The most secure method (but also the most inconvenient method) is to set up a VPN tunnel to your home server. You would then be able to access Overseerr as if you were on your local network, via `http://LOCAL-IP-ADDRESS:5055`.
### Overseerr is amazing! But it is not translated in my language yet! Can I help with translations?
You sure can! We are using [Weblate](https://hosted.weblate.org/engage/overseerr/) for translations. If your language is not listed, please [open a feature request on GitHub](https://github.com/sct/overseerr/issues/new/choose).
### Where can I find the changelog?
You can find the changelog for your version (stable/`latest`,s or `develop`) in the **Settings → About** page in your Overseerr instance.
You can alternatively review the [stable release history](https://github.com/sct/overseerr/releases) and [`develop` branch commit history](https://github.com/sct/overseerr/commits/develop) on GitHub.
### Some media is missing from Overseerr that I know is in Plex!
Overseerr currently supports the following agents:
- New Plex Movie
- Legacy Plex Movie
- New Plex TV
- Legacy Plex TV
- TheTVDB
- TMDb
- [HAMA](https://github.com/ZeroQI/Hama.bundle)
Please verify that your library is using one of the agents previously listed.
When changing agents, a full metadata refresh of your Plex library is required. (Caution: This can take a long time depending on the size of your library.)
#### Troubleshooting Steps
First, check the Overseerr logs for media items that are missing. The logs will contain an error as to why that item could not be matched.
1. Verify that you are using one of the agents mentioned above.
2. Refresh the metadata for just that item.
3. Run a full scan in Overseerr to see if that item is now matched properly.
4. If the item is now seen by Overseerr then repeat step 2 for each missing item. If you have a large amount of items missing then a full metadata refresh is recommended for that library.
5. Run a full scan on Overseerr after refreshing all unmatched items.
You can also perform the following to verify the media item has a GUID Overseerr can match:
1. Go to the media item in Plex and **"Get info"** and click on **"View XML"**.
2. Verify that the media item's GUID follows one of the below formats:
4. Legacy Plex Movie agent `guid="com.plexapp.agents.imdb://tt0765446"`
### Where can I find the log files?
Please see [these instructions on how to locate and share your logs](./need-help.md#how-can-i-share-my-logs).
## Users
### Why can't I see all of my Plex users?
Please see the [documentation for importing users from Plex](../using-overseerr/users/README.md#importing-users-from-plex).
### Can I create local users in Overseerr?
Yes! Please see the [documentation for creating local users](../using-overseerr/users/README.md#creating-local-users).
### Is is possible to set user roles in Overseerr?
Permissions can be configured for each user via the **User List** or their **User Settings** page. The list of assignable permissions is still growing, so if you have any suggestions, [submit a feature request](https://github.com/sct/overseerr/issues/new/choose)!
## Requests
### I receive 409 or 400 errors when requesting a movie or TV series!
Verify you are running v3 of both Radarr and Sonarr. Overseerr is not backwards-compatible with previous versions.
### Can I allow users to submit 4K requests?
Yes! If you keep both non-4K and 4K content in your media libraries, you can link separate 4K Radarr/Sonarr servers to allow users to submit 4K requests. (You must configure default non-4K **and** default 4K Radarr/Sonarr servers.)
Please see the [Services documentation](../using-overseerr/settings/README.md#services) for details on how to configure your Radarr and/or Sonarr servers.
Note that users must also have the **Request 4K**, **Request 4K Movies**, and/or **Request 4K Series** permissions in order to submit requests for 4K content.
### I approved a requested movie and Radarr didn't search for it!
Check the minimum availability setting in your Radarr server. If a movie does not meet the minimum availability requirement, no search will be performed. Also verify that Radarr did not perform a search, by checking the Radarr logs. Lastly, verify that the item was not already being monitored by Radarr prior to approving the request.
### Help! My request still shows "requested" even though it is in Plex!
See "[Some media is missing from Overseerr that I know is in Plex!](#some-media-is-missing-from-overseerr-that-i-know-is-in-plex)" for troubleshooting steps.
### Series requests keep failing!
If you configured a URL base in Sonarr, make sure you have also configured the [URL Base](../using-overseerr/settings/README.md#url-base) setting for your Sonarr server in Overseerr.
Also, check that you are using Sonarr v3 and that you have configured a default language profile in Overseerr.
Language profile support for Sonarr was added in [v1.20.0](https://github.com/sct/overseerr/releases/tag/v1.20.0) along with a new, _required_**Language Profile** setting. If series requests are failing, make sure that you have a default language profile configured for each of your Sonarr servers in **Settings → Services**.
## Notifications
### I am getting "Username and Password not accepted" when attempting to send email notifications via Gmail!
If you have 2-Step Verification enabled on your account, you will need to create an [app password](https://support.google.com/mail/answer/185833).
Before seeking assistance, please make sure you have first tried these following:
- **Updating** Overseerr to the latest version.
- **Stopping and restarting** Overseerr.
- **Restarting** your machine.
- **Clearing** your browser cache.
- **Analyzing** your logs, you just might find the solution yourself!
- **Searching** the [documentation](../README.md), [installation guide](../getting-started/installation.md), and [FAQs](./faq.md).
If you still have questions after troubleshooting on your own, feel free to ask on [Discord](https://discord.gg/overseerr)! (Please review our [Code of Conduct](https://github.com/sct/overseerr/blob/develop/CODE_OF_CONDUCT.md) before posting.)
Be sure to also include a link to your logs. (Please see [How can I share my logs?](#how-can-i-share-my-logs) below.)
## What should I include when requesting support?
Please try to include as much information as possible. A vague statement like "it doesn't work" provides very little to go on, and makes it difficult for us to help you.
Try to answer the following questions:
- What were you trying to do, and how did you attempt it?
- What command did you enter?
- What did you click on?
- What settings did you change?
- Did you follow official instructions, or a third-party guide?
- Provide a step-by-step list of what you tried.
- Provide a brief description of your setup.
- What exactly do you see?
- Did something happen?
- Did something not happen?
- Are there any error messages showing?
- Provide screenshots to help us see what you are seeing.
- Share your Overseerr logs, which show exactly what happened and are often critical for identifying issues (see [How can I share my logs?](#how-can-i-share-my-logs) below).
## How can I share my logs?
1. Locate the current log file at `<your Overseerr config directory>/logs/overseerr.log`.
2. Open the log file and **copy its contents** into a [**secret gist** on GitHub](https://gist.github.com/). If you upload your logs elsewhere, we may ask you to share them again via GitHub Gist.
3.**Share the link/URL to your secret gist** in the [`#support` channel in our Discord server](https://discord.gg/overseerr).
description: Understand which data you should back up.
sidebar_position: 4
---
# Which data does Jellyseerr save and where?
## Settings
All configurations from the **Settings** panel in the Jellyseerr web UI are saved, including integrations with Radarr, Sonarr, Jellyfin, Plex, and notification settings.
These settings are stored in the `settings.json` file located in the Jellyseerr data folder.
## User Data
Apart from the settings, all other data—including user accounts, media requests, blacklist etc. are stored in the database (either SQLite or PostgreSQL).
# Backup
### SQLite
If your backup system uses filesystem snapshots (such as Kubernetes with Volsync), you can directly back up the Jellyseerr data folder.
Otherwise, you need to stop the Jellyseerr application and back up the `config` folder.
For advanced users, it's possible to back up the database without stopping the application by using the [SQLite CLI](https://www.sqlite.org/download.html). Run the following command to create a backup:
After restoring your `db/db.sqlite3` file and, optionally, the `settings.json` file, the `config` folder structure should look like this:
```
.
├── cache <-- Optional
├── db
│ └── db.sqlite3
├── logs <-- Optional
└── settings.json <-- Optional (required if you want to avoid reconfiguring Jellyseerr)
```
Once the files are restored, start the Jellyseerr application.
### PostgreSQL
Install the [PostgreSQL client](https://www.postgresql.org/download/) and restore the PostgreSQL database using the following command (replace the placeholders accordingly):
:::info
Depending on how your PostgreSQL instance is configured, you may need to add these options to the command below.
-h, --host=HOSTNAME database server host or socket directory
The Discord notification agent enables you to post notifications to a channel in a server you manage.
{% hint style="info" %}
:::info
Users can optionally opt-in to being mentioned in Discord notifications by configuring their [Discord user ID](https://support.discord.com/hc/en-us/articles/206346498-Where-can-I-find-my-User-Server-Message-ID-) in their user settings.
{% endhint %}
:::
## Configuration
@@ -12,6 +18,10 @@ Users can optionally opt-in to being mentioned in Discord notifications by confi
You can find the webhook URL in the Discord application, at **Server Settings → Integrations → Webhooks**.
### Notification Role ID (optional)
If a role ID is specified, it will be included in the webhook message. See [Discord role ID](https://support.discord.com/hc/en-us/articles/206346498-Where-can-I-find-my-User-Server-Message-ID).
### Bot Username (optional)
If you would like to override the name you configured for your bot in Discord, you may set this value to whatever you like!
description: Configure email notifications for your users.
sidebar_position: 1
---
# Email
## Configuration
{% hint style="info" %}
If the [Application URL](../settings/README.md#application-url) setting is configured in **Settings → General**, Overseerr will explicitly set the origin server hostname when connecting to the SMTP host.
{% endhint %}
:::info
If the [Application URL](/using-jellyseerr/settings/general#application-title) setting is configured in **Settings → General**, Jellyseerr will explicitly set the origin server hostname when connecting to the SMTP host.
:::
### Sender Name (optional)
Configure a friendly name for the email sender (e.g., "Overseerr").
Configure a friendly name for the email sender (e.g., "Jellyseerr").
### Sender Address
@@ -18,7 +24,7 @@ Depending on your email provider, this may need to be an address you own. For ex
### SMTP Host
Set this to the hostname or IP address of your SMTP host/server.
Set this to the hostname or IP address of your SMTP server.
### SMTP Port
@@ -26,16 +32,15 @@ Set this to a supported port number for your SMTP host. `465` and `587` are comm
### Encryption Method
In most cases, [Use Implicit TLS](https://tools.ietf.org/html/rfc8314) should be selected for port 465, and [Use STARTTLS if available](https://en.wikipedia.org/wiki/Opportunistic_TLS) for port 587. Please refer to your email provider's documentations for details on how to configure this setting.
In most cases, [Use Implicit TLS](https://tools.ietf.org/html/rfc8314) should be selected for port 465, and [Use STARTTLS](https://en.wikipedia.org/wiki/Opportunistic_TLS) if available for port 587. Please refer to your email provider's documentations for details on how to configure this setting.
The default value for this setting is **Use STARTTLS if available**.
### SMTP Username & Password
{% hint style="info" %}
:::info
If your account has two-factor authentication enabled, you may need to create an application password instead of using your account password.
{% endhint %}
:::
Configure these values as appropriate to authenticate with your SMTP host.
description: Configure notifications for your users.
sidebar_position: 3
---
# Notifications
## Supported Notification Agents
Jellyseerr currently supports the following notification agents:
import DocCardList from '@theme/DocCardList';
<DocCardList />
## Setting Up Notifications
Simply configure your desired notification agents in **Settings -> Notifications** in the Jellyseerr web UI.
Users can customize their notification preferences in their own user notification settings.
## Requesting New Notification Agents
If we do not currently support your preferred notification agent, feel free to [submit a feature request on GitHub](https://github.com/Fallenbagel/jellyseerr/issues). However, please be sure to search first and confirm that there is not already an existing request for the agent!
description: Configure web push notifications for your users.
sidebar_position: 2
---
# Web Push
The web push notification agent enables you and your users to receive Jellyseerr notifications in a supported browser.
This notification agent does not require any configuration, but is not enabled in Jellyseerr by default.
:::warning
Web push notifications require a secure connection to your Jellyseerr instance. Refer to the [Reverse Proxy](/extending-jellyseerr/reverse-proxy) documentation for more information.
:::
To set up web push notifications, simply enable the agent in **Settings → Notifications → Web Push**. You and your users will then be prompted to allow notifications in your web browser.
Users can opt out of these notifications, or customize the notification types they would like to subscribe to, in their user settings.
:::info
Web push notifications offer a native notification experience without the need to install an app.
:::
Some files were not shown because too many files have changed in this diff
Show More
Reference in New Issue
Block a user
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.