mirror of
https://github.com/lidarr/lidarr.git
synced 2025-07-14 09:03:49 -07:00
Fixed: History grid loads faster (lazy loaded)
This commit is contained in:
parent
69a19b14c8
commit
d44c07b27b
23 changed files with 245 additions and 39 deletions
|
@ -1,6 +1,9 @@
|
|||
using System.Linq;
|
||||
using System;
|
||||
using System.Linq;
|
||||
using System.Linq.Dynamic;
|
||||
using System.Web.Mvc;
|
||||
using System.Web.Script.Serialization;
|
||||
using DataTables.Mvc.Core.Models;
|
||||
using NzbDrone.Core.Helpers;
|
||||
using NzbDrone.Core.Jobs;
|
||||
using NzbDrone.Core.Providers;
|
||||
|
@ -24,15 +27,46 @@ namespace NzbDrone.Web.Controllers
|
|||
return View();
|
||||
}
|
||||
|
||||
public JsonResult AjaxBinding()
|
||||
//public JsonResult AjaxBinding()
|
||||
//{
|
||||
// var history = _historyProvider.AllItemsWithRelationships().Select(h => new HistoryModel
|
||||
// {
|
||||
// HistoryId = h.HistoryId,
|
||||
// SeriesId = h.SeriesId,
|
||||
// EpisodeNumbering = string.Format("{0}x{1:00}", h.Episode.SeasonNumber, h.Episode.EpisodeNumber),
|
||||
// EpisodeTitle = h.Episode.Title,
|
||||
// EpisodeOverview = h.Episode.Overview,
|
||||
// SeriesTitle = h.SeriesTitle,
|
||||
// SeriesTitleSorter = SortHelper.SkipArticles(h.SeriesTitle),
|
||||
// NzbTitle = h.NzbTitle,
|
||||
// Quality = h.Quality.ToString(),
|
||||
// IsProper = h.IsProper,
|
||||
// Date = h.Date.ToString(),
|
||||
// DateSorter = h.Date.ToString("MM/dd/yyyy h:mm:ss tt"),
|
||||
// Indexer = h.Indexer,
|
||||
// EpisodeId = h.EpisodeId,
|
||||
// NzbInfoUrl = h.NzbInfoUrl
|
||||
// }).OrderByDescending(h => h.Date).ToList();
|
||||
|
||||
// return Json(new
|
||||
// {
|
||||
// aaData = history
|
||||
// },
|
||||
// JsonRequestBehavior.AllowGet);
|
||||
//}
|
||||
|
||||
public ActionResult AjaxBinding(DataTablesPageRequest pageRequest)
|
||||
{
|
||||
var history = _historyProvider.AllItemsWithRelationships().Select(h => new HistoryModel
|
||||
var pageResult = _historyProvider.GetPagedItems(pageRequest);
|
||||
var totalItems = _historyProvider.Count();
|
||||
|
||||
var items = pageResult.Items.Select(h => new HistoryModel
|
||||
{
|
||||
HistoryId = h.HistoryId,
|
||||
SeriesId = h.SeriesId,
|
||||
EpisodeNumbering = string.Format("{0}x{1:00}", h.Episode.SeasonNumber, h.Episode.EpisodeNumber),
|
||||
EpisodeTitle = h.Episode.Title,
|
||||
EpisodeOverview = h.Episode.Overview,
|
||||
EpisodeNumbering = string.Format("{0}x{1:00}", h.SeasonNumber, h.EpisodeNumber),
|
||||
EpisodeTitle = h.EpisodeTitle,
|
||||
EpisodeOverview = h.EpisodeOverview,
|
||||
SeriesTitle = h.SeriesTitle,
|
||||
SeriesTitleSorter = SortHelper.SkipArticles(h.SeriesTitle),
|
||||
NzbTitle = h.NzbTitle,
|
||||
|
@ -43,11 +77,14 @@ namespace NzbDrone.Web.Controllers
|
|||
Indexer = h.Indexer,
|
||||
EpisodeId = h.EpisodeId,
|
||||
NzbInfoUrl = h.NzbInfoUrl
|
||||
}).OrderByDescending(h => h.Date).ToList();
|
||||
});
|
||||
|
||||
return Json(new
|
||||
{
|
||||
aaData = history
|
||||
sEcho = pageRequest.Echo,
|
||||
iTotalRecords = totalItems,
|
||||
iTotalDisplayRecords = pageResult.TotalItems,
|
||||
aaData = items
|
||||
},
|
||||
JsonRequestBehavior.AllowGet);
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue