public async Task <IActionResult> Index(PagerParameters pagerParameters) { if (!await _authorizationService.AuthorizeAsync(User, Permissions.ManageShortcodeTemplates)) { return(Forbid()); } var siteSettings = await _siteService.GetSiteSettingsAsync(); var pager = new Pager(pagerParameters, siteSettings.PageSize); var shortcodeTemplatesDocument = await _shortcodeTemplatesManager.GetShortcodeTemplatesDocumentAsync(); var count = shortcodeTemplatesDocument.ShortcodeTemplates.Count; var shortcodeTemplates = shortcodeTemplatesDocument.ShortcodeTemplates.OrderBy(x => x.Key) .Skip(pager.GetStartIndex()) .Take(pager.PageSize); var pagerShape = (await New.Pager(pager)).TotalItemCount(count); var model = new ShortcodeTemplateIndexViewModel { ShortcodeTemplates = shortcodeTemplates.Select(x => new ShortcodeTemplateEntry { Name = x.Key, ShortcodeTemplate = x.Value }).ToList(), Pager = pagerShape }; return(View("Index", model)); }
public async Task <IActionResult> Index(ContentOptions options, PagerParameters pagerParameters) { if (!await _authorizationService.AuthorizeAsync(User, Permissions.ManageShortcodeTemplates)) { return(Forbid()); } var siteSettings = await _siteService.GetSiteSettingsAsync(); var pager = new Pager(pagerParameters, siteSettings.PageSize); var shortcodeTemplatesDocument = await _shortcodeTemplatesManager.GetShortcodeTemplatesDocumentAsync(); var shortcodeTemplates = shortcodeTemplatesDocument.ShortcodeTemplates.ToList(); if (!String.IsNullOrWhiteSpace(options.Search)) { shortcodeTemplates = shortcodeTemplates.Where(x => x.Key.Contains(options.Search, StringComparison.OrdinalIgnoreCase)).ToList(); } var count = shortcodeTemplates.Count; shortcodeTemplates = shortcodeTemplates.OrderBy(x => x.Key) .Skip(pager.GetStartIndex()) .Take(pager.PageSize).ToList(); var pagerShape = (await New.Pager(pager)).TotalItemCount(count); var model = new ShortcodeTemplateIndexViewModel { ShortcodeTemplates = shortcodeTemplates.Select(x => new ShortcodeTemplateEntry { Name = x.Key, ShortcodeTemplate = x.Value }).ToList(), Options = options, Pager = pagerShape }; model.Options.ContentsBulkAction = new List <SelectListItem>() { new SelectListItem() { Text = S["Delete"], Value = nameof(ContentsBulkAction.Remove) } }; return(View("Index", model)); }
public async Task ProcessDeploymentStepAsync(DeploymentStep step, DeploymentPlanResult result) { var allTemplatesStep = step as AllShortcodeTemplatesDeploymentStep; if (allTemplatesStep == null) { return; } var templateObjects = new JObject(); var templates = await _templatesManager.GetShortcodeTemplatesDocumentAsync(); foreach (var template in templates.ShortcodeTemplates) { templateObjects[template.Key] = JObject.FromObject(template.Value); } result.Steps.Add(new JObject( new JProperty("name", "ShortcodeTemplates"), new JProperty("ShortcodeTemplates", templateObjects) )); }