public virtual IActionResult SeNames(UrlRecordSearchModel searchModel) { //prepare model UrlRecordListModel model = _commonModelFactory.PrepareUrlRecordListModel(searchModel); return(Json(model)); }
public virtual IActionResult SeNames() { //prepare model UrlRecordSearchModel model = _commonModelFactory.PrepareUrlRecordSearchModel(new UrlRecordSearchModel()); return(View(model)); }
/// <summary> /// Prepare URL record search model /// </summary> /// <param name="searchModel">URL record search model</param> /// <returns>URL record search model</returns> public virtual UrlRecordSearchModel PrepareUrlRecordSearchModel(UrlRecordSearchModel searchModel) { if (searchModel == null) { throw new ArgumentNullException(nameof(searchModel)); } //prepare page parameters searchModel.SetGridPageSize(); return(searchModel); }
public virtual IActionResult SeNames(UrlRecordSearchModel searchModel) { if (!_permissionService.Authorize(StandardPermissionProvider.ManageMaintenance)) { return(AccessDeniedKendoGridJson()); } //prepare model var model = _commonModelFactory.PrepareUrlRecordListModel(searchModel); return(Json(model)); }
/// <returns>A task that represents the asynchronous operation</returns> public virtual async Task <IActionResult> SeNames(UrlRecordSearchModel searchModel) { if (!await _permissionService.AuthorizeAsync(StandardPermissionProvider.ManageMaintenance)) { return(await AccessDeniedDataTablesJson()); } //prepare model var model = await _commonModelFactory.PrepareUrlRecordListModelAsync(searchModel); return(Json(model)); }
/// <summary> /// Prepare paged URL record list model /// </summary> /// <param name="searchModel">URL record search model</param> /// <returns>URL record list model</returns> public virtual UrlRecordListModel PrepareUrlRecordListModel(UrlRecordSearchModel searchModel) { if (searchModel == null) { throw new ArgumentNullException(nameof(searchModel)); } //get URL records var urlRecords = _urlRecordService.GetAllUrlRecords(slug: searchModel.SeName, pageIndex: searchModel.Page - 1, pageSize: searchModel.PageSize); //get URL helper IUrlHelper urlHelper = _urlHelperFactory.GetUrlHelper(_actionContextAccessor.ActionContext); //prepare list model UrlRecordListModel model = new UrlRecordListModel { Data = urlRecords.Select(urlRecord => { //fill in model values from the entity UrlRecordModel urlRecordModel = urlRecord.ToModel <UrlRecordModel>(); //details URL string detailsUrl = string.Empty; string entityName = urlRecord.EntityName?.ToLowerInvariant() ?? string.Empty; switch (entityName) { case "blogpost": detailsUrl = urlHelper.Action("BlogPostEdit", "Blog", new { id = urlRecord.EntityId }); break; case "category": detailsUrl = urlHelper.Action("Edit", "Category", new { id = urlRecord.EntityId }); break; case "newsitem": detailsUrl = urlHelper.Action("NewsItemEdit", "News", new { id = urlRecord.EntityId }); break; case "topic": detailsUrl = urlHelper.Action("Edit", "Topic", new { id = urlRecord.EntityId }); break; } urlRecordModel.DetailsUrl = detailsUrl; return(urlRecordModel); }), Total = urlRecords.TotalCount }; return(model); }
/// <summary> /// Prepare paged URL record list model /// </summary> /// <param name="searchModel">URL record search model</param> /// <returns>URL record list model</returns> public virtual UrlRecordListModel PrepareUrlRecordListModel(UrlRecordSearchModel searchModel) { if (searchModel == null) { throw new ArgumentNullException(nameof(searchModel)); } //get URL records var urlRecords = _urlRecordService.GetAllUrlRecords(slug: searchModel.SeName, pageIndex: searchModel.Page - 1, pageSize: searchModel.PageSize); //get URL helper var urlHelper = _urlHelperFactory.GetUrlHelper(_actionContextAccessor.ActionContext); //prepare list model var model = new UrlRecordListModel { Data = urlRecords.Select(urlRecord => { //fill in model values from the entity var urlRecordModel = urlRecord.ToModel <UrlRecordModel>(); urlRecordModel.Name = urlRecord.Slug; //fill in additional values (not existing in the entity) urlRecordModel.Language = urlRecord.LanguageId == 0 ? _localizationService.GetResource("Admin.System.SeNames.Language.Standard") : _languageService.GetLanguageById(urlRecord.LanguageId)?.Name ?? "Unknown"; //details URL var detailsUrl = string.Empty; var entityName = urlRecord.EntityName?.ToLowerInvariant() ?? string.Empty; //switch (entityName) //{ //case "Type": //detailsUrl = urlHelper.Action("actionName", "controllerName", new { id = urlRecord.EntityId }); //break; //} urlRecordModel.DetailsUrl = detailsUrl; return(urlRecordModel); }), Total = urlRecords.TotalCount }; return(model); }
/// <summary> /// Prepare URL record search model /// </summary> /// <param name="searchModel">URL record search model</param> /// <returns>URL record search model</returns> public virtual UrlRecordSearchModel PrepareUrlRecordSearchModel(UrlRecordSearchModel searchModel) { if (searchModel == null) { throw new ArgumentNullException(nameof(searchModel)); } //prepare available languages //we insert 0 as 'Standard' language. //let's insert -1 for 'All' language selection. _baseAdminModelFactory.PrepareLanguages(searchModel.AvailableLanguages, defaultItemText: _localizationService.GetResource("Admin.System.SeNames.List.Language.Standard")); searchModel.AvailableLanguages.Insert(0, new SelectListItem { Text = _localizationService.GetResource("Admin.Common.All"), Value = "-1" }); searchModel.LanguageId = -1; //prepare "is active" filter (0 - all; 1 - active only; 2 - inactive only) searchModel.AvailableActiveOptions.Add(new SelectListItem { Value = "0", Text = _localizationService.GetResource("Admin.System.SeNames.List.IsActive.All") }); searchModel.AvailableActiveOptions.Add(new SelectListItem { Value = "1", Text = _localizationService.GetResource("Admin.System.SeNames.List.IsActive.ActiveOnly") }); searchModel.AvailableActiveOptions.Add(new SelectListItem { Value = "2", Text = _localizationService.GetResource("Admin.System.SeNames.List.IsActive.InactiveOnly") }); //prepare page parameters searchModel.SetGridPageSize(); return(searchModel); }
/// <summary> /// Prepare paged URL record list model /// </summary> /// <param name="searchModel">URL record search model</param> /// <returns>URL record list model</returns> public virtual UrlRecordListModel PrepareUrlRecordListModel(UrlRecordSearchModel searchModel) { if (searchModel == null) { throw new ArgumentNullException(nameof(searchModel)); } //get URL records var urlRecords = _urlRecordService.GetAllUrlRecords(slug: searchModel.SeName, pageIndex: searchModel.Page - 1, pageSize: searchModel.PageSize); //get URL helper var urlHelper = _urlHelperFactory.GetUrlHelper(_actionContextAccessor.ActionContext); //prepare list model var model = new UrlRecordListModel().PrepareToGrid(searchModel, urlRecords, () => { return(urlRecords.Select(urlRecord => { //fill in model values from the entity var urlRecordModel = urlRecord.ToModel <UrlRecordModel>(); //fill in additional values (not existing in the entity) urlRecordModel.Name = urlRecord.Slug; urlRecordModel.Language = urlRecord.LanguageId == 0 ? _localizationService.GetResource("Admin.System.SeNames.Language.Standard") : _languageService.GetLanguageById(urlRecord.LanguageId)?.Name ?? "Unknown"; //details URL var detailsUrl = string.Empty; var entityName = urlRecord.EntityName?.ToLowerInvariant() ?? string.Empty; switch (entityName) { case "blogpost": detailsUrl = urlHelper.Action("BlogPostEdit", "Blog", new { id = urlRecord.EntityId }); break; case "category": detailsUrl = urlHelper.Action("Edit", "Category", new { id = urlRecord.EntityId }); break; case "manufacturer": detailsUrl = urlHelper.Action("Edit", "Manufacturer", new { id = urlRecord.EntityId }); break; case "product": detailsUrl = urlHelper.Action("Edit", "Product", new { id = urlRecord.EntityId }); break; case "newsitem": detailsUrl = urlHelper.Action("NewsItemEdit", "News", new { id = urlRecord.EntityId }); break; case "topic": detailsUrl = urlHelper.Action("Edit", "Topic", new { id = urlRecord.EntityId }); break; case "vendor": detailsUrl = urlHelper.Action("Edit", "Vendor", new { id = urlRecord.EntityId }); break; } urlRecordModel.DetailsUrl = detailsUrl; return urlRecordModel; })); }); return(model); }