public ActionResult _Search(AdminEditionSearchModel searchModel) { if ( string.IsNullOrWhiteSpace(searchModel.DirectorEmail) && searchModel.EventId == null && searchModel.EditionStatusTypeIds == null && searchModel.EventActivityIds == null && searchModel.EventTypes == null) { ModelState.AddModelError("FilterOptions", "At least one filter option must be applied."); } if (!ModelState.IsValid) { return(Json(new { success = false, message = ModelState.GetErrors() }, JsonRequestBehavior.AllowGet)); } var directorEmail = searchModel.DirectorEmail?.Split('|')[1]; var editionCount = GetEditionListItemsCount(searchModel.EventId, directorEmail, searchModel.RegionNames, searchModel.CountryCode, searchModel.CityName, searchModel.EditionStatusTypeIds, searchModel.EventActivityIds, searchModel.EventTypeIds); if (editionCount > 1000) { return(Json(new { success = false, message = $"Query returned more than 1000 ({editionCount}) items. Make a more specific search." })); } var model = GetEditionListItems(searchModel.EventId, directorEmail, searchModel.RegionNames, searchModel.CountryCode, searchModel.CityName, searchModel.EditionStatusTypeIds, searchModel.EventActivityIds, searchModel.EventTypeIds); var json = Json(new { success = true, data = this.RenderRazorViewToString("_List", model) }); json.MaxJsonLength = int.MaxValue; return(json); }
public ActionResult _Search() { var model = new AdminEditionSearchModel { Regions = Regions, EditionStatusTypes = EditionStatusType.Approved.ToEnumList().OrderBy(x => x.ToString()).ToList(), EventActivities = EventActivity.ShowCancelled.ToEnumList().OrderBy(x => x.ToString()).ToList(), EventTypes = EventType.Conference.ToEnumList().OrderBy(x => x.ToString()).ToList() }; return(PartialView(model)); }