Esempio n. 1
0
        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;
        }
Esempio n. 2
0
        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;
        }
Esempio n. 3
0
 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;
 }
Esempio n. 4
0
 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;
 }
Esempio n. 5
0
 //
 // 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
     });
 }
Esempio n. 6
0
        //
        // 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);
        }