aboutsummaryrefslogtreecommitdiff
path: root/MediaBrowser.Api/ItemUpdateService.cs
diff options
context:
space:
mode:
Diffstat (limited to 'MediaBrowser.Api/ItemUpdateService.cs')
-rw-r--r--MediaBrowser.Api/ItemUpdateService.cs34
1 files changed, 31 insertions, 3 deletions
diff --git a/MediaBrowser.Api/ItemUpdateService.cs b/MediaBrowser.Api/ItemUpdateService.cs
index 90fe11129..4483b74f9 100644
--- a/MediaBrowser.Api/ItemUpdateService.cs
+++ b/MediaBrowser.Api/ItemUpdateService.cs
@@ -270,7 +270,12 @@ namespace MediaBrowser.Api
item.ParentIndexNumber = request.ParentIndexNumber;
item.Overview = request.Overview;
item.Genres = request.Genres;
- item.Tags = request.Tags;
+
+ var hasTags = item as IHasTags;
+ if (hasTags != null)
+ {
+ hasTags.Tags = request.Tags;
+ }
if (request.Studios != null)
{
@@ -290,11 +295,17 @@ namespace MediaBrowser.Api
item.EndDate = request.EndDate.HasValue ? request.EndDate.Value.ToUniversalTime() : (DateTime?)null;
item.PremiereDate = request.PremiereDate.HasValue ? request.PremiereDate.Value.ToUniversalTime() : (DateTime?)null;
item.ProductionYear = request.ProductionYear;
- item.ProductionLocations = request.ProductionLocations;
- item.Language = request.Language;
item.OfficialRating = request.OfficialRating;
item.CustomRating = request.CustomRating;
+ SetProductionLocations(item, request);
+
+ var hasLanguage = item as IHasLanguage;
+ if (hasLanguage != null)
+ {
+ hasLanguage.Language = request.Language;
+ }
+
var hasAspectRatio = item as IHasAspectRatio;
if (hasAspectRatio != null)
{
@@ -366,5 +377,22 @@ namespace MediaBrowser.Api
}
}
+ private void SetProductionLocations(BaseItem item, BaseItemDto request)
+ {
+ var hasProductionLocations = item as IHasProductionLocations;
+
+ if (hasProductionLocations != null)
+ {
+ hasProductionLocations.ProductionLocations = request.ProductionLocations;
+ }
+
+ var person = item as Person;
+ if (person != null)
+ {
+ person.PlaceOfBirth = request.ProductionLocations == null
+ ? null
+ : request.ProductionLocations.FirstOrDefault();
+ }
+ }
}
}