diff --git a/PlexRequests.UI/Helpers/ValidationHelper.cs b/PlexRequests.UI/Helpers/ValidationHelper.cs index d66aa6aef..447426157 100644 --- a/PlexRequests.UI/Helpers/ValidationHelper.cs +++ b/PlexRequests.UI/Helpers/ValidationHelper.cs @@ -1,87 +1,88 @@ -#region Copyright -// /************************************************************************ -// Copyright (c) 2016 Jamie Rees -// File: ValidationHelper.cs -// Created By: Jamie Rees -// -// Permission is hereby granted, free of charge, to any person obtaining -// a copy of this software and associated documentation files (the -// "Software"), to deal in the Software without restriction, including -// without limitation the rights to use, copy, modify, merge, publish, -// distribute, sublicense, and/or sell copies of the Software, and to -// permit persons to whom the Software is furnished to do so, subject to -// the following conditions: -// -// The above copyright notice and this permission notice shall be -// included in all copies or substantial portions of the Software. -// -// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, -// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF -// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND -// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE -// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION -// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION -// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. -// ************************************************************************/ -#endregion - -using System.Collections.Generic; -using System.Linq; -using System.Text; -using Nancy.Validation; - - -using PlexRequests.UI.Models; - -namespace PlexRequests.UI.Helpers -{ - public static class ValidationHelper - { - - /// - /// This will send the first error as a JsonResponseModel - /// - /// The result. - /// - public static JsonResponseModel SendJsonError(this ModelValidationResult result) - { - var errors = result.Errors; - return errors - .Select(e => e.Value.FirstOrDefault()) - .Where(modelValidationError => modelValidationError != null) - .Select(modelValidationError => - new JsonResponseModel - { - Result = false, - Message = modelValidationError.ErrorMessage - }) - .FirstOrDefault(); - } - - public static JsonResponseModel SendSonarrError(List result) - { - var model = new JsonResponseModel {Result = false}; - if (!result.Any()) - { - return model; - } - var sb = new StringBuilder(); - sb.AppendLine("Errors from Sonarr: "); - for (var i = 0; i < result.Count; i++) - { - if (i != result.Count - 1) - { - sb.AppendLine(result[i] + ","); - } - else - { - sb.AppendLine(result[i]); - } - } - - model.Message = sb.ToString(); - - return model; - } - } +#region Copyright +// /************************************************************************ +// Copyright (c) 2016 Jamie Rees +// File: ValidationHelper.cs +// Created By: Jamie Rees +// +// Permission is hereby granted, free of charge, to any person obtaining +// a copy of this software and associated documentation files (the +// "Software"), to deal in the Software without restriction, including +// without limitation the rights to use, copy, modify, merge, publish, +// distribute, sublicense, and/or sell copies of the Software, and to +// permit persons to whom the Software is furnished to do so, subject to +// the following conditions: +// +// The above copyright notice and this permission notice shall be +// included in all copies or substantial portions of the Software. +// +// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, +// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND +// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE +// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION +// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION +// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. +// ************************************************************************/ +#endregion + +using System.Collections.Generic; +using System.Linq; +using System.Text; +using Nancy.Validation; + + +using PlexRequests.UI.Models; + +namespace PlexRequests.UI.Helpers +{ + public static class ValidationHelper + { + + /// + /// This will send the first error as a JsonResponseModel + /// + /// The result. + /// + public static JsonResponseModel SendJsonError(this ModelValidationResult result) + { + var errors = result.Errors; + return errors + .Select(e => e.Value.FirstOrDefault()) + .Where(modelValidationError => modelValidationError != null) + .Select(modelValidationError => + new JsonResponseModel + { + Result = false, + Message = modelValidationError.ErrorMessage + }) + .FirstOrDefault(); + } + + public static JsonResponseModel SendSonarrError(List result) + { + + var model = new JsonResponseModel {Result = false}; + if (!result.Any()) + { + return model; + } + var sb = new StringBuilder(); + sb.AppendLine("Errors from Sonarr: "); + for (var i = 0; i < result.Count; i++) + { + if (i != result.Count - 1) + { + sb.AppendLine(result[i] + ","); + } + else + { + sb.AppendLine(result[i]); + } + } + + model.Message = sb.ToString(); + + return model; + } + } } \ No newline at end of file diff --git a/PlexRequests.UI/Modules/SearchModule.cs b/PlexRequests.UI/Modules/SearchModule.cs index bc53733d6..801f1ed01 100644 --- a/PlexRequests.UI/Modules/SearchModule.cs +++ b/PlexRequests.UI/Modules/SearchModule.cs @@ -637,8 +637,8 @@ namespace PlexRequests.UI.Modules { return await AddRequest(model, settings, $"{fullShowName} {Resources.UI.Search_SuccessfullyAdded}"); } - - return Response.AsJson(ValidationHelper.SendSonarrError(result?.ErrorMessages)); + Log.Debug("Error with sending to sonarr."); + return Response.AsJson(ValidationHelper.SendSonarrError(result?.ErrorMessages ?? new List())); } var srSettings = SickRageService.GetSettings(); diff --git a/PlexRequests.UI/Views/Search/Index.cshtml b/PlexRequests.UI/Views/Search/Index.cshtml index cb63a487c..327f8ed1f 100644 --- a/PlexRequests.UI/Views/Search/Index.cshtml +++ b/PlexRequests.UI/Views/Search/Index.cshtml @@ -157,9 +157,15 @@
+ {{#if_eq type "movie"}} + +

{{title}} ({{year}})

+
+ {{else}}

{{title}} ({{year}})

+ {{/if_eq}}

{{overview}}

@@ -167,30 +173,30 @@
{{#if_eq type "movie"}} - {{#if_eq available true}} - - {{else}} - {{#if_eq requested true}} - - {{else}} - - {{/if_eq}} - {{/if_eq}} + {{#if_eq available true}} + + {{else}} + {{#if_eq requested true}} + + {{else}} + + {{/if_eq}} + {{/if_eq}} {{/if_eq}} {{#if_eq type "tv"}} - + {{/if_eq}} @@ -341,9 +347,9 @@