diff --git a/NzbDrone.Web/Content/QualitySettings.css b/NzbDrone.Web/Content/QualitySettings.css index d4d2c96ee..1a148d1c2 100644 --- a/NzbDrone.Web/Content/QualitySettings.css +++ b/NzbDrone.Web/Content/QualitySettings.css @@ -1,6 +1,6 @@ #bottom { - margin-top: -25px; + margin-top: -10px; margin-left: 15px; } diff --git a/NzbDrone.Web/Content/Settings.css b/NzbDrone.Web/Content/Settings.css index 9648462b9..bbbe6ada0 100644 --- a/NzbDrone.Web/Content/Settings.css +++ b/NzbDrone.Web/Content/Settings.css @@ -43,6 +43,7 @@ p, h1, form, button{border:0; margin:0; padding:0;} text-align:right; width:340px; float:left; + margin-bottom: -10px; } #stylized .small @@ -69,6 +70,11 @@ p, h1, form, button{border:0; margin:0; padding:0;} width: 206px; } +#stylized .checkClass +{ + margin:10px 0 10px 10px; +} + #stylized button { clear:both; diff --git a/NzbDrone.Web/Controllers/SettingsController.cs b/NzbDrone.Web/Controllers/SettingsController.cs index e45cb7487..c5d627648 100644 --- a/NzbDrone.Web/Controllers/SettingsController.cs +++ b/NzbDrone.Web/Controllers/SettingsController.cs @@ -56,22 +56,14 @@ namespace NzbDrone.Web.Controllers return View(); } - public ActionResult Index(string viewName) + public ActionResult Index() { - if (viewName != null) - ViewData["viewName"] = viewName; - - else - return RedirectToAction("Indexers"); - - return View("Index"); + return RedirectToAction("Indexers"); } public ActionResult Indexers() { - ViewData["viewName"] = "Indexers"; - - return View("Index", new IndexerSettingsModel + return View(new IndexerSettingsModel { NzbMatrixUsername = _configProvider.NzbMatrixUsername, NzbMatrixApiKey = _configProvider.NzbMatrixApiKey, @@ -146,8 +138,6 @@ namespace NzbDrone.Web.Controllers public ActionResult Notifications() { - ViewData["viewName"] = "Notifications"; - var model = new NotificationSettingsModel { XbmcEnabled = Convert.ToBoolean(_configProvider.GetValue("XbmcEnabled", false)), @@ -166,13 +156,11 @@ namespace NzbDrone.Web.Controllers XbmcPassword = _configProvider.GetValue("XbmcPassword", String.Empty) }; - return View("Index", model); + return View(model); } public ActionResult EpisodeSorting() { - ViewData["viewName"] = "EpisodeSorting"; - var model = new EpisodeSortingModel(); model.SeriesName = _configProvider.SeriesName; @@ -189,7 +177,7 @@ namespace NzbDrone.Web.Controllers model.NumberStyles = new SelectList(EpisodeSortingHelper.GetNumberStyles(), "Id", "Name"); model.MultiEpisodeStyles = new SelectList(EpisodeSortingHelper.GetMultiEpisodeStyles(), "Id", "Name"); - return View("Index", model); + return View(model); } public ViewResult AddProfile() diff --git a/NzbDrone.Web/Models/IndexerSettingsModel.cs b/NzbDrone.Web/Models/IndexerSettingsModel.cs index 4d5b70082..1f0e089e8 100644 --- a/NzbDrone.Web/Models/IndexerSettingsModel.cs +++ b/NzbDrone.Web/Models/IndexerSettingsModel.cs @@ -10,54 +10,66 @@ namespace NzbDrone.Web.Models { [DataType(DataType.Text)] [DisplayName("Username")] + [Description("Username for NZB Matrix")] [DisplayFormat(ConvertEmptyStringToNull = false)] public String NzbMatrixUsername { get; set; } [DataType(DataType.Text)] [DisplayName("API Key")] + [Description("API Key for NZB Matrix")] [DisplayFormat(ConvertEmptyStringToNull = false)] public String NzbMatrixApiKey { get; set; } [DataType(DataType.Text)] [DisplayName("UID")] + [Description("User ID for Nzbs.org")] [DisplayFormat(ConvertEmptyStringToNull = false)] public String NzbsOrgUId { get; set; } [DataType(DataType.Text)] [DisplayName("Hash")] + [Description("Hash for Nzbs.org")] [DisplayFormat(ConvertEmptyStringToNull = false)] public String NzbsOrgHash { get; set; } [DataType(DataType.Text)] [DisplayName("UID")] + [Description("User ID for NZBsRus")] [DisplayFormat(ConvertEmptyStringToNull = false)] public String NzbsrusUId { get; set; } [DataType(DataType.Text)] [DisplayName("Hash")] + [Description("Hash for NZBsRus")] [DisplayFormat(ConvertEmptyStringToNull = false)] public String NzbsrusHash { get; set; } [DataType(DataType.Text)] [DisplayName("Username")] + [Description("Username for Newzbin")] [DisplayFormat(ConvertEmptyStringToNull = false)] public String NewzbinUsername { get; set; } [DataType(DataType.Text)] [DisplayName("Password")] + [Description("Password for Newzbin")] [DisplayFormat(ConvertEmptyStringToNull = false)] public String NewzbinPassword { get; set; } [DisplayName("NZBs.org")] + [Description("Scan Nzbs.org for new epsiodes")] public bool NzbsOrgEnabled { get; set; } [DisplayName("NZB Matrix")] + [Description("Scan NZB Matrix for new epsiodes")] public bool NzbMatrixEnabled { get; set; } [DisplayName("NZBsRUs")] + [Description("Scan NZBsRus for new epsiodes")] public bool NzbsRUsEnabled { get; set; } [DisplayName("Newzbin")] + [Description("Scan Newzbin for new epsiodes")] public bool NewzbinEnabled { get; set; } } } \ No newline at end of file diff --git a/NzbDrone.Web/Models/NotificationSettingsModel.cs b/NzbDrone.Web/Models/NotificationSettingsModel.cs index e8f3abca3..f17c3e851 100644 --- a/NzbDrone.Web/Models/NotificationSettingsModel.cs +++ b/NzbDrone.Web/Models/NotificationSettingsModel.cs @@ -6,52 +6,66 @@ namespace NzbDrone.Web.Models public class NotificationSettingsModel { [DisplayName("Enabled")] + [Description("Enable notifications for XBMC?")] public bool XbmcEnabled { get; set; } [DisplayName("Notify on Grab")] + [Description("Send notification when episode is sent to SABnzbd?")] public bool XbmcNotifyOnGrab { get; set; } [DisplayName("Notify on Download")] + [Description("Send notification when episode is downloaded?")] public bool XbmcNotifyOnDownload { get; set; } [DisplayName("Notify on Rename")] + [Description("Send notification when episode is renamed?")] public bool XbmcNotifyOnRename { get; set; } [DisplayName("Image with Notification")] + [Description("Display NzbDrone image on notifications?")] public bool XbmcNotificationImage { get; set; } [Required] [Range(3, 10, ErrorMessage = "Must be between 3 and 10 seconds")] [DisplayName("Display Time")] + [Description("How long the notification should be displayed")] public int XbmcDisplayTime { get; set; } [DisplayName("Update on Download")] + [Description("Update XBMC library after episode download?")] public bool XbmcUpdateOnDownload { get; set; } [DisplayName("Update on Rename")] + [Description("Update XBMC library after episode is renamed?")] public bool XbmcUpdateOnRename { get; set; } - [DisplayName("Update on ")] + [DisplayName("Full Update")] + [Description("Perform a full update is series update fails?")] public bool XbmcFullUpdate { get; set; } [DisplayName("Clean on Download")] + [Description("Clean XBMC library after episode download?")] public bool XbmcCleanOnDownload { get; set; } [DisplayName("Clean on Rename")] + [Description("Clean XBMC library after episode is renamed?")] public bool XbmcCleanOnRename { get; set; } [DataType(DataType.Text)] [DisplayName("Hosts")] + [Description("XBMC hosts with port, comma separ")] [DisplayFormat(ConvertEmptyStringToNull = false)] public string XbmcHosts { get; set; } [DataType(DataType.Text)] [DisplayName("Username")] + [Description("XBMC webserver username")] [DisplayFormat(ConvertEmptyStringToNull = false)] public string XbmcUsername { get; set; } [DataType(DataType.Text)] [DisplayName("Password")] + [Description("XBMC webserver password")] [DisplayFormat(ConvertEmptyStringToNull = false)] public string XbmcPassword { get; set; } } diff --git a/NzbDrone.Web/NzbDrone.Web.csproj b/NzbDrone.Web/NzbDrone.Web.csproj index 0df129208..4c33c6c64 100644 --- a/NzbDrone.Web/NzbDrone.Web.csproj +++ b/NzbDrone.Web/NzbDrone.Web.csproj @@ -581,6 +581,7 @@ + @@ -632,7 +633,6 @@ - diff --git a/NzbDrone.Web/Scripts/settingsForm.js b/NzbDrone.Web/Scripts/settingsForm.js new file mode 100644 index 000000000..d4b051599 --- /dev/null +++ b/NzbDrone.Web/Scripts/settingsForm.js @@ -0,0 +1,22 @@ +$(document).ready(function () { + var options = { + target: '#result', + beforeSubmit: showRequest, + success: showResponse, + type: 'post', + resetForm: false + }; + $('#form').ajaxForm(options); +}); + +function showRequest(formData, jqForm, options) { + $("#result").empty().html('Saving...'); + $("#form :input").attr("disabled", true); + $('#saveAjax').show(); +} + +function showResponse(responseText, statusText, xhr, $form) { + $("#result").empty().html(responseText); + $("#form :input").attr("disabled", false); + $('#saveAjax').hide(); +} \ No newline at end of file diff --git a/NzbDrone.Web/Views/Settings/EpisodeSorting.cshtml b/NzbDrone.Web/Views/Settings/EpisodeSorting.cshtml index eaf4562f7..7c27ba236 100644 --- a/NzbDrone.Web/Views/Settings/EpisodeSorting.cshtml +++ b/NzbDrone.Web/Views/Settings/EpisodeSorting.cshtml @@ -1,135 +1,97 @@ @using NzbDrone.Web.Helpers @model NzbDrone.Web.Models.EpisodeSortingModel -@using (Html.BeginForm("SaveEpisodeSorting", "Settings", FormMethod.Post, new { id = "form", name = "form" })) -{ - @Html.ValidationSummary(true, "Unable to save your settings. Please correct the errors and try again.") - -
- Episode Sorting -
-
-
@Html.LabelFor(m => m.SeriesName)
-
@Html.CheckBoxFor(m => m.SeriesName)
-
-
-
@Html.ValidationMessageFor(m => m.SeriesName)
-
@Html.DescriptionFor(m => m.SeriesName)
-
-
-
-
-
@Html.LabelFor(m => m.EpisodeName)
-
@Html.CheckBoxFor(m => m.EpisodeName)
-
-
-
@Html.ValidationMessageFor(m => m.EpisodeName)
-
@Html.DescriptionFor(m => m.EpisodeName)
-
-
-
-
-
@Html.LabelFor(m => m.ReplaceSpaces)
-
@Html.CheckBoxFor(m => m.ReplaceSpaces)
-
-
-
@Html.ValidationMessageFor(m => m.ReplaceSpaces)
-
@Html.DescriptionFor(m => m.ReplaceSpaces)
-
-
-
-
-
@Html.LabelFor(m => m.AppendQuality)
-
@Html.CheckBoxFor(m => m.AppendQuality)
-
-
-
@Html.ValidationMessageFor(m => m.AppendQuality)
-
@Html.DescriptionFor(m => m.AppendQuality)
-
-
-
-
-
@Html.LabelFor(m => m.SeasonFolders)
-
@Html.CheckBoxFor(m => m.SeasonFolders)
-
-
-
@Html.ValidationMessageFor(m => m.SeasonFolders)
-
@Html.DescriptionFor(m => m.SeasonFolders)
-
-
-
-
-
@Html.LabelFor(m => m.SeasonFolderFormat)
-
@Html.TextBoxFor(m => m.SeasonFolderFormat)
-
-
-
@Html.ValidationMessageFor(m => m.SeasonFolderFormat)
-
@Html.DescriptionFor(m => m.SeasonFolderFormat)
-
-
-
-
-
@Html.LabelFor(m => m.SeparatorStyle)
-
@Html.DropDownListFor(m => m.SeparatorStyle, Model.SeparatorStyles)
-
-
-
@Html.ValidationMessageFor(m => m.SeparatorStyle)
-
@Html.DescriptionFor(m => m.SeparatorStyle)
-
-
-
-
-
@Html.LabelFor(m => m.NumberStyle)
-
@Html.DropDownListFor(m => m.NumberStyle, Model.NumberStyles)
-
-
-
@Html.ValidationMessageFor(m => m.NumberStyle)
-
@Html.DescriptionFor(m => m.NumberStyle)
-
-
-
-
-
@Html.LabelFor(m => m.MultiEpisodeStyle)
-
@Html.DropDownListFor(m => m.MultiEpisodeStyle, Model.MultiEpisodeStyles)
-
-
-
@Html.ValidationMessageFor(m => m.MultiEpisodeStyle)
-
@Html.DescriptionFor(m => m.MultiEpisodeStyle)
+ +@section HeaderContent{ + + + +} + +@section TitleContent{ + Settings +} + +@section ActionMenu{ + @{Html.RenderPartial("SubMenu");} +} + +@section MainContent{ +
+ @using (Html.BeginForm("SaveEpisodeSorting", "Settings", FormMethod.Post, new { id = "form", name = "form", @class = "settingsForm" })) + { + @Html.ValidationSummary(true, "Unable to save your settings. Please correct the errors and try again.") + +

Episode Sorting

+

+ + + @Html.CheckBoxFor(m => m.SeriesName, new { @class = "inputClass checkClass" }) + + + @Html.CheckBoxFor(m => m.EpisodeName, new { @class = "inputClass checkClass" }) + + + @Html.CheckBoxFor(m => m.ReplaceSpaces, new { @class = "inputClass checkClass" }) + + + @Html.CheckBoxFor(m => m.AppendQuality, new { @class = "inputClass checkClass" }) + + + @Html.CheckBoxFor(m => m.SeasonFolders, new { @class = "inputClass checkClass" }) + + + @Html.TextBoxFor(m => m.SeasonFolderFormat, new { @class = "inputClass" }) + + + @Html.DropDownListFor(m => m.SeparatorStyle, Model.SeparatorStyles, new { @class = "inputClass selectClass" }) + + + @Html.DropDownListFor(m => m.NumberStyle, Model.NumberStyles, new { @class = "inputClass selectClass" }) + + + @Html.DropDownListFor(m => m.MultiEpisodeStyle, Model.MultiEpisodeStyles, new { @class = "inputClass selectClass" }) + +
+
+
+
-
-
-
-
- -
-} -
+ + Loader + }
+
+} @section Scripts{ - + + + - - @{Html.RenderPartial(ViewData["viewName"].ToString());} -} - -@section Scripts{ - -} \ No newline at end of file diff --git a/NzbDrone.Web/Views/Settings/Indexers.cshtml b/NzbDrone.Web/Views/Settings/Indexers.cshtml index d1b58a6dd..78121605b 100644 --- a/NzbDrone.Web/Views/Settings/Indexers.cshtml +++ b/NzbDrone.Web/Views/Settings/Indexers.cshtml @@ -1,173 +1,139 @@ -@model NzbDrone.Web.Models.IndexerSettingsModel +@using NzbDrone.Web.Helpers +@model NzbDrone.Web.Models.IndexerSettingsModel - +} + +@section TitleContent{ + Settings +} + +@section ActionMenu{ + @{Html.RenderPartial("SubMenu");} +} -@using (Html.BeginForm("SaveIndexers", "Settings", FormMethod.Post, new { id = "form", name = "form" })) { +@section MainContent{ +
+ +@using (Html.BeginForm("SaveIndexers", "Settings", FormMethod.Post, new { id = "form", name = "form", @class = "settingsForm" })) +{ +

Indexer

+

+ @Html.ValidationSummary(true, "Unable to save your settings. Please correct the errors and try again.") +
+ @{ Html.Telerik().PanelBar() + .Name("PanelBar") + //.HtmlAttributes(new { style = "width: 500px; margin: 10px;" }) + .ExpandMode(PanelBarExpandMode.Single) + .SelectedIndex(0) + .Items(indexerItem => + { + indexerItem.Add() + .Text("NZBs.org") + .ImageUrl("~/Content/Images/Indexers/Nzbs.org.png") + .Content(@ +
+ + @Html.CheckBoxFor(m => m.NzbsOrgEnabled, new { @class = "inputClass checkClass" }) + + + @Html.TextBoxFor(m => m.NzbsOrgUId, new { @class = "inputClass" }) + + + @Html.TextBoxFor(m => m.NzbsOrgHash, new { @class = "inputClass" }) +
+
); + indexerItem.Add() + .Text("NZB Matrix") + .ImageUrl("~/Content/Images/Indexers/NzbMatrix.png") + .Content(@ +
+ + @Html.CheckBoxFor(m => m.NzbMatrixEnabled, new { @class = "inputClass checkClass" }) + + + @Html.TextBoxFor(m => m.NzbMatrixUsername, new { @class = "inputClass" }) + + + @Html.TextBoxFor(m => m.NzbMatrixApiKey, new { @class = "inputClass" }) +
+
); + indexerItem.Add() + .Text("NZBsRus") + .ImageUrl("~/Content/Images/Indexers/NzbsRus.png") + .Content(@ +
+ + @Html.CheckBoxFor(m => m.NzbsRUsEnabled, new { @class = "inputClass checkClass" }) -
- Indexers -
- @{ Html.Telerik().PanelBar() - .Name("PanelBar") - .HtmlAttributes(new { style = "width: 500px; margin: 10px;" }) - .ExpandMode(PanelBarExpandMode.Single) - .SelectedIndex(0) - .Items(indexerItem => - { - indexerItem.Add() - .Text("NZBs.org") - .ImageUrl("~/Content/Images/Indexers/Nzbs.org.png") - .Content(@ -
-
-
- Enabled -
-
- @Html.CheckBoxFor(m => m.NzbsOrgEnabled, new { @class = "indexer_checkbox" }) -
-
- -
-
- @Html.LabelFor(m => m.NzbsOrgUId) -
-
- @Html.TextBoxFor(m => m.NzbsOrgUId) -
-
-
-
- @Html.LabelFor(m => m.NzbsOrgHash) -
-
- @Html.TextBoxFor(m => m.NzbsOrgHash) -
-
-
-
); - indexerItem.Add() - .Text("NZB Matrix") - .ImageUrl("~/Content/Images/Indexers/NzbMatrix.png") - .Content(@ -
- -
-
- Enabled -
-
- @Html.CheckBoxFor(m => m.NzbMatrixEnabled, new { @class = "indexer_checkbox" }) -
-
- -
-
- @Html.LabelFor(m => m.NzbMatrixUsername) -
-
- @Html.TextBoxFor(m => m.NzbMatrixUsername) -
-
-
-
- @Html.LabelFor(m => m.NzbMatrixApiKey) -
-
- @Html.TextBoxFor(m => m.NzbMatrixApiKey) -
-
-
-
); - indexerItem.Add() - .Text("NZBsRus") - .ImageUrl("~/Content/Images/Indexers/NzbsRus.png") - .Content(@ -
- -
-
- Enabled -
-
- @Html.CheckBoxFor(m => m.NzbsRUsEnabled, new { @class = "indexer_checkbox" }) -
-
- -
-
- @Html.LabelFor(m => m.NzbsrusUId) -
-
- @Html.TextBoxFor(m => m.NzbsrusUId) -
-
-
-
- @Html.LabelFor(m => m.NzbsrusHash) -
-
- @Html.TextBoxFor(m => m.NzbsrusHash) -
-
-
-
); - indexerItem.Add() - .Text("Newzbin") - .ImageUrl("~/Content/Images/Indexers/Newzbin.png") - .Content(@ -
- -
-
- Enabled -
-
- @Html.CheckBoxFor(m => m.NewzbinEnabled, new { @class = "indexer_checkbox" }) -
-
- -
-
- @Html.LabelFor(m => m.NewzbinUsername) -
-
- @Html.TextBoxFor(m => m.NewzbinUsername) -
-
-
-
- @Html.LabelFor(m => m.NewzbinPassword) -
-
- @Html.TextBoxFor(m => m.NewzbinPassword) -
-
-
-
); - }).Render(); - } -
- -
- -
-
+ + @Html.TextBoxFor(m => m.NzbsrusUId, new { @class = "inputClass" }) + + + @Html.TextBoxFor(m => m.NzbsrusHash, new { @class = "inputClass" }) +
+
); + indexerItem.Add() + .Text("Newzbin") + .ImageUrl("~/Content/Images/Indexers/Newzbin.png") + .Content(@ +
+ + @Html.CheckBoxFor(m => m.NewzbinEnabled, new { @class = "inputClass checkClass" }) + + + @Html.TextBoxFor(m => m.NewzbinUsername, new { @class = "inputClass" }) + + + @Html.TextBoxFor(m => m.NewzbinPassword, new { @class = "inputClass" }) +
+
); + }).Render(); + } +
+
+ Loader } -
\ No newline at end of file + +
+ +
+} \ No newline at end of file diff --git a/NzbDrone.Web/Views/Settings/Notifications.cshtml b/NzbDrone.Web/Views/Settings/Notifications.cshtml index a80558963..d666342f2 100644 --- a/NzbDrone.Web/Views/Settings/Notifications.cshtml +++ b/NzbDrone.Web/Views/Settings/Notifications.cshtml @@ -1,136 +1,136 @@ -@model NzbDrone.Web.Models.NotificationSettingsModel -@using (Html.BeginForm("SaveNotifications", "Settings", FormMethod.Post, new { id = "form", name = "form" })) -{ -
- Notification Settings -
- XBMC -
-
-
@Html.LabelFor(m => m.XbmcEnabled)
-
@Html.CheckBoxFor(m => m.XbmcEnabled)
-
-
@Html.ValidationMessageFor(m => m.XbmcEnabled)
-
-
-
-
@Html.LabelFor(m => m.XbmcNotifyOnGrab)
-
@Html.CheckBoxFor(m => m.XbmcNotifyOnGrab)
-
-
@Html.ValidationMessageFor(m => m.XbmcNotifyOnGrab)
-
-
-
-
@Html.LabelFor(m => m.XbmcNotifyOnDownload)
-
@Html.CheckBoxFor(m => m.XbmcNotifyOnDownload)
-
-
@Html.ValidationMessageFor(m => m.XbmcNotifyOnDownload)
-
-
-
-
@Html.LabelFor(m => m.XbmcNotifyOnRename)
-
@Html.CheckBoxFor(m => m.XbmcNotifyOnRename)
-
-
@Html.ValidationMessageFor(m => m.XbmcNotifyOnRename)
-
-
-
-
@Html.LabelFor(m => m.XbmcNotificationImage)
-
@Html.CheckBoxFor(m => m.XbmcNotificationImage)
-
-
@Html.ValidationMessageFor(m => m.XbmcNotificationImage)
-
-
-
-
@Html.LabelFor(m => m.XbmcDisplayTime)
-
@Html.TextBoxFor(m => m.XbmcDisplayTime)
-
-
@Html.ValidationMessageFor(m => m.XbmcDisplayTime)
-
-
-
-
@Html.LabelFor(m => m.XbmcUpdateOnDownload)
-
@Html.CheckBoxFor(m => m.XbmcUpdateOnDownload)
-
-
@Html.ValidationMessageFor(m => m.XbmcUpdateOnDownload)
-
-
-
-
@Html.LabelFor(m => m.XbmcUpdateOnRename)
-
@Html.CheckBoxFor(m => m.XbmcUpdateOnRename)
-
-
@Html.ValidationMessageFor(m => m.XbmcUpdateOnRename)
-
-
-
-
@Html.LabelFor(m => m.XbmcFullUpdate)
-
@Html.CheckBoxFor(m => m.XbmcFullUpdate)
-
-
@Html.ValidationMessageFor(m => m.XbmcFullUpdate)
-
-
-
-
@Html.LabelFor(m => m.XbmcCleanOnDownload)
-
@Html.CheckBoxFor(m => m.XbmcCleanOnDownload)
-
-
@Html.ValidationMessageFor(m => m.XbmcCleanOnDownload)
-
-
-
-
@Html.LabelFor(m => m.XbmcCleanOnRename)
-
@Html.CheckBoxFor(m => m.XbmcCleanOnRename)
-
-
@Html.ValidationMessageFor(m => m.XbmcCleanOnRename)
-
-
-
-
@Html.LabelFor(m => m.XbmcHosts)
-
@Html.TextBoxFor(m => m.XbmcHosts)
-
-
@Html.ValidationMessageFor(m => m.XbmcHosts)
-
-
-
-
@Html.LabelFor(m => m.XbmcUsername)
-
@Html.TextBoxFor(m => m.XbmcUsername)
-
-
@Html.ValidationMessageFor(m => m.XbmcUsername)
-
-
-
-
@Html.LabelFor(m => m.XbmcPassword)
-
@Html.TextBoxFor(m => m.XbmcPassword)
-
-
@Html.ValidationMessageFor(m => m.XbmcPassword)
-
-
- -
+@using NzbDrone.Web.Helpers +@model NzbDrone.Web.Models.NotificationSettingsModel + +@section HeaderContent{ + + + } -
-
-@section Scripts{ - +
+} + +@section Scripts{ + + + } diff --git a/NzbDrone.Web/Views/Settings/Quality.cshtml b/NzbDrone.Web/Views/Settings/Quality.cshtml index 04ecba17d..5897db8bd 100644 --- a/NzbDrone.Web/Views/Settings/Quality.cshtml +++ b/NzbDrone.Web/Views/Settings/Quality.cshtml @@ -7,22 +7,7 @@ } @@ -74,9 +59,10 @@ @section Scripts{ + + } diff --git a/NzbDrone.Web/Views/Settings/SubMenu.cshtml b/NzbDrone.Web/Views/Settings/SubMenu.cshtml index cd1148e15..ba71af2df 100644 --- a/NzbDrone.Web/Views/Settings/SubMenu.cshtml +++ b/NzbDrone.Web/Views/Settings/SubMenu.cshtml @@ -8,4 +8,6 @@ items.Add().Text("Notifications").Action("Notifications", "Settings"); }).Render(); -} \ No newline at end of file +} + +
\ No newline at end of file