diff --git a/resources/language/resource.language.en_gb/strings.po b/resources/language/resource.language.en_gb/strings.po
index e838985a..db179cee 100644
--- a/resources/language/resource.language.en_gb/strings.po
+++ b/resources/language/resource.language.en_gb/strings.po
@@ -37,38 +37,11 @@ msgctxt "#30003"
msgid "Warning: Kodi setting \"Play next video automatically\" is enabled. This could break PKC. Deactivate?"
msgstr ""
-msgctxt "#30004"
-msgid "Log level"
-msgstr ""
-
msgctxt "#30005"
msgid "Username: "
msgstr ""
-msgctxt "#30006"
-msgid "Password: "
-msgstr ""
-
-msgctxt "#30007"
-msgid "Network Username: "
-msgstr ""
-
-msgctxt "#30008"
-msgid "Network Password: "
-msgstr ""
-
-msgctxt "#30009"
-msgid "Transcode: "
-msgstr ""
-
-msgctxt "#30010"
-msgid "Enable Performance Profiling"
-msgstr ""
-
-msgctxt "#30011"
-msgid "Local caching system"
-msgstr ""
-
+# Button text
msgctxt "#30012"
msgid "OK"
msgstr ""
@@ -77,22 +50,21 @@ msgctxt "#30013"
msgid "Never show"
msgstr ""
+# PKC settings category
msgctxt "#30014"
msgid "Connection"
msgstr ""
-msgctxt "#30015"
-msgid "Network"
-msgstr ""
-
msgctxt "#30016"
msgid "Device Name"
msgstr ""
+# Error message
msgctxt "#30017"
msgid "Unauthorized for PMS"
msgstr ""
+# PKC settings category
msgctxt "#30022"
msgid "Advanced"
msgstr ""
@@ -118,34 +90,6 @@ msgctxt "#30032"
msgid "Information"
msgstr ""
-msgctxt "#30035"
-msgid "Number of recent Music Albums to show:"
-msgstr ""
-
-msgctxt "#30036"
-msgid "Number of recent Movies to show:"
-msgstr ""
-
-msgctxt "#30037"
-msgid "Number of recent TV episodes to show:"
-msgstr ""
-
-msgctxt "#30038"
-msgid "Mark watched at start of playback:"
-msgstr ""
-
-msgctxt "#30039"
-msgid "Set Season poster for episodes"
-msgstr ""
-
-msgctxt "#30040"
-msgid "Genre Filter ..."
-msgstr ""
-
-msgctxt "#30041"
-msgid "Play All from Here"
-msgstr ""
-
msgctxt "#30042"
msgid "Refresh"
msgstr ""
@@ -154,164 +98,15 @@ msgctxt "#30043"
msgid "Delete"
msgstr ""
-msgctxt "#30044"
-msgid "Incorrect Username/Password"
-msgstr ""
-
-msgctxt "#30045"
-msgid "Username not found"
-msgstr ""
-
-msgctxt "#30046"
-msgid "Add Movie to CouchPotato"
-msgstr ""
-
+# Notification displayed if there is a LOT to be deleted
msgctxt "#30052"
msgid "Deleting"
msgstr ""
-msgctxt "#30053"
-msgid "Waiting for server to delete"
-msgstr ""
-
-msgctxt "#30059"
-msgid "Server Default"
-msgstr ""
-
-msgctxt "#30060"
-msgid "Title"
-msgstr ""
-
-msgctxt "#30061"
-msgid "Year"
-msgstr ""
-
-msgctxt "#30062"
-msgid "Premiere Date"
-msgstr ""
-
-msgctxt "#30063"
-msgid "Date Created"
-msgstr ""
-
-msgctxt "#30064"
-msgid "Critic Rating"
-msgstr ""
-
-msgctxt "#30065"
-msgid "Community Rating"
-msgstr ""
-
-msgctxt "#30066"
-msgid "Play Count"
-msgstr ""
-
-msgctxt "#30067"
-msgid "Budget"
-msgstr ""
-
-# Runtime added as 30226 below
-
-msgctxt "#30068"
-msgid "Sort By"
-msgstr ""
-
msgctxt "#30069"
msgid "None"
msgstr ""
-msgctxt "#30070"
-msgid "Action"
-msgstr ""
-
-msgctxt "#30071"
-msgid "Adventure"
-msgstr ""
-
-msgctxt "#30072"
-msgid "Animation"
-msgstr ""
-
-msgctxt "#30073"
-msgid "Crime"
-msgstr ""
-
-msgctxt "#30074"
-msgid "Comedy"
-msgstr ""
-
-msgctxt "#30075"
-msgid "Documentary"
-msgstr ""
-
-msgctxt "#30076"
-msgid "Drama"
-msgstr ""
-
-msgctxt "#30077"
-msgid "Fantasy"
-msgstr ""
-
-msgctxt "#30078"
-msgid "Foreign"
-msgstr ""
-
-msgctxt "#30079"
-msgid "History"
-msgstr ""
-
-msgctxt "#30080"
-msgid "Horror"
-msgstr ""
-
-msgctxt "#30081"
-msgid "Music"
-msgstr ""
-
-msgctxt "#30082"
-msgid "Musical"
-msgstr ""
-
-msgctxt "#30083"
-msgid "Mystery"
-msgstr ""
-
-msgctxt "#30084"
-msgid "Romance"
-msgstr ""
-
-msgctxt "#30085"
-msgid "Science Fiction"
-msgstr ""
-
-msgctxt "#30086"
-msgid "Short"
-msgstr ""
-
-msgctxt "#30087"
-msgid "Suspense"
-msgstr ""
-
-msgctxt "#30088"
-msgid "Thriller"
-msgstr ""
-
-msgctxt "#30089"
-msgid "Western"
-msgstr ""
-
-msgctxt "#30090"
-msgid "Genre Filter"
-msgstr ""
-
-msgctxt "#30091"
-msgid "Confirm file deletion"
-msgstr ""
-
-msgctxt "#30092"
-msgid "Delete this item? This action will delete media and associated data files."
-msgstr ""
-
msgctxt "#30093"
msgid "Mark Watched"
msgstr ""
@@ -328,52 +123,6 @@ msgctxt "#30096"
msgid "Remove from Favorites"
msgstr ""
-msgctxt "#30097"
-msgid "Sort By ..."
-msgstr ""
-
-msgctxt "#30098"
-msgid "Sort Order Descending"
-msgstr ""
-
-msgctxt "#30099"
-msgid "Sort Order Ascending"
-msgstr ""
-
-msgctxt "#30100"
-msgid "Show People"
-msgstr ""
-
-# resume dialog
-
-msgctxt "#30105"
-msgid "Resume"
-msgstr ""
-
-msgctxt "#30106"
-msgid "Resume from"
-msgstr ""
-
-msgctxt "#30107"
-msgid "Start from beginning"
-msgstr ""
-
-msgctxt "#30110"
-msgid "Interface"
-msgstr ""
-
-msgctxt "#30111"
-msgid "Include Stream Info"
-msgstr ""
-
-msgctxt "#30112"
-msgid "Include People"
-msgstr ""
-
-msgctxt "#30113"
-msgid "Include Overview"
-msgstr ""
-
msgctxt "#30114"
msgid "Offer delete after playback"
msgstr ""
@@ -386,78 +135,23 @@ msgctxt "#30116"
msgid "For Movies"
msgstr ""
-msgctxt "#30117"
-msgid "Background Art Refresh Rate (seconds)"
-msgstr ""
-
-msgctxt "#30118"
-msgid "Add Resume Percent"
-msgstr ""
-
-msgctxt "#30119"
-msgid "Add Episode Number"
-msgstr ""
-
-msgctxt "#30120"
-msgid "Show Load Progress"
-msgstr ""
-
-msgctxt "#30121"
-msgid "Loading Content"
-msgstr ""
-
-msgctxt "#30122"
-msgid "Retrieving Data"
-msgstr ""
-
msgctxt "#30125"
msgid "Done"
msgstr ""
-msgctxt "#30126"
-msgid "Processing Item : "
-msgstr ""
-
+# Error popup message text
msgctxt "#30128"
msgid "Play Error"
msgstr ""
-msgctxt "#30129"
-msgid "This item is not playable"
-msgstr ""
-
-msgctxt "#30130"
-msgid "Local path detected"
-msgstr ""
-
-msgctxt "#30131"
-msgid "Your MB3 Server contains local paths. Please change server paths to UNC or change XBMB3C setting 'Play from Stream' to true. Path: "
-msgstr ""
-
msgctxt "#30132"
msgid "Warning"
msgstr ""
-msgctxt "#30133"
-msgid "Debug logging enabled."
-msgstr ""
-
-msgctxt "#30134"
-msgid "This will affect performance."
-msgstr ""
-
msgctxt "#30135"
msgid "Error"
msgstr ""
-msgctxt "#30136"
-msgid "Monitoring service is not running"
-msgstr ""
-
-msgctxt "#30137"
-msgid "If you have just installed please restart Kodi"
-msgstr ""
-
msgctxt "#30138"
msgid "Search"
msgstr ""
@@ -466,34 +160,10 @@ msgctxt "#30139"
msgid "Enable Theme Music (Requires Restart)"
msgstr ""
-msgctxt "#30140"
-msgid " - Loop Theme Music"
-msgstr ""
-
-msgctxt "#30141"
-msgid "Enable Background Image (Requires Restart)"
-msgstr ""
-
-msgctxt "#30142"
-msgid "Services"
-msgstr ""
-
msgctxt "#30143"
msgid "Always transcode if video bitrate is above"
msgstr ""
-msgctxt "#30150"
-msgid "Skin does not support setting views"
-msgstr ""
-
-msgctxt "#30151"
-msgid "Select item action (Requires Restart)"
-msgstr ""
-
-msgctxt "#30156"
-msgid "Sort NextUp by Show Title"
-msgstr ""
-
msgctxt "#30157"
msgid "Enable Enhanced Images (eg CoverArt)"
msgstr ""
@@ -502,30 +172,10 @@ msgctxt "#30158"
msgid "Metadata"
msgstr ""
-msgctxt "#30159"
-msgid "Artwork"
-msgstr ""
-
msgctxt "#30160"
msgid "Video Quality if Transcoding necessary"
msgstr ""
-msgctxt "#30161"
-msgid "Enable Suggested Loader (Requires Restart)"
-msgstr ""
-
-msgctxt "#30162"
-msgid "Add Season Number"
-msgstr ""
-
-msgctxt "#30163"
-msgid "Flatten Seasons"
-msgstr ""
-
-msgctxt "#30164"
-msgid "Direct Play - HTTP"
-msgstr ""
-
msgctxt "#30165"
msgid "Direct Play"
msgstr ""
@@ -534,20 +184,6 @@ msgctxt "#30166"
msgid "Transcoding"
msgstr ""
-msgctxt "#30167"
-msgid "Server Detection Succeeded"
-msgstr ""
-
-msgctxt "#30168"
-msgid "Found server"
-msgstr ""
-
-msgctxt "#30169"
-msgid "Address : "
-msgstr ""
-
-# Video nodes
-
msgctxt "#30170"
msgid "Recently Added TV Shows"
msgstr ""
@@ -556,10 +192,6 @@ msgctxt "#30171"
msgid "In Progress TV Shows"
msgstr ""
-msgctxt "#30172"
-msgid "All Music"
-msgstr ""
-
msgctxt "#30173"
msgid "Channels"
msgstr ""
@@ -568,14 +200,6 @@ msgctxt "#30174"
msgid "Recently Added"
msgstr ""
-msgctxt "#30175"
-msgid "Recently Added Episodes"
-msgstr ""
-
-msgctxt "#30176"
-msgid "Recently Added Albums"
-msgstr ""
-
msgctxt "#30177"
msgid "In Progress Movies"
msgstr ""
@@ -600,178 +224,20 @@ msgctxt "#30182"
msgid "Favorite Episodes"
msgstr ""
-msgctxt "#30183"
-msgid "Frequent Played Albums"
-msgstr ""
-
-msgctxt "#30184"
-msgid "Upcoming TV"
-msgstr ""
-
-msgctxt "#30185"
-msgid "BoxSets"
-msgstr ""
-
-msgctxt "#30186"
-msgid "Trailers"
-msgstr ""
-
-msgctxt "#30187"
-msgid "Music Videos"
-msgstr ""
-
-msgctxt "#30188"
-msgid "Photos"
-msgstr ""
-
msgctxt "#30189"
msgid "Unwatched Movies"
msgstr ""
-msgctxt "#30190"
-msgid "Movie Genres"
-msgstr ""
-
-msgctxt "#30191"
-msgid "Movie Studios"
-msgstr ""
-
-msgctxt "#30192"
-msgid "Movie Actors"
-msgstr ""
-
-msgctxt "#30193"
-msgid "Unwatched Episodes"
-msgstr ""
-
-msgctxt "#30194"
-msgid "TV Genres"
-msgstr ""
-
-msgctxt "#30195"
-msgid "TV Networks"
-msgstr ""
-
-msgctxt "#30196"
-msgid "TV Actors"
-msgstr ""
-
-msgctxt "#30197"
-msgid "Playlists"
-msgstr ""
-
msgctxt "#30198"
msgid "Search"
msgstr ""
-msgctxt "#30199"
-msgid "Set Views"
-msgstr ""
-
-msgctxt "#30200"
-msgid "Select User"
-msgstr ""
-
-msgctxt "#30201"
-msgid "Profiling enabled."
-msgstr ""
-
-msgctxt "#30202"
-msgid "Please remember to turn off when finished testing."
-msgstr ""
-
-msgctxt "#30203"
-msgid "Error in ArtworkRotationThread"
-msgstr ""
-
-msgctxt "#30204"
-msgid "Unable to connect to server"
-msgstr ""
-
-msgctxt "#30205"
-msgid "Error in LoadMenuOptionsThread"
-msgstr ""
-
-msgctxt "#30206"
-msgid "Enable Playlists Loader (Requires Restart)"
-msgstr ""
-
-msgctxt "#30207"
-msgid "Songs"
-msgstr ""
-
-msgctxt "#30208"
-msgid "Albums"
-msgstr ""
-
-msgctxt "#30209"
-msgid "Album Artists"
-msgstr ""
-
-msgctxt "#30210"
-msgid "Artists"
-msgstr ""
-
-msgctxt "#30211"
-msgid "Music Genres"
-msgstr ""
-
-msgctxt "#30212"
-msgid "Enable Theme Videos (Requires Restart)"
-msgstr ""
-
-msgctxt "#30213"
-msgid " - Loop Theme Videos"
-msgstr ""
-
-msgctxt "#30216"
-msgid "AutoPlay remaining episodes in a season"
-msgstr ""
-
-msgctxt "#30218"
-msgid "Compress Artwork"
-msgstr ""
-
-msgctxt "#30220"
-msgid "Latest "
-msgstr ""
-
-msgctxt "#30221"
-msgid "In Progress "
-msgstr ""
-
-msgctxt "#30222"
-msgid "NextUp "
-msgstr ""
-
-msgctxt "#30223"
-msgid "User Views"
-msgstr ""
-
-msgctxt "#30224"
-msgid "Report Metrics"
-msgstr ""
-
-msgctxt "#30225"
-msgid "Use Kodi Sorting"
-msgstr ""
-
-msgctxt "#30226"
-msgid "Runtime"
-msgstr ""
-
+# Video node naming for random e.g. movies
msgctxt "#30227"
msgid "Random"
msgstr ""
-msgctxt "#30228"
-msgid "Recently releases"
-msgstr ""
-
-msgctxt "#30229"
-msgid "Random Items"
-msgstr ""
-
+# Video node naming for e.g. movies
msgctxt "#30230"
msgid "Recommended"
msgstr ""
@@ -780,58 +246,10 @@ msgctxt "#30235"
msgid "Extras"
msgstr ""
-msgctxt "#30236"
-msgid "Sync Theme Music"
-msgstr ""
-
-msgctxt "#30237"
-msgid "Sync Extra Fanart"
-msgstr ""
-
-msgctxt "#30238"
-msgid "Sync Movie BoxSets"
-msgstr ""
-
-msgctxt "#30239"
-msgid "[COLOR yellow]Reset local Kodi database[/COLOR]"
-msgstr ""
-
-msgctxt "#30240"
-msgid "Enable watched/resume status sync"
-msgstr ""
-
-msgctxt "#30241"
-msgid "DB Sync Indication:"
-msgstr ""
-
-msgctxt "#30242"
-msgid "Play Count Sync Indication:"
-msgstr ""
-
msgctxt "#30243"
msgid "Enable HTTPS"
msgstr ""
-msgctxt "#30245"
-msgid "Force Transcoding Codecs"
-msgstr ""
-
-msgctxt "#30246"
-msgid "Enable Netflix style next up notification"
-msgstr ""
-
-msgctxt "#30247"
-msgid " - The number of seconds before the end to show the notification"
-msgstr ""
-
-msgctxt "#30248"
-msgid "Show Emby Info dialog on play/select action"
-msgstr ""
-
-msgctxt "#30249"
-msgid "Enable server connection message on startup"
-msgstr ""
-
msgctxt "#30251"
msgid "Recently added Home Videos"
msgstr ""
@@ -864,118 +282,57 @@ msgctxt "#30258"
msgid "Unwatched Music videos"
msgstr ""
-# Default views
-
-msgctxt "#30300"
-msgid "Active"
-msgstr ""
-
-msgctxt "#30301"
-msgid "Clear Settings"
-msgstr ""
-
+# PKC settings sub category under appearance tweaks
msgctxt "#30302"
msgid "Movies"
msgstr ""
-msgctxt "#30303"
-msgid "BoxSets"
-msgstr ""
-
-msgctxt "#30304"
-msgid "Trailers"
-msgstr ""
-
-msgctxt "#30305"
-msgid "Series"
-msgstr ""
-
-msgctxt "#30306"
-msgid "Seasons"
-msgstr ""
-
-msgctxt "#30307"
-msgid "Episodes"
-msgstr ""
-
-msgctxt "#30308"
-msgid "Music Artists"
-msgstr ""
-
-msgctxt "#30309"
-msgid "Music Albums"
-msgstr ""
-
-msgctxt "#30310"
-msgid "Music Videos"
-msgstr ""
-
-msgctxt "#30311"
-msgid "Music Tracks"
-msgstr ""
-
-msgctxt "#30312"
-msgid "Channels"
-msgstr ""
-
-# contextmenu
-
+# contextmenu entry
msgctxt "#30401"
msgid "Plex options"
msgstr ""
-msgctxt "#30402"
-msgid "Clear like for this item"
-msgstr ""
-
-msgctxt "#30403"
-msgid "Like this item"
-msgstr ""
-
-msgctxt "#30404"
-msgid "Dislike this item"
-msgstr ""
-
+# contextmenu entry
msgctxt "#30405"
msgid "Add to Plex favorites"
msgstr ""
+# contextmenu entry
msgctxt "#30406"
msgid "Remove from Plex favorites"
msgstr ""
+# contextmenu entry
msgctxt "#30407"
msgid "Set custom song rating"
msgstr ""
+# contextmenu entry
msgctxt "#30408"
msgid "Plex addon settings"
msgstr ""
+# contextmenu entry
msgctxt "#30409"
msgid "Delete item from server"
msgstr ""
+# contextmenu entry
msgctxt "#30410"
msgid "Refresh this item"
msgstr ""
-msgctxt "#30411"
-msgid "Set custom song rating (0-5)"
-msgstr ""
-
+# contextmenu entry
msgctxt "#30412"
msgid "Force transcode"
msgstr ""
-msgctxt "#30413"
-msgid "Enable Plex context menu in Kodi"
-msgstr ""
-
+# Error dialog text
msgctxt "#30414"
msgid "Could not delete the Plex item. Is item deletion enabled on the Plex Media Server?"
msgstr ""
+# contextmenu entry
msgctxt "#30415"
msgid "Start playback via PMS"
msgstr ""
@@ -984,44 +341,37 @@ msgctxt "#30416"
msgid "Settings for the Plex Server"
msgstr ""
-# add-on settings
-
+# PKC Settings - Connection
msgctxt "#30500"
msgid "Verify Host SSL Certificate (more secure)"
msgstr ""
+# PKC Settings - Connection
msgctxt "#30501"
msgid "Client SSL certificate"
msgstr ""
-msgctxt "#30502"
-msgid "Use alternate address"
-msgstr ""
-
-msgctxt "#30503"
-msgid "Alternate Server Address"
-msgstr ""
-
-msgctxt "#30504"
-msgid "Use alternate device Name"
-msgstr ""
-
+# PKC Settings - Connection
msgctxt "#30505"
msgid "[COLOR yellow]Reset login attempts[/COLOR]"
msgstr ""
+# PKC Settings, category name
msgctxt "#30506"
msgid "Sync Options"
msgstr ""
+# PKC Settings - Sync Options
msgctxt "#30507"
msgid "Show syncing progress"
msgstr ""
+# PKC Settings - Sync Options
msgctxt "#30508"
msgid "Sync empty TV Shows"
msgstr ""
+# PKC Settings - Sync Options
msgctxt "#30509"
msgid "Enable Music Library"
msgstr ""
@@ -1030,70 +380,62 @@ msgctxt "#30510"
msgid "Direct stream music library"
msgstr ""
+# PKC Settings - Sync Options
msgctxt "#30511"
msgid "Playback Mode"
msgstr ""
+# PKC Settings - Artwork
msgctxt "#30512"
msgid "Force artwork caching"
msgstr ""
+# PKC Settings - Artwork
msgctxt "#30513"
msgid "Limit artwork cache threads (recommended for rpi)"
msgstr ""
-msgctxt "#30514"
-msgid "Enable fast startup (requires server plugin)"
-msgstr ""
-
+# PKC Settings - Sync Options
msgctxt "#30515"
msgid "Maximum items to request from the server at once"
msgstr ""
+# PKC Settings, category name
msgctxt "#30516"
msgid "Playback"
msgstr ""
+# PKC Settings - Connection
msgctxt "#30517"
msgid "[COLOR yellow]Enter network credentials[/COLOR]"
msgstr ""
+# PKC Settings - Playback
msgctxt "#30518"
msgid "Enable Plex Trailers (Plexpass is needed)"
msgstr ""
+# PKC Settings - Playback
msgctxt "#30519"
msgid "Ask to play trailers"
msgstr ""
+# PKC Settings - Plex
msgctxt "#30520"
-msgid "Skip Plex delete confirmation for the context menu (use at your own risk)"
+msgid "Skip PMS delete confirmation (use at your own risk)"
msgstr ""
+# PKC Settings - Playback
msgctxt "#30521"
msgid "Jump back on resume (in seconds)"
msgstr ""
+# PKC Settings - Playback
msgctxt "#30522"
msgid "Force transcode h265/HEVC"
msgstr ""
-msgctxt "#30523"
-msgid "Music metadata options (not compatible with direct stream)"
-msgstr ""
-
-msgctxt "#30524"
-msgid "Import music song rating directly from files"
-msgstr ""
-
-msgctxt "#30525"
-msgid "Convert music song rating to Emby rating"
-msgstr ""
-
-msgctxt "#30526"
-msgid "Allow rating in song files to be updated"
-msgstr ""
-
+# PKC Settings - Playback
msgctxt "#30527"
msgid "Ignore specials in next episodes"
msgstr ""
@@ -1102,14 +444,11 @@ msgctxt "#30528"
msgid "Permanent users to add to the session"
msgstr ""
+# PKC Settings - Advanced
msgctxt "#30529"
msgid "Startup delay (in seconds)"
msgstr ""
-msgctxt "#30530"
-msgid "Enable server restart message"
-msgstr ""
-
msgctxt "#30531"
msgid "Enable new content notification"
msgstr ""
@@ -1126,88 +465,76 @@ msgctxt "#30534"
msgid "Server messages"
msgstr ""
+# PKC Settings - Advanced
msgctxt "#30535"
msgid "[COLOR yellow]Generate a new unique device Id (e.g. when cloning Kodi)[/COLOR]"
msgstr ""
+# PKC Settings - Connection
msgctxt "#30536"
msgid "Users must log in every time Kodi restarts"
msgstr ""
+# PKC Settings warning
msgctxt "#30537"
msgid "RESTART KODI IF YOU MAKE ANY CHANGES"
msgstr ""
+# PKC Settings warning
msgctxt "#30538"
msgid "Complete Re-Sync necessary"
msgstr ""
+# PKC Settings - Artwork
msgctxt "#30539"
msgid "Download additional art from FanArtTV"
msgstr ""
+# PKC Settings - Artwork
msgctxt "#30540"
msgid "Download movie set/collection art from FanArtTV"
msgstr ""
+# PKC Settings - Playback
msgctxt "#30541"
msgid "Don't ask to pick a certain stream/quality"
msgstr ""
+# PKC Settings - Playback
msgctxt "#30542"
msgid "Always pick best quality for trailers"
msgstr ""
-msgctxt "#30543"
-msgid "Kodi runs on a low-power device (e.g. Raspberry Pi)"
-msgstr ""
-
msgctxt "#30544"
msgid "Artwork"
msgstr ""
+# PKC Settings - Playback
msgctxt "#30545"
msgid "Force transcode pictures"
msgstr ""
-# service add-on
-
+# Welcome to Plex notification
msgctxt "#33000"
msgid "Welcome"
msgstr ""
+# Error message
msgctxt "#33001"
msgid "Error connecting"
msgstr ""
+# Error message
msgctxt "#33002"
msgid "Server is unreachable"
msgstr ""
+# Plex notification
msgctxt "#33003"
msgid "Server is online"
msgstr ""
-msgctxt "#33004"
-msgid "items added to playlist"
-msgstr ""
-
-msgctxt "#33005"
-msgid "items queued to playlist"
-msgstr ""
-
-msgctxt "#33006"
-msgid "Server is restarting"
-msgstr ""
-
-msgctxt "#33007"
-msgid "Access is enabled"
-msgstr ""
-
-msgctxt "#33008"
-msgid "Enter password for user:"
-msgstr ""
-
+# Error notification
msgctxt "#33009"
msgid "Invalid username or password"
msgstr ""
@@ -1216,220 +543,162 @@ msgctxt "#33010"
msgid "Failed to authenticate too many times. Reset in the settings."
msgstr ""
-msgctxt "#33011"
-msgid "Unable to direct play"
-msgstr ""
-
-msgctxt "#33012"
-msgid "Direct play failed 3 times. Enabled play from HTTP."
-msgstr ""
-
+# Dialog before playback
msgctxt "#33013"
msgid "Choose the audio stream"
msgstr ""
+# Dialog before playback
msgctxt "#33014"
msgid "Choose the subtitles stream"
msgstr ""
-msgctxt "#33015"
-msgid "Delete file from your Emby server?"
-msgstr ""
-
+# Dialog before playback
msgctxt "#33016"
msgid "Play trailers?"
msgstr ""
-msgctxt "#33017"
-msgid "Gathering movies from:"
-msgstr ""
-
-msgctxt "#33018"
-msgid "Gathering boxsets"
-msgstr ""
-
-msgctxt "#33019"
-msgid "Gathering music videos from:"
-msgstr ""
-
-msgctxt "#33020"
-msgid "Gathering tv shows from:"
-msgstr ""
-
-msgctxt "#33021"
-msgid "Gathering:"
-msgstr ""
-
-msgctxt "#33022"
-msgid "Detected the database needs to be recreated for this version of Emby for Kodi. Proceed?"
-msgstr ""
-
-msgctxt "#33023"
-msgid "Emby for Kodi may not work correctly until the database is reset."
-msgstr ""
-
-msgctxt "#33024"
-msgid "Cancelling the database syncing process. The current Kodi version is unsupported."
-msgstr ""
-
-msgctxt "#33025"
-msgid "completed in:"
-msgstr ""
-
-msgctxt "#33026"
-msgid "Comparing movies from:"
-msgstr ""
-
-msgctxt "#33027"
-msgid "Comparing boxsets"
-msgstr ""
-
-msgctxt "#33028"
-msgid "Comparing music videos from:"
-msgstr ""
-
-msgctxt "#33029"
-msgid "Comparing tv shows from:"
-msgstr ""
-
-msgctxt "#33030"
-msgid "Comparing episodes from:"
-msgstr ""
-
-msgctxt "#33031"
-msgid "Comparing:"
-msgstr ""
-
+# Error message
msgctxt "#33032"
msgid "Failed to generate a new device Id. See your logs for more information."
msgstr ""
+# Pop-up informing about Kodi restart
msgctxt "#33033"
msgid "Kodi will now restart to apply the changes."
msgstr ""
+# Confirmation dialog before item gets deleted from the PMS
msgctxt "#33041"
msgid "Delete file(s) from Plex Server? This will also delete the file(s) from disk!"
msgstr ""
-# New to Plex
-
+# PKC Settings - Playback
msgctxt "#39000"
msgid "- Number of trailers to play before a movie"
msgstr ""
+# PKC Settings - Playback
msgctxt "#39001"
msgid "Boost audio when transcoding"
msgstr ""
+# PKC Settings - Playback
msgctxt "#39002"
msgid "Burnt-in subtitle size"
msgstr ""
+# PKC Settings - Sync
msgctxt "#39003"
msgid "Limit download sync threads (rec. for rpi: 1)"
msgstr ""
+# PKC Settings - Plex
msgctxt "#39004"
msgid "Enable Plex Companion (restart Kodi!)"
msgstr ""
+# PKC Settings - Plex
msgctxt "#39005"
msgid "Plex Companion Port (change only if needed)"
msgstr ""
-msgctxt "#39006"
-msgid "Activate Plex Companion debug log"
-msgstr ""
-
-msgctxt "#39007"
-msgid "Activate Plex Companion GDM debug log"
-msgstr ""
-
+# PKC Settings - Plex
msgctxt "#39008"
msgid "Plex Companion: Allows flinging media to Kodi through Plex"
msgstr ""
+# Error message
msgctxt "#39009"
msgid "Could not login to plex.tv. Please try signing in again."
msgstr ""
+# Error message
msgctxt "#39010"
msgid "Problems connecting to plex.tv. Network or internet issue?"
msgstr ""
+# Error message
msgctxt "#39011"
msgid "Could not find any Plex server in the network. Aborting..."
msgstr ""
+# Dialog text for choosing PMS
msgctxt "#39012"
msgid "Choose your Plex server"
msgstr ""
+# Error message
msgctxt "#39013"
msgid "Not yet authorized for Plex server "
msgstr ""
+# Error message
msgctxt "#39014"
msgid "Please sign in to plex.tv."
msgstr ""
+# Error message
msgctxt "#39015"
msgid "Problems connecting to server. Pick another server?"
msgstr ""
+# Pop-up on initial sync
msgctxt "#39016"
msgid "Disable Plex music library? (It is HIGHLY recommended to use Plex music only with direct paths for large music libraries. Kodi might crash otherwise)"
msgstr ""
+# Pop-up on initial sync
msgctxt "#39017"
msgid "Would you now like to go to the plugin's settings to fine-tune PKC? You will need to RESTART Kodi!"
msgstr ""
+# PKC Settings - Advanced
msgctxt "#39018"
msgid "[COLOR yellow]Repair local database (force update all content)[/COLOR]"
msgstr ""
+# PKC Settings - Advanced
msgctxt "#39019"
msgid "[COLOR red]Partial or full reset of Database and PKC[/COLOR]"
msgstr ""
+# PKC Settings - Artwork
msgctxt "#39020"
msgid "[COLOR yellow]Cache all images to Kodi texture cache now[/COLOR]"
msgstr ""
-msgctxt "#39021"
-msgid "[COLOR yellow]Sync Emby Theme Media to Kodi[/COLOR]"
-msgstr ""
-
+# Appended to a listed PMS if it is in the same LAN network as PKC
msgctxt "#39022"
msgid "local"
msgstr ""
+# Error message
msgctxt "#39023"
msgid "Failed to authenticate. Did you login to plex.tv?"
msgstr ""
+# PKC Settings - Plex
msgctxt "#39025"
msgid "Automatically log into plex.tv on startup"
msgstr ""
+# PKC Settings - Sync
msgctxt "#39026"
msgid "Enable constant background sync"
msgstr ""
-msgctxt "#39027"
-msgid "Playback Mode"
-msgstr ""
-
+# Pop-up on initial sync
msgctxt "#39028"
msgid "CAUTION! If you choose \"Native\" mode , you might loose access to certain Plex features such as: Plex trailers and transcoding options. ALL Plex shares need to use direct paths (e.g. smb://myNAS/mymovie.mkv or \\\\myNAS/mymovie.mkv)!"
msgstr ""
+# Pop-up on initial sync
msgctxt "#39029"
msgid "Network credentials"
msgstr ""
+# Pop-up on initial sync
msgctxt "#39030"
msgid "Add network credentials to allow Kodi access to your content? Note: Skipping this step may generate a message during the initial scan of your content if Kodi can't locate your content."
msgstr ""
@@ -1439,193 +708,231 @@ msgctxt "#39031"
msgid "Kodi cannot locate the file %s. Please verify your PKC settings. Stop syncing?"
msgstr ""
+# Pop-up on initial sync
msgctxt "#39033"
msgid "Transform Plex UNC library paths \\\\myNas\\mymovie.mkv automatically to smb paths, smb://myNas/mymovie.mkv? (recommended)"
msgstr ""
+# PKC Settings - Customize Paths
msgctxt "#39034"
msgid "Replace Plex UNC paths \\\\myNas with smb://myNas"
msgstr ""
+# PKC Settings - Customize Paths
msgctxt "#39035"
msgid "Replace Plex paths /volume1/media or \\\\myserver\\media with custom SMB paths smb://NAS/mystuff"
msgstr ""
+# PKC Settings - Customize Paths
msgctxt "#39037"
msgid "Original Plex MOVIE path to replace:"
msgstr ""
+# PKC Settings - Customize Paths
msgctxt "#39038"
msgid "Replace Plex MOVIE with:"
msgstr ""
+# PKC Settings - Customize Paths
msgctxt "#39039"
msgid "Original Plex TV SHOWS path to replace:"
msgstr ""
+# PKC Settings - Customize Paths
msgctxt "#39040"
msgid "Replace Plex TV SHOWS with:"
msgstr ""
+# PKC Settings - Customize Paths
msgctxt "#39041"
msgid "Original Plex MUSIC path to replace:"
msgstr ""
+# PKC Settings - Customize Paths
msgctxt "#39042"
msgid "Replace Plex MUSIC with:"
msgstr ""
+# Pop-up on initial sync
msgctxt "#39043"
msgid "Go a step further and completely replace all original Plex library paths (/volume1/media) with custom SMB paths (smb://NAS/MyStuff)?"
msgstr ""
+# Pop-up on initial sync
msgctxt "#39044"
msgid "Please enter your custom smb paths in the settings under \"Sync Options\" and then restart Kodi"
msgstr ""
+# PKC Settings - Customize Paths
msgctxt "#39045"
msgid "Original Plex PHOTO path to replace:"
msgstr ""
+# PKC Settings - Customize Paths
msgctxt "#39046"
msgid "Replace Plex PHOTO with:"
msgstr ""
+# PKC Settings - Appearance Tweaks
msgctxt "#39047"
msgid "On Deck: Append show title to episode"
msgstr ""
+# PKC Settings - Appearance Tweaks
msgctxt "#39048"
msgid "On Deck: Append season- and episode-number SxxExx"
msgstr ""
+# PKC Settings - Advanced
msgctxt "#39049"
msgid "Nothing works? Try a full reset!"
msgstr ""
+# PKC Settings - Connection
msgctxt "#39050"
msgid "[COLOR yellow]Choose Plex Server from a list[/COLOR]"
msgstr ""
+# PKC Settings - Sync
msgctxt "#39051"
msgid "Wait before sync new/changed PMS item [s]"
msgstr ""
+# PKC Settings - Sync
msgctxt "#39052"
msgid "Background Sync"
msgstr ""
+# PKC Settings - Sync
msgctxt "#39053"
msgid "Do a full library sync every x minutes"
msgstr ""
+# Appended to a listed PMS if it is in the same LAN network as PKC
msgctxt "#39054"
msgid "remote"
msgstr ""
+# Notification pop-up
msgctxt "#39055"
msgid "Searching for Plex Server"
msgstr ""
+# PKC Settings - Customize paths
msgctxt "#39056"
msgid "Used by Sync and when attempting to Direct Play"
msgstr ""
+# PKC Settings, category name
msgctxt "#39057"
msgid "Customize Paths"
msgstr ""
+# PKC Settings - Appearance Tweaks
msgctxt "#39058"
msgid "Extend Plex TV Series \"On Deck\" view to all shows"
msgstr ""
+# PKC Settings - Appearance Tweaks
msgctxt "#39059"
msgid "Recently Added: Append show title to episode"
msgstr ""
+# PKC Settings - Appearance Tweaks
msgctxt "#39060"
msgid "Recently Added: Append season- and episode-number SxxExx"
msgstr ""
+# Pop-up during initial sync
msgctxt "#39061"
msgid "Would you like to download additional artwork from FanArtTV in the background?"
msgstr ""
+# PKC Settings - Sync
msgctxt "#39062"
msgid "Sync when screensaver is deactivated"
msgstr ""
+# PKC Settings - Playback
msgctxt "#39063"
msgid "Force Transcode Hi10P"
msgstr ""
+# PKC Settings - Appearance Tweaks
msgctxt "#39064"
msgid "Recently Added: Also show already watched episodes"
msgstr ""
-# PKC settings, Appearance Tweaks
+# PKC Settings - Appearance Tweaks
msgctxt "#39065"
msgid "Force-refresh Kodi skin on stopping playback"
msgstr ""
+# PKC Settings - Appearance Tweaks
msgctxt "#39066"
msgid "Recently Added: Also show already watched movies (Refresh Plex playlist/nodes!)"
msgstr ""
+# PKC Settings - Connection
msgctxt "#39067"
msgid "Your current Plex Media Server:"
msgstr ""
+# PKC Settings - Connection
msgctxt "#39068"
msgid "[COLOR yellow]Manually enter Plex Media Server address[/COLOR]"
msgstr ""
+# PKC Settings - Connection
msgctxt "#39069"
msgid "Current address:"
msgstr ""
+# PKC Settings - Connection
msgctxt "#39070"
msgid "Current port:"
msgstr ""
+# PKC Settings - Connection
msgctxt "#39071"
msgid "Current plex.tv status:"
msgstr ""
-msgctxt "#39072"
-msgid "Is your Kodi installed on a low-powered device like a Raspberry Pi? If yes, then we will reduce the strain on Kodi to prevent it from crashing."
-msgstr ""
-
+# PKC Settings, category name
msgctxt "#39073"
msgid "Appearance Tweaks"
msgstr ""
+# PKC Settings - Appearance Tweaks
msgctxt "#39074"
msgid "TV Shows"
msgstr ""
+# PKC Settings - Playback
msgctxt "#39075"
msgid "Always use default Plex subtitle if possible"
msgstr ""
+# Pop-up during initial sync
msgctxt "#39076"
msgid "If you use several Plex libraries of one kind, e.g. \"Kids Movies\" and \"Parents Movies\", be sure to check the Wiki: https://goo.gl/JFtQV9"
msgstr ""
+# PKC Settings - Appearance Tweaks
msgctxt "#39077"
msgid "Number of PMS items to show in widgets (e.g. \"On Deck\")"
msgstr ""
+# PKC Settings - Plex
msgctxt "#39078"
msgid "Plex Companion Update Port (change only if needed)"
msgstr ""
+# Error message
msgctxt "#39079"
msgid "Plex Companion could not open the GDM port. Please change it in the PKC settings."
msgstr ""
-# Plex Entrypoint.py
-
msgctxt "#39200"
msgid "Log-out Plex Home User "
msgstr ""
@@ -1634,10 +941,6 @@ msgctxt "#39201"
msgid "Settings"
msgstr ""
-msgctxt "#39202"
-msgid "Network credentials"
-msgstr ""
-
msgctxt "#39203"
msgid "Refresh Plex playlists/nodes"
msgstr ""
@@ -1646,6 +949,7 @@ msgctxt "#39204"
msgid "Perform manual library sync"
msgstr ""
+# Error message
msgctxt "#39205"
msgid "Unable to run the sync, the add-on is not connected to a Plex server."
msgstr ""
@@ -1662,6 +966,7 @@ msgctxt "#39208"
msgid "Failed to reset PKC. Try to restart Kodi."
msgstr ""
+# PKC Settings - Plex
msgctxt "#39209"
msgid "[COLOR yellow]Toggle plex.tv login (sign in or sign out)[/COLOR]"
msgstr ""
@@ -1674,6 +979,7 @@ msgctxt "#39211"
msgid "Watch later"
msgstr ""
+# String attached at the end to get something like "PMS Name is offline"
msgctxt "#39213"
msgid "is offline"
msgstr ""
@@ -1694,6 +1000,7 @@ msgctxt "#39219"
msgid "Abort (Yes) or save address anyway (No)?"
msgstr ""
+# String attached at the end to get something like "PMS Name is offline"
msgctxt "#39220"
msgid "connected"
msgstr ""
@@ -1733,8 +1040,6 @@ msgctxt "#39228"
msgid "Plex user:"
msgstr ""
-# Plex Artwork.py
-
msgctxt "#39250"
msgid "Running the image cache process can take some time. It will happen in the background. Are you sure you want continue?"
msgstr ""
@@ -1743,20 +1048,6 @@ msgctxt "#39251"
msgid "Reset all existing cache data first?"
msgstr ""
-# Plex PlexAPI.py
-
-msgctxt "#39300"
-msgid ": Enter plex.tv username. Or nothing to cancel."
-msgstr ""
-
-msgctxt "#39301"
-msgid "Enter password for plex.tv user "
-msgstr ""
-
-msgctxt "#39302"
-msgid "Could not sign in user "
-msgstr ""
-
msgctxt "#39303"
msgid "Problems trying to contact plex.tv. Try again later"
msgstr ""
@@ -1793,8 +1084,6 @@ msgctxt "#39311"
msgid "or press No to not sign in."
msgstr ""
-# Plex Librarysync.py
-
msgctxt "#39400"
msgid "Library sync thread has crashed. You should restart Kodi now. Please report this on the forum"
msgstr ""
@@ -1811,10 +1100,6 @@ msgctxt "#39403"
msgid "Cancelling the database syncing process. Current Kodi version is unsupported. Please verify your logs for more info."
msgstr ""
-msgctxt "#39404"
-msgid "Startup syncing process failed repeatedly. Try restarting Kodi. Stopping Sync for now."
-msgstr ""
-
msgctxt "#39405"
msgid "Plex playlists/nodes refreshed"
msgstr ""
@@ -1839,8 +1124,6 @@ msgctxt "#39410"
msgid "ERROR in library sync"
msgstr ""
-# Plex videonodes.py
-
msgctxt "#39500"
msgid "On Deck"
msgstr ""
@@ -1849,8 +1132,6 @@ msgctxt "#39501"
msgid "Collections"
msgstr ""
-# Plex utils.py
-
msgctxt "#39600"
msgid "Are you sure you want to reset your local Kodi database? A re-sync of the Plex data will take time afterwards."
msgstr ""
diff --git a/resources/lib/itemtypes.py b/resources/lib/itemtypes.py
index 611a66eb..25580773 100644
--- a/resources/lib/itemtypes.py
+++ b/resources/lib/itemtypes.py
@@ -1290,7 +1290,20 @@ class Music(Items):
checksum=checksum)
# Process the album info
- if v.KODIVERSION >= 17:
+ if v.KODIVERSION >= 18:
+ # Kodi Leia
+ query = '''
+ UPDATE album
+ SET strArtistDisp = ?, iYear = ?, strGenres = ?, strReview = ?,
+ strImage = ?, iUserrating = ?, lastScraped = ?,
+ strReleaseType = ?, strLabel = ?, bCompilation = ?
+ WHERE idAlbum = ?
+ '''
+ kodicursor.execute(query, (artistname, year, self.genre, bio,
+ thumb, rating, lastScraped,
+ v.KODI_TYPE_ALBUM, studio,
+ self.compilation, albumid))
+ elif v.KODIVERSION == 17:
# Kodi Krypton
query = '''
UPDATE album
@@ -1316,30 +1329,6 @@ class Music(Items):
thumb, rating, lastScraped,
v.KODI_TYPE_ALBUM, studio,
self.compilation, albumid))
- elif v.KODIVERSION == 15:
- # Kodi Isengard
- query = '''
- UPDATE album
- SET strArtists = ?, iYear = ?, strGenres = ?, strReview = ?,
- strImage = ?, iRating = ?, lastScraped = ?, dateAdded = ?,
- strReleaseType = ?, strLabel = ?
- WHERE idAlbum = ?
- '''
- kodicursor.execute(query, (artistname, year, self.genre, bio,
- thumb, rating, lastScraped, dateadded,
- v.KODI_TYPE_ALBUM, studio, albumid))
- else:
- # Kodi Helix
- query = '''
- UPDATE album
- SET strArtists = ?, iYear = ?, strGenres = ?, strReview = ?,
- strImage = ?, iRating = ?, lastScraped = ?, dateAdded = ?,
- strLabel = ?
- WHERE idAlbum = ?
- '''
- kodicursor.execute(query, (artistname, year, self.genre, bio,
- thumb, rating, lastScraped, dateadded,
- studio, albumid))
# Associate the parentid for plex reference
parent_id = api.parent_plex_id()
@@ -1400,8 +1389,8 @@ class Music(Items):
kodicursor.execute(query, (artistid, name, year))
# Update plex reference with parentid
plex_db.updateParentId(artist_id, albumid)
- # Add genres
- self.kodi_db.addMusicGenres(albumid, self.genres, v.KODI_TYPE_ALBUM)
+ if v.KODIVERSION < 18:
+ self.kodi_db.addMusicGenres(albumid, self.genres, v.KODI_TYPE_ALBUM)
# Update artwork
artwork.modify_artwork(artworks, albumid, v.KODI_TYPE_ALBUM, kodicursor)
# Add all children - all tracks
@@ -1517,18 +1506,33 @@ class Music(Items):
kodicursor.execute(query, (path, '123', pathid))
# Update the song entry
- query = '''
- UPDATE song
- SET idAlbum = ?, strArtists = ?, strGenres = ?, strTitle = ?,
- iTrack = ?, iDuration = ?, iYear = ?, strFilename = ?,
- iTimesPlayed = ?, lastplayed = ?, rating = ?, comment = ?,
- mood = ?
- WHERE idSong = ?
- '''
- kodicursor.execute(query, (albumid, artists, genre, title, track,
- duration, year, filename, playcount,
- dateplayed, rating, comment, mood,
- songid))
+ if v.KODIVERSION >= 18:
+ # Kodi Leia
+ query = '''
+ UPDATE song
+ SET idAlbum = ?, strArtistDisp = ?, strGenres = ?,
+ strTitle = ?, iTrack = ?, iDuration = ?, iYear = ?,
+ strFilename = ?, iTimesPlayed = ?, lastplayed = ?,
+ rating = ?, comment = ?, mood = ?
+ WHERE idSong = ?
+ '''
+ kodicursor.execute(query, (albumid, artists, genre, title,
+ track, duration, year, filename,
+ playcount, dateplayed, rating,
+ comment, mood, songid))
+ else:
+ query = '''
+ UPDATE song
+ SET idAlbum = ?, strArtists = ?, strGenres = ?,
+ strTitle = ?, iTrack = ?, iDuration = ?, iYear = ?,
+ strFilename = ?, iTimesPlayed = ?, lastplayed = ?,
+ rating = ?, comment = ?, mood = ?
+ WHERE idSong = ?
+ '''
+ kodicursor.execute(query, (albumid, artists, genre, title,
+ track, duration, year, filename,
+ playcount, dateplayed, rating,
+ comment, mood, songid))
# Update the checksum in plex table
plex_db.updateReference(itemid, checksum)
@@ -1615,18 +1619,33 @@ class Music(Items):
dateadded))
# Create the song entry
- query = '''
- INSERT INTO song(
- idSong, idAlbum, idPath, strArtists, strGenres, strTitle,
- iTrack, iDuration, iYear, strFileName,
- strMusicBrainzTrackID, iTimesPlayed, lastplayed,
- rating, iStartOffset, iEndOffset, mood)
- VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)
- '''
- kodicursor.execute(
- query, (songid, albumid, pathid, artists, genre, title, track,
- duration, year, filename, musicBrainzId, playcount,
- dateplayed, rating, 0, 0, mood))
+ if v.KODIVERSION >= 18:
+ # Kodi Leia
+ query = '''
+ INSERT INTO song(
+ idSong, idAlbum, idPath, strArtistDisp, strGenres,
+ strTitle, iTrack, iDuration, iYear, strFileName,
+ strMusicBrainzTrackID, iTimesPlayed, lastplayed,
+ rating, iStartOffset, iEndOffset, mood)
+ VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)
+ '''
+ kodicursor.execute(
+ query, (songid, albumid, pathid, artists, genre, title,
+ track, duration, year, filename, musicBrainzId,
+ playcount, dateplayed, rating, 0, 0, mood))
+ else:
+ query = '''
+ INSERT INTO song(
+ idSong, idAlbum, idPath, strArtists, strGenres,
+ strTitle, iTrack, iDuration, iYear, strFileName,
+ strMusicBrainzTrackID, iTimesPlayed, lastplayed,
+ rating, iStartOffset, iEndOffset, mood)
+ VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)
+ '''
+ kodicursor.execute(
+ query, (songid, albumid, pathid, artists, genre, title,
+ track, duration, year, filename, musicBrainzId,
+ playcount, dateplayed, rating, 0, 0, mood))
# Create the reference in plex table
plex_db.addReference(itemid,
@@ -1637,15 +1656,14 @@ class Music(Items):
parent_id=albumid,
checksum=checksum,
view_id=viewid)
-
- # Link song to album
- query = '''
- INSERT OR REPLACE INTO albuminfosong(
- idAlbumInfoSong, idAlbumInfo, iTrack, strTitle, iDuration)
- VALUES (?, ?, ?, ?, ?)
- '''
- kodicursor.execute(query, (songid, albumid, track, title, duration))
-
+ if v.KODIVERSION < 18:
+ # Link song to album
+ query = '''
+ INSERT OR REPLACE INTO albuminfosong(
+ idAlbumInfoSong, idAlbumInfo, iTrack, strTitle, iDuration)
+ VALUES (?, ?, ?, ?, ?)
+ '''
+ kodicursor.execute(query, (songid, albumid, track, title, duration))
# Link song to artists
artist_loop = [{
'Name': api.grandparent_title(),
diff --git a/resources/lib/kodidb_functions.py b/resources/lib/kodidb_functions.py
index e53a41f1..7560458a 100644
--- a/resources/lib/kodidb_functions.py
+++ b/resources/lib/kodidb_functions.py
@@ -869,28 +869,20 @@ class KodiDBMethods(object):
return seasonid
def addArtist(self, name, musicbrainz):
-
- query = ' '.join((
-
- "SELECT idArtist, strArtist",
- "FROM artist",
- "WHERE strMusicBrainzArtistID = ?"
- ))
+ query = '''
+ SELECT idArtist, strArtist
+ FROM artist
+ WHERE strMusicBrainzArtistID = ?
+ '''
self.cursor.execute(query, (musicbrainz,))
try:
result = self.cursor.fetchone()
artistid = result[0]
artistname = result[1]
-
except TypeError:
-
- query = ' '.join((
-
- "SELECT idArtist",
- "FROM artist",
- "WHERE strArtist = ?",
- "COLLATE NOCASE"
- ))
+ query = '''
+ SELECT idArtist FROM artist WHERE strArtist = ? COLLATE NOCASE
+ '''
self.cursor.execute(query, (name,))
try:
artistid = self.cursor.fetchone()[0]
@@ -899,113 +891,87 @@ class KodiDBMethods(object):
# [Missing Tag] strMusicBrainzArtistID: Artist Tag Missing
if v.KODIVERSION >= 17:
self.cursor.execute(
- "select coalesce(max(idArtist),1) from artist")
+ "SELECT COALESCE(MAX(idArtist),1) FROM artist")
else:
self.cursor.execute(
- "select coalesce(max(idArtist),0) from artist")
+ "SELECT COALESCE(MAX(idArtist),0) FROM artist")
artistid = self.cursor.fetchone()[0] + 1
- query = (
- '''
- INSERT INTO artist(idArtist, strArtist, strMusicBrainzArtistID)
-
+ query = '''
+ INSERT INTO artist(idArtist, strArtist,
+ strMusicBrainzArtistID)
VALUES (?, ?, ?)
- '''
- )
+ '''
self.cursor.execute(query, (artistid, name, musicbrainz))
else:
if artistname != name:
query = "UPDATE artist SET strArtist = ? WHERE idArtist = ?"
self.cursor.execute(query, (name, artistid,))
-
return artistid
def addAlbum(self, name, musicbrainz):
-
- query = ' '.join((
-
- "SELECT idAlbum",
- "FROM album",
- "WHERE strMusicBrainzAlbumID = ?"
- ))
+ query = 'SELECT idAlbum FROM album WHERE strMusicBrainzAlbumID = ?'
self.cursor.execute(query, (musicbrainz,))
try:
albumid = self.cursor.fetchone()[0]
except TypeError:
# Create the album
- self.cursor.execute("select coalesce(max(idAlbum),0) from album")
+ self.cursor.execute('SELECT COALESCE(MAX(idAlbum),0) FROM album')
albumid = self.cursor.fetchone()[0] + 1
- query = (
- '''
- INSERT INTO album(idAlbum, strAlbum, strMusicBrainzAlbumID, strReleaseType)
-
+ query = '''
+ INSERT INTO album(idAlbum, strAlbum, strMusicBrainzAlbumID,
+ strReleaseType)
VALUES (?, ?, ?, ?)
- '''
- )
- self.cursor.execute(query, (albumid, name, musicbrainz, "album"))
+ '''
+ self.cursor.execute(query, (albumid, name, musicbrainz, 'album'))
return albumid
def addMusicGenres(self, kodiid, genres, mediatype):
-
if mediatype == "album":
-
# Delete current genres for clean slate
- query = ' '.join((
-
- "DELETE FROM album_genre",
- "WHERE idAlbum = ?"
- ))
+ query = 'DELETE FROM album_genre WHERE idAlbum = ?'
self.cursor.execute(query, (kodiid,))
-
for genre in genres:
- query = ' '.join((
-
- "SELECT idGenre",
- "FROM genre",
- "WHERE strGenre = ?",
- "COLLATE NOCASE"
- ))
+ query = '''
+ SELECT idGenre FROM genre WHERE strGenre = ? COLLATE NOCASE
+ '''
self.cursor.execute(query, (genre,))
try:
genreid = self.cursor.fetchone()[0]
except TypeError:
# Create the genre
- self.cursor.execute("select coalesce(max(idGenre),0) from genre")
+ query = 'SELECT COALESCE(MAX(idGenre),0) FROM genre'
+ self.cursor.execute(query)
genreid = self.cursor.fetchone()[0] + 1
- query = "INSERT INTO genre(idGenre, strGenre) values(?, ?)"
+ query = 'INSERT INTO genre(idGenre, strGenre) VALUES(?, ?)'
self.cursor.execute(query, (genreid, genre))
-
- query = "INSERT OR REPLACE INTO album_genre(idGenre, idAlbum) values(?, ?)"
+ query = '''
+ INSERT OR REPLACE INTO album_genre(idGenre, idAlbum)
+ VALUES (?, ?)
+ '''
self.cursor.execute(query, (genreid, kodiid))
-
elif mediatype == "song":
-
# Delete current genres for clean slate
- query = ' '.join((
-
- "DELETE FROM song_genre",
- "WHERE idSong = ?"
- ))
+ query = 'DELETE FROM song_genre WHERE idSong = ?'
self.cursor.execute(query, (kodiid,))
-
for genre in genres:
- query = ' '.join((
-
- "SELECT idGenre",
- "FROM genre",
- "WHERE strGenre = ?",
- "COLLATE NOCASE"
- ))
+ query = '''
+ SELECT idGenre FROM genre WHERE strGenre = ?
+ COLLATE NOCASE
+ '''
self.cursor.execute(query, (genre,))
try:
genreid = self.cursor.fetchone()[0]
except TypeError:
# Create the genre
- self.cursor.execute("select coalesce(max(idGenre),0) from genre")
+ query = 'SELECT COALESCE(MAX(idGenre),0) FROM genre'
+ self.cursor.execute(query)
genreid = self.cursor.fetchone()[0] + 1
- query = "INSERT INTO genre(idGenre, strGenre) values(?, ?)"
+ query = 'INSERT INTO genre(idGenre, strGenre) values(?, ?)'
self.cursor.execute(query, (genreid, genre))
-
- query = "INSERT OR REPLACE INTO song_genre(idGenre, idSong) values(?, ?)"
+ query = '''
+ INSERT OR REPLACE INTO song_genre(idGenre, idSong)
+ VALUES (?, ?)
+ '''
self.cursor.execute(query, (genreid, kodiid))
# Krypton only stuff ##############################
diff --git a/resources/lib/variables.py b/resources/lib/variables.py
index ed70569c..5ba38cc3 100644
--- a/resources/lib/variables.py
+++ b/resources/lib/variables.py
@@ -85,7 +85,7 @@ _DB_VIDEO_VERSION = {
15: 93, # Isengard
16: 99, # Jarvis
17: 107, # Krypton
- 18: 108 # Leia
+ 18: 109 # Leia
}
DB_VIDEO_PATH = try_decode(xbmc.translatePath(
"special://database/MyVideos%s.db" % _DB_VIDEO_VERSION[KODIVERSION]))
@@ -96,7 +96,7 @@ _DB_MUSIC_VERSION = {
15: 52, # Isengard
16: 56, # Jarvis
17: 60, # Krypton
- 18: 62 # Leia
+ 18: 70 # Leia
}
DB_MUSIC_PATH = try_decode(xbmc.translatePath(
"special://database/MyMusic%s.db" % _DB_MUSIC_VERSION[KODIVERSION]))
diff --git a/resources/settings.xml b/resources/settings.xml
index cca16fda..fea2ad2d 100644
--- a/resources/settings.xml
+++ b/resources/settings.xml
@@ -74,11 +74,7 @@
-
-
-
-
@@ -136,7 +132,6 @@
-
@@ -161,7 +156,6 @@
-