mirror of
https://github.com/meisnate12/Plex-Meta-Manager
synced 2024-11-24 05:23:05 +00:00
[13] add spellcheck
This commit is contained in:
parent
54c0128893
commit
204449ddd3
46 changed files with 535 additions and 174 deletions
330
.github/.wordlist.txt
vendored
Normal file
330
.github/.wordlist.txt
vendored
Normal file
|
@ -0,0 +1,330 @@
|
|||
AAC
|
||||
accessModes
|
||||
Addon
|
||||
Adlib
|
||||
Amblin
|
||||
analytics
|
||||
AniDB
|
||||
AniDB's
|
||||
AniList
|
||||
anilist
|
||||
AniList's
|
||||
API
|
||||
apikey
|
||||
APIs
|
||||
apiVersion
|
||||
AppleTV
|
||||
ArrAPI
|
||||
Arrowverse
|
||||
Atmos
|
||||
Avenir
|
||||
BAFTA
|
||||
BBFC
|
||||
bearlikelion
|
||||
Berlinale
|
||||
Bestest
|
||||
BING
|
||||
bing
|
||||
bitrate
|
||||
BOING
|
||||
boolean
|
||||
BoxOfficeMojo
|
||||
boxofficemojo
|
||||
BPjM
|
||||
BritBox
|
||||
britbox
|
||||
bullmoose
|
||||
burkasaurusrex
|
||||
bw
|
||||
Cappella
|
||||
cd
|
||||
chazlarson
|
||||
codec
|
||||
codecs
|
||||
collectionless
|
||||
config
|
||||
configs
|
||||
cpp
|
||||
cpt
|
||||
CPUs
|
||||
cron
|
||||
CronJob
|
||||
cronjob
|
||||
crontab
|
||||
Crunchyroll
|
||||
customizable
|
||||
customizations
|
||||
César
|
||||
dbader
|
||||
de
|
||||
deva
|
||||
DIIIVOY
|
||||
diiivoy
|
||||
diiivoycolor
|
||||
DIR
|
||||
dir
|
||||
DiskStation
|
||||
dockerfile
|
||||
dockerfiles
|
||||
DockerHub
|
||||
dockerhub
|
||||
dolby
|
||||
DreamWorks
|
||||
dropdown
|
||||
DTS
|
||||
DV
|
||||
Emmys
|
||||
ENV
|
||||
env
|
||||
etree
|
||||
eventartworks
|
||||
favorited
|
||||
fawkes
|
||||
FFFFFF
|
||||
Fi
|
||||
filepath
|
||||
filetype
|
||||
FLAC
|
||||
FlixPatrol
|
||||
flixpatrol
|
||||
fontawesome
|
||||
Fribb
|
||||
FSK
|
||||
Galician
|
||||
generalizable
|
||||
GitHub
|
||||
github
|
||||
githubusercontent
|
||||
gotify
|
||||
Grenvilles
|
||||
GUID
|
||||
HAMA
|
||||
hayu
|
||||
HD
|
||||
HDR
|
||||
Hemsworth
|
||||
homescreen
|
||||
homescreens
|
||||
HRA
|
||||
html
|
||||
http
|
||||
https
|
||||
Hulu
|
||||
ICheckMovies
|
||||
ImageMaid
|
||||
IMAX
|
||||
IMDb
|
||||
imdb
|
||||
IMDb's
|
||||
IMDbList
|
||||
img
|
||||
includer
|
||||
init
|
||||
integrations
|
||||
io
|
||||
iteratively
|
||||
Jinja
|
||||
jkirkcaldy
|
||||
JohnFawkes
|
||||
JonnyWong
|
||||
jpeg
|
||||
jpg
|
||||
json
|
||||
kesleyalfa
|
||||
Koltom
|
||||
kometa
|
||||
Kometa
|
||||
Kometa's
|
||||
kometateam
|
||||
kometautils
|
||||
Kubernetes
|
||||
kuesel
|
||||
Launchd
|
||||
Letterboxd
|
||||
LGBTQ
|
||||
linas
|
||||
Lingala
|
||||
linux
|
||||
LinuxServer
|
||||
linuxserver
|
||||
linuxserver's
|
||||
localhost
|
||||
Looper
|
||||
LSIO
|
||||
lsio
|
||||
Luxembourgish
|
||||
LXML
|
||||
lxml
|
||||
macOS
|
||||
mal
|
||||
MB
|
||||
mb
|
||||
MCU
|
||||
md
|
||||
mdb
|
||||
MDBList
|
||||
mdblist
|
||||
MediaStinger
|
||||
mediastinger
|
||||
mediastingers
|
||||
MediUX
|
||||
mediux
|
||||
meisnate
|
||||
metacritic
|
||||
microsoft
|
||||
mikenobbs
|
||||
minikube
|
||||
mnt
|
||||
monetization
|
||||
Mossi
|
||||
MPAA
|
||||
MyAnimeList
|
||||
myanimelist
|
||||
MyAnimeList's
|
||||
MyCollections
|
||||
MyOverlays
|
||||
MyPlaylists
|
||||
mza
|
||||
namespace
|
||||
NAS
|
||||
natively
|
||||
nitsua
|
||||
Nokmål
|
||||
NOSUCHLIBRARY
|
||||
notifiarr
|
||||
Nynorsk
|
||||
OAuth
|
||||
oauth
|
||||
octicons
|
||||
OMDb
|
||||
oscar
|
||||
OSX
|
||||
ozzy
|
||||
pathing
|
||||
PCM
|
||||
PersistentVolumeClaim
|
||||
PGID
|
||||
pgid
|
||||
pkkid
|
||||
plex
|
||||
plex's
|
||||
plexapi
|
||||
PlexCollection
|
||||
PlexPosters
|
||||
PNG
|
||||
Pokémon
|
||||
popularplex
|
||||
portainer
|
||||
Powershell
|
||||
pre
|
||||
prepend
|
||||
PUID
|
||||
puid
|
||||
QNAP
|
||||
radarr
|
||||
Razzie
|
||||
Razzies
|
||||
README
|
||||
Readme
|
||||
ReadWriteOnce
|
||||
reciperr
|
||||
reddit
|
||||
RedHeadJedi
|
||||
REMUX
|
||||
repo
|
||||
repos
|
||||
rholder
|
||||
RogerEvert
|
||||
Romani
|
||||
runtime
|
||||
runtimes
|
||||
schemas
|
||||
Sci-Fi
|
||||
SciFi
|
||||
ScudLee
|
||||
SDTV
|
||||
SemVer
|
||||
ShawShank
|
||||
Skywalker
|
||||
Sohjiro
|
||||
Sohjiro's
|
||||
sonarr
|
||||
SSL
|
||||
StevenLu
|
||||
StevenLu's
|
||||
subprocess
|
||||
Sundance
|
||||
SxxEyy
|
||||
symlinks
|
||||
Synology
|
||||
Systemctl
|
||||
Taglist
|
||||
Tautulli
|
||||
Tautulli's
|
||||
TELESYNC
|
||||
Templatizing
|
||||
th
|
||||
TheMovieDb
|
||||
themoviedb
|
||||
ThePosterDB
|
||||
TheTVDb
|
||||
TMDb
|
||||
tmdb
|
||||
TMDb's
|
||||
TMDbAPIs
|
||||
Toastjuh
|
||||
TODO
|
||||
tomatometer
|
||||
trakt
|
||||
trakt's
|
||||
transcoded
|
||||
transcoding
|
||||
TRaSH
|
||||
TrueHD
|
||||
ttf
|
||||
tutin
|
||||
tv
|
||||
TVDb
|
||||
UI
|
||||
unionfs
|
||||
unmanaged
|
||||
unplayed
|
||||
unraid
|
||||
unRAID
|
||||
URI
|
||||
URL
|
||||
url
|
||||
urls
|
||||
UserList
|
||||
userlist
|
||||
utills
|
||||
Vecteezy
|
||||
VENV
|
||||
venv
|
||||
visualstudio
|
||||
vladimir
|
||||
Wachowski
|
||||
walkthrough
|
||||
walkthroughs
|
||||
watchlist
|
||||
webhook
|
||||
webhooks
|
||||
WEBP
|
||||
webserver
|
||||
whitespace
|
||||
wildcarded
|
||||
Witherspoon
|
||||
Wizarding
|
||||
Wolof
|
||||
www
|
||||
xmark
|
||||
XYZ
|
||||
yaml
|
||||
yml
|
||||
YourName
|
||||
yourname
|
||||
Yozora
|
||||
YozoraXCII
|
||||
YYYY
|
||||
zaP
|
||||
ZeroQI
|
12
.github/workflows/spellcheck.yml
vendored
Normal file
12
.github/workflows/spellcheck.yml
vendored
Normal file
|
@ -0,0 +1,12 @@
|
|||
name: Spellcheck Action
|
||||
|
||||
on: pull_request
|
||||
|
||||
jobs:
|
||||
spellcheck:
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
|
||||
- uses: actions/checkout@v4
|
||||
|
||||
- uses: rojopolis/spellcheck-github-actions@0.36.0
|
19
.spellcheck.yml
Normal file
19
.spellcheck.yml
Normal file
|
@ -0,0 +1,19 @@
|
|||
matrix:
|
||||
- name: Markdown
|
||||
sources:
|
||||
- '**/*.md'
|
||||
- 'CHANGELOG'
|
||||
aspell:
|
||||
lang: en
|
||||
dictionary:
|
||||
wordlists:
|
||||
- .github/.wordlist.txt
|
||||
encoding: utf-8
|
||||
pipeline:
|
||||
- pyspelling.filters.markdown:
|
||||
- pyspelling.filters.html:
|
||||
comments: false
|
||||
ignores:
|
||||
- code
|
||||
- pre
|
||||
default_encoding: utf-8
|
2
VERSION
2
VERSION
|
@ -1 +1 @@
|
|||
2.0.0-develop12
|
||||
2.0.0-develop13
|
||||
|
|
|
@ -122,7 +122,7 @@ templates:
|
|||
rating<<rating_num>>_image_url:
|
||||
conditions:
|
||||
- rating<<rating_num>>_image: anidb
|
||||
value: Anidb
|
||||
value: AniDB
|
||||
- rating<<rating_num>>_image: imdb
|
||||
value: IMDb
|
||||
- rating<<rating_num>>_image: letterboxd
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
# MdbList Attributes
|
||||
# MDBList Attributes
|
||||
|
||||
Configuring [MdbList](https://mdblist.com/) is optional but can allow you to mass edit metadata.
|
||||
Configuring [MDBList](https://mdblist.com/) is optional but can allow you to mass edit metadata.
|
||||
|
||||
A `mdblist` mapping is in the root of the config file.
|
||||
|
||||
|
@ -13,12 +13,12 @@ mdblist:
|
|||
|
||||
| Attribute | Allowed Values | Default | Required |
|
||||
|:-------------------|:--------------------------------------------------------------------------|:--------|:------------------------------------------:|
|
||||
| `apikey` | MdbList API Key | N/A | :fontawesome-solid-circle-check:{ .green } |
|
||||
| `apikey` | MDBList API Key | N/A | :fontawesome-solid-circle-check:{ .green } |
|
||||
| `cache_expiration` | Number of days before each cache mapping expires and has to be re-cached. | 60 | :fontawesome-solid-circle-xmark:{ .red } |
|
||||
|
||||
???+ tip
|
||||
|
||||
The MdbList apikey can be found [here](https://mdblist.com/preferences/).
|
||||
The MDBList apikey can be found [here](https://mdblist.com/preferences/).
|
||||
|
||||
The free apikey is limited to 1000 requests per day so if you hit your limit the program should be able to pick up
|
||||
where it left off the next day as long as the `cache` [Setting](settings.md#cache) is enabled.
|
||||
|
|
|
@ -66,7 +66,7 @@ To connect to MyAnimeList.net you must create a MyAnimeList application and supp
|
|||
|
||||
You will need to stop that web server while you're doing this in order to grab that localhost URL.
|
||||
|
||||
19. Run Kometa and the auth will be completed.
|
||||
19. Run Kometa and the authentication will be completed.
|
||||
|
||||
## Alternative Way of Letting Kometa make the URL
|
||||
|
||||
|
@ -127,6 +127,6 @@ the container normally.
|
|||
## Online Authorization
|
||||
|
||||
{%
|
||||
include-markdown "./auth.md"
|
||||
include-markdown "./authentication.md"
|
||||
start="# Trakt and MyAnimeList Authentication"
|
||||
%}
|
|
@ -158,11 +158,11 @@ You can create individual blocks of operations by using a list under `operations
|
|||
**Accepted Values:** Source or List of sources to use in that order
|
||||
|
||||
<table class="clearTable">
|
||||
<tr><td>`mdb`</td><td>Use MdbList for Content Ratings</td></tr>
|
||||
<tr><td>`mdb_commonsense`</td><td>Use Common Sense Rating through MDbList for Content Ratings</td></tr>
|
||||
<tr><td>`mdb_commonsense0`</td><td>Use Common Sense Rating with Zero Padding through MDbList for Content Ratings</td></tr>
|
||||
<tr><td>`mdb_age_rating`</td><td>Use MDbList Age Rating for Content Ratings</td></tr>
|
||||
<tr><td>`mdb_age_rating0`</td><td>Use MDbList Age Rating with Zero Padding for Content Ratings</td></tr>
|
||||
<tr><td>`mdb`</td><td>Use MDBList for Content Ratings</td></tr>
|
||||
<tr><td>`mdb_commonsense`</td><td>Use Common Sense Rating through MDBList for Content Ratings</td></tr>
|
||||
<tr><td>`mdb_commonsense0`</td><td>Use Common Sense Rating with Zero Padding through MDBList for Content Ratings</td></tr>
|
||||
<tr><td>`mdb_age_rating`</td><td>Use MDBList Age Rating for Content Ratings</td></tr>
|
||||
<tr><td>`mdb_age_rating0`</td><td>Use MDBList Age Rating with Zero Padding for Content Ratings</td></tr>
|
||||
<tr><td>`omdb`</td><td>Use IMDb through OMDb for Content Ratings</td></tr>
|
||||
<tr><td>`mal`</td><td>Use MyAnimeList for Content Ratings</td></tr>
|
||||
<tr><td>`lock`</td><td>Lock Content Rating Field</td></tr>
|
||||
|
@ -279,8 +279,8 @@ You can create individual blocks of operations by using a list under `operations
|
|||
<tr><td>`tmdb`</td><td>Use TMDb Release Date</td></tr>
|
||||
<tr><td>`tvdb`</td><td>Use TVDb Release Date</td></tr>
|
||||
<tr><td>`omdb`</td><td>Use IMDb Release Date through OMDb</td></tr>
|
||||
<tr><td>`mdb`</td><td>Use MdbList Release Date</td></tr>
|
||||
<tr><td>`mdb_digital`</td><td>Use MdbList Digital Release Date</td></tr>
|
||||
<tr><td>`mdb`</td><td>Use MDBList Release Date</td></tr>
|
||||
<tr><td>`mdb_digital`</td><td>Use MDBList Digital Release Date</td></tr>
|
||||
<tr><td>`anidb`</td><td>Use AniDB Release Date</td></tr>
|
||||
<tr><td>`mal`</td><td>Use MyAnimeList Release Date</td></tr>
|
||||
<tr><td>`lock`</td><td>Lock Originally Available Field</td></tr>
|
||||
|
@ -330,17 +330,17 @@ You can create individual blocks of operations by using a list under `operations
|
|||
<tr><td>`imdb`</td><td>Use IMDb Rating</td></tr>
|
||||
<tr><td>`trakt_user`</td><td>Use Trakt User's Personal Rating</td></tr>
|
||||
<tr><td>`omdb`</td><td>Use IMDbRating through OMDb</td></tr>
|
||||
<tr><td>`mdb`</td><td>Use MdbList Score</td></tr>
|
||||
<tr><td>`mdb_average`</td><td>Use MdbList Average Score</td></tr>
|
||||
<tr><td>`mdb_imdb`</td><td>Use IMDb Rating through MDbList</td></tr>
|
||||
<tr><td>`mdb_metacritic`</td><td>Use Metacritic Rating through MDbList</td></tr>
|
||||
<tr><td>`mdb_metacriticuser`</td><td>Use Metacritic User Rating through MDbList</td></tr>
|
||||
<tr><td>`mdb_trakt`</td><td>Use Trakt Rating through MDbList</td></tr>
|
||||
<tr><td>`mdb_tomatoes`</td><td>Use Rotten Tomatoes Rating through MDbList</td></tr>
|
||||
<tr><td>`mdb_tomatoesaudience`</td><td>Use Rotten Tomatoes Audience Rating through MDbList</td></tr>
|
||||
<tr><td>`mdb_tmdb`</td><td>Use TMDb Rating through MDbList</td></tr>
|
||||
<tr><td>`mdb_letterboxd`</td><td>Use Letterboxd Rating through MDbList</td></tr>
|
||||
<tr><td>`mdb_myanimelist`</td><td>Use MyAnimeList Rating through MDbList</td></tr>
|
||||
<tr><td>`mdb`</td><td>Use MDBList Score</td></tr>
|
||||
<tr><td>`mdb_average`</td><td>Use MDBList Average Score</td></tr>
|
||||
<tr><td>`mdb_imdb`</td><td>Use IMDb Rating through MDBList</td></tr>
|
||||
<tr><td>`mdb_metacritic`</td><td>Use Metacritic Rating through MDBList</td></tr>
|
||||
<tr><td>`mdb_metacriticuser`</td><td>Use Metacritic User Rating through MDBList</td></tr>
|
||||
<tr><td>`mdb_trakt`</td><td>Use Trakt Rating through MDBList</td></tr>
|
||||
<tr><td>`mdb_tomatoes`</td><td>Use Rotten Tomatoes Rating through MDBList</td></tr>
|
||||
<tr><td>`mdb_tomatoesaudience`</td><td>Use Rotten Tomatoes Audience Rating through MDBList</td></tr>
|
||||
<tr><td>`mdb_tmdb`</td><td>Use TMDb Rating through MDBList</td></tr>
|
||||
<tr><td>`mdb_letterboxd`</td><td>Use Letterboxd Rating through MDBList</td></tr>
|
||||
<tr><td>`mdb_myanimelist`</td><td>Use MyAnimeList Rating through MDBList</td></tr>
|
||||
<tr><td>`anidb_rating`</td><td>Use AniDB Rating</td></tr>
|
||||
<tr><td>`anidb_average`</td><td>Use AniDB Average</td></tr>
|
||||
<tr><td>`anidb_score`</td><td>Use AniDB Review Score</td></tr>
|
||||
|
|
|
@ -52,6 +52,6 @@ To connect to Trakt.tv you must create a Trakt application and supply Kometa the
|
|||
## Online Authorization
|
||||
|
||||
{%
|
||||
include-markdown "./auth.md"
|
||||
include-markdown "./authentication.md"
|
||||
start="# Trakt and MyAnimeList Authentication"
|
||||
%}
|
|
@ -1,6 +1,6 @@
|
|||
# Award Separator Collections
|
||||
|
||||
The `separator_award` Default Collection File is used to create a seperator collection for Awards.
|
||||
The `separator_award` Default Collection File is used to create a separator collection for Awards.
|
||||
|
||||
![](../images/awardseparator.png)
|
||||
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
# Chart Separator Collections
|
||||
|
||||
The `separator_chart` Default Collection File is used to create a seperator collection for Charts.
|
||||
The `separator_chart` Default Collection File is used to create a separator collection for Charts.
|
||||
|
||||
![](../images/chartseparator.png)
|
||||
|
||||
|
|
|
@ -70,7 +70,7 @@ work. Any value not specified will use its default value if it has one if not it
|
|||
| `imdb_list_<<key>>`<sup>1</sup> | **Description:** Adds the Movies in the IMDb List to the specified key's collection. Overrides the [default imdb_list](#imdb-list) for that collection if used.<br>**Values:** List of IMDb List URLs | | |
|
||||
| `imdb_search_<<key>>`<sup>1</sup> | **Description:** Adds the Movies in the IMDb Search to the specified key's collection. Overrides the [default imdb_search](#imdb-search) for that collection if used.<br>**Values:** List of IMDb List URLs | | |
|
||||
| `trakt_list_<<key>>`<sup>1</sup> | **Description:** Adds the Movies in the Trakt List to the specified key's collection. Overrides the [default trakt_list](#trakt-list) for that collection if used.<br>**Values:** List of Trakt List URLs | | | |
|
||||
| `mdblist_list_<<key>>`<sup>1</sup> | **Description:** Adds the Movies in the MDb List to the specified key's collection. Overrides the [default mdblist_list](#mdblist-list) for that collection if used.<br>**Values:** List of MDbList URLs | | | |
|
||||
| `mdblist_list_<<key>>`<sup>1</sup> | **Description:** Adds the Movies in the MDb List to the specified key's collection. Overrides the [default mdblist_list](#mdblist-list) for that collection if used.<br>**Values:** List of MDBList URLs | | | |
|
||||
| `emoji` | **Description:** Controls the Emoji Prefix for all Collections. Set to `""` to remove all emojis.<br>**Values:** Any String |
|
||||
| `emoji_<<key>>`<sup>1</sup> | **Description:** Controls the Emoji Prefix for the specified key's collection. Overrides the [default emoji](#emoji) for that collection if used.<br>**Values:** Any String |
|
||||
| `limit` | **Description:** Changes the Builder Limit for all collections in this file.<br>**Values:** Number Greater than 0 |
|
||||
|
|
|
@ -62,7 +62,7 @@ Radarr/Sonarr.
|
|||
When `radarr_add_existing`/`sonarr_add_existing` are true the items that exist in the collection/playlist will be added
|
||||
to Radarr/Sonarr.
|
||||
|
||||
If your Radarr/Sonarr has different file system mappings from your plex use `radarr_path`/`sonarr_path` along with
|
||||
If your Radarr/Sonarr has different file system mappings from your Plex use `radarr_path`/`sonarr_path` along with
|
||||
`plex_path` from your [Radarr](../config/radarr.md)/[Sonarr](../config/sonarr.md) global config settings.
|
||||
|
||||
### Radarr Add Settings
|
||||
|
|
|
@ -197,7 +197,7 @@ The `sync_mode: sync` and `collection_order: custom` Setting are recommended sin
|
|||
| `votes.lte` | Item must have a Number of Votes less than or equal to the given number.<br>**Options:** Any Integer greater than `0`<br>**Example:** `1000` |
|
||||
| `genre` | Item must match all genres given. Can be a comma-separated list.<br>**Options:** `action`, `adventure`, `animation`, `biography`, `comedy`, `documentary`, `drama`, `crime`, `family`, `history`, `news`, `short`, `western`, `sport`, `reality-tv`, `horror`, `fantasy`, `film-noir`, `music`, `romance`, `talk-show`, `thriller`, `war`, `sci-fi`, `musical`, `mystery`, `game-show` |
|
||||
| `genre.any` | Item must match at least one given genre. Can be a comma-separated list.<br>**Options:** `action`, `adventure`, `animation`, `biography`, `comedy`, `documentary`, `drama`, `crime`, `family`, `history`, `news`, `short`, `western`, `sport`, `reality-tv`, `horror`, `fantasy`, `film-noir`, `music`, `romance`, `talk-show`, `thriller`, `war`, `sci-fi`, `musical`, `mystery`, `game-show` |
|
||||
| `genre.not` | Item must not match any og the given genres. Can be a comma-separated list.<br>**Options:** `action`, `adventure`, `animation`, `biography`, `comedy`, `documentary`, `drama`, `crime`, `family`, `history`, `news`, `short`, `western`, `sport`, `reality-tv`, `horror`, `fantasy`, `film-noir`, `music`, `romance`, `talk-show`, `thriller`, `war`, `sci-fi`, `musical`, `mystery`, `game-show` |
|
||||
| `genre.not` | Item must not match any of the given genres. Can be a comma-separated list.<br>**Options:** `action`, `adventure`, `animation`, `biography`, `comedy`, `documentary`, `drama`, `crime`, `family`, `history`, `news`, `short`, `western`, `sport`, `reality-tv`, `horror`, `fantasy`, `film-noir`, `music`, `romance`, `talk-show`, `thriller`, `war`, `sci-fi`, `musical`, `mystery`, `game-show` |
|
||||
| `event` | Item must have been nominated for a category at the event given. Can be a comma-separated list.<br>**Options:** `cannes`, `choice`, `spirit`, `sundance`, `bafta`, `oscar`, `emmy`, `golden`, `oscar_picture`, `oscar_director`, `national_film_board_preserved`, `razzie`, or any [IMDb Event ID](https://www.imdb.com/event/all/) (ex. `ev0050888`) |
|
||||
| `event.winning` | Item must have won a category at the event given. Can be a comma-separated list.<br>**Options:** `cannes`, `choice`, `spirit`, `sundance`, `bafta`, `oscar`, `emmy`, `golden`, `oscar_picture`, `oscar_director`, `national_film_board_preserved`, `razzie`, or any [IMDb Event ID](https://www.imdb.com/event/all/) (ex. `ev0050888`) |
|
||||
| `imdb_top` | Item must be in the top number of given Movies.<br>**Options:** Any Integer greater than `0` |
|
||||
|
|
|
@ -1,16 +1,16 @@
|
|||
# MdbList Builders
|
||||
# MDBList Builders
|
||||
|
||||
You can find items using the features of [MdbList.com](https://mdblist.com/) (MdbList).
|
||||
You can find items using the features of [MDBList.com](https://mdblist.com/) (MDBList).
|
||||
|
||||
| Attribute | Description | Works with Movies | Works with Shows | Works with Playlists and Custom Sort |
|
||||
|:--------------------------------|:--------------------------------------------------------------------------|:------------------------------------------:|:------------------------------------------:|:------------------------------------------:|
|
||||
| [`mdblist_list`](#mdblist-list) | Gets every movie/show in a [MdbList List](https://mdblist.com/toplists/). | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green } |
|
||||
| [`mdblist_list`](#mdblist-list) | Gets every movie/show in a [MDBList List](https://mdblist.com/toplists/). | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green } |
|
||||
|
||||
## MdbList List
|
||||
## MDBList List
|
||||
|
||||
Finds every item in a [MdbList List](https://mdblist.com/toplists/).
|
||||
Finds every item in a [MDBList List](https://mdblist.com/toplists/).
|
||||
|
||||
The expected input is an MdbList List URL. Multiple values are supported as a list only a comma-separated string will not work.
|
||||
The expected input is an MDBList List URL. Multiple values are supported as a list only a comma-separated string will not work.
|
||||
|
||||
The `sync_mode: sync` and `collection_order: custom` Setting are recommended since the lists are continuously updated and in a specific order.
|
||||
|
||||
|
@ -40,9 +40,9 @@ The default `sort_by` when it's not specified is `rank.asc`.
|
|||
|
||||
| Option | Description |
|
||||
|:----------------------------------------------|:-------------------------------|
|
||||
| `rank.asc`<br>`rank.desc` | Sort by MdbList Rank |
|
||||
| `score.asc`<br>`score.desc` | Sort by MdbList Score |
|
||||
| `score_average.asc`<br>`score_average.desc` | Sort by MdbList Average Score |
|
||||
| `rank.asc`<br>`rank.desc` | Sort by MDBList Rank |
|
||||
| `score.asc`<br>`score.desc` | Sort by MDBList Score |
|
||||
| `score_average.asc`<br>`score_average.desc` | Sort by MDBList Average Score |
|
||||
| `released.asc`<br>`released.desc` | Sort by Release Date |
|
||||
| `imdbrating.asc`<br>`imdbrating.desc` | Sort by IMDb Rating |
|
||||
| `imdbvotes.asc`<br>`imdbvotes.desc` | Sort by IMDb Votes |
|
||||
|
|
|
@ -61,15 +61,15 @@ Builders use third-party services to source items to be added to the collection.
|
|||
|
||||
!!! builder
|
||||
|
||||
![MdbList logo](../../../assets/icons/mdblist.png){ align=right }
|
||||
![MDBList logo](../../../assets/icons/mdblist.png){ align=right }
|
||||
|
||||
**[MdbList](../mdblist)** builders grab items based on lists on MdbList.com
|
||||
**[MDBList](../mdblist)** builders grab items based on lists on MDBList.com
|
||||
|
||||
[:octicons-home-16: View Builder](../mdblist){ .md-button .md-button--primary }
|
||||
|
||||
??? quicklink "Popular Builders"
|
||||
|
||||
- [:octicons-list-ordered-16: MdbList List](../mdblist/#mdblist-list) - Gets every movie/show in a MDbList List.
|
||||
- [:octicons-list-ordered-16: MDBList List](../mdblist/#mdblist-list) - Gets every movie/show in a MDBList List.
|
||||
|
||||
!!! builder
|
||||
|
||||
|
@ -98,7 +98,7 @@ Builders use third-party services to source items to be added to the collection.
|
|||
|
||||
- [:material-television-guide: TVDb Show](../tvdb/#tvdb-show) - Grabs the specified series.
|
||||
- [:material-television-guide: TVDb Movie](../tvdb/#tvdb-movie) - Gets the specified movies.
|
||||
- [:material-television-guide: TVDb List](../tvdb/#tvdb-list) - Gets every item in a TVDb List or TVDb Userlist.
|
||||
- [:material-television-guide: TVDb List](../tvdb/#tvdb-list) - Gets every item in a TVDb List or TVDb UserList.
|
||||
|
||||
!!! builder
|
||||
|
||||
|
|
|
@ -9,7 +9,7 @@ You can find items using the features of [Trakt.tv](https://trakt.tv/) (Trakt).
|
|||
| [`trakt_list`](#trakt-list) | Finds every movie/show in the Trakt List | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green } |
|
||||
| [`trakt_list_details`](#trakt-list) | Finds every movie/show in the Trakt List and updates the collection summary with the list description | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green } |
|
||||
| [`trakt_chart`](#trakt-chart) | Finds the movies/shows in the Trakt Chart | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green } |
|
||||
| [`trakt_userlist`](#trakt-userlist) | Finds every movie/show in the Trakt Userlist | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green } |
|
||||
| [`trakt_userlist`](#trakt-userlist) | Finds every movie/show in the Trakt UserList | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green } |
|
||||
| [`trakt_recommendations`](#trakt-recommendations) | Finds the movies/shows in Trakt's Personal Recommendations for your User [Movies](https://trakt.docs.apiary.io/#reference/recommendations/movies/get-movie-recommendations)/[Shows](https://trakt.docs.apiary.io/#reference/recommendations/shows/get-show-recommendations) | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green } |
|
||||
| [`trakt_boxoffice`](#trakt-box-office) | Finds the 10 movies in Trakt's Top Box Office [Movies](https://trakt.tv/movies/boxoffice) list | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-check:{ .green } |
|
||||
|
||||
|
@ -128,9 +128,9 @@ collections:
|
|||
sync_mode: sync
|
||||
```
|
||||
|
||||
## Trakt Userlist
|
||||
## Trakt UserList
|
||||
|
||||
Finds every movie/show in the Trakt Userlist.
|
||||
Finds every movie/show in the Trakt UserList.
|
||||
|
||||
The `sync_mode: sync` and `collection_order: custom` Setting are recommended since the lists are continuously updated
|
||||
and in a specific order.
|
||||
|
|
|
@ -6,8 +6,8 @@ No configuration is required for these builders.
|
|||
|
||||
| Attribute | Description | Works with Movies | Works with Shows | Works with Playlists and Custom Sort |
|
||||
|:------------------------------------|:----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|:------------------------------------------:|:------------------------------------------:|:------------------------------------------:|
|
||||
| [`tvdb_list`](#tvdb-list) | Finds every item in a [TVDb List](https://www.thetvdb.com/lists) or [TVDb Userlist](https://www.thetvdb.com/lists/custom) | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green } |
|
||||
| [`tvdb_list_details`](#tvdb-list) | Finds every item in a [TVDb List](https://www.thetvdb.com/lists) or [TVDb Userlist](https://www.thetvdb.com/lists/custom) and updates the collection summary and poster with the TVDb list metadata | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green } |
|
||||
| [`tvdb_list`](#tvdb-list) | Finds every item in a [TVDb List](https://www.thetvdb.com/lists) or [TVDb UserList](https://www.thetvdb.com/lists/custom) | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green } |
|
||||
| [`tvdb_list_details`](#tvdb-list) | Finds every item in a [TVDb List](https://www.thetvdb.com/lists) or [TVDb UserList](https://www.thetvdb.com/lists/custom) and updates the collection summary and poster with the TVDb list metadata | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green } |
|
||||
| [`tvdb_show`](#tvdb-show) | Finds the series specified | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-xmark:{ .red } |
|
||||
| [`tvdb_show_details`](#tvdb-show) | Finds the series specified and updates the collection with the summary, poster, and background from the TVDb series | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-xmark:{ .red } |
|
||||
| [`tvdb_movie`](#tvdb-movie) | Finds the movie specified | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } |
|
||||
|
@ -15,9 +15,9 @@ No configuration is required for these builders.
|
|||
|
||||
## TVDb List
|
||||
|
||||
Finds every item in a [TVDb List](https://www.thetvdb.com/lists) or [TVDb Userlist](https://www.thetvdb.com/lists/custom)
|
||||
Finds every item in a [TVDb List](https://www.thetvdb.com/lists) or [TVDb UserList](https://www.thetvdb.com/lists/custom)
|
||||
|
||||
The expected input is a TVDb List URL or TVDb Userlist URL. Multiple values are supported as either a list or a
|
||||
The expected input is a TVDb List URL or TVDb UserList URL. Multiple values are supported as either a list or a
|
||||
comma-separated string.
|
||||
|
||||
The `sync_mode: sync` and `collection_order: custom` Setting are recommended since the lists are continuously updated
|
||||
|
|
|
@ -319,17 +319,17 @@ Each Special Text Variables has multiple modifiers that can be used to format th
|
|||
| `imdb_rating` | IMDb Rating | `Movies`, `Shows`, or `Episodes` |
|
||||
| `trakt_user_rating` | Trakt User Rating | `Movies` or `Shows` |
|
||||
| `omdb_rating` | OMDb Rating | `Movies` or `Shows` |
|
||||
| `mdb_rating` | MDbList Rating | `Movies` or `Shows` |
|
||||
| `mdb_average_rating` | MDbList Average Rating | `Movies` or `Shows` |
|
||||
| `mdb_imdb_rating` | MDbList IMDb Rating | `Movies` or `Shows` |
|
||||
| `mdb_metacritic_rating` | MDbList Metacritic Rating | `Movies` or `Shows` |
|
||||
| `mdb_metacriticuser_rating` | MDbList Metacritic User Rating | `Movies` or `Shows` |
|
||||
| `mdb_trakt_rating` | MDbList Trakt Rating | `Movies` or `Shows` |
|
||||
| `mdb_tomatoes_rating` | MDbList Rotten Tomatoes Rating | `Movies` or `Shows` |
|
||||
| `mdb_tomatoesaudience_rating` | MDbList Rotten Tomatoes Audience Rating | `Movies` or `Shows` |
|
||||
| `mdb_tmdb_rating` | MDbList TMDb Rating | `Movies` or `Shows` |
|
||||
| `mdb_letterboxd_rating` | MDbList Letterboxd Rating | `Movies` or `Shows` |
|
||||
| `mdb_myanimelist_rating` | MDbList MyAnimeList Rating | `Movies` or `Shows` |
|
||||
| `mdb_rating` | MDBList Rating | `Movies` or `Shows` |
|
||||
| `mdb_average_rating` | MDBList Average Rating | `Movies` or `Shows` |
|
||||
| `mdb_imdb_rating` | MDBList IMDb Rating | `Movies` or `Shows` |
|
||||
| `mdb_metacritic_rating` | MDBList Metacritic Rating | `Movies` or `Shows` |
|
||||
| `mdb_metacriticuser_rating` | MDBList Metacritic User Rating | `Movies` or `Shows` |
|
||||
| `mdb_trakt_rating` | MDBList Trakt Rating | `Movies` or `Shows` |
|
||||
| `mdb_tomatoes_rating` | MDBList Rotten Tomatoes Rating | `Movies` or `Shows` |
|
||||
| `mdb_tomatoesaudience_rating` | MDBList Rotten Tomatoes Audience Rating | `Movies` or `Shows` |
|
||||
| `mdb_tmdb_rating` | MDBList TMDb Rating | `Movies` or `Shows` |
|
||||
| `mdb_letterboxd_rating` | MDBList Letterboxd Rating | `Movies` or `Shows` |
|
||||
| `mdb_myanimelist_rating` | MDBList MyAnimeList Rating | `Movies` or `Shows` |
|
||||
| `anidb_rating` | AniDB Rating | `Movies` or `Shows` |
|
||||
| `anidb_average_rating` | AniDB Average Rating | `Movies` or `Shows` |
|
||||
| `anidb_score_rating` | AniDB Score Rating | `Movies` or `Shows` |
|
||||
|
|
|
@ -123,12 +123,12 @@ There are multiple types of attributes that can be utilized within a playlist:
|
|||
|
||||
### Special Playlist Attributes
|
||||
|
||||
| Attribute | Description | Required |
|
||||
|:------------------|:-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|:------------------------------------------:|
|
||||
| `libraries` | Determine which libraries the playlist will be built from.<br>**Options:** Comma-separated string or list of library mapping names defined in the `libraries` attribute in the base of your [Configuration File](../overview.md. | :fontawesome-solid-circle-check:{ .green } |
|
||||
| `sync_to_users` | Determine which Users have the playlist synced.<br>This will override the global [`playlist_sync_to_users` Setting](../config/settings.md).<br>**Options:** Comma-separated string or list of users, `all` for every user who has server access, or leave blank for just the server owner. | :fontawesome-solid-circle-xmark:{ .red } |
|
||||
| `exclude_users` | Determine which Users will be excluded from having the playlist synced.<br>This will override the global [`playlist_excude_users` Setting](../config/settings.md).<br>**Options:** Comma-separated string or list of users, `all` for every user who has server access, or leave blank for just the server owner. | :fontawesome-solid-circle-xmark:{ .red } |
|
||||
| `delete_playlist` | Will delete this playlist for the users defined by sync_to_users.<br>**Options:** `true` or `false` | :fontawesome-solid-circle-xmark:{ .red } |
|
||||
| Attribute | Description | Required |
|
||||
|:------------------|:------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|:------------------------------------------:|
|
||||
| `libraries` | Determine which libraries the playlist will be built from.<br>**Options:** Comma-separated string or list of library mapping names defined in the `libraries` attribute in the base of your [Configuration File](../config/overview.md). | :fontawesome-solid-circle-check:{ .green } |
|
||||
| `sync_to_users` | Determine which Users have the playlist synced.<br>This will override the global [`playlist_sync_to_users` Setting](../config/settings.md).<br>**Options:** Comma-separated string or list of users, `all` for every user who has server access, or leave blank for just the server owner. | :fontawesome-solid-circle-xmark:{ .red } |
|
||||
| `exclude_users` | Determine which Users will be excluded from having the playlist synced.<br>This will override the global [`playlist_excude_users` Setting](../config/settings.md).<br>**Options:** Comma-separated string or list of users, `all` for every user who has server access, or leave blank for just the server owner. | :fontawesome-solid-circle-xmark:{ .red } |
|
||||
| `delete_playlist` | Will delete this playlist for the users defined by sync_to_users.<br>**Options:** `true` or `false` | :fontawesome-solid-circle-xmark:{ .red } |
|
||||
|
||||
* Any defined playlist will be always be visible by The Plex Media Server owner, so it doesn't need to be defined within `sync_to_users`.
|
||||
|
||||
|
|
|
@ -28,11 +28,11 @@ These are the developers and creators who are an active part of the Kometa commu
|
|||
| Acknowledgement | Reason | Sponsor the Developer |
|
||||
|:---------------------------------------------|:--------------------------------------------------------------------------------------------------------------------------------------------------------------------------|:----------------------------------------------------------------:|
|
||||
| [chazlarson](https://github.com/chazlarson/) | Creator of [Media-Scripts](https://github.com/chazlarson/Media-Scripts) which offers supporting functionality to users of Kometa | [Click Here](https://www.google.com/search?q=food+shelf+near+me) |
|
||||
| [linas](https://github.com/linaspurinis) | Creator of [MDBlist.com](https://github.com/deva5610/IMDBList2PlexCollection) which makes creating Kometa compatible lists easy | [Click Here](https://www.patreon.com/mdblist/posts) |
|
||||
| [linas](https://github.com/linaspurinis) | Creator of [MDBList.com](https://github.com/deva5610/IMDbList2PlexCollection) which makes creating Kometa compatible lists easy | [Click Here](https://www.patreon.com/mdblist/posts) |
|
||||
| [nitsua](https://github.com/austinwbest) | Creator of [Notifiarr](https://github.com/Notifiarr) which integrates Kometa with Discord | [Click Here](https://github.com/sponsors/Notifiarr) |
|
||||
| [ZeroQI](https://github.com/ZeroQI) | Creator of [Absolute Series Scanner](https://github.com/ZeroQI/Absolute-Series-Scanner) and the [HTTP Anidb Metadata Agent (HAMA)](https://github.com/ZeroQI/Hama.bundle) | [Click Here](https://github.com/sponsors/ZeroQI) |
|
||||
| [ScudLee](https://github.com/ScudLee) | Creator of [AniDb Anime Lists](https://github.com/Anime-Lists/anime-lists) | :fontawesome-solid-circle-xmark:{ .red } |
|
||||
| [Fribb](https://github.com/Fribb) | Creator of the [MyAnimelist.net Metadata Agent](https://github.com/Fribb/MyAnimeList.bundle) which makes matching Anime easy for Kometa users | :fontawesome-solid-circle-xmark:{ .red } |
|
||||
| [ZeroQI](https://github.com/ZeroQI) | Creator of [Absolute Series Scanner](https://github.com/ZeroQI/Absolute-Series-Scanner) and the [HTTP AniDB Metadata Agent (HAMA)](https://github.com/ZeroQI/Hama.bundle) | [Click Here](https://github.com/sponsors/ZeroQI) |
|
||||
| [ScudLee](https://github.com/ScudLee) | Creator of [AniDB Anime Lists](https://github.com/Anime-Lists/anime-lists) | :fontawesome-solid-circle-xmark:{ .red } |
|
||||
| [Fribb](https://github.com/Fribb) | Creator of the [MyAnimeList.net Metadata Agent](https://github.com/Fribb/MyAnimeList.bundle) which makes matching Anime easy for Kometa users | :fontawesome-solid-circle-xmark:{ .red } |
|
||||
| [Koltom](https://mediux.pro/) | Creator of [Mediux](https://mediux.pro/) | :fontawesome-solid-circle-xmark:{ .red } |
|
||||
|
||||
<br>
|
||||
|
@ -43,8 +43,8 @@ These are the developers and creators who served as inspiration for Kometa.
|
|||
|
||||
| Acknowledgement | Reason | Sponsor the Developer |
|
||||
|:--------------------------------------------------------------------------------------------|:------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|:-----------------------------------------------------:|
|
||||
| [JonnyWong16](https://github.com/JonnyWong16) | Creator of the [IMDb Top 250](https://gist.github.com/JonnyWong16/f5b9af386ea58e19bf18c09f2681df23) collection script which served as inspiration for IMDBList2PlexCollection (and for [Tautulli](https://github.com/Tautulli/Tautulli)!) | [Click Here](https://github.com/sponsors/JonnyWong16) |
|
||||
| [deva5610](https://github.com/deva5610) | Creator of [IMDBList2PlexCollection](https://github.com/deva5610/IMDBList2PlexCollection) which prompted vladimir-tutin to write the original Plex Auto Collections | :fontawesome-solid-circle-xmark:{ .red } |
|
||||
| [JonnyWong16](https://github.com/JonnyWong16) | Creator of the [IMDb Top 250](https://gist.github.com/JonnyWong16/f5b9af386ea58e19bf18c09f2681df23) collection script which served as inspiration for IMDbList2PlexCollection (and for [Tautulli](https://github.com/Tautulli/Tautulli)!) | [Click Here](https://github.com/sponsors/JonnyWong16) |
|
||||
| [deva5610](https://github.com/deva5610) | Creator of [IMDbList2PlexCollection](https://github.com/deva5610/IMDbList2PlexCollection) which prompted vladimir-tutin to write the original Plex Auto Collections | :fontawesome-solid-circle-xmark:{ .red } |
|
||||
| [vladimir-tutin](https://github.com/vladimir-tutin) | Creator of the original [Plex Auto Collections](https://github.com/vladimir-tutin/Plex-Auto-Collections) which is the inspiration for Kometa. | :fontawesome-solid-circle-xmark:{ .red } |
|
||||
| [mza921](https://github.com/mza921) and [burkasaurusrex](https://github.com/burkasaurusrex) | Maintaining a forked [Plex Auto Collections](https://github.com/mza921/Plex-Auto-Collections) | :fontawesome-solid-circle-xmark:{ .red } |
|
||||
| [jkirkcaldy](https://github.com/jkirkcaldy) | Creator of [plex-utills](https://github.com/jkirkcaldy/plex-utills) which served as inspiration for Image Overlay | [Click Here](https://opencollective.com/themainframe) |
|
||||
|
|
|
@ -2,7 +2,7 @@
|
|||
search:
|
||||
boost: 4
|
||||
---
|
||||
# FAQ & Knowledgebase
|
||||
# FAQ & Knowledge Base
|
||||
|
||||
This page aims to provide knowledge based on combined user experience, and to answer the frequent questions that we are asked in our [Discord Server](https://kometa.wiki/en/latest/discord/).
|
||||
|
||||
|
@ -380,7 +380,7 @@ Your Kometa installation may not be located at the paths referenced below. These
|
|||
|
||||
There is nothing that Kometa or our support staff can really do to resolve a 500 error.
|
||||
|
||||
## Knowledgebase
|
||||
## Knowledge Base
|
||||
|
||||
This section aims to provide some insight as to articles/information that we feel is important to document as they may pop up infrequently but often enough to require entry here.
|
||||
|
||||
|
|
|
@ -17,7 +17,7 @@ These guides will walk you through installing Kometa on your system.
|
|||
|
||||
## Explanations
|
||||
|
||||
The below guides and recipes have been created to assist users with various aspects of Komets and its companion scripts.
|
||||
The below guides and recipes have been created to assist users with various aspects of Kometa's and its companion scripts.
|
||||
|
||||
- [Plex Ratings Explained](ratings.md)
|
||||
- [Scheduling Kometa Runs Guide](scheduling.md)
|
||||
|
@ -80,10 +80,10 @@ A lot of these guides are stored on Google Drive as using the traditional wiki p
|
|||
- Stores the Rainier actor posters
|
||||
- [People Images Signature (signature)](https://github.com/Kometa-Team/People-Images-signature)
|
||||
- Stores the Signature actor posters
|
||||
- [People Images DIIVOY (diiivoy)](https://github.com/Kometa-Team/People-Images-diiivoy)
|
||||
- Stores the DIIVOY actor posters
|
||||
- [People Images DIIVOY Color (diiivoycolor)](https://github.com/Kometa-Team/People-Images-diiivoycolor)
|
||||
- Stores the DIIVOY Color actor posters
|
||||
- [People Images DIIIVOY (diiivoy)](https://github.com/Kometa-Team/People-Images-diiivoy)
|
||||
- Stores the DIIIVOY actor posters
|
||||
- [People Images DIIIVOY Color (diiivoycolor)](https://github.com/Kometa-Team/People-Images-diiivoycolor)
|
||||
- Stores the DIIIVOY Color actor posters
|
||||
- [People Images Transparent (transparent)](https://github.com/Kometa-Team/People-Images-transparent)
|
||||
- Stores the Transparent actor posters
|
||||
|
||||
|
|
|
@ -202,7 +202,7 @@ The log will show Kometa updating those values.
|
|||
|
||||
#### Use Trakt Rating
|
||||
|
||||
Let's change the Trakt rating to that trakt public rating of `85%` instead, which is available via MDbList:
|
||||
Let's change the Trakt rating to that trakt public rating of `85%` instead, which is available via MDBList:
|
||||
|
||||
??? example "Updated config (click to expand)"
|
||||
|
||||
|
|
|
@ -102,13 +102,13 @@ This message shows that your installation appears to be working correctly.
|
|||
...
|
||||
```
|
||||
|
||||
If that doesn't work, stop here until you fix that. Diagnoing and repairing Docker install problems is out of the scope of this walkthrough.
|
||||
If that doesn't work, stop here until you fix that. Diagnosing and repairing Docker install problems is out of the scope of this walkthrough.
|
||||
|
||||
---
|
||||
|
||||
#### Important note on Docker images
|
||||
|
||||
This tutorial uses the official image, and you should, too. Don't change `kometateam/kometa` to the `linuxserver.io` image or any other; other images may have [idiosyncracies](images.md) that will prevent this walkthrough from working. The official image *will* behave exactly as documented below. Others very possibly won't.
|
||||
This tutorial uses the official image, and you should, too. Don't change `kometateam/kometa` to the `linuxserver.io` image or any other; other images may have [idiosyncrasies](images.md) that will prevent this walkthrough from working. The official image *will* behave exactly as documented below. Others very possibly won't.
|
||||
|
||||
The great thing about Docker is that all the setup you'd have to do to run Kometa is already done inside the docker image.
|
||||
|
||||
|
|
|
@ -287,7 +287,7 @@ the cronjob starts each time. This can be done by including an init container w
|
|||
|
||||
### Including the Init Container in the Cron Job
|
||||
|
||||
NOTE the environment value nameed `JINJA_DEST_FILE` is the resulting name of the generated config file.
|
||||
NOTE the environment value named `JINJA_DEST_FILE` is the resulting name of the generated config file.
|
||||
|
||||
```
|
||||
apiVersion: batch/v1
|
||||
|
|
|
@ -204,7 +204,7 @@ Later on you can move it elsewhere if you want, but for now put it there. This
|
|||
```
|
||||
git pull
|
||||
```
|
||||
No need to download a new ZIP, uncompress it, etc.
|
||||
No need to download a new ZIP, decompress it, etc.
|
||||
Also, if you are asked to [or want to] switch to the latest develop or nightly code, you can do so with:
|
||||
```
|
||||
git checkout develop
|
||||
|
@ -634,10 +634,10 @@ deactivate
|
|||
|
||||
### I want to use the nightly branch
|
||||
|
||||
Follow the instructions for the `develop` branch above, subsituting `nightly` for `develop`
|
||||
Follow the instructions for the `develop` branch above, substituting `nightly` for `develop`
|
||||
|
||||
### I want to use the master branch
|
||||
|
||||
Follow the instructions for the `develop` branch above, subsituting `master` for `develop`
|
||||
Follow the instructions for the `develop` branch above, substituting `master` for `develop`
|
||||
|
||||
The installation of requirements every time is probably overkill, but it's harmless and ensures that you always get any new versions or new requirements.
|
||||
|
|
|
@ -13,7 +13,7 @@ If you have some specific reason to avoid Docker, or you prefer running it as a
|
|||
|
||||
## Where to install Kometa
|
||||
|
||||
Kometa communicates with all services [Plex, Radarr, Trakt, etc] via their network APIs, so Kometa does *not* have to be installed on the same machine as Plex. Kometa does not require [nor would it use] access to the filesystem behind your Plex libraries.
|
||||
Kometa communicates with all services [Plex, Radarr, Trakt, etc] via their network APIs, so Kometa does *not* have to be installed on the same machine as Plex. Kometa does not require [nor would it use] access to the file system behind your Plex libraries.
|
||||
|
||||
Perhaps your Plex server is remote and you want to run Kometa on a machine in your home. That's fine. The relative locations of Kometa and Plex have no effect on the installation [except perhaps the URL you would use in the config].
|
||||
|
||||
|
|
|
@ -72,7 +72,7 @@ To install a container from docker hub, you will need community applications - a
|
|||
|
||||
#### Important note on Docker images
|
||||
|
||||
This tutorial uses the official image, and you should, too. Don't change `kometateam/kometa` to the `linuxserver.io` image or any other. Other images may have [idiosyncracies](images.md) that will prevent this walkthrough from working. The official image *will* behave exactly as documented below. Others very possibly won't.
|
||||
This tutorial uses the official image, and you should, too. Don't change `kometateam/kometa` to the `linuxserver.io` image or any other. Other images may have [idiosyncrasies](images.md) that will prevent this walkthrough from working. The official image *will* behave exactly as documented below. Others very possibly won't.
|
||||
|
||||
The great thing about Docker is that all the setup you'd have to do to run Kometa is already done inside the docker image.
|
||||
|
||||
|
@ -98,7 +98,7 @@ You can now close the unRAID terminal and start the Kometa container.
|
|||
|
||||
**_From this point forward, you can Console `>_Console` into the running container as it will stay running_**
|
||||
|
||||
Open a Console by left-clicking on the running Kometcontainer and selecting `>_Console`. This will open up an interactive session within the container to be able to run the commands we want.
|
||||
Open a Console by left-clicking on the running Kometa Container and selecting `>_Console`. This will open up an interactive session within the container to be able to run the commands we want.
|
||||
|
||||
### Create a directory to quiet an error later
|
||||
|
||||
|
|
|
@ -58,7 +58,7 @@ You will ultimately need an entry here for each of the libraries on which you wa
|
|||
|
||||
For now, delete the “TV Shows”, “Anime”, and "Music" sections from the config file and change the name of the “Movies” section to “Movies-NOSUCHLIBRARY":
|
||||
|
||||
The top bit of your config file should now looke like this:
|
||||
The top bit of your config file should now look like this:
|
||||
|
||||
```yaml
|
||||
libraries:
|
||||
|
@ -74,5 +74,5 @@ playlist_files:
|
|||
|
||||
This is intended to cause an error for illustration that you will then fix.
|
||||
|
||||
Be very careful with the indentation and ensure it looks exactly like the above; each line indented using two spaces, NOT TABS, with `playlist_files:` all teh way over on the left. Indentation is significant in YAML.
|
||||
Be very careful with the indentation and ensure it looks exactly like the above; each line indented using two spaces, NOT TABS, with `playlist_files:` all the way over on the left. Indentation is significant in YAML.
|
||||
|
||||
|
|
|
@ -2,7 +2,7 @@ Kometa provides an extensive collection of "default" collection files.
|
|||
|
||||
These files provide a simple way for you to create collections based on franchises or awards or actors, etc.
|
||||
|
||||
The default config links to two of them, thse two lines in your config file:
|
||||
The default config links to two of them, these two lines in your config file:
|
||||
|
||||
```yaml
|
||||
libraries:
|
||||
|
|
|
@ -8,8 +8,8 @@ For best results *with this walkthrough*, your test library will contain:
|
|||
|
||||
- At least two comedy movies released since 2012.
|
||||
- At least two movies from the [IMDB top 250](https://www.imdb.com/chart/top/).
|
||||
- At least two movies from [IMDB's Popular list](https://www.imdb.com/chart/moviemeter).
|
||||
- At least two movies from [IMDB's Lowest Rated](https://www.imdb.com/chart/bottom).
|
||||
- At least two movies from [IMDb's Popular list](https://www.imdb.com/chart/moviemeter).
|
||||
- At least two movies from [IMDb's Lowest Rated](https://www.imdb.com/chart/bottom).
|
||||
- A couple different resolutions among the movies.
|
||||
|
||||
That will ensure there's something to go into each of the example collections that will be created.
|
||||
|
|
|
@ -69,43 +69,43 @@ This section aims to explain some commonly seen event messages that are produced
|
|||
|
||||
This table details examples of the most commonly-seen `[CRITICAL]` events and what they mean for the user.
|
||||
|
||||
| Type | Short Info | Description | Recommendation |
|
||||
|:-----------|:----------------------------------------------------|:------------------------------------------------------------------------------|:------------------------------------------------------------------------------------------------------------|
|
||||
| `CRITICAL` | `Failed to Connect to https://api.themoviedb.org/3` | Current step Kometa was on made an API call to TMDb, but it aborted and moved on | Determine if TMDb was offline and not replying to api requests. Try again and see if it fails again or not. |
|
||||
| Type | Short Info | Description | Recommendation |
|
||||
|:-----------|:----------------------------------------------------|:---------------------------------------------------------------------------------|:------------------------------------------------------------------------------------------------------------|
|
||||
| `CRITICAL` | `Failed to Connect to https://api.themoviedb.org/3` | Current step Kometa was on made an API call to TMDb, but it aborted and moved on | Determine if TMDb was offline and not replying to API requests. Try again and see if it fails again or not. |
|
||||
|
||||
#### ERROR
|
||||
|
||||
This table details examples of the most commonly-seen `[ERROR]` events and what they mean for the user.
|
||||
|
||||
| Type | Short Info | Description | Recommendation |
|
||||
|:--------|:------------------------------------------------------------------|:---------------------------------------------------------------------------------|:---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
|
||||
| `ERROR` | `Playlist Error: Library: XYZ not defined` | Plex library XYZ is not found | Ensure that your config file has defined the proper library name as found in Plex |
|
||||
| `ERROR` | `Plex Error: resolution: No matches found with regex pattern XYZ` | While looking for a pattern in Plex, this one was not found | This may be normal and require 0 actions. However, if you expect that Plex should have returned records, check the pattern to ensure it is working properly |
|
||||
| `ERROR` | `Plex Error: No Items found in Plex` | While using the Kometa builder, no items with that criteria were returned from Plex | This may be normal and require 0 actions. However, if you expect that Plex should have returned records, check the builder to ensure it is working properly |
|
||||
| `ERROR` | `IMDb Error: Failed to parse URL:` | While using the Kometa builder, url does not exist | This may be normal and require 0 actions. However, if you expect that the URL should have returned records, check the url in your browser to ensure it is working properly |
|
||||
| `ERROR` | `Trakt Error: No TVDb ID found for Nightfall (2022)` | Online sources are missing information | These sorts of errors indicate that the thing can't be cross-referenced between sites.</br>For example, at the time of that error, the Trakt record for "Nightfall (2022)" didn't contain a TVDb ID.</br>This could be because the record just hasn't been updated, or because "Nightfall (2022)" is not listed on TVDb.</br>The fix is for someone [like you, perhaps] to go to the relevant site and fill in the missing data. |
|
||||
| `ERROR` | `MdbList Error: Not Found` | Online sources are missing information | These sorts of errors indicate that the thing can't be cross-referenced between sites. For example, at the time of that error, the MDBlist record was trying to get a rating for a media item and could not find it. |
|
||||
| `ERROR` | `Plex Error: actor: Mel B not found` | Actor not found and hence unable to create the collection | Report error in #kometa-help channel and see if there is a fix. |
|
||||
| `ERROR` | `Input Failed` | A token or password is no longer valid for an online source of information | Review the kometa.log for more information |
|
||||
| `ERROR` | `Collection Error: trakt_list requires Trakt to be configured` | You are using a builder that has not been configured yet. | Review the kometa.log for more information on what went wrong. Refer to the wiki for details on how to set this up (in this case Trakt) |
|
||||
| Type | Short Info | Description | Recommendation |
|
||||
|:--------|:------------------------------------------------------------------|:------------------------------------------------------------------------------------|:-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
|
||||
| `ERROR` | `Playlist Error: Library: XYZ not defined` | Plex library XYZ is not found | Ensure that your config file has defined the proper library name as found in Plex |
|
||||
| `ERROR` | `Plex Error: resolution: No matches found with regex pattern XYZ` | While looking for a pattern in Plex, this one was not found | This may be normal and require 0 actions. However, if you expect that Plex should have returned records, check the pattern to ensure it is working properly |
|
||||
| `ERROR` | `Plex Error: No Items found in Plex` | While using the Kometa builder, no items with that criteria were returned from Plex | This may be normal and require 0 actions. However, if you expect that Plex should have returned records, check the builder to ensure it is working properly |
|
||||
| `ERROR` | `IMDb Error: Failed to parse URL:` | While using the Kometa builder, url does not exist | This may be normal and require 0 actions. However, if you expect that the URL should have returned records, check the url in your browser to ensure it is working properly |
|
||||
| `ERROR` | `Trakt Error: No TVDb ID found for Nightfall (2022)` | Online sources are missing information | These sorts of errors indicate that the thing can't be cross-referenced between sites.</br>For example, at the time of that error, the Trakt record for "Nightfall (2022)" didn't contain a TVDb ID.</br>This could be because the record just hasn't been updated, or because "Nightfall (2022)" is not listed on TVDb.</br>The fix is for someone [like you, perhaps] to go to the relevant site and fill in the missing data. |
|
||||
| `ERROR` | `MDBList Error: Not Found` | Online sources are missing information | These sorts of errors indicate that the thing can't be cross-referenced between sites. For example, at the time of that error, the MDBList record was trying to get a rating for a media item and could not find it. |
|
||||
| `ERROR` | `Plex Error: actor: Mel B not found` | Actor not found and hence unable to create the collection | Report error in #kometa-help channel and see if there is a fix. |
|
||||
| `ERROR` | `Input Failed` | A token or password is no longer valid for an online source of information | Review the kometa.log for more information |
|
||||
| `ERROR` | `Collection Error: trakt_list requires Trakt to be configured` | You are using a builder that has not been configured yet. | Review the kometa.log for more information on what went wrong. Refer to the wiki for details on how to set this up (in this case Trakt) |
|
||||
|
||||
#### WARNING
|
||||
|
||||
This table details examples of the most commonly-seen `[WARNING]` events and what they mean for the user.
|
||||
|
||||
| Type | Short Info | Description | Recommendation |
|
||||
|:----------|:-----------------------------------------------------------------|:-----------------------------------------|:---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
|
||||
| `WARNING` | `Convert Warning: No TVDb ID Found for TMDb ID: 15733` | Online sources are missing information | These sorts of errors indicate that the thing can't be cross-referenced between sites.</br>For example, at the time of that error, the TMDb record for "The Two Mrs. Grenvilles" [ID 15733] didn't contain a TVDb ID.</br>This could be because the record just hasn't been updated, or because "The Two Mrs. Grenvilles" is not listed on TVDB.</br>The fix is for someone [like you, perhaps] to go to the relevant site and fill in the missing data. |
|
||||
| `WARNING` | `Convert Warning: AniDB ID not found for AniList ID: 21400` | Online sources are missing information | These sorts of errors indicate that the thing can't be cross-referenced between sites. The fix is for someone [like you, perhaps] to go to the relevant site and fill in the missing data. |
|
||||
| `WARNING` | `Convert Warning: No TVDb ID or IMDb ID found for AniDB ID: 14719` | Online sources are missing information | These sorts of errors indicate that the thing can't be cross-referenced between sites. The fix is for someone [like you, perhaps] to go to the relevant site and fill in the missing data. |
|
||||
| `WARNING` | `Convert Warning: AniDB ID not found for MyAnimeList ID: 36838` | Online sources are missing information | These sorts of errors indicate that the thing can't be cross-referenced between sites. The fix is for someone [like you, perhaps] to go to the relevant site and fill in the missing data. |
|
||||
| Type | Short Info | Description | Recommendation |
|
||||
|:----------|:-------------------------------------------------------------------|:----------------------------------------|:---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
|
||||
| `WARNING` | `Convert Warning: No TVDb ID Found for TMDb ID: 15733` | Online sources are missing information | These sorts of errors indicate that the thing can't be cross-referenced between sites.</br>For example, at the time of that error, the TMDb record for "The Two Mrs. Grenvilles" [ID 15733] didn't contain a TVDb ID.</br>This could be because the record just hasn't been updated, or because "The Two Mrs. Grenvilles" is not listed on TVDB.</br>The fix is for someone [like you, perhaps] to go to the relevant site and fill in the missing data. |
|
||||
| `WARNING` | `Convert Warning: AniDB ID not found for AniList ID: 21400` | Online sources are missing information | These sorts of errors indicate that the thing can't be cross-referenced between sites. The fix is for someone [like you, perhaps] to go to the relevant site and fill in the missing data. |
|
||||
| `WARNING` | `Convert Warning: No TVDb ID or IMDb ID found for AniDB ID: 14719` | Online sources are missing information | These sorts of errors indicate that the thing can't be cross-referenced between sites. The fix is for someone [like you, perhaps] to go to the relevant site and fill in the missing data. |
|
||||
| `WARNING` | `Convert Warning: AniDB ID not found for MyAnimeList ID: 36838` | Online sources are missing information | These sorts of errors indicate that the thing can't be cross-referenced between sites. The fix is for someone [like you, perhaps] to go to the relevant site and fill in the missing data. |
|
||||
|
||||
#### INFO
|
||||
|
||||
This table details examples of the most commonly-seen `[INFO]` events and what they mean for the user.
|
||||
|
||||
| Type | Short Info | Description | Recommendation |
|
||||
|:-------|:----------------------------------------------|:--------------------------------------|:------------------------------------------------------------------------------------------------------------------------------|
|
||||
| Type | Short Info | Description | Recommendation |
|
||||
|:-------|:----------------------------------------------|:--------------------------------------|:---------------------------------------------------------------------------------------------------------------------------------|
|
||||
| `INFO` | `Detail: TMDb_person updated poster to [URL]` | Person image was downloaded from TMDb | May require you to update the people poster image to your style or request it in the style of the Kometa defaults people posters |
|
||||
|
||||
### Other Troubleshooting Examples
|
||||
|
|
|
@ -184,25 +184,25 @@ message: 3: YAML # breaks as a : is a special character
|
|||
"message: 3": YAML # Works as the key string is quoted
|
||||
```
|
||||
|
||||
#### Multiline Strings
|
||||
#### Multi-Line Strings
|
||||
|
||||
Strings can be interpreted as multiline using the pipe (`|`) character.
|
||||
Strings can be interpreted as multi-line using the pipe (`|`) character.
|
||||
|
||||
```yaml
|
||||
message: |
|
||||
this is
|
||||
a real multiline
|
||||
a real multi-line
|
||||
message
|
||||
```
|
||||
|
||||
This would be read as `this is\na real multiline\nmessage`
|
||||
This would be read as `this is\na real multi-line\nmessage`
|
||||
|
||||
## Comments
|
||||
|
||||
YAML file also supports comments, unlike JSON. A comment starts with #.
|
||||
|
||||
```yaml
|
||||
# Strats with a top level Dictionary with keys `libraries` and `settings`
|
||||
# Starts with a top level Dictionary with keys `libraries` and `settings`
|
||||
libraries: # Value is a Dictionary with keys `Movies` and `TV Shows`
|
||||
```
|
||||
|
||||
|
|
|
@ -4,4 +4,4 @@
|
|||
|
||||
See the [Installation Page](../kometa/install/overview.md) for info on how to install Kometa.
|
||||
|
||||
This guide is assuming you know how to run Kometwith the `--run` run command or the `KOMETA_RUN` environment variable to perform immediate runs
|
||||
This guide is assuming you know how to run Kometa with the `--run` run command or the `KOMETA_RUN` environment variable to perform immediate runs
|
|
@ -65,7 +65,7 @@ Now let's use the `sort_title` attribute to reorder these collections slightly
|
|||
sort_title: "%&'Collection 2"
|
||||
```
|
||||
|
||||
You will often see users using sort titles such as `+++++++_My Collection` or `!010_My Collection` in order to force a specific order of collections. Whilst it may not seem logical at a glance, the ASCII sort order allows a lot of fleixibility for power users to be able to tailor the ordering of collections.
|
||||
You will often see users using sort titles such as `+++++++_My Collection` or `!010_My Collection` in order to force a specific order of collections. Whilst it may not seem logical at a glance, the ASCII sort order allows a lot of flexibility for power users to be able to tailor the ordering of collections.
|
||||
|
||||
### Kometa Default Collection Sorting
|
||||
|
||||
|
|
|
@ -12,7 +12,7 @@ Then open your config file in an editor that supports the use of JSON schema.
|
|||
|
||||
For example, VS Code with the Red Hat YAML extension.
|
||||
|
||||
This will give you context-sensitve hints and auto-complete for much of the Kometa `config.yml`
|
||||
This will give you context-sensitive hints and auto-complete for much of the Kometa `config.yml`
|
||||
|
||||
![image](https://github.com/Kometa-Team/Kometa/assets/3865541/62133e59-ed12-4764-a4da-23595824d4da)
|
||||
|
||||
|
|
|
@ -183,7 +183,7 @@ nav:
|
|||
- Tautulli: config/tautulli.md
|
||||
- Github: config/github.md
|
||||
- OMDb: config/omdb.md
|
||||
- MdbList: config/mdblist.md
|
||||
- MDBList: config/mdblist.md
|
||||
- Notifiarr: config/notifiarr.md
|
||||
- Gotify: config/gotify.md
|
||||
- AniDB: config/anidb.md
|
||||
|
@ -327,7 +327,7 @@ nav:
|
|||
- Tautulli Builders: files/builders/tautulli.md
|
||||
- Radarr Builders: files/builders/radarr.md
|
||||
- Sonarr Builders: files/builders/sonarr.md
|
||||
- MdbList Builders: files/builders/mdblist.md
|
||||
- MDBList Builders: files/builders/mdblist.md
|
||||
- Letterboxd Builders: files/builders/letterboxd.md
|
||||
- ICheckMovies Builders: files/builders/icheckmovies.md
|
||||
- BoxOfficeMojo Builders: files/builders/mojo.md
|
||||
|
|
|
@ -298,7 +298,7 @@ class AniList:
|
|||
logger.info(f"Processing AniList Relations: ({data}) {name} ({len(anilist_ids)} Anime)")
|
||||
elif method == "anilist_userlist":
|
||||
anilist_ids = self._userlist(data["username"], data["list_name"], data["sort_by"], data["score"])
|
||||
logger.info(f"Processing AniList Userlist: {data['list_name']} from {data['username']} sorted by {pretty_user[data['sort_by']]}")
|
||||
logger.info(f"Processing AniList UserList: {data['list_name']} from {data['username']} sorted by {pretty_user[data['sort_by']]}")
|
||||
else:
|
||||
if method == "anilist_popular":
|
||||
data = {"limit": data, "popularity.gt": 3, "sort_by": "popular"}
|
||||
|
|
|
@ -1965,7 +1965,7 @@ class CollectionBuilder:
|
|||
self.builders.append((method_name, util.parse(self.Type, method_name, method_data, "bool")))
|
||||
|
||||
def _mdblist(self, method_name, method_data):
|
||||
for mdb_dict in self.config.Mdblist.validate_mdblist_lists(self.Type, method_data):
|
||||
for mdb_dict in self.config.MDBList.validate_mdblist_lists(self.Type, method_data):
|
||||
self.builders.append((method_name, mdb_dict))
|
||||
|
||||
def _tautulli(self, method_name, method_data):
|
||||
|
@ -2214,7 +2214,7 @@ class CollectionBuilder:
|
|||
elif "mojo" in method:
|
||||
ids = self.config.BoxOfficeMojo.get_imdb_ids(method, value)
|
||||
elif "mdblist" in method:
|
||||
ids = self.config.Mdblist.get_tmdb_ids(method, value, self.library.is_movie if not self.playlist else None)
|
||||
ids = self.config.MDBList.get_tmdb_ids(method, value, self.library.is_movie if not self.playlist else None)
|
||||
elif "tmdb" in method:
|
||||
ids = self.config.TMDb.get_tmdb_ids(method, value, self.library.is_movie, self.tmdb_region)
|
||||
elif "trakt" in method:
|
||||
|
|
|
@ -22,7 +22,7 @@ from modules.plex import Plex
|
|||
from modules.radarr import Radarr
|
||||
from modules.sonarr import Sonarr
|
||||
from modules.reciperr import Reciperr
|
||||
from modules.mdblist import Mdblist
|
||||
from modules.mdblist import MDBList
|
||||
from modules.tautulli import Tautulli
|
||||
from modules.tmdb import TMDb
|
||||
from modules.trakt import Trakt
|
||||
|
@ -63,9 +63,9 @@ mass_genre_options = {
|
|||
}
|
||||
mass_content_options = {
|
||||
"lock": "Lock Rating", "unlock": "Unlock Rating", "remove": "Remove and Lock Rating", "reset": "Remove and Unlock Rating",
|
||||
"omdb": "Use IMDb Rating through OMDb", "mdb": "Use MdbList Rating",
|
||||
"mdb_commonsense": "Use Commonsense Rating through MDbList", "mdb_commonsense0": "Use Commonsense Rating with Zero Padding through MDbList",
|
||||
"mdb_age_rating": "Use MDbList Age Rating", "mdb_age_rating0": "Use MDbList Age Rating with Zero Padding",
|
||||
"omdb": "Use IMDb Rating through OMDb", "mdb": "Use MDBList Rating",
|
||||
"mdb_commonsense": "Use Commonsense Rating through MDBList", "mdb_commonsense0": "Use Commonsense Rating with Zero Padding through MDBList",
|
||||
"mdb_age_rating": "Use MDBList Age Rating", "mdb_age_rating0": "Use MDBList Age Rating with Zero Padding",
|
||||
"mal": "Use MyAnimeList Rating"
|
||||
}
|
||||
mass_collection_content_options = {
|
||||
|
@ -90,7 +90,7 @@ mass_original_title_options = {
|
|||
}
|
||||
mass_available_options = {
|
||||
"lock": "Lock Originally Available", "unlock": "Unlock Originally Available", "remove": "Remove and Lock Originally Available", "reset": "Remove and Unlock Originally Available",
|
||||
"tmdb": "Use TMDb Release", "omdb": "Use IMDb Release through OMDb", "mdb": "Use MdbList Release", "mdb_digital": "Use MdbList Digital Release", "tvdb": "Use TVDb Release",
|
||||
"tmdb": "Use TMDb Release", "omdb": "Use IMDb Release through OMDb", "mdb": "Use MDBList Release", "mdb_digital": "Use MDBList Digital Release", "tvdb": "Use TVDb Release",
|
||||
"anidb": "Use AniDB Release", "mal": "Use MyAnimeList Release"
|
||||
}
|
||||
mass_image_options = {
|
||||
|
@ -109,17 +109,17 @@ mass_rating_options = {
|
|||
"imdb": "Use IMDb Rating",
|
||||
"trakt_user": "Use Trakt User Rating",
|
||||
"omdb": "Use IMDb Rating through OMDb",
|
||||
"mdb": "Use MdbList Score",
|
||||
"mdb_average": "Use MdbList Average Score",
|
||||
"mdb_imdb": "Use IMDb Rating through MDbList",
|
||||
"mdb_metacritic": "Use Metacritic Rating through MDbList",
|
||||
"mdb_metacriticuser": "Use Metacritic User Rating through MDbList",
|
||||
"mdb_trakt": "Use Trakt Rating through MDbList",
|
||||
"mdb_tomatoes": "Use Rotten Tomatoes Rating through MDbList",
|
||||
"mdb_tomatoesaudience": "Use Rotten Tomatoes Audience Rating through MDbList",
|
||||
"mdb_tmdb": "Use TMDb Rating through MDbList",
|
||||
"mdb_letterboxd": "Use Letterboxd Rating through MDbList",
|
||||
"mdb_myanimelist": "Use MyAnimeList Rating through MDbList",
|
||||
"mdb": "Use MDBList Score",
|
||||
"mdb_average": "Use MDBList Average Score",
|
||||
"mdb_imdb": "Use IMDb Rating through MDBList",
|
||||
"mdb_metacritic": "Use Metacritic Rating through MDBList",
|
||||
"mdb_metacriticuser": "Use Metacritic User Rating through MDBList",
|
||||
"mdb_trakt": "Use Trakt Rating through MDBList",
|
||||
"mdb_tomatoes": "Use Rotten Tomatoes Rating through MDBList",
|
||||
"mdb_tomatoesaudience": "Use Rotten Tomatoes Audience Rating through MDBList",
|
||||
"mdb_tmdb": "Use TMDb Rating through MDBList",
|
||||
"mdb_letterboxd": "Use Letterboxd Rating through MDBList",
|
||||
"mdb_myanimelist": "Use MyAnimeList Rating through MDBList",
|
||||
"anidb_rating": "Use AniDB Rating",
|
||||
"anidb_average": "Use AniDB Average",
|
||||
"anidb_score": "Use AniDB Review Dcore",
|
||||
|
@ -624,21 +624,21 @@ class ConfigFile:
|
|||
|
||||
logger.separator()
|
||||
|
||||
self.Mdblist = Mdblist(self)
|
||||
self.MDBList = MDBList(self)
|
||||
if "mdblist" in self.data:
|
||||
logger.info("Connecting to Mdblist...")
|
||||
logger.info("Connecting to MDBList...")
|
||||
try:
|
||||
self.Mdblist.add_key(
|
||||
self.MDBList.add_key(
|
||||
check_for_attribute(self.data, "apikey", parent="mdblist", throw=True),
|
||||
check_for_attribute(self.data, "cache_expiration", parent="mdblist", var_type="int", default=60, int_min=1)
|
||||
)
|
||||
logger.info("Mdblist Connection Successful")
|
||||
logger.info("MDBList Connection Successful")
|
||||
except Failed as e:
|
||||
if str(e).endswith("is blank"):
|
||||
logger.warning(e)
|
||||
else:
|
||||
logger.error(e)
|
||||
logger.info("Mdblist Connection Failed")
|
||||
logger.info("MDBList Connection Failed")
|
||||
else:
|
||||
logger.info("mdblist attribute not found")
|
||||
|
||||
|
@ -992,8 +992,8 @@ class ConfigFile:
|
|||
for source in sources:
|
||||
if source and source == "omdb" and self.OMDb is None:
|
||||
raise Failed(f"{source} without a successful OMDb Connection")
|
||||
if source and str(source).startswith("mdb") and not self.Mdblist.has_key:
|
||||
raise Failed(f"{source} without a successful MdbList Connection")
|
||||
if source and str(source).startswith("mdb") and not self.MDBList.has_key:
|
||||
raise Failed(f"{source} without a successful MDBList Connection")
|
||||
if source and str(source).startswith("anidb") and not self.AniDB.is_authorized:
|
||||
raise Failed(f"{source} without a successful AniDB Connection")
|
||||
if source and str(source).startswith("mal") and self.MyAnimeList is None:
|
||||
|
|
|
@ -318,7 +318,7 @@ class MyAnimeList:
|
|||
logger.info(f"Processing MyAnimeList Suggested: {data} Anime")
|
||||
mal_ids = self._suggestions(data)
|
||||
elif method == "mal_userlist":
|
||||
logger.info(f"Processing MyAnimeList Userlist: {data['limit']} Anime from {self._username() if data['username'] == '@me' else data['username']}'s {pretty_names[data['status']]} list sorted by {pretty_names[data['sort_by']]}")
|
||||
logger.info(f"Processing MyAnimeList UserList: {data['limit']} Anime from {self._username() if data['username'] == '@me' else data['username']}'s {pretty_names[data['status']]} list sorted by {pretty_names[data['sort_by']]}")
|
||||
mal_ids = self._userlist(data["username"], data["status"], data["sort_by"], data["limit"])
|
||||
else:
|
||||
raise Failed(f"MyAnimeList Error: Method {method} not supported")
|
||||
|
|
|
@ -71,7 +71,7 @@ class MDbObj:
|
|||
self.age_rating = data["age_rating"]
|
||||
|
||||
|
||||
class Mdblist:
|
||||
class MDBList:
|
||||
def __init__(self, config):
|
||||
self.config = config
|
||||
self.apikey = None
|
||||
|
@ -110,12 +110,12 @@ class Mdblist:
|
|||
time.sleep(0.2 if self.supporter else 1)
|
||||
response = self.config.get_json(url, params=final_params)
|
||||
except JSONDecodeError:
|
||||
raise Failed("Mdblist Error: JSON Decoding Failed")
|
||||
raise Failed("MDBList Error: JSON Decoding Failed")
|
||||
if "response" in response and (response["response"] is False or response["response"] == "False"):
|
||||
if response["error"] in ["API Limit Reached!", "API Rate Limit Reached!"]:
|
||||
self.limit = True
|
||||
raise LimitReached(f"MdbList Error: {response['error']}")
|
||||
raise Failed(f"MdbList Error: {response['error']}")
|
||||
raise LimitReached(f"MDBList Error: {response['error']}")
|
||||
raise Failed(f"MDBList Error: {response['error']}")
|
||||
return response
|
||||
|
||||
def get_item(self, imdb_id=None, tmdb_id=None, tvdb_id=None, is_movie=True, ignore_cache=False):
|
||||
|
@ -132,7 +132,7 @@ class Mdblist:
|
|||
params["m"] = "movie" if is_movie else "show"
|
||||
key = f"{'tvm' if is_movie else 'tvs'}{tvdb_id}"
|
||||
else:
|
||||
raise Failed("MdbList Error: Either IMDb ID, TVDb ID, or TMDb ID and TMDb Type Required")
|
||||
raise Failed("MDBList Error: Either IMDb ID, TVDb ID, or TMDb ID and TMDb Type Required")
|
||||
expired = None
|
||||
if self.config.Cache and not ignore_cache:
|
||||
mdb_dict, expired = self.config.Cache.query_mdb(key, self.expiration)
|
||||
|
@ -198,7 +198,7 @@ class Mdblist:
|
|||
|
||||
def get_tmdb_ids(self, method, data, is_movie=None):
|
||||
if method == "mdblist_list":
|
||||
logger.info(f"Processing Mdblist.com List: {data['url']}")
|
||||
logger.info(f"Processing MDBList.com List: {data['url']}")
|
||||
logger.info(f"Sort By: {data['sort_by']}")
|
||||
sort, direction = data["sort_by"].split(".")
|
||||
params = {"sort": sort, "sortorder": direction}
|
||||
|
@ -216,14 +216,14 @@ class Mdblist:
|
|||
if (isinstance(response, dict) and "error" in response) or (isinstance(response, list) and response and "error" in response[0]):
|
||||
err = response["error"] if isinstance(response, dict) else response[0]["error"]
|
||||
if err in ["empty", "empty or private list"]:
|
||||
raise Failed(f"Mdblist Error: No Items Returned. Lists can take 24 hours to update so try again later.")
|
||||
raise Failed(f"Mdblist Error: Invalid Response {response}")
|
||||
raise Failed(f"MDBList Error: No Items Returned. Lists can take 24 hours to update so try again later.")
|
||||
raise Failed(f"MDBList Error: Invalid Response {response}")
|
||||
results = []
|
||||
for item in response:
|
||||
if item["mediatype"] in ["movie", "show"]:
|
||||
results.append((item["id"], "tmdb" if item["mediatype"] == "movie" else "tmdb_show"))
|
||||
return results
|
||||
except JSONDecodeError:
|
||||
raise Failed(f"Mdblist Error: Invalid JSON Response received")
|
||||
raise Failed(f"MDBList Error: Invalid JSON Response received")
|
||||
else:
|
||||
raise Failed(f"Mdblist Error: Method {method} not supported")
|
||||
raise Failed(f"MDBList Error: Method {method} not supported")
|
||||
|
|
|
@ -229,10 +229,10 @@ class Operations:
|
|||
nonlocal _mdb_obj
|
||||
if _mdb_obj is None:
|
||||
_mdb_obj = False
|
||||
if self.config.Mdblist.limit is False:
|
||||
if self.config.MDBList.limit is False:
|
||||
if self.library.is_show and tvdb_id:
|
||||
try:
|
||||
_mdb_obj = self.config.Mdblist.get_series(tvdb_id)
|
||||
_mdb_obj = self.config.MDBList.get_series(tvdb_id)
|
||||
except LimitReached as err:
|
||||
logger.debug(err)
|
||||
except Failed as err:
|
||||
|
@ -242,7 +242,7 @@ class Operations:
|
|||
raise
|
||||
if self.library.is_movie and tmdb_id:
|
||||
try:
|
||||
_mdb_obj = self.config.Mdblist.get_movie(tmdb_id)
|
||||
_mdb_obj = self.config.MDBList.get_movie(tmdb_id)
|
||||
except LimitReached as err:
|
||||
logger.debug(err)
|
||||
except Failed as err:
|
||||
|
@ -252,7 +252,7 @@ class Operations:
|
|||
raise
|
||||
if imdb_id and not _mdb_obj:
|
||||
try:
|
||||
_mdb_obj = self.config.Mdblist.get_imdb(imdb_id)
|
||||
_mdb_obj = self.config.MDBList.get_imdb(imdb_id)
|
||||
except LimitReached as err:
|
||||
logger.debug(err)
|
||||
except Failed as err:
|
||||
|
|
|
@ -301,10 +301,10 @@ class Overlays:
|
|||
raise Failed("No Trakt User Rating Found")
|
||||
elif str(format_var).startswith("mdb"):
|
||||
mdb_item = None
|
||||
if self.config.Mdblist.limit is False:
|
||||
if self.config.MDBList.limit is False:
|
||||
if self.library.is_show and tvdb_id:
|
||||
try:
|
||||
mdb_item = self.config.Mdblist.get_series(tvdb_id)
|
||||
mdb_item = self.config.MDBList.get_series(tvdb_id)
|
||||
except LimitReached as err:
|
||||
logger.debug(err)
|
||||
except Failed as err:
|
||||
|
@ -314,7 +314,7 @@ class Overlays:
|
|||
raise
|
||||
if self.library.is_movie and tmdb_id:
|
||||
try:
|
||||
mdb_item = self.config.Mdblist.get_movie(tmdb_id)
|
||||
mdb_item = self.config.MDBList.get_movie(tmdb_id)
|
||||
except LimitReached as err:
|
||||
logger.debug(err)
|
||||
except Failed as err:
|
||||
|
@ -324,7 +324,7 @@ class Overlays:
|
|||
raise
|
||||
if imdb_id and not mdb_item:
|
||||
try:
|
||||
mdb_item = self.config.Mdblist.get_imdb(imdb_id)
|
||||
mdb_item = self.config.MDBList.get_imdb(imdb_id)
|
||||
except LimitReached as err:
|
||||
logger.debug(err)
|
||||
except Failed as err:
|
||||
|
|
Loading…
Reference in a new issue