public IndexRouteParams(IndexRouteParams source, int? page) { ParamIs.NotNull(() => source); discType = (source.discType != DiscType.Unknown ? source.discType : null); draftsOnly = (source.draftsOnly == true ? source.draftsOnly : null); filter = source.filter; matchMode = source.matchMode; sort = source.sort; view = source.view; this.page = page; }
public IndexRouteParams(IndexRouteParams source, int?page) { ParamIs.NotNull(() => source); discType = (source.discType != DiscType.Unknown ? source.discType : null); draftsOnly = (source.draftsOnly == true ? source.draftsOnly : null); filter = source.filter; matchMode = source.matchMode; sort = source.sort; view = source.view; this.page = page; }
public Index(PartialFindResult <AlbumContract> result, string filter, DiscType discType, AlbumSortRule sortRule, EntryViewMode view, int?page, bool?draftsOnly, IndexRouteParams routeParams) { Page = page ?? 1; Albums = new StaticPagedList <AlbumContract>(result.Items, Page, 30, result.TotalCount); DiscType = discType; DraftsOnly = draftsOnly ?? false; Filter = filter; Sort = sortRule; View = view; RouteParams = routeParams; }
public Index(PartialFindResult<AlbumContract> result, string filter, DiscType discType, AlbumSortRule sortRule, EntryViewMode view, int? page, bool? draftsOnly, IndexRouteParams routeParams) { Page = page ?? 1; Albums = new StaticPagedList<AlbumContract>(result.Items, Page, 30, result.TotalCount); DiscType = discType; DraftsOnly = draftsOnly ?? false; Filter = filter; Sort = sortRule; View = view; RouteParams = routeParams; }
// // GET: /Album/ public ActionResult Index(IndexRouteParams routeParams) { return RedirectToAction("Index", "Search", new SearchRouteParams { searchType = EntryType.Album, filter = routeParams.filter, sort = routeParams.sort, discType = routeParams.discType }); }
// // GET: /Album/ public ActionResult Index(IndexRouteParams routeParams) { WebHelper.VerifyUserAgent(Request); var filter = routeParams.filter; var page = routeParams.page; var draftsOnly = routeParams.draftsOnly; var dType = routeParams.discType ?? DiscType.Unknown; var matchMode = routeParams.matchMode ?? NameMatchMode.Auto; var sortRule = routeParams.sort ?? AlbumSortRule.Name; var viewMode = routeParams.view ?? EntryViewMode.Details; if (matchMode == NameMatchMode.Auto && filter != null && filter.Length <= 2) matchMode = NameMatchMode.StartsWith; var queryParams = new AlbumQueryParams(filter, dType, ((page ?? 1) - 1) * 30, 30, draftsOnly ?? false, true, moveExactToTop: false, sortRule: sortRule, nameMatchMode: matchMode); var result = Service.Find(queryParams); if (page == null && result.TotalCount == 1 && result.Items.Length == 1) { return RedirectToAction("Details", new { id = result.Items[0].Id }); } var model = new Index(result, filter, dType, sortRule, viewMode, page, draftsOnly, routeParams); SetSearchEntryType(EntryType.Album); return View(model); }