diff --git a/Emby.Dlna/Didl/DidlBuilder.cs b/Emby.Dlna/Didl/DidlBuilder.cs index c6c213a48b..be76e58163 100644 --- a/Emby.Dlna/Didl/DidlBuilder.cs +++ b/Emby.Dlna/Didl/DidlBuilder.cs @@ -1071,8 +1071,10 @@ namespace Emby.Dlna.Didl writer.WriteStartElement(string.Empty, "res", NS_DIDL); - var width = albumartUrlInfo.Width; - var height = albumartUrlInfo.Height; + // Images must have a reported size or many clients (Bubble upnp), will only use the first thumbnail + // rather than using a larger one when available + var width = albumartUrlInfo.Width ?? maxWidth; + var height = albumartUrlInfo.Height ?? maxHeight; var contentFeatures = new ContentFeatureBuilder(_profile) .BuildImageHeader(format, width, height, imageInfo.IsDirectStream, org_Pn); @@ -1083,10 +1085,7 @@ namespace Emby.Dlna.Didl contentFeatures )); - if (width.HasValue && height.HasValue) - { - writer.WriteAttributeString("resolution", string.Format("{0}x{1}", width.Value, height.Value)); - } + writer.WriteAttributeString("resolution", string.Format("{0}x{1}", width, height)); writer.WriteString(albumartUrlInfo.Url); diff --git a/Emby.Server.Implementations/ApplicationHost.cs b/Emby.Server.Implementations/ApplicationHost.cs index 91493cf53c..c1ab9ec222 100644 --- a/Emby.Server.Implementations/ApplicationHost.cs +++ b/Emby.Server.Implementations/ApplicationHost.cs @@ -775,7 +775,14 @@ namespace Emby.Server.Implementations } // Put the app config in the log for troubleshooting purposes - Logger.LogMultiline("Application configuration:", LogSeverity.Info, new StringBuilder(JsonSerializer.SerializeToString(ConfigurationManager.CommonConfiguration))); + var configJson = new StringBuilder(JsonSerializer.SerializeToString(ConfigurationManager.CommonConfiguration)); + + if (!string.IsNullOrWhiteSpace(ServerConfigurationManager.Configuration.CertificatePassword)) + { + configJson = configJson.Replace(ServerConfigurationManager.Configuration.CertificatePassword, "####"); + } + + Logger.LogMultiline("Application configuration:", LogSeverity.Info, configJson); if (Plugins != null) { diff --git a/Emby.Server.Implementations/HttpServer/Security/AuthorizationContext.cs b/Emby.Server.Implementations/HttpServer/Security/AuthorizationContext.cs index c9d5ed0071..a41c51d1a8 100644 --- a/Emby.Server.Implementations/HttpServer/Security/AuthorizationContext.cs +++ b/Emby.Server.Implementations/HttpServer/Security/AuthorizationContext.cs @@ -5,6 +5,7 @@ using System; using System.Collections.Generic; using MediaBrowser.Model.Services; using System.Linq; +using System.Threading; namespace Emby.Server.Implementations.HttpServer.Security { @@ -95,23 +96,44 @@ namespace Emby.Server.Implementations.HttpServer.Security { info.UserId = tokenInfo.UserId; + var updateToken = false; + // TODO: Remove these checks for IsNullOrWhiteSpace if (string.IsNullOrWhiteSpace(info.Client)) { info.Client = tokenInfo.AppName; } + + if (string.IsNullOrWhiteSpace(info.DeviceId)) + { + info.DeviceId = tokenInfo.DeviceId; + } + + if (string.IsNullOrWhiteSpace(info.Device)) { info.Device = tokenInfo.DeviceName; } - if (string.IsNullOrWhiteSpace(info.DeviceId)) + else if (!string.Equals(info.Device, tokenInfo.DeviceName, StringComparison.OrdinalIgnoreCase)) { - info.DeviceId = tokenInfo.DeviceId; + updateToken = true; + tokenInfo.DeviceName = info.Device; } + if (string.IsNullOrWhiteSpace(info.Version)) { info.Version = tokenInfo.AppVersion; } + else if (!string.Equals(info.Version, tokenInfo.AppVersion, StringComparison.OrdinalIgnoreCase)) + { + updateToken = true; + tokenInfo.AppVersion = info.Version; + } + + if (updateToken) + { + _authRepo.Update(tokenInfo, CancellationToken.None); + } } else { diff --git a/Emby.Server.Implementations/HttpServer/Security/SessionContext.cs b/Emby.Server.Implementations/HttpServer/Security/SessionContext.cs index dd5d64bf65..9826a0d564 100644 --- a/Emby.Server.Implementations/HttpServer/Security/SessionContext.cs +++ b/Emby.Server.Implementations/HttpServer/Security/SessionContext.cs @@ -25,15 +25,6 @@ namespace Emby.Server.Implementations.HttpServer.Security { var authorization = _authContext.GetAuthorizationInfo(requestContext); - //if (!string.IsNullOrWhiteSpace(authorization.Token)) - //{ - // var auth = GetTokenInfo(requestContext); - // if (auth != null) - // { - // return _sessionManager.GetSessionByAuthenticationToken(auth, authorization.DeviceId, requestContext.RemoteIp, authorization.Version); - // } - //} - var user = string.IsNullOrWhiteSpace(authorization.UserId) ? null : _userManager.GetUserById(authorization.UserId); return _sessionManager.LogSessionActivity(authorization.Client, authorization.Version, authorization.DeviceId, authorization.Device, requestContext.RemoteIp, user); } diff --git a/Emby.Server.Implementations/Library/UserViewManager.cs b/Emby.Server.Implementations/Library/UserViewManager.cs index dd478dee0f..e97bf11c3b 100644 --- a/Emby.Server.Implementations/Library/UserViewManager.cs +++ b/Emby.Server.Implementations/Library/UserViewManager.cs @@ -96,7 +96,7 @@ namespace Emby.Server.Implementations.Library if (parents.Count > 0) { var localizationKey = string.Equals(viewType, CollectionType.TvShows, StringComparison.OrdinalIgnoreCase) ? - "Shows" : + "TvShows" : "Movies"; list.Add(GetUserView(parents, viewType, localizationKey, string.Empty, user, query.PresetViews, cancellationToken)); diff --git a/Emby.Server.Implementations/Localization/Core/ar.json b/Emby.Server.Implementations/Localization/Core/ar.json index 0bc7490d35..0c2ab1f6d8 100644 --- a/Emby.Server.Implementations/Localization/Core/ar.json +++ b/Emby.Server.Implementations/Localization/Core/ar.json @@ -27,6 +27,7 @@ "Artists": "\u0627\u0644\u0641\u0646\u0627\u0646\u0648\u0646", "Folders": "\u0627\u0644\u0645\u062c\u0644\u062f\u0627\u062a", "Songs": "\u0627\u0644\u0623\u063a\u0627\u0646\u064a", + "TvShows": "TV Shows", "Shows": "Shows", "Genres": "\u0623\u0646\u0648\u0627\u0639 \u0627\u0644\u0623\u0641\u0644\u0627\u0645", "NameSeasonNumber": "\u0627\u0644\u0645\u0648\u0633\u0645 {0}", diff --git a/Emby.Server.Implementations/Localization/Core/bg-BG.json b/Emby.Server.Implementations/Localization/Core/bg-BG.json index 91870578ba..40899caabf 100644 --- a/Emby.Server.Implementations/Localization/Core/bg-BG.json +++ b/Emby.Server.Implementations/Localization/Core/bg-BG.json @@ -27,6 +27,7 @@ "Artists": "\u0418\u0437\u043f\u044a\u043b\u043d\u0438\u0442\u0435\u043b\u0438", "Folders": "\u041f\u0430\u043f\u043a\u0438", "Songs": "\u041f\u0435\u0441\u043d\u0438", + "TvShows": "TV Shows", "Shows": "\u0421\u0435\u0440\u0438\u0430\u043b\u0438", "Genres": "\u0416\u0430\u043d\u0440\u043e\u0432\u0435", "NameSeasonNumber": "\u0421\u0435\u0437\u043e\u043d {0}", diff --git a/Emby.Server.Implementations/Localization/Core/ca.json b/Emby.Server.Implementations/Localization/Core/ca.json index 829369df54..cc2c00234f 100644 --- a/Emby.Server.Implementations/Localization/Core/ca.json +++ b/Emby.Server.Implementations/Localization/Core/ca.json @@ -27,6 +27,7 @@ "Artists": "Artists", "Folders": "Folders", "Songs": "Songs", + "TvShows": "TV Shows", "Shows": "Shows", "Genres": "G\u00e8neres", "NameSeasonNumber": "Season {0}", diff --git a/Emby.Server.Implementations/Localization/Core/cs.json b/Emby.Server.Implementations/Localization/Core/cs.json index 68dad0e468..abbfde3800 100644 --- a/Emby.Server.Implementations/Localization/Core/cs.json +++ b/Emby.Server.Implementations/Localization/Core/cs.json @@ -27,6 +27,7 @@ "Artists": "Um\u011blci", "Folders": "Slo\u017eky", "Songs": "Skladby", + "TvShows": "TV Shows", "Shows": "Seri\u00e1ly", "Genres": "\u017d\u00e1nry", "NameSeasonNumber": "Sez\u00f3na {0}", diff --git a/Emby.Server.Implementations/Localization/Core/da.json b/Emby.Server.Implementations/Localization/Core/da.json index f7a727d1ae..ed9652c33d 100644 --- a/Emby.Server.Implementations/Localization/Core/da.json +++ b/Emby.Server.Implementations/Localization/Core/da.json @@ -27,6 +27,7 @@ "Artists": "Kunstner", "Folders": "Mapper", "Songs": "Sange", + "TvShows": "TV Shows", "Shows": "Shows", "Genres": "Genre", "NameSeasonNumber": "S\u00e6son {0}", diff --git a/Emby.Server.Implementations/Localization/Core/de.json b/Emby.Server.Implementations/Localization/Core/de.json index dad7dc6226..183b4aaf8a 100644 --- a/Emby.Server.Implementations/Localization/Core/de.json +++ b/Emby.Server.Implementations/Localization/Core/de.json @@ -27,6 +27,7 @@ "Artists": "Interpreten", "Folders": "Verzeichnisse", "Songs": "Songs", + "TvShows": "TV Shows", "Shows": "Serien", "Genres": "Genres", "NameSeasonNumber": "Staffel {0}", diff --git a/Emby.Server.Implementations/Localization/Core/en-GB.json b/Emby.Server.Implementations/Localization/Core/en-GB.json index ebd240e35c..8dc9abf012 100644 --- a/Emby.Server.Implementations/Localization/Core/en-GB.json +++ b/Emby.Server.Implementations/Localization/Core/en-GB.json @@ -27,6 +27,7 @@ "Artists": "Artists", "Folders": "Folders", "Songs": "Songs", + "TvShows": "TV Shows", "Shows": "Shows", "Genres": "Genres", "NameSeasonNumber": "Season {0}", diff --git a/Emby.Server.Implementations/Localization/Core/en-US.json b/Emby.Server.Implementations/Localization/Core/en-US.json index d24e244df2..51bbf341fe 100644 --- a/Emby.Server.Implementations/Localization/Core/en-US.json +++ b/Emby.Server.Implementations/Localization/Core/en-US.json @@ -1,95 +1,96 @@ { - "Latest": "Latest", - "ValueSpecialEpisodeName": "Special - {0}", - "Inherit": "Inherit", - "Books": "Books", - "Music": "Music", - "Games": "Games", - "Photos": "Photos", - "MixedContent": "Mixed content", - "MusicVideos": "Music videos", - "HomeVideos": "Home videos", - "Playlists": "Playlists", - "HeaderRecordingGroups": "Recording Groups", - "HeaderContinueWatching": "Continue Watching", - "HeaderFavoriteArtists": "Favorite Artists", - "HeaderFavoriteSongs": "Favorite Songs", - "HeaderAlbumArtists": "Album Artists", - "HeaderFavoriteAlbums": "Favorite Albums", - "HeaderFavoriteEpisodes": "Favorite Episodes", - "HeaderFavoriteShows": "Favorite Shows", - "HeaderNextUp": "Next Up", - "Favorites": "Favorites", - "Collections": "Collections", - "Channels": "Channels", - "Movies": "Movies", - "Albums": "Albums", - "Artists": "Artists", - "Folders": "Folders", - "Songs": "Songs", - "Shows": "Shows", - "Genres": "Genres", - "NameSeasonNumber": "Season {0}", - "AppDeviceValues": "App: {0}, Device: {1}", - "UserDownloadingItemWithValues": "{0} is downloading {1}", - "HeaderLiveTV": "Live TV", - "ChapterNameValue": "Chapter {0}", - "ScheduledTaskFailedWithName": "{0} failed", - "LabelRunningTimeValue": "Running time: {0}", - "ScheduledTaskStartedWithName": "{0} started", - "VersionNumber": "Version {0}", - "PluginInstalledWithName": "{0} was installed", - "StartupEmbyServerIsLoading": "Emby Server is loading. Please try again shortly.", - "PluginUpdatedWithName": "{0} was updated", - "PluginUninstalledWithName": "{0} was uninstalled", - "ItemAddedWithName": "{0} was added to the library", - "ItemRemovedWithName": "{0} was removed from the library", - "LabelIpAddressValue": "Ip address: {0}", - "DeviceOnlineWithName": "{0} is connected", - "UserOnlineFromDevice": "{0} is online from {1}", - "ProviderValue": "Provider: {0}", - "SubtitlesDownloadedForItem": "Subtitles downloaded for {0}", - "UserCreatedWithName": "User {0} has been created", - "UserPasswordChangedWithName": "Password has been changed for user {0}", - "UserDeletedWithName": "User {0} has been deleted", - "UserConfigurationUpdatedWithName": "User configuration has been updated for {0}", - "MessageServerConfigurationUpdated": "Server configuration has been updated", - "MessageNamedServerConfigurationUpdatedWithValue": "Server configuration section {0} has been updated", - "MessageApplicationUpdated": "Emby Server has been updated", - "FailedLoginAttemptWithUserName": "Failed login attempt from {0}", - "AuthenticationSucceededWithUserName": "{0} successfully authenticated", - "UserOfflineFromDevice": "{0} has disconnected from {1}", - "DeviceOfflineWithName": "{0} has disconnected", - "UserStartedPlayingItemWithValues": "{0} has started playing {1}", - "UserStoppedPlayingItemWithValues": "{0} has stopped playing {1}", - "NotificationOptionPluginError": "Plugin failure", - "NotificationOptionApplicationUpdateAvailable": "Application update available", - "NotificationOptionApplicationUpdateInstalled": "Application update installed", - "NotificationOptionPluginUpdateInstalled": "Plugin update installed", - "NotificationOptionPluginInstalled": "Plugin installed", - "NotificationOptionPluginUninstalled": "Plugin uninstalled", - "NotificationOptionVideoPlayback": "Video playback started", - "NotificationOptionAudioPlayback": "Audio playback started", - "NotificationOptionGamePlayback": "Game playback started", - "NotificationOptionVideoPlaybackStopped": "Video playback stopped", - "NotificationOptionAudioPlaybackStopped": "Audio playback stopped", - "NotificationOptionGamePlaybackStopped": "Game playback stopped", - "NotificationOptionTaskFailed": "Scheduled task failure", - "NotificationOptionInstallationFailed": "Installation failure", - "NotificationOptionNewLibraryContent": "New content added", - "NotificationOptionCameraImageUploaded": "Camera image uploaded", - "NotificationOptionUserLockedOut": "User locked out", - "NotificationOptionServerRestartRequired": "Server restart required", - "UserLockedOutWithName": "User {0} has been locked out", - "SubtitleDownloadFailureForItem": "Subtitles failed to download for {0}", - "Sync": "Sync", - "User": "User", - "System": "System", - "Application": "Application", - "Plugin": "Plugin", - "LabelExit": "Exit", - "LabelVisitCommunity": "Visit Community", - "LabelBrowseLibrary": "Browse Library", - "LabelConfigureServer": "Configure Emby", - "LabelRestartServer": "Restart Server" + "Latest": "Latest", + "ValueSpecialEpisodeName": "Special - {0}", + "Inherit": "Inherit", + "Books": "Books", + "Music": "Music", + "Games": "Games", + "Photos": "Photos", + "MixedContent": "Mixed content", + "MusicVideos": "Music videos", + "HomeVideos": "Home videos", + "Playlists": "Playlists", + "HeaderRecordingGroups": "Recording Groups", + "HeaderContinueWatching": "Continue Watching", + "HeaderFavoriteArtists": "Favorite Artists", + "HeaderFavoriteSongs": "Favorite Songs", + "HeaderAlbumArtists": "Album Artists", + "HeaderFavoriteAlbums": "Favorite Albums", + "HeaderFavoriteEpisodes": "Favorite Episodes", + "HeaderFavoriteShows": "Favorite Shows", + "HeaderNextUp": "Next Up", + "Favorites": "Favorites", + "Collections": "Collections", + "Channels": "Channels", + "Movies": "Movies", + "Albums": "Albums", + "Artists": "Artists", + "Folders": "Folders", + "Songs": "Songs", + "TvShows": "TV Shows", + "Shows": "Shows", + "Genres": "Genres", + "NameSeasonNumber": "Season {0}", + "AppDeviceValues": "App: {0}, Device: {1}", + "UserDownloadingItemWithValues": "{0} is downloading {1}", + "HeaderLiveTV": "Live TV", + "ChapterNameValue": "Chapter {0}", + "ScheduledTaskFailedWithName": "{0} failed", + "LabelRunningTimeValue": "Running time: {0}", + "ScheduledTaskStartedWithName": "{0} started", + "VersionNumber": "Version {0}", + "PluginInstalledWithName": "{0} was installed", + "StartupEmbyServerIsLoading": "Emby Server is loading. Please try again shortly.", + "PluginUpdatedWithName": "{0} was updated", + "PluginUninstalledWithName": "{0} was uninstalled", + "ItemAddedWithName": "{0} was added to the library", + "ItemRemovedWithName": "{0} was removed from the library", + "LabelIpAddressValue": "Ip address: {0}", + "DeviceOnlineWithName": "{0} is connected", + "UserOnlineFromDevice": "{0} is online from {1}", + "ProviderValue": "Provider: {0}", + "SubtitlesDownloadedForItem": "Subtitles downloaded for {0}", + "UserCreatedWithName": "User {0} has been created", + "UserPasswordChangedWithName": "Password has been changed for user {0}", + "UserDeletedWithName": "User {0} has been deleted", + "UserConfigurationUpdatedWithName": "User configuration has been updated for {0}", + "MessageServerConfigurationUpdated": "Server configuration has been updated", + "MessageNamedServerConfigurationUpdatedWithValue": "Server configuration section {0} has been updated", + "MessageApplicationUpdated": "Emby Server has been updated", + "FailedLoginAttemptWithUserName": "Failed login attempt from {0}", + "AuthenticationSucceededWithUserName": "{0} successfully authenticated", + "UserOfflineFromDevice": "{0} has disconnected from {1}", + "DeviceOfflineWithName": "{0} has disconnected", + "UserStartedPlayingItemWithValues": "{0} has started playing {1}", + "UserStoppedPlayingItemWithValues": "{0} has stopped playing {1}", + "NotificationOptionPluginError": "Plugin failure", + "NotificationOptionApplicationUpdateAvailable": "Application update available", + "NotificationOptionApplicationUpdateInstalled": "Application update installed", + "NotificationOptionPluginUpdateInstalled": "Plugin update installed", + "NotificationOptionPluginInstalled": "Plugin installed", + "NotificationOptionPluginUninstalled": "Plugin uninstalled", + "NotificationOptionVideoPlayback": "Video playback started", + "NotificationOptionAudioPlayback": "Audio playback started", + "NotificationOptionGamePlayback": "Game playback started", + "NotificationOptionVideoPlaybackStopped": "Video playback stopped", + "NotificationOptionAudioPlaybackStopped": "Audio playback stopped", + "NotificationOptionGamePlaybackStopped": "Game playback stopped", + "NotificationOptionTaskFailed": "Scheduled task failure", + "NotificationOptionInstallationFailed": "Installation failure", + "NotificationOptionNewLibraryContent": "New content added", + "NotificationOptionCameraImageUploaded": "Camera image uploaded", + "NotificationOptionUserLockedOut": "User locked out", + "NotificationOptionServerRestartRequired": "Server restart required", + "UserLockedOutWithName": "User {0} has been locked out", + "SubtitleDownloadFailureForItem": "Subtitles failed to download for {0}", + "Sync": "Sync", + "User": "User", + "System": "System", + "Application": "Application", + "Plugin": "Plugin", + "LabelExit": "Exit", + "LabelVisitCommunity": "Visit Community", + "LabelBrowseLibrary": "Browse Library", + "LabelConfigureServer": "Configure Emby", + "LabelRestartServer": "Restart Server" } \ No newline at end of file diff --git a/Emby.Server.Implementations/Localization/Core/es-AR.json b/Emby.Server.Implementations/Localization/Core/es-AR.json index 426e292d66..e4a49abf64 100644 --- a/Emby.Server.Implementations/Localization/Core/es-AR.json +++ b/Emby.Server.Implementations/Localization/Core/es-AR.json @@ -27,6 +27,7 @@ "Artists": "Artists", "Folders": "Folders", "Songs": "Songs", + "TvShows": "TV Shows", "Shows": "Series", "Genres": "Genres", "NameSeasonNumber": "Season {0}", diff --git a/Emby.Server.Implementations/Localization/Core/es-MX.json b/Emby.Server.Implementations/Localization/Core/es-MX.json index a31b55f673..45cc2c69b2 100644 --- a/Emby.Server.Implementations/Localization/Core/es-MX.json +++ b/Emby.Server.Implementations/Localization/Core/es-MX.json @@ -27,6 +27,7 @@ "Artists": "Artistas", "Folders": "Carpetas", "Songs": "Canciones", + "TvShows": "TV Shows", "Shows": "Programas", "Genres": "G\u00e9neros", "NameSeasonNumber": "Temporada {0}", diff --git a/Emby.Server.Implementations/Localization/Core/es.json b/Emby.Server.Implementations/Localization/Core/es.json index dd2569ddb0..68975d6322 100644 --- a/Emby.Server.Implementations/Localization/Core/es.json +++ b/Emby.Server.Implementations/Localization/Core/es.json @@ -27,6 +27,7 @@ "Artists": "Artistas", "Folders": "Carpetas", "Songs": "Canciones", + "TvShows": "TV Shows", "Shows": "Series", "Genres": "G\u00e9neros", "NameSeasonNumber": "Temporada {0}", diff --git a/Emby.Server.Implementations/Localization/Core/fr-CA.json b/Emby.Server.Implementations/Localization/Core/fr-CA.json index c63948e319..795bc98cc5 100644 --- a/Emby.Server.Implementations/Localization/Core/fr-CA.json +++ b/Emby.Server.Implementations/Localization/Core/fr-CA.json @@ -27,6 +27,7 @@ "Artists": "Artists", "Folders": "Folders", "Songs": "Songs", + "TvShows": "TV Shows", "Shows": "Series", "Genres": "Genres", "NameSeasonNumber": "Season {0}", diff --git a/Emby.Server.Implementations/Localization/Core/fr.json b/Emby.Server.Implementations/Localization/Core/fr.json index 79fa8e1f8c..5ea01fcdbb 100644 --- a/Emby.Server.Implementations/Localization/Core/fr.json +++ b/Emby.Server.Implementations/Localization/Core/fr.json @@ -27,6 +27,7 @@ "Artists": "Artistes", "Folders": "Dossiers", "Songs": "Chansons", + "TvShows": "TV Shows", "Shows": "\u00c9missions", "Genres": "Genres", "NameSeasonNumber": "Saison {0}", diff --git a/Emby.Server.Implementations/Localization/Core/he.json b/Emby.Server.Implementations/Localization/Core/he.json index c934af48f8..f287dc4222 100644 --- a/Emby.Server.Implementations/Localization/Core/he.json +++ b/Emby.Server.Implementations/Localization/Core/he.json @@ -27,6 +27,7 @@ "Artists": "Artists", "Folders": "Folders", "Songs": "Songs", + "TvShows": "TV Shows", "Shows": "Shows", "Genres": "\u05d6'\u05d0\u05e0\u05e8\u05d9\u05dd", "NameSeasonNumber": "Season {0}", diff --git a/Emby.Server.Implementations/Localization/Core/hr.json b/Emby.Server.Implementations/Localization/Core/hr.json index 8d6d95fd8c..143e3ab820 100644 --- a/Emby.Server.Implementations/Localization/Core/hr.json +++ b/Emby.Server.Implementations/Localization/Core/hr.json @@ -27,6 +27,7 @@ "Artists": "Izvo\u0111a\u010di", "Folders": "Mape", "Songs": "Pjesme", + "TvShows": "TV Shows", "Shows": "Shows", "Genres": "\u017danrovi", "NameSeasonNumber": "Sezona {0}", diff --git a/Emby.Server.Implementations/Localization/Core/hu.json b/Emby.Server.Implementations/Localization/Core/hu.json index 3dd9b4347a..80160966ff 100644 --- a/Emby.Server.Implementations/Localization/Core/hu.json +++ b/Emby.Server.Implementations/Localization/Core/hu.json @@ -27,6 +27,7 @@ "Artists": "Artists", "Folders": "Folders", "Songs": "Songs", + "TvShows": "TV Shows", "Shows": "Shows", "Genres": "M\u0171fajok", "NameSeasonNumber": "Season {0}", diff --git a/Emby.Server.Implementations/Localization/Core/it.json b/Emby.Server.Implementations/Localization/Core/it.json index 7c21d27131..4ff0d98d83 100644 --- a/Emby.Server.Implementations/Localization/Core/it.json +++ b/Emby.Server.Implementations/Localization/Core/it.json @@ -27,6 +27,7 @@ "Artists": "Artisti", "Folders": "Cartelle", "Songs": "Canzoni", + "TvShows": "TV Shows", "Shows": "Programmi", "Genres": "Generi", "NameSeasonNumber": "Stagione {0}", diff --git a/Emby.Server.Implementations/Localization/Core/kk.json b/Emby.Server.Implementations/Localization/Core/kk.json index 73647ea12c..e996235575 100644 --- a/Emby.Server.Implementations/Localization/Core/kk.json +++ b/Emby.Server.Implementations/Localization/Core/kk.json @@ -27,6 +27,7 @@ "Artists": "\u041e\u0440\u044b\u043d\u0434\u0430\u0443\u0448\u044b\u043b\u0430\u0440", "Folders": "\u049a\u0430\u043b\u0442\u0430\u043b\u0430\u0440", "Songs": "\u04d8\u0443\u0435\u043d\u0434\u0435\u0440", + "TvShows": "TV Shows", "Shows": "\u041a\u04e9\u0440\u0441\u0435\u0442\u0456\u043c\u0434\u0435\u0440", "Genres": "\u0416\u0430\u043d\u0440\u043b\u0430\u0440", "NameSeasonNumber": "{0}-\u043c\u0430\u0443\u0441\u044b\u043c", diff --git a/Emby.Server.Implementations/Localization/Core/ko.json b/Emby.Server.Implementations/Localization/Core/ko.json index bd2909efb1..6c5ed0260a 100644 --- a/Emby.Server.Implementations/Localization/Core/ko.json +++ b/Emby.Server.Implementations/Localization/Core/ko.json @@ -27,6 +27,7 @@ "Artists": "Artists", "Folders": "Folders", "Songs": "Songs", + "TvShows": "TV Shows", "Shows": "Shows", "Genres": "Genres", "NameSeasonNumber": "Season {0}", diff --git a/Emby.Server.Implementations/Localization/Core/lt-LT.json b/Emby.Server.Implementations/Localization/Core/lt-LT.json index 51b962c650..21ed36d7c6 100644 --- a/Emby.Server.Implementations/Localization/Core/lt-LT.json +++ b/Emby.Server.Implementations/Localization/Core/lt-LT.json @@ -27,6 +27,7 @@ "Artists": "Artists", "Folders": "Folders", "Songs": "Songs", + "TvShows": "TV Shows", "Shows": "Shows", "Genres": "\u017danrai", "NameSeasonNumber": "Season {0}", diff --git a/Emby.Server.Implementations/Localization/Core/ms.json b/Emby.Server.Implementations/Localization/Core/ms.json index 426e292d66..e4a49abf64 100644 --- a/Emby.Server.Implementations/Localization/Core/ms.json +++ b/Emby.Server.Implementations/Localization/Core/ms.json @@ -27,6 +27,7 @@ "Artists": "Artists", "Folders": "Folders", "Songs": "Songs", + "TvShows": "TV Shows", "Shows": "Series", "Genres": "Genres", "NameSeasonNumber": "Season {0}", diff --git a/Emby.Server.Implementations/Localization/Core/nb.json b/Emby.Server.Implementations/Localization/Core/nb.json index c422d21777..d0482315d8 100644 --- a/Emby.Server.Implementations/Localization/Core/nb.json +++ b/Emby.Server.Implementations/Localization/Core/nb.json @@ -27,6 +27,7 @@ "Artists": "Artister", "Folders": "Mapper", "Songs": "Sanger", + "TvShows": "TV Shows", "Shows": "Programmer", "Genres": "Sjanger", "NameSeasonNumber": "Sesong {0}", diff --git a/Emby.Server.Implementations/Localization/Core/nl.json b/Emby.Server.Implementations/Localization/Core/nl.json index 37120f08cf..daba9bed5c 100644 --- a/Emby.Server.Implementations/Localization/Core/nl.json +++ b/Emby.Server.Implementations/Localization/Core/nl.json @@ -27,6 +27,7 @@ "Artists": "Artiesten", "Folders": "Mappen", "Songs": "Titels", + "TvShows": "TV Shows", "Shows": "Series", "Genres": "Genres", "NameSeasonNumber": "Seizoen {0}", diff --git a/Emby.Server.Implementations/Localization/Core/pl.json b/Emby.Server.Implementations/Localization/Core/pl.json index 363d0e792d..24ac0d973e 100644 --- a/Emby.Server.Implementations/Localization/Core/pl.json +++ b/Emby.Server.Implementations/Localization/Core/pl.json @@ -27,6 +27,7 @@ "Artists": "Wykonawcy", "Folders": "Foldery", "Songs": "Utwory", + "TvShows": "TV Shows", "Shows": "Seriale", "Genres": "Gatunki", "NameSeasonNumber": "Sezon {0}", diff --git a/Emby.Server.Implementations/Localization/Core/pt-BR.json b/Emby.Server.Implementations/Localization/Core/pt-BR.json index ffbc693c3b..196a6b78b3 100644 --- a/Emby.Server.Implementations/Localization/Core/pt-BR.json +++ b/Emby.Server.Implementations/Localization/Core/pt-BR.json @@ -27,6 +27,7 @@ "Artists": "Artistas", "Folders": "Pastas", "Songs": "M\u00fasicas", + "TvShows": "TV Shows", "Shows": "S\u00e9ries", "Genres": "G\u00eaneros", "NameSeasonNumber": "Temporada {0}", diff --git a/Emby.Server.Implementations/Localization/Core/pt-PT.json b/Emby.Server.Implementations/Localization/Core/pt-PT.json index bb221e6439..7a6b8f4195 100644 --- a/Emby.Server.Implementations/Localization/Core/pt-PT.json +++ b/Emby.Server.Implementations/Localization/Core/pt-PT.json @@ -27,6 +27,7 @@ "Artists": "Artists", "Folders": "Folders", "Songs": "Songs", + "TvShows": "TV Shows", "Shows": "Shows", "Genres": "Genres", "NameSeasonNumber": "Season {0}", diff --git a/Emby.Server.Implementations/Localization/Core/ru.json b/Emby.Server.Implementations/Localization/Core/ru.json index d9cd742737..f3a1cfb7b8 100644 --- a/Emby.Server.Implementations/Localization/Core/ru.json +++ b/Emby.Server.Implementations/Localization/Core/ru.json @@ -27,6 +27,7 @@ "Artists": "\u0418\u0441\u043f\u043e\u043b\u043d\u0438\u0442\u0435\u043b\u0438", "Folders": "\u041f\u0430\u043f\u043a\u0438", "Songs": "\u041a\u043e\u043c\u043f\u043e\u0437\u0438\u0446\u0438\u0438", + "TvShows": "TV Shows", "Shows": "\u041f\u0435\u0440\u0435\u0434\u0430\u0447\u0438", "Genres": "\u0416\u0430\u043d\u0440\u044b", "NameSeasonNumber": "\u0421\u0435\u0437\u043e\u043d {0}", diff --git a/Emby.Server.Implementations/Localization/Core/sk.json b/Emby.Server.Implementations/Localization/Core/sk.json index f69b7a436b..98f60e5e1d 100644 --- a/Emby.Server.Implementations/Localization/Core/sk.json +++ b/Emby.Server.Implementations/Localization/Core/sk.json @@ -27,6 +27,7 @@ "Artists": "Artists", "Folders": "Folders", "Songs": "Songs", + "TvShows": "TV Shows", "Shows": "Series", "Genres": "Genres", "NameSeasonNumber": "Season {0}", diff --git a/Emby.Server.Implementations/Localization/Core/sl-SI.json b/Emby.Server.Implementations/Localization/Core/sl-SI.json index d063cccc01..cb8e080e45 100644 --- a/Emby.Server.Implementations/Localization/Core/sl-SI.json +++ b/Emby.Server.Implementations/Localization/Core/sl-SI.json @@ -27,6 +27,7 @@ "Artists": "Artists", "Folders": "Folders", "Songs": "Songs", + "TvShows": "TV Shows", "Shows": "Serije", "Genres": "Genres", "NameSeasonNumber": "Season {0}", diff --git a/Emby.Server.Implementations/Localization/Core/sv.json b/Emby.Server.Implementations/Localization/Core/sv.json index e3ec363ce6..a038811837 100644 --- a/Emby.Server.Implementations/Localization/Core/sv.json +++ b/Emby.Server.Implementations/Localization/Core/sv.json @@ -27,6 +27,7 @@ "Artists": "Artister", "Folders": "Mappar", "Songs": "L\u00e5tar", + "TvShows": "TV Shows", "Shows": "Serier", "Genres": "Genrer", "NameSeasonNumber": "S\u00e4song {0}", diff --git a/Emby.Server.Implementations/Localization/Core/tr.json b/Emby.Server.Implementations/Localization/Core/tr.json index 3a5f84e099..a0a5151707 100644 --- a/Emby.Server.Implementations/Localization/Core/tr.json +++ b/Emby.Server.Implementations/Localization/Core/tr.json @@ -27,6 +27,7 @@ "Artists": "Artists", "Folders": "Folders", "Songs": "Songs", + "TvShows": "TV Shows", "Shows": "Shows", "Genres": "Genres", "NameSeasonNumber": "Season {0}", diff --git a/Emby.Server.Implementations/Localization/Core/zh-CN.json b/Emby.Server.Implementations/Localization/Core/zh-CN.json index 2eb6d89e84..42126ca1b6 100644 --- a/Emby.Server.Implementations/Localization/Core/zh-CN.json +++ b/Emby.Server.Implementations/Localization/Core/zh-CN.json @@ -27,6 +27,7 @@ "Artists": "\u827a\u672f\u5bb6", "Folders": "\u6587\u4ef6\u5939", "Songs": "\u6b4c\u66f2", + "TvShows": "TV Shows", "Shows": "\u8282\u76ee", "Genres": "\u98ce\u683c", "NameSeasonNumber": "\u5b63 {0}", diff --git a/Emby.Server.Implementations/Localization/Core/zh-HK.json b/Emby.Server.Implementations/Localization/Core/zh-HK.json index 4cd9268620..37afc47e61 100644 --- a/Emby.Server.Implementations/Localization/Core/zh-HK.json +++ b/Emby.Server.Implementations/Localization/Core/zh-HK.json @@ -27,6 +27,7 @@ "Artists": "Artists", "Folders": "Folders", "Songs": "Songs", + "TvShows": "TV Shows", "Shows": "Shows", "Genres": "Genres", "NameSeasonNumber": "Season {0}", diff --git a/SharedVersion.cs b/SharedVersion.cs index 6af624ee6e..92ae176b85 100644 --- a/SharedVersion.cs +++ b/SharedVersion.cs @@ -1,3 +1,3 @@ using System.Reflection; -[assembly: AssemblyVersion("3.2.33.11")] +[assembly: AssemblyVersion("3.2.33.12")] diff --git a/SocketHttpListener/Net/HttpConnection.cs b/SocketHttpListener/Net/HttpConnection.cs index 4e81589646..05576ea1e9 100644 --- a/SocketHttpListener/Net/HttpConnection.cs +++ b/SocketHttpListener/Net/HttpConnection.cs @@ -528,7 +528,13 @@ namespace SocketHttpListener.Net finally { if (s != null) - s.Close(); + { + try + { + s.Close(); + } + catch { } + } } Unbind(); RemoveConnection();