@model List<HistoryModel>
@using NzbDrone.Web.Models
@using NzbDrone.Web.Helpers
@{ViewBag.Title = "History";}
@section ActionMenu{
    <ul class="sub-menu">
        <li>@Ajax.ActionLink("Trim History", "Trim", "History", new AjaxOptions { OnSuccess = "reloadHistoryGrid" })</li>
        <li>@Ajax.ActionLink("Purge History", "Purge", "History", new AjaxOptions { OnSuccess = "reloadHistoryGrid" })</li>
    </ul>
}
@section HeaderContent
{
    @Html.IncludeCss("Grid.css")
}
<div class="grid-container">
    @{Html.Telerik().Grid<HistoryModel>().Name("history")
              .TableHtmlAttributes(new { @class = "Grid" })
              .Columns(columns =>
                           {
                               columns.Bound(c => c.Indexer)
                                       .ClientTemplate("<center><img alt='<#= Indexer #>' src='" + Url.Content("~/Content/Images/Indexers/") + "<#= Indexer #>.png' /></center>")
                                       .Title("")
                                       .Width(20);
                               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(50);
                               columns.Bound(c => c.EpisodeNumber).Title("Episode #").Width(50);
                               columns.Bound(c => c.EpisodeTitle).Title("Episode Title");
                               columns.Bound(c => c.Quality).Title("Quality").Width(50);
                               columns.Bound(c => c.Date).Title("Grabbed on");
                               columns.Bound(c => c.HistoryId)
                                       .Title("Actions")
                                       .ClientTemplate(Ajax.ImageActionLink("../../Content/Images/X.png", new { Alt = "Delete", Title = "Delete from history", @class = "searchImage" }, "Delete", "History", new { HistoryId = "<#= HistoryId #>" }, new AjaxOptions { OnSuccess = "reloadHistoryGrid" }, null).ToString() +
                                                       Ajax.ImageActionLink("../../Content/Images/Downloading.png", new { Alt = "Redownload", Title = "Redownlod Episode", @class = "searchImage" }, "Redownload", "History", new { HistoryId = "<#= HistoryId #>", EpisodeId = "<#= EpisodeId #>" }, new AjaxOptions { OnSuccess = "reloadHistoryGrid" }, null).ToString())
                                       .Width("40");
                           })
              .DetailView(detailView => detailView.ClientTemplate(
                                                                  "<fieldset>" +
                                                                  "<div><b>Overview: </b><#= EpisodeOverview #></div>" +
                                                                  "<div><b>NZB Title: </b><#= NzbTitle #></div>" +
                                                                  "<div><b>Proper: </b><#= IsProper #></div>" +
                                                                  "</fieldset>"
                                                ))
              .DataBinding(data => data.Ajax().Select("_AjaxBinding", "History"))
              .Sortable(rows => rows.OrderBy(epSort => epSort.Add(c => c.Date).Descending()).Enabled(true))
              .Pageable(
                        c =>
                        c.PageSize(20).Position(GridPagerPosition.Bottom).Style(GridPagerStyles.NextPrevious))
              .Render();}
</div>
<script type="text/javascript">
    deleteHistoryRowUrl = '../History/Delete';
    redownloadUrl = '../History/Redownload';

    function reloadHistoryGrid() {
        var grid = $('#history').data('tGrid');
        grid.ajaxRequest();
    }
</script>