mirror of
https://github.com/Radarr/Radarr.git
synced 2024-11-09 12:32:31 +01:00
Fixed EpisodeSorting examples layout.
Added Missing to main UI. Add links to series from History and Missing. Image for search link on Missing.
This commit is contained in:
parent
8ce222a10c
commit
f02e92b005
@ -4,6 +4,7 @@
|
||||
using NLog;
|
||||
using NzbDrone.Core.Model;
|
||||
using NzbDrone.Core.Model.Notification;
|
||||
using NzbDrone.Core.Model.Search;
|
||||
using NzbDrone.Core.Repository;
|
||||
|
||||
namespace NzbDrone.Core.Providers.Jobs
|
||||
@ -36,8 +37,8 @@ public int DefaultInterval
|
||||
|
||||
public void Start(ProgressNotification notification, int targetId, int secondaryTargetId)
|
||||
{
|
||||
var missingEpisodes =
|
||||
_episodeProvider.EpisodesWithoutFiles(true).GroupBy(e => new { e.SeriesId, e.SeasonNumber });
|
||||
var missingEpisodes = _episodeProvider.EpisodesWithoutFiles(true)
|
||||
.GroupBy(e => new { e.SeriesId, e.SeasonNumber });
|
||||
|
||||
var individualEpisodes = new List<Episode>();
|
||||
|
||||
|
@ -68,6 +68,7 @@ public ActionResult _AjaxBinding()
|
||||
var history = _historyProvider.AllItemsWithRelationships().Select(h => new HistoryModel
|
||||
{
|
||||
HistoryId = h.HistoryId,
|
||||
SeriesId = h.SeriesId,
|
||||
SeasonNumber = h.Episode.SeasonNumber,
|
||||
EpisodeNumber = h.Episode.EpisodeNumber,
|
||||
EpisodeTitle = h.Episode.Title,
|
||||
|
@ -31,6 +31,7 @@ public ActionResult _AjaxBinding()
|
||||
var missing = missingEpisodes.Select(e => new MissingEpisodeModel
|
||||
{
|
||||
EpisodeId = e.EpisodeId,
|
||||
SeriesId = e.SeriesId,
|
||||
SeasonNumber = e.SeasonNumber,
|
||||
EpisodeNumber = e.EpisodeNumber,
|
||||
EpisodeTitle = e.Title,
|
||||
|
@ -32,7 +32,7 @@ public ActionResult _AjaxBindingYesterday()
|
||||
{
|
||||
SeriesId = u.Series.SeriesId,
|
||||
EpisodeId = u.EpisodeId,
|
||||
SeriesName = u.Series.Title,
|
||||
SeriesTitle = u.Series.Title,
|
||||
SeasonNumber = u.SeasonNumber,
|
||||
EpisodeNumber = u.EpisodeNumber,
|
||||
Title = u.Title,
|
||||
@ -50,7 +50,7 @@ public ActionResult _AjaxBindingToday()
|
||||
{
|
||||
SeriesId = u.Series.SeriesId,
|
||||
EpisodeId = u.EpisodeId,
|
||||
SeriesName = u.Series.Title,
|
||||
SeriesTitle = u.Series.Title,
|
||||
SeasonNumber = u.SeasonNumber,
|
||||
EpisodeNumber = u.EpisodeNumber,
|
||||
Title = u.Title,
|
||||
@ -68,7 +68,7 @@ public ActionResult _AjaxBindingTomorrow()
|
||||
{
|
||||
SeriesId = u.Series.SeriesId,
|
||||
EpisodeId = u.EpisodeId,
|
||||
SeriesName = u.Series.Title,
|
||||
SeriesTitle = u.Series.Title,
|
||||
SeasonNumber = u.SeasonNumber,
|
||||
EpisodeNumber = u.EpisodeNumber,
|
||||
Title = u.Title,
|
||||
@ -86,7 +86,7 @@ public ActionResult _AjaxBindingWeek()
|
||||
{
|
||||
SeriesId = u.Series.SeriesId,
|
||||
EpisodeId = u.EpisodeId,
|
||||
SeriesName = u.Series.Title,
|
||||
SeriesTitle = u.Series.Title,
|
||||
SeasonNumber = u.SeasonNumber,
|
||||
EpisodeNumber = u.EpisodeNumber,
|
||||
Title = u.Title,
|
||||
|
@ -6,6 +6,7 @@ namespace NzbDrone.Web.Models
|
||||
public class HistoryModel
|
||||
{
|
||||
public int HistoryId { get; set; }
|
||||
public int SeriesId { get; set; }
|
||||
public string SeriesTitle { get; set; }
|
||||
public int SeasonNumber { get; set; }
|
||||
public int EpisodeNumber { get; set; }
|
||||
|
@ -7,6 +7,7 @@ namespace NzbDrone.Web.Models
|
||||
{
|
||||
public class MissingEpisodeModel
|
||||
{
|
||||
public int SeriesId { get; set; }
|
||||
public int EpisodeId { get; set; }
|
||||
public string SeriesTitle { get; set; }
|
||||
public int SeasonNumber { get; set; }
|
||||
|
@ -6,7 +6,7 @@ public class UpcomingEpisodeModel
|
||||
{
|
||||
public int SeriesId { get; set; }
|
||||
public int EpisodeId { get; set; }
|
||||
public string SeriesName { get; set; }
|
||||
public string SeriesTitle { get; set; }
|
||||
public int SeasonNumber { get; set; }
|
||||
public int EpisodeNumber { get; set; }
|
||||
public string Title { get; set; }
|
||||
|
@ -38,7 +38,11 @@ History
|
||||
.ClientTemplate("<center><img alt='<#= Indexer #>' src='" + Url.Content("~/Content/Images/Indexers/") + "<#= Indexer #>.png' /></center>")
|
||||
.Title("")
|
||||
.Width(20);
|
||||
columns.Bound(c => c.SeriesTitle).Title("Series Name");
|
||||
columns.Bound(c => c.SeriesTitle)
|
||||
.ClientTemplate("<a href=" +
|
||||
Url.Action("Details", "Series", new { seriesId = "<#= SeriesId #>" }) +
|
||||
"><#= SeriesTitle #></a>")
|
||||
.Title("Series Title");
|
||||
columns.Bound(c => c.SeasonNumber).Title("Season").Width(1);
|
||||
columns.Bound(c => c.EpisodeNumber).Title("Episode").Width(1);
|
||||
columns.Bound(c => c.EpisodeTitle).Title("Episode Title");
|
||||
|
@ -5,20 +5,41 @@
|
||||
Missing
|
||||
}
|
||||
|
||||
<style>
|
||||
.searchImage
|
||||
{
|
||||
width: 18px;
|
||||
height: 18px;
|
||||
padding: 1px;
|
||||
margin: 2px;
|
||||
}
|
||||
|
||||
.searchImage:hover
|
||||
{
|
||||
background-color: #065EFE;
|
||||
}
|
||||
</style>
|
||||
|
||||
@section MainContent{
|
||||
@{Html.Telerik().Grid<MissingEpisodeModel>().Name("missing")
|
||||
.TableHtmlAttributes(new { @class = "Grid" })
|
||||
.Columns(columns =>
|
||||
{
|
||||
columns.Bound(c => c.SeriesTitle).Title("Series Name");
|
||||
columns.Bound(c => c.SeriesTitle)
|
||||
.ClientTemplate("<a href=" +
|
||||
Url.Action("Details", "Series", new { seriesId = "<#= SeriesId #>" }) +
|
||||
"><#= SeriesTitle #></a>")
|
||||
.Title("Series Title");
|
||||
columns.Bound(c => c.SeasonNumber).Title("Season").Width(40);
|
||||
columns.Bound(c => c.EpisodeNumber).Title("Episode").Width(40);
|
||||
columns.Bound(c => c.EpisodeTitle).Title("Episode Title");
|
||||
columns.Bound(c => c.AirDate).Format("{0:d}")
|
||||
.Title("Air Date")
|
||||
.Width(80);
|
||||
columns.Bound(o => o.EpisodeId).Title("")
|
||||
.ClientTemplate("<a href='#Search' onClick=\"searchForEpisode('<#= EpisodeId #>'); return false;\" >Search</a>");
|
||||
columns.Bound(c => c.EpisodeId)
|
||||
.Title("Actions")
|
||||
.ClientTemplate("<a href=\"../Episode/Season?episodeId=<#= EpisodeId #>\" onClick=\"searchForEpisode('<#= EpisodeId #>'); return false;\"><img src='../../Content/Images/Search.png' alt='Search' title='Search for Episode' class='searchImage' /></a>")
|
||||
.Width("40");
|
||||
})
|
||||
.DetailView(detailView => detailView.ClientTemplate(
|
||||
"<fieldset>" +
|
||||
|
@ -118,13 +118,6 @@
|
||||
.TableHtmlAttributes(new { @class = "Grid" })
|
||||
.Columns(columns =>
|
||||
{
|
||||
//columns.Bound(o => o.Ignored)
|
||||
// .Title("<img src='../../Content/Images/ignoredNeutral.png' class='ignoredEpisodesMaster ignoreEpisode ignoreSeason_" + season + "' title='Click to toggle season ignore status' />")
|
||||
// .ClientTemplate(
|
||||
// "<img src='../../Content/Images/ignoredNeutral.png' class='ignoreEpisode ignoreEpisode_" + season + " ignored' id='<#= EpisodeId #>' title='Click to toggle episode ignore status' />")
|
||||
// .Width(20)
|
||||
// .HtmlAttributes(new { style = "text-align:center" });
|
||||
|
||||
columns.Bound(c => c.EpisodeNumber).Width(0).Title("Episode");
|
||||
columns.Bound(c => c.Title).Title("Title");
|
||||
columns.Bound(c => c.AirDate).Width(0);
|
||||
@ -139,11 +132,6 @@
|
||||
"<a href=\"../Episode/Season?episodeId=<#= EpisodeId #>\" onclick=\"searchForEpisode('<#= EpisodeId #>'); return false;\"><img src='../../Content/Images/Search.png' alt='Search' title='Search for episode' class='searchImage' /></a>" +
|
||||
"<a href=\"../Episode/Rename?episodeFileId=<#= EpisodeId #>\" onclick=\"renameEpisode('<#= EpisodeFileId #>'); return false;\"><img src='../../Content/Images/Rename.png' alt='Rename' title='Rename episode' class='renameImage' />")
|
||||
.Width(80);
|
||||
//columns.Bound(o => o.EpisodeId).Title("")
|
||||
// .ClientTemplate("<a href=\"../Episode/Season?episodeId=<#= EpisodeId #>\" onclick=\"searchForEpisode('<#= EpisodeId #>'); return false;\">Search</a>"
|
||||
// + " | " +
|
||||
// "<a href=\"../Episode/Rename?episodeFileId=<#= EpisodeId #>\" onclick=\"renameEpisode('<#= EpisodeFileId #>'); return false;\">Rename</a>"
|
||||
// );
|
||||
})
|
||||
.DetailView(detailView => detailView.ClientTemplate("<div><#= Overview #> </br><#= Path #> </div>"))
|
||||
.Sortable(rows => rows.OrderBy(epSort => epSort.Add(c => c.EpisodeNumber).Descending()).Enabled(false))
|
||||
|
@ -7,8 +7,15 @@
|
||||
<style>
|
||||
#examples
|
||||
{
|
||||
clear: both;
|
||||
margin-top: 15px;
|
||||
margin-bottom: 15px;
|
||||
}
|
||||
|
||||
#singleEpisodeExample, #multiEpisodeExample
|
||||
{
|
||||
float: left
|
||||
}
|
||||
</style>
|
||||
}
|
||||
|
||||
@ -74,6 +81,7 @@
|
||||
</label>
|
||||
@Html.DropDownListFor(m => m.MultiEpisodeStyle, Model.MultiEpisodeStyles, new { @class = "inputClass selectClass" })
|
||||
|
||||
<br/>
|
||||
<div id ="examples" class="clearfix">
|
||||
<div id="singleEpisodeExample">
|
||||
</div>
|
||||
@ -90,6 +98,10 @@
|
||||
<script src="/Scripts/settingsForm.js" type="text/javascript"></script>
|
||||
|
||||
<script type="text/javascript">
|
||||
$(document).ready(function () {
|
||||
createExamples();
|
||||
});
|
||||
|
||||
$('#SeriesName').live('change', function () { createExamples(); });
|
||||
$('#EpisodeName').live('change', function () { createExamples(); });
|
||||
$('#ReplaceSpaces').live('change', function () { createExamples(); });
|
||||
|
@ -38,6 +38,7 @@
|
||||
@MvcHtmlString.Create(Html.CurrentActionLink("Series", "Index", "Series"))
|
||||
@MvcHtmlString.Create(Html.CurrentActionLink("Upcoming", "Index", "Upcoming"))
|
||||
@MvcHtmlString.Create(Html.CurrentActionLink("History", "Index", "History"))
|
||||
@MvcHtmlString.Create(Html.CurrentActionLink("Missing", "Index", "Missing"))
|
||||
@MvcHtmlString.Create(Html.CurrentActionLink("Settings", "Index", "Settings"))
|
||||
@MvcHtmlString.Create(Html.CurrentActionLink("Logs", "Index", "Log"))
|
||||
</ul>
|
||||
|
@ -17,11 +17,11 @@ Upcoming
|
||||
.TableHtmlAttributes(new { @class = "Grid" })
|
||||
.Columns(columns =>
|
||||
{
|
||||
columns.Bound(c => c.SeriesName)
|
||||
columns.Bound(c => c.SeriesTitle)
|
||||
.ClientTemplate("<a href=" +
|
||||
Url.Action("Details", "Series", new { seriesId = "<#= SeriesId #>" }) +
|
||||
"><#= SeriesName #></a>")
|
||||
.Title("Series Name");
|
||||
"><#= SeriesTitle #></a>")
|
||||
.Title("Series Title");
|
||||
columns.Bound(c => c.SeasonNumber).Title("Season #").Width(40);
|
||||
columns.Bound(c => c.EpisodeNumber).Title("Episode #").Width(40);
|
||||
columns.Bound(c => c.Title).Title("Episode Title");
|
||||
@ -48,7 +48,7 @@ Upcoming
|
||||
.TableHtmlAttributes(new { @class = "Grid" })
|
||||
.Columns(columns =>
|
||||
{
|
||||
columns.Bound(c => c.SeriesName)
|
||||
columns.Bound(c => c.SeriesTitle)
|
||||
.ClientTemplate("<a href=" +
|
||||
Url.Action("Details", "Series", new { seriesId = "<#= SeriesId #>" }) +
|
||||
"><#= SeriesName #></a>")
|
||||
@ -77,7 +77,7 @@ Upcoming
|
||||
.TableHtmlAttributes(new { @class = "Grid" })
|
||||
.Columns(columns =>
|
||||
{
|
||||
columns.Bound(c => c.SeriesName)
|
||||
columns.Bound(c => c.SeriesTitle)
|
||||
.ClientTemplate("<a href=" +
|
||||
Url.Action("Details", "Series", new { seriesId = "<#= SeriesId #>" }) +
|
||||
"><#= SeriesName #></a>")
|
||||
@ -107,7 +107,7 @@ Upcoming
|
||||
.TableHtmlAttributes(new { @class = "Grid" })
|
||||
.Columns(columns =>
|
||||
{
|
||||
columns.Bound(c => c.SeriesName)
|
||||
columns.Bound(c => c.SeriesTitle)
|
||||
.ClientTemplate("<a href=" +
|
||||
Url.Action("Details", "Series", new { seriesId = "<#= SeriesId #>" }) +
|
||||
"><#= SeriesName #></a>")
|
||||
|
Loading…
Reference in New Issue
Block a user