public ActionResult MenuItems(int menuId) { if (!CheckPermission(MenusPermissions.ManageMenus)) { return(new HttpUnauthorizedResult()); } WorkContext.Breadcrumbs.Add(T("Menus"), Url.Action("Index", new { area = Constants.Areas.Menus })); WorkContext.Breadcrumbs.Add(T("Menu Items")); var result = new ControlGridFormResult <MenuItemModel> { Title = T("Manage Menu Items").Text, UpdateActionName = "UpdateItem", FetchAjaxSource = request => GetMenuItems(menuId), EnablePaginate = false, GridWrapperStartHtml = Constants.Grid.GridWrapperStartHtml, GridWrapperEndHtml = Constants.Grid.GridWrapperEndHtml }; result.AddColumn(x => x.Text); result.AddColumn(x => x.Url).RenderAsLink(x => x.Url, x => x.IsExternalUrl ? x.Url : Url.Content("~/" + x.Url)); result.AddColumn(x => x.Position); result.AddColumn(x => x.Enabled).AlignCenter().RenderAsStatusImage(); result.AddRowAction(true) .HasText(T("On/Off")) .HasName("Enable") .HasValue(x => x.Id.ToString()) .HasButtonSize(ButtonSize.ExtraSmall); result.AddAction() .HasText(T("Create")) .HasIconCssClass("cx-icon cx-icon-add") .HasUrl(Url.Action("CreateItem", RouteData.Values)) .HasButtonStyle(ButtonStyle.Primary) .ShowModalDialog(); result.AddRowAction() .HasText(T("Edit")) .HasUrl(x => Url.Action("EditItem", RouteData.Values.Merge(new { id = x.Id }))) .HasButtonSize(ButtonSize.ExtraSmall) .ShowModalDialog(); result.AddRowAction(true) .HasText(T("Delete")) .HasName("Delete") .HasValue(x => x.Id.ToString()) .HasButtonSize(ButtonSize.ExtraSmall) .HasButtonStyle(ButtonStyle.Danger) .HasConfirmMessage(T(Constants.Messages.ConfirmDeleteRecord).Text); result.AddReloadEvent("UPDATE_MENUITEM_COMPLETE"); result.AddReloadEvent("DELETE_MENUITEM_COMPLETE"); return(result); }
public ActionResult Index(int listId) { if (!CheckPermission(ListsPermissions.ManageLists)) { return(new HttpUnauthorizedResult()); } var list = listService.GetById(listId); WorkContext.Breadcrumbs.Add(T("Manage Lists"), Url.Action("Index", "List", new { area = Constants.Areas.Lists })); WorkContext.Breadcrumbs.Add(list.Name); WorkContext.Breadcrumbs.Add(T("Fields")); var result = new ControlGridFormResult <ListField> { Title = T("Manage Fields").Text, UpdateActionName = "Update", FetchAjaxSource = options => GetFields(options, listId), GridWrapperStartHtml = Constants.Grid.GridWrapperStartHtml, GridWrapperEndHtml = Constants.Grid.GridWrapperEndHtml }; result.AddColumn(x => x.Title); result.AddColumn(x => x.Name); result.AddColumn(x => x.FieldType).HasHeaderText("Field Type"); result.AddColumn(x => x.Position); result.AddColumn(x => x.Required).AlignCenter().RenderAsStatusImage(false, true); result.AddAction() .HasText(T("Create")) .HasIconCssClass("cx-icon cx-icon-add") .HasUrl(Url.Action("Create", RouteData.Values.Merge(new { listId }))) .HasButtonStyle(ButtonStyle.Primary) .ShowModalDialog(); result.AddRowAction() .HasText(T("Edit")) .HasUrl(x => Url.Action("Edit", RouteData.Values.Merge(new { id = x.Id }, "listId"))) .HasButtonSize(ButtonSize.ExtraSmall) .ShowModalDialog(); result.AddRowAction(true) .HasText(T("Delete")) .HasName("Delete") .HasValue(x => x.Id.ToString()) .HasButtonSize(ButtonSize.ExtraSmall) .HasButtonStyle(ButtonStyle.Danger) .HasConfirmMessage(T(Constants.Messages.ConfirmDeleteRecord).Text); result.AddReloadEvent("UPDATE_ENTITY_COMPLETE"); result.AddReloadEvent("DELETE_ENTITY_COMPLETE"); return(result); }
public ActionResult Index() { if (!CheckPermission(MenusPermissions.ManageMenus)) { return(new HttpUnauthorizedResult()); } WorkContext.Breadcrumbs.Add(T("Menus")); var result = new ControlGridFormResult <Menu> { Title = T("Manage Menus").Text, UpdateActionName = "Update", FetchAjaxSource = GetMenus, GridWrapperStartHtml = Constants.Grid.GridWrapperStartHtml, GridWrapperEndHtml = Constants.Grid.GridWrapperEndHtml }; result.AddColumn(x => x.Name); result.AddColumn(x => x.IsMainMenu).HasHeaderText(T("Is Main Menu")).AlignCenter().RenderAsStatusImage(); result.AddRowAction() .HasText(T("Menu Items")) .HasUrl(x => Url.Action("MenuItems", RouteData.Values.Merge(new { menuId = x.Id }))) .HasButtonSize(ButtonSize.ExtraSmall); result.AddAction() .HasText(T("Create")) .HasIconCssClass("cx-icon cx-icon-add") .HasUrl(Url.Action("Create", RouteData.Values)) .HasButtonStyle(ButtonStyle.Primary) .ShowModalDialog() .HasCssClass(Constants.RowLeft) .HasBoxButton(false); result.AddRowAction() .HasText(T("Edit")) .HasUrl(x => Url.Action("Edit", RouteData.Values.Merge(new { id = x.Id }))) .HasButtonSize(ButtonSize.ExtraSmall) .ShowModalDialog(); result.AddRowAction(true) .HasText(T("Delete")) .HasName("Delete") .HasValue(x => x.Id.ToString()) .HasButtonSize(ButtonSize.ExtraSmall) .HasButtonStyle(ButtonStyle.Danger) .HasConfirmMessage(T(Constants.Messages.ConfirmDeleteRecord).Text); result.AddReloadEvent("UPDATE_MENU_COMPLETE"); result.AddReloadEvent("DELETE_MENU_COMPLETE"); return(result); }
public ActionResult Index(int listId) { if (!CheckPermission(ListsPermissions.ManageLists)) { return(new HttpUnauthorizedResult()); } var list = listService.GetById(listId); WorkContext.Breadcrumbs.Add(T("Manage Lists"), Url.Action("Index", "List", new { area = Constants.Areas.Lists })); WorkContext.Breadcrumbs.Add(list.Name); WorkContext.Breadcrumbs.Add(T("Comments")); var result = new ControlGridFormResult <ListComment> { Title = list.Name, UpdateActionName = "Update", FetchAjaxSource = options => GetListItemComments(options, listId), EnablePaginate = true, DefaultPageSize = WorkContext.DefaultPageSize, EnableSearch = true, GridWrapperStartHtml = Constants.Grid.GridWrapperStartHtml, GridWrapperEndHtml = Constants.Grid.GridWrapperEndHtml }; result.AddColumn(x => x.Name); result.AddColumn(x => x.Email); result.AddColumn(x => x.IPAddress).HasHeaderText("IP Address"); result.AddColumn(x => x.CreatedDate).HasHeaderText("Created").HasDisplayFormat("{0:d}"); result.AddColumn(x => x.IsApproved).HasHeaderText("Approved").RenderAsStatusImage().AlignCenter(); result.AddRowAction() .HasText(T("Edit")) .HasUrl(x => Url.Action("Edit", RouteData.Values.Merge(new { id = x.Id }, "listId"))) .HasButtonSize(ButtonSize.ExtraSmall) .ShowModalDialog(700); result.AddRowAction(true) .HasText(T("Delete")) .HasName("Delete") .HasValue(x => x.Id.ToString()) .HasButtonSize(ButtonSize.ExtraSmall) .HasButtonStyle(ButtonStyle.Danger) .HasConfirmMessage(T(Constants.Messages.ConfirmDeleteRecord).Text); result.AddReloadEvent("UPDATE_ENTITY_COMPLETE"); result.AddReloadEvent("DELETE_ENTITY_COMPLETE"); return(result); }
public ActionResult Index() { WorkContext.Breadcrumbs.Add(new Breadcrumb { Text = T("Quản lý sản phẩm"), Url = "#" }); var result = new ControlGridFormResult <ProductInfo>(); var siteSettings = WorkContext.Resolve <SiteSettings>(); result.Title = this.T("Quản lý sản phẩm"); result.CssClass = "table table-bordered table-striped"; result.UpdateActionName = "Update"; result.IsAjaxSupported = true; result.DefaultPageSize = siteSettings.DefaultPageSize; result.EnablePaginate = true; result.FetchAjaxSource = this.GetProducts; result.GridWrapperStartHtml = Constants.Grid.GridWrapperStartHtml; result.GridWrapperEndHtml = Constants.Grid.GridWrapperEndHtml; result.ClientId = TableName; result.ActionsColumnWidth = 180; result.AddCustomVar(Extensions.Constants.SearchText, "$('#" + Extensions.Constants.SearchText + "').val();", true); result.AddCustomVar(Extensions.Constants.ProductGroup, "$('#" + Extensions.Constants.ProductGroup + "').val();", true); result.AddColumn(x => x.Id, T("ID")).AlignCenter().HasWidth(100); result.AddColumn(x => x.Image, T("Ảnh đại diện")) .AlignCenter() .HasWidth(100) .RenderAsImage(y => y.Image, Extensions.Constants.CssThumbsSize); result.AddColumn(x => x.Name, T("Tên sản phẩm")); result.AddColumn(x => GetName(x), T("Loại")); result.AddColumn(x => x.Price, T("Giá")); result.AddColumn(x => x.IsPublished) .HasHeaderText(T("Đã đăng")) .AlignCenter() .HasWidth(100) .RenderAsStatusImage(); result.AddAction().HasText(this.T("Create")).HasUrl(this.Url.Action("Edit", new { id = 0 })).HasButtonStyle(ButtonStyle.Primary).HasBoxButton(false).HasCssClass(Constants.RowLeft).HasRow(true); result.AddRowAction().HasText(this.T("Edit")).HasUrl(x => Url.Action("Edit", new { id = x.Id })).HasButtonStyle(ButtonStyle.Default).HasButtonSize(ButtonSize.ExtraSmall); result.AddRowAction(true).HasText(this.T("Delete")).HasName("Delete").HasValue(x => Convert.ToString(x.Id)).HasButtonStyle(ButtonStyle.Danger).HasButtonSize(ButtonSize.ExtraSmall).HasConfirmMessage(this.T(Constants.Messages.ConfirmDeleteRecord)); result.AddAction(new ControlFormHtmlAction(BuildProductGroup)).HasParentClass(Constants.ContainerCssClassCol3); result.AddAction(new ControlFormHtmlAction(BuildSearchText)).HasParentClass(Constants.ContainerCssClassCol3); result.AddReloadEvent("UPDATE_ENTITY_COMPLETE"); result.AddReloadEvent("DELETE_ENTITY_COMPLETE"); return(result); }
public ActionResult Index() { if (!CheckPermission(Permissions.ManageSiteSettings)) { return(new HttpUnauthorizedResult()); } WorkContext.Breadcrumbs.Add(T("Settings")); var controlGrid = new ControlGridFormResult <SettingsModel> { Title = T("Settings"), FetchAjaxSource = GetSettings, ActionsColumnWidth = 100, GridWrapperStartHtml = Constants.Grid.GridWrapperStartHtml, GridWrapperEndHtml = Constants.Grid.GridWrapperEndHtml }; controlGrid.AddColumn(x => x.Name); controlGrid.AddRowAction() .HasUrl(x => Url.Action("Edit", new { id = x.Id })) .HasText(T("Edit")) .HasButtonSize(ButtonSize.ExtraSmall); return(controlGrid); }
protected override void OnViewIndex(ControlGridFormResult <Role> controlGrid) { controlGrid.ActionsColumnWidth = 200; controlGrid.AddColumn(x => x.Name); controlGrid.AddRowAction() .HasText(T("Permissions")) .HasUrl(x => Url.Action("EditPermissions", new { roleId = x.Id })) .HasButtonSize(ButtonSize.ExtraSmall); }
public ActionResult LocalizableStrings(int languageId) { if (!CheckPermission(StandardPermissions.FullAccess)) { return(new HttpUnauthorizedResult()); } ViewBag.Title = T("Manage Localizable Strings"); var language = languageService.GetById(languageId); WorkContext.Breadcrumbs.Add(T("Languages"), Url.Action("Index", "Language", new { area = Constants.Areas.Localization })); WorkContext.Breadcrumbs.Add(language.Name); WorkContext.Breadcrumbs.Add(T("Localizable Strings")); var result = new ControlGridFormResult <ComparitiveLocalizableString> { Title = "Manage Localizable Strings", CssClass = "table-excel", UpdateActionName = "Update", EnablePaginate = true, DefaultPageSize = 15, FetchAjaxSource = options => GetComparitiveTable(options, language.CultureCode), ActionsColumnWidth = 100, ClientId = TableName, EnableSearch = true }; result.AddCustomVar("SearchText", "$('#txtSearchText').val();", true); result.AddColumn(x => x.Key).RenderAsHtml(s => string.Format("{1}<input type=\"hidden\" name=\"KeyValue${0}\" value=\"{1}\" />", s.SequenceId, s.Key)); result.AddColumn(x => x.InvariantValue).HasHeaderText("Invariant String"); result.AddColumn(x => x.LocalizedValue).HasHeaderText("Localized String").RenderAsHtml(s => string.Format("<input type=\"text\" name=\"LocalizedValue${1}\" class=\"form-control input-sm\" value=\"{0}\">", s.LocalizedValue, s.SequenceId)); result.AddAction(true) .HasText(T("Save")) .HasName("Save") .HasIconCssClass("cx-icon cx-icon-save") .HasValue(language.CultureCode) .HasButtonStyle(ButtonStyle.Primary).HasParentClass(Constants.ContainerCssClassCol12); result.AddAction(new ControlFormHtmlAction(BuildSearchText)).HasParentClass(Constants.ContainerCssClassCol3); result.AddRowAction(true) .HasText(T("Delete")) .HasName("Delete") .HasValue(x => x.Key) .HasButtonStyle(ButtonStyle.Danger) .HasButtonSize(ButtonSize.ExtraSmall) .HasConfirmMessage(T(Constants.Messages.ConfirmDeleteRecord)); result.AddReloadEvent("UPDATE_ENTITY_COMPLETE"); return(result); }
public ActionResult Index() { WorkContext.Breadcrumbs.Add(new Breadcrumb { Text = T("Quản lý đơn hàng"), Url = "#" }); var result = new ControlGridFormResult <OrderInfo>(); var siteSettings = WorkContext.Resolve <SiteSettings>(); result.Title = this.T("Quản lý đơn hàng"); result.CssClass = "table table-bordered table-striped"; result.UpdateActionName = "Update"; result.IsAjaxSupported = true; result.DefaultPageSize = siteSettings.DefaultPageSize; result.EnablePaginate = true; result.FetchAjaxSource = this.GetOrders; result.GridWrapperStartHtml = Constants.Grid.GridWrapperStartHtml; result.GridWrapperEndHtml = Constants.Grid.GridWrapperEndHtml; result.ClientId = TableName; result.AddColumn(x => x.OrderCode, T("Mã")); result.AddColumn(x => x.FullName, T("Họ và Tên")); result.AddColumn(x => x.PhoneNumber, T("Số điện thoại")); result.AddColumn(x => CMSSolutions.Extensions.EnumExtensions.GetDisplayName((PaymentType)x.PaymentType), T("Hình thức thanh toán")); result.AddColumn(x => x.IsPaid) .HasHeaderText(T("Đã thanh toán")) .AlignCenter() .HasWidth(100) .RenderAsStatusImage(); result.AddColumn(x => x.IsDeliverySuccessful) .HasHeaderText(T("Đã giao hàng")) .AlignCenter() .HasWidth(100) .RenderAsStatusImage(); result.AddRowAction().HasText(this.T("Xem")).HasUrl(x => Url.Action("Edit", new { id = x.Id })).HasButtonStyle(ButtonStyle.Default).HasButtonSize(ButtonSize.ExtraSmall); //result.AddRowAction().HasText(this.T("Export")).HasUrl(x => Url.Action("ExportExcelSend")).HasButtonStyle(ButtonStyle.Default).HasButtonSize(ButtonSize.ExtraSmall); result.AddRowAction(true).HasText(this.T("Hủy")).HasName("Delete").HasValue(x => Convert.ToString(x.Id)).HasButtonStyle(ButtonStyle.Danger).HasButtonSize(ButtonSize.ExtraSmall).HasConfirmMessage(this.T("Bạn có chắc chắn muốn hủy đơn hàng này không?")); result.AddReloadEvent("UPDATE_ENTITY_COMPLETE"); result.AddReloadEvent("DELETE_ENTITY_COMPLETE"); return(result); }
public ActionResult Index() { WorkContext.Breadcrumbs.Add(new Breadcrumb { Text = T("Quản lý chuyên mục"), Url = "#" }); var result = new ControlGridFormResult <CategoryInfo>(); var siteSettings = WorkContext.Resolve <SiteSettings>(); result.Title = this.T("Quản lý chuyên mục"); result.CssClass = "table table-bordered table-striped"; result.UpdateActionName = "Update"; result.IsAjaxSupported = true; result.DefaultPageSize = siteSettings.DefaultPageSize; result.EnablePaginate = true; result.FetchAjaxSource = GetCategories; result.GridWrapperStartHtml = Constants.Grid.GridWrapperStartHtml; result.GridWrapperEndHtml = Constants.Grid.GridWrapperEndHtml; result.ClientId = TableName; result.ActionsColumnWidth = 180; result.AddColumn(x => x.Id, T("Mã")) .AlignCenter() .HasWidth(60); result.AddColumn(x => x.ParentName, T("Chuyên mục cha")).HasWidth(150); result.AddColumn(x => x.ShortName, T("Tên chuyên mục")).HasWidth(150); result.AddColumn(x => x.Url, T("Đường dẫn Url")); result.AddColumn(x => x.IsActived) .HasHeaderText(T("Hiển thị")) .AlignCenter() .HasWidth(100) .RenderAsStatusImage(); result.AddAction().HasText(this.T("Create")).HasUrl(this.Url.Action("Create")).HasButtonStyle(ButtonStyle.Primary).HasBoxButton(false).HasCssClass(Constants.RowLeft).HasRow(true); result.AddRowAction().HasText(T("Images")).HasUrl(x => Url.Action("Edit", "AdminImages", new { id = 0, cateId = x.Id, articlesId = 0 })).HasButtonStyle(ButtonStyle.Info).HasButtonSize(ButtonSize.ExtraSmall); result.AddRowAction().HasText(this.T("Edit")).HasUrl(x => Url.Action("Edit", new { id = x.Id })).HasButtonStyle(ButtonStyle.Default).HasButtonSize(ButtonSize.ExtraSmall); result.AddRowAction(true).HasText(this.T("Delete")).HasName("Delete").HasValue(x => Convert.ToString(x.Id)).HasButtonStyle(ButtonStyle.Danger).HasButtonSize(ButtonSize.ExtraSmall).HasConfirmMessage(this.T(Constants.Messages.ConfirmDeleteRecord)); result.AddReloadEvent("UPDATE_ENTITY_COMPLETE"); result.AddReloadEvent("DELETE_ENTITY_COMPLETE"); return(result); }
protected override void OnViewIndex(ControlGridFormResult <Slider> controlGrid) { controlGrid.ActionsColumnWidth = 200; controlGrid.AddColumn(x => x.Name); controlGrid.AddColumn(x => x.Width); controlGrid.AddColumn(x => x.Height); controlGrid.AddRowAction() .HasText(T("Slides")) .HasUrl(x => Url.Action("Index", "Slide", new { sliderId = x.Id })) .HasButtonSize(ButtonSize.ExtraSmall) .HasButtonStyle(ButtonStyle.Primary); }
public ActionResult Index() { WorkContext.Breadcrumbs.Add(new Breadcrumb { Text = T("Quản lý banner"), Url = "#" }); var result = new ControlGridFormResult <SliderInfo>(); var siteSettings = WorkContext.Resolve <SiteSettings>(); result.Title = this.T("Quản lý banner"); result.CssClass = "table table-bordered table-striped"; result.UpdateActionName = "Update"; result.IsAjaxSupported = true; result.DefaultPageSize = siteSettings.DefaultPageSize; result.EnablePaginate = true; result.FetchAjaxSource = this.GetSliders; result.GridWrapperStartHtml = Constants.Grid.GridWrapperStartHtml; result.GridWrapperEndHtml = Constants.Grid.GridWrapperEndHtml; result.ClientId = TableName; result.ActionsColumnWidth = 120; result.AddCustomVar(Extensions.Constants.PageType, "$('#" + Extensions.Constants.PageType + "').val();", true); result.AddColumn(x => x.SortOrder, T("Thứ tự")).HasWidth(80).AlignCenter(); result.AddColumn(x => x.ImageUrl, T("Ảnh")) .AlignCenter() .HasWidth(200) .RenderAsImage(y => y.ImageUrl, Extensions.Constants.CssThumbsSize); result.AddColumn(x => x.Caption, T("Mô tả")); result.AddAction().HasText(this.T("Create")).HasUrl(this.Url.Action("Edit", new { id = 0 })).HasButtonStyle(ButtonStyle.Primary).HasBoxButton(false).HasCssClass(Constants.RowLeft).HasRow(true); result.AddRowAction().HasText(this.T("Edit")).HasUrl(x => Url.Action("Edit", new { id = x.Id })).HasButtonStyle(ButtonStyle.Default).HasButtonSize(ButtonSize.ExtraSmall); result.AddRowAction(true).HasText(this.T("Delete")).HasName("Delete").HasValue(x => Convert.ToString(x.Id)).HasButtonStyle(ButtonStyle.Danger).HasButtonSize(ButtonSize.ExtraSmall).HasConfirmMessage(this.T(Constants.Messages.ConfirmDeleteRecord)); result.AddAction(new ControlFormHtmlAction(BuildPageType)).HasParentClass(Constants.ContainerCssClassCol3); result.AddReloadEvent("UPDATE_ENTITY_COMPLETE"); result.AddReloadEvent("DELETE_ENTITY_COMPLETE"); return(result); }
protected override void OnViewIndex(ControlGridFormResult <User> controlGrid) { controlGrid.ClientId = TableName; controlGrid.ActionsColumnWidth = 250; controlGrid.AddCustomVar("RoleId", "$('#ddlRoleId').val();", true); controlGrid.AddCustomVar("SearchText", "$('#txtSearchText').val();", true); controlGrid.AddColumn(x => x.UserName).HasHeaderText(T("User Name")).EnableFilter(); controlGrid.AddColumn(x => x.FullName).HasHeaderText(T("Full Name")).EnableFilter(); controlGrid.AddColumn(x => x.Email).EnableFilter(); controlGrid.AddColumn(x => x.IsLockedOut) .HasHeaderText(T("Is Active")) .EnableFilter() .AlignCenter() .HasWidth(100) .RenderAsStatusImage(true); controlGrid.AddAction(new ControlFormHtmlAction(BuildRoleDropDown)).HasParentClass(Constants.ContainerCssClassCol3); controlGrid.AddAction(new ControlFormHtmlAction(BuildSearchText)).HasParentClass(Constants.ContainerCssClassCol3); controlGrid.AddRowAction() .HasText(T("Roles")) .HasUrl(x => Url.Action("EditRoles", new { userId = x.Id })) .HasButtonSize(ButtonSize.ExtraSmall) .ShowModalDialog(); controlGrid.AddRowAction() .HasText(T("Password")) .HasUrl(x => Url.Action("ChangePassword", new { userId = x.Id })) .HasButtonSize(ButtonSize.ExtraSmall) .ShowModalDialog(); controlGrid.GridWrapperStartHtml = Constants.Grid.GridWrapperStartHtml; controlGrid.GridWrapperEndHtml = Constants.Grid.GridWrapperEndHtml; }
public ActionResult Index() { WorkContext.Breadcrumbs.Add(new Breadcrumb { Text = T("Quản lý đối tác"), Url = "#" }); var result = new ControlGridFormResult <PartnerInfo>(); var siteSettings = WorkContext.Resolve <SiteSettings>(); result.Title = this.T("Quản lý đối tác"); result.CssClass = "table table-bordered table-striped"; result.UpdateActionName = "Update"; result.IsAjaxSupported = true; result.DefaultPageSize = siteSettings.DefaultPageSize; result.EnablePaginate = true; result.FetchAjaxSource = this.GetPartner; result.GridWrapperStartHtml = Constants.Grid.GridWrapperStartHtml; result.GridWrapperEndHtml = Constants.Grid.GridWrapperEndHtml; result.ClientId = TableName; result.ActionsColumnWidth = 120; result.AddColumn(x => x.SortOrder, T("Thứ tự")).HasWidth(80).AlignCenter(); result.AddColumn(x => x.Logo, T("Logo")) .AlignCenter() .HasWidth(100) .RenderAsImage(y => y.Logo, Extensions.Constants.CssThumbsSize); result.AddColumn(x => x.FullName, T("Tên đối tác")); result.AddColumn(x => x.PhoneNumber, T("Số điện thoại")); result.AddAction().HasText(this.T("Create")).HasUrl(this.Url.Action("Create")).HasButtonStyle(ButtonStyle.Primary).HasBoxButton(false).HasCssClass(Constants.RowLeft).HasRow(true); result.AddRowAction().HasText(this.T("Edit")).HasUrl(x => Url.Action("Edit", new { id = x.Id })).HasButtonStyle(ButtonStyle.Default).HasButtonSize(ButtonSize.ExtraSmall); result.AddRowAction(true).HasText(this.T("Delete")).HasName("Delete").HasValue(x => Convert.ToString(x.Id)).HasButtonStyle(ButtonStyle.Danger).HasButtonSize(ButtonSize.ExtraSmall).HasConfirmMessage(this.T(Constants.Messages.ConfirmDeleteRecord)); result.AddReloadEvent("UPDATE_ENTITY_COMPLETE"); result.AddReloadEvent("DELETE_ENTITY_COMPLETE"); return(result); }
public ActionResult Index() { WorkContext.Breadcrumbs.Add(new Breadcrumb { Text = T("Quản lý thông tin liên hệ"), Url = "#" }); var result = new ControlGridFormResult <EmailInfo>(); var siteSettings = WorkContext.Resolve <SiteSettings>(); result.Title = this.T("Quản lý thông tin liên hệ"); result.CssClass = "table table-bordered table-striped"; result.UpdateActionName = "Update"; result.IsAjaxSupported = true; result.DefaultPageSize = siteSettings.DefaultPageSize; result.EnablePaginate = true; result.FetchAjaxSource = this.GetEmails; result.GridWrapperStartHtml = Constants.Grid.GridWrapperStartHtml; result.GridWrapperEndHtml = Constants.Grid.GridWrapperEndHtml; result.ClientId = TableName; result.ActionsColumnWidth = 120; result.AddColumn(x => x.FullName, T("Họ và tên")); result.AddColumn(x => x.Email, T("Địa chỉ email")); result.AddColumn(x => x.IsBlocked) .HasHeaderText(T("Đã khóa")) .AlignCenter() .HasWidth(100) .RenderAsStatusImage(); result.AddAction().HasText(this.T("Create")).HasUrl(this.Url.Action("Edit", new { id = 0 })).HasButtonStyle(ButtonStyle.Primary).HasBoxButton(false).HasCssClass(Constants.RowLeft).HasRow(true); result.AddRowAction().HasText(this.T("Edit")).HasUrl(x => Url.Action("Edit", new { id = x.Id })).HasButtonStyle(ButtonStyle.Default).HasButtonSize(ButtonSize.ExtraSmall); result.AddRowAction(true).HasText(this.T("Delete")).HasName("Delete").HasValue(x => Convert.ToString(x.Id)).HasButtonStyle(ButtonStyle.Danger).HasButtonSize(ButtonSize.ExtraSmall).HasConfirmMessage(this.T(Constants.Messages.ConfirmDeleteRecord)); result.AddReloadEvent("UPDATE_ENTITY_COMPLETE"); result.AddReloadEvent("DELETE_ENTITY_COMPLETE"); return(result); }
protected override void OnViewIndex(ControlGridFormResult <Slide> controlGrid) { controlGrid.Title = T("Manage Slides"); controlGrid.ActionsColumnWidth = 200; controlGrid.AddColumn(x => x.Position); controlGrid.AddColumn(x => x.Title); controlGrid.AddColumn(x => x.BackgroundUrl).HasHeaderText(T("Background Url")); controlGrid.AddColumn(x => x.SlideDirection).AlignCenter().HasHeaderText(T("Slide Direction")); controlGrid.AddColumn(x => x.SlideDelay).AlignCenter().HasHeaderText(T("Slide Delay")); controlGrid.AddRowAction() .HasText(T("Sublayers")) .HasUrl(x => Url.Action("Sublayers", new { slideId = x.Id })) .HasButtonSize(ButtonSize.ExtraSmall) .HasButtonStyle(ButtonStyle.Primary); WorkContext.Breadcrumbs.Add(T("Slideshows"), Url.Action("Index", "Slider")); WorkContext.Breadcrumbs.Add(T("Slides")); }
public ActionResult History(int pageId) { if (!CheckPermission(PagesPermissions.ManagePages)) { return(new HttpUnauthorizedResult()); } var page = pageService.GetById(pageId); WorkContext.Breadcrumbs.Add(T("Pages"), Url.Action("Index", new { area = Constants.Areas.Pages })); WorkContext.Breadcrumbs.Add(page.Title); WorkContext.Breadcrumbs.Add(T("History")); var result = new ControlGridFormResult <HistoricPage> { Title = T("Manage Pages").Text, UpdateActionName = "Update", FetchAjaxSource = options => GetHistoricPages(options, pageId), EnablePaginate = true, EnableSearch = true, DefaultPageSize = WorkContext.DefaultPageSize, ActionsColumnWidth = 250, GridWrapperStartHtml = Constants.Grid.GridWrapperStartHtml, GridWrapperEndHtml = Constants.Grid.GridWrapperEndHtml }; result.AddColumn(x => x.Title).RenderAsHtml(x => string.Format("<a href=\"{1}\" target=\"_blank\">{0}</a>", x.Title, Url.Content("~/" + x.Slug))); result.AddColumn(x => x.Theme); result.AddColumn(x => x.ArchivedDate, T("Archived Date")); result.AddRowAction() .HasText(T("View")) .HasUrl(x => Url.Action("ViewHistoricPage", RouteData.Values.Merge(new { id = x.Id }))) .HasButtonSize(ButtonSize.ExtraSmall) .HasButtonStyle(ButtonStyle.Primary); result.AddReloadEvent("UPDATE_ENTITY_COMPLETE"); result.AddReloadEvent("RESTORE_ENTITY_COMPLETE"); return(result); }
public ActionResult Index() { if (!CheckPermission(StandardPermissions.FullAccess)) { return(new HttpUnauthorizedResult()); } WorkContext.Breadcrumbs.Add(T("Languages")); var result = new ControlGridFormResult <Domain.Language> { Title = "Manage Languages", UpdateActionName = "Update", DefaultPageSize = 15, FetchAjaxSource = GetLanguages, EnablePaginate = true, EnableSorting = true, ActionsColumnWidth = 300, GridWrapperStartHtml = Constants.Grid.GridWrapperStartHtml, GridWrapperEndHtml = Constants.Grid.GridWrapperEndHtml }; result.AddColumn(x => x.Name); result.AddColumn(x => x.CultureCode).HasHeaderText("Culture Code"); result.AddColumn(x => x.Theme); result.AddColumn(x => x.Active).RenderAsStatusImage(); result.AddColumn(x => x.Id).HasHeaderText("Default").RenderAsStatusImage(x => x.CultureCode == siteSettings.DefaultLanguage, false, true); result.AddColumn(x => x.SortOrder).HasHeaderText(T("Sort Order")); result.AddAction() .HasText(T("Create")) .HasIconCssClass("cx-icon cx-icon-add") .HasUrl(Url.Action("Create", RouteData.Values)) .HasButtonStyle(ButtonStyle.Primary).HasParentClass(Constants.ContainerCssClassCol12) .ShowModalDialog(); result.AddRowAction(true) .HasText(T("Set Default")) .HasName("SetDefault") .HasValue(x => x.CultureCode) .HasButtonSize(ButtonSize.ExtraSmall) .HasButtonStyle(ButtonStyle.Success) .EnableWhen(x => x.Active && x.CultureCode != siteSettings.DefaultLanguage); result.AddRowAction() .HasText(T("Translations")) .HasUrl(x => Url.Action("LocalizableStrings", "Localization", new { languageId = x.Id })) .HasButtonSize(ButtonSize.ExtraSmall) .HasButtonStyle(ButtonStyle.Info); result.AddRowAction() .HasText(T("Edit")) .HasUrl(x => Url.Action("Edit", RouteData.Values.Merge(new { id = x.Id }))) .HasButtonSize(ButtonSize.ExtraSmall) .HasButtonStyle(ButtonStyle.Warning) .ShowModalDialog(); result.AddRowAction(true) .HasText(T("Delete")) .HasName("Delete") .HasValue(x => x.Id.ToString()) .HasButtonSize(ButtonSize.ExtraSmall) .HasButtonStyle(ButtonStyle.Danger) .HasConfirmMessage("Are you sure want delete this record?"); result.AddReloadEvent("UPDATE_ENTITY_COMPLETE"); result.AddReloadEvent("DELETE_ENTITY_COMPLETE"); return(result); }
public ActionResult Index() { if (!CheckPermission(ListsPermissions.ManageLists)) { return(new HttpUnauthorizedResult()); } WorkContext.Breadcrumbs.Add(T("Manage Lists")); var result = new ControlGridFormResult <List> { Title = T("Manage Lists").Text, UpdateActionName = "Update", FetchAjaxSource = GetLists, ActionsColumnWidth = 350, GridWrapperStartHtml = Constants.Grid.GridWrapperStartHtml, GridWrapperEndHtml = Constants.Grid.GridWrapperEndHtml }; result.AddColumn(x => x.Name).RenderAsLink(x => x.Name, x => Url.Content("~/" + x.Url)); result.AddColumn(x => x.Url); result.AddColumn(x => x.Enabled).AlignCenter().RenderAsStatusImage(); var hasManageListsPermission = CheckPermission(ListsPermissions.ManageLists); if (hasManageListsPermission) { result.AddAction() .HasText(T("Create")) .HasIconCssClass("cx-icon cx-icon-add") .HasUrl(Url.Action("Create", RouteData.Values)) .HasButtonStyle(ButtonStyle.Primary) .HasCssClass(Constants.RowLeft) .HasBoxButton(false); } result.AddRowAction() .HasText(T("Items")) .HasUrl(x => Url.Action("Index", "ListItem", RouteData.Values.Merge(new { listId = x.Id }))) .HasButtonSize(ButtonSize.ExtraSmall) .HasButtonStyle(ButtonStyle.Primary); if (hasManageListsPermission) { result.AddRowAction() .HasText(T("Fields")) .HasUrl(x => Url.Action("Index", "Field", RouteData.Values.Merge(new { listId = x.Id }))) .HasButtonSize(ButtonSize.ExtraSmall); } result.AddRowAction() .HasText(T("Categories")) .HasUrl(x => Url.Action("Index", "Category", RouteData.Values.Merge(new { listId = x.Id }))) .HasButtonSize(ButtonSize.ExtraSmall); result.AddRowAction(true) .HasText(T("On/Off")) .HasName("EnableOrDisable") .HasValue(x => x.Id.ToString()) .HasButtonSize(ButtonSize.ExtraSmall); if (hasManageListsPermission) { result.AddRowAction() .HasText(T("Edit")) .HasUrl(x => Url.Action("Edit", RouteData.Values.Merge(new { id = x.Id }))) .HasButtonSize(ButtonSize.ExtraSmall); result.AddRowAction(true) .HasText(T("Delete")) .HasName("Delete") .HasValue(x => x.Id.ToString()) .HasButtonSize(ButtonSize.ExtraSmall) .HasButtonStyle(ButtonStyle.Danger) .HasConfirmMessage(T(Constants.Messages.ConfirmDeleteRecord).Text); } result.AddReloadEvent("UPDATE_LIST_COMPLETE"); result.AddReloadEvent("DELETE_LIST_COMPLETE"); return(result); }
public ActionResult Index(int?pageId) { if (!CheckPermission(WidgetPermissions.ManageWidgets)) { return(new HttpUnauthorizedResult()); } WorkContext.Breadcrumbs.Add(T("Widgets")); var result = new ControlGridFormResult <Widget> { Title = T("Manage Widgets").Text, UpdateActionName = "Update", FetchAjaxSource = o => GetWidgets(o, pageId), EnablePaginate = true, DefaultPageSize = WorkContext.DefaultPageSize, ActionsColumnWidth = 180, GridWrapperStartHtml = Constants.Grid.GridWrapperStartHtml, GridWrapperEndHtml = Constants.Grid.GridWrapperEndHtml }; var zoneService = WorkContext.Resolve <IZoneService>(); result.AddColumn(x => x.Title).HasWidth(300); result.AddColumn(x => x.WidgetName).HasHeaderText("Widget Type"); result.AddColumn(x => x.ZoneId).HasHeaderText("Zone").RenderAsHtml(x => { var zone = zoneService.GetById(x.ZoneId); return(zone != null ? zone.Name : null); }); result.AddColumn(x => x.Order); result.AddColumn(x => x.Enabled).AlignCenter().RenderAsStatusImage(); result.AddAction() .HasText(T("Create")) .HasIconCssClass("cx-icon cx-icon-add") .HasUrl(Url.Action("Create", RouteData.Values.Merge(new { pageId }))) .HasButtonStyle(ButtonStyle.Primary) .HasBoxButton(false) .HasCssClass(Constants.RowLeft) .ShowModalDialog(); result.AddAction() .HasText(T("Zones")) .HasUrl(Url.Action("Index", "Zone")) .HasButtonStyle(ButtonStyle.Info) .HasBoxButton(false) .HasRow(false) .HasCssClass(Constants.RowLeft); result.AddRowAction(true) .HasText(T("On/Off")) .HasName("EnableOrDisableWidget") .HasValue(x => x.Id.ToString()) .HasButtonSize(ButtonSize.ExtraSmall); result.AddRowAction() .HasText(T("Edit")) .HasUrl(x => Url.Action("Edit", RouteData.Values.Merge(new { id = x.Id }, "pageId"))) .HasButtonSize(ButtonSize.ExtraSmall); result.AddRowAction(true) .HasText(T("Delete")) .HasName("Delete") .HasValue(x => x.Id.ToString()) .HasButtonSize(ButtonSize.ExtraSmall) .HasButtonStyle(ButtonStyle.Danger) .HasConfirmMessage(T(Constants.Messages.ConfirmDeleteRecord).Text); result.AddReloadEvent("UPDATE_ENTITY_COMPLETE"); result.AddReloadEvent("DELETE_ENTITY_COMPLETE"); if (pageId.HasValue) { result.EnablePaginate = false; WorkContext.Breadcrumbs.Add(T("Manage Pages"), Url.Action("Index", "Page", new { area = Constants.Areas.Pages })); } return(result); }
public ControlGrid <TModel> AddRowAction(ControlGridFormRowAction <TModel> action) { model.AddRowAction(action); return(this); }
public ActionResult Index() { if (!CheckPermission(NewsletterPermissions.ManageNewsletters)) { return(new HttpUnauthorizedResult()); } WorkContext.Breadcrumbs.Add(T("Newsletters")); var result = new ControlGridFormResult <Newsletter> { Title = T("Manage Newsletters").Text, UpdateActionName = "Update", FetchAjaxSource = GetNewsletters, EnablePaginate = true, EnableSearch = true, DefaultPageSize = WorkContext.DefaultPageSize, ActionsColumnWidth = 280, GridWrapperStartHtml = Constants.Grid.GridWrapperStartHtml, GridWrapperEndHtml = Constants.Grid.GridWrapperEndHtml }; result.AddColumn(x => x.Title); result.AddColumn(x => x.DateCreated, "Date Created").HasDisplayFormat("{0:g}"); result.AddAction() .HasText(T("Create")) .HasIconCssClass("cx-icon cx-icon-add") .HasUrl(Url.Action("Create", RouteData.Values)) .HasButtonStyle(ButtonStyle.Primary).HasParentClass(Constants.ContainerCssClassCol12); result.AddRowAction() .HasText(T("Edit")) .HasUrl(x => Url.Action("Edit", RouteData.Values.Merge(new { id = x.Id }))) .HasButtonSize(ButtonSize.ExtraSmall); var languages = languageManager.GetActiveLanguages(Constants.ThemeDefault, false); if (languages.Any()) { result.AddRowAction() .HasText(T("Translations")) .HasUrl(x => Url.Action("Translations", RouteData.Values.Merge(new { id = x.Id }))) .HasButtonSize(ButtonSize.ExtraSmall) .HasButtonStyle(ButtonStyle.Info) .ShowModalDialog(); } result.AddRowAction(true) .HasText(T("Publish")) .HasName("Publish") .HasValue(x => x.Id.ToString()) .HasButtonSize(ButtonSize.ExtraSmall) .HasButtonStyle(ButtonStyle.Success) .HasConfirmMessage(T("This action will email the newsletter to all subscribers. Are you sure you want to do this?").Text); result.AddRowAction(true) .HasText(T("Delete")) .HasName("Delete") .HasValue(x => x.Id.ToString()) .HasButtonSize(ButtonSize.ExtraSmall) .HasButtonStyle(ButtonStyle.Danger) .HasConfirmMessage(T(Constants.Messages.ConfirmDeleteRecord).Text); result.AddReloadEvent("UPDATE_ENTITY_COMPLETE"); result.AddReloadEvent("DELETE_ENTITY_COMPLETE"); return(result); }
public ActionResult Index(int listId) { if (!CheckPermission(ListsPermissions.ManageLists)) { return(new HttpUnauthorizedResult()); } var list = listService.GetById(listId); var result = new ControlGridFormResult <ListItem> { Title = list.Name, UpdateActionName = "Update", FetchAjaxSource = options => GetListItems(options, listId), EnablePaginate = true, DefaultPageSize = WorkContext.DefaultPageSize, EnableSearch = true, ActionsColumnWidth = 200, }; result.AddColumn(x => x.Title).EnableFilter(); result.AddColumn(x => x.Slug).EnableFilter(); result.AddColumn(x => x.Position).HasWidth(100); result.AddColumn(x => x.Enabled).EnableFilter().HasWidth(100).AlignCenter().RenderAsStatusImage(); result.AddAction() .HasText(T("Create")) .HasIconCssClass("cx-icon cx-icon-add") .HasUrl(Url.Action("Create", RouteData.Values.Merge(new { listId }))) .HasButtonStyle(ButtonStyle.Primary); result.AddAction() .HasText(T("Comments")) .HasIconCssClass("cx-icon cx-icon-comments") .HasUrl(Url.Action("Index", "Comment", RouteData.Values.Merge(new { listId }))) .HasButtonStyle(ButtonStyle.Info); result.AddRowAction(true) .HasText(T("On/Off")) .HasName("EnableOrDisable") .HasValue(x => x.Id.ToString()) .HasButtonSize(ButtonSize.ExtraSmall) .HasButtonStyle(ButtonStyle.Info); result.AddRowAction() .HasText(T("Edit")) .HasUrl(x => Url.Action("Edit", RouteData.Values.Merge(new { id = x.Id }, "listId"))) .HasButtonSize(ButtonSize.ExtraSmall); result.AddRowAction() .HasText(T("Copy")) .HasUrl(x => Url.Action("Copy", RouteData.Values.Merge(new { id = x.Id }, "listId"))) .HasButtonSize(ButtonSize.ExtraSmall); result.AddRowAction(true) .HasText(T("Delete")) .HasName("Delete") .HasValue(x => x.Id.ToString()) .HasButtonSize(ButtonSize.ExtraSmall) .HasButtonStyle(ButtonStyle.Danger) .HasConfirmMessage(T(Constants.Messages.ConfirmDeleteRecord).Text); result.AddReloadEvent("UPDATE_ENTITY_COMPLETE"); result.AddReloadEvent("DELETE_ENTITY_COMPLETE"); WorkContext.Breadcrumbs.Add(T("Manage Lists"), Url.Action("Index", "List", new { area = Constants.Areas.Lists })); WorkContext.Breadcrumbs.Add(list.Name); return(result); }
public ActionResult Index() { if (!CheckPermission(PagesPermissions.ManagePages)) { return(new HttpUnauthorizedResult()); } WorkContext.Breadcrumbs.Add(T("Pages")); var result = new ControlGridFormResult <Page> { Title = T("Manage Pages").Text, UpdateActionName = "Update", FetchAjaxSource = GetPages, EnablePaginate = true, EnableSearch = true, DefaultPageSize = WorkContext.DefaultPageSize, ActionsColumnWidth = 380, GridWrapperStartHtml = Constants.Grid.GridWrapperStartHtml, GridWrapperEndHtml = Constants.Grid.GridWrapperEndHtml }; result.AddColumn(x => x.Title).RenderAsHtml(x => string.Format("<a href=\"{1}\" target=\"_blank\">{0}</a>", x.Title, Url.Content("~/" + x.Slug))); result.AddColumn(x => x.Theme); result.AddColumn(x => x.IsEnabled).HasHeaderText(T("Enabled")).AlignCenter().RenderAsStatusImage(); result.AddAction() .HasText(T("Tags")) .HasUrl(Url.Action("Index", "PageTag")) .HasIconCssClass("cx-icon cx-icon-tags") .HasButtonStyle(ButtonStyle.Info) .HasCssClass(Constants.RowLeft) .HasBoxButton(false); result.AddAction() .HasText(T("Create")) .HasIconCssClass("cx-icon cx-icon-add") .HasUrl(Url.Action("Create", RouteData.Values)) .HasButtonStyle(ButtonStyle.Primary) .HasBoxButton(false) .HasCssClass(Constants.RowLeft); result.AddRowAction(true) .HasText(T("On/Off")) .HasName("EnableOrDisable") .HasValue(x => x.Id) .HasButtonSize(ButtonSize.ExtraSmall); result.AddRowAction() .HasText(T("Edit")) .HasUrl(x => Url.Action("Edit", RouteData.Values.Merge(new { id = x.Id }))) .HasButtonSize(ButtonSize.ExtraSmall); var languages = languageManager.GetActiveLanguages(Constants.ThemeDefault, false); if (languages.Any()) { result.AddRowAction() .HasText(T("Translations")) .HasUrl(x => Url.Action("Translations", RouteData.Values.Merge(new { id = x.Id }))) .HasButtonSize(ButtonSize.ExtraSmall) .HasButtonStyle(ButtonStyle.Info) .ShowModalDialog(); } if (descriptor.Features.Any(x => x.Name == Constants.Areas.Widgets)) { result.AddRowAction() .HasText(T("Widgets")) .HasUrl(x => Url.Action("Index", "Widget", RouteData.Values.Merge(new { pageId = x.Id, area = Constants.Areas.Widgets }))) .HasButtonSize(ButtonSize.ExtraSmall) .HasButtonStyle(ButtonStyle.Success); } result.AddRowAction() .HasText(T("History")) .HasUrl(x => Url.Action("History", RouteData.Values.Merge(new { pageId = x.Id }))) .HasButtonSize(ButtonSize.ExtraSmall) .HasButtonStyle(ButtonStyle.Warning); result.AddRowAction(true) .HasText(T("Delete")) .HasName("Delete") .HasValue(x => x.Id.ToString()) .HasButtonSize(ButtonSize.ExtraSmall) .HasButtonStyle(ButtonStyle.Danger) .HasConfirmMessage(T(Constants.Messages.ConfirmDeleteRecord).Text); result.AddReloadEvent("UPDATE_ENTITY_COMPLETE"); result.AddReloadEvent("DELETE_ENTITY_COMPLETE"); return(result); }
public ActionResult Index() { if (!CheckPermission(TasksPermissions.ManageScheduleTasks)) { return(new HttpUnauthorizedResult()); } WorkContext.Breadcrumbs.Add(T("Scheduled Tasks")); var result = new ControlGridFormResult <ScheduleTask> { Title = T("Schedule Tasks").Text, UpdateActionName = "Update", FetchAjaxSource = GetScheduleTasks, ClientId = "tblScheduleTasks", ActionsColumnWidth = 200, GridWrapperStartHtml = Constants.Grid.GridWrapperStartHtml, GridWrapperEndHtml = Constants.Grid.GridWrapperEndHtml }; result.AddColumn(x => x.Name); result.AddColumn(x => x.LastStartUtc).HasHeaderText(T("Last Start UTC")); result.AddColumn(x => x.LastSuccessUtc).HasHeaderText(T("Last Success UTC")); result.AddColumn(x => x.Enabled).AlignCenter().RenderAsStatusImage(); result.AddAction() .HasText(T("Create")) .HasIconCssClass("cx-icon cx-icon-add") .HasUrl(Url.Action("Create")) .HasButtonStyle(ButtonStyle.Primary) .HasBoxButton(false) .HasCssClass(Constants.RowLeft) .ShowModalDialog(); result.AddAction(true) .HasText(T("Refresh")) .HasIconCssClass("cx-icon cx-icon-refresh") .OnClientClick("$('#tblScheduleTasks').jqGrid().trigger('reloadGrid'); return false;") .HasButtonStyle(ButtonStyle.Info) .HasBoxButton(false) .HasRow(false) .HasCssClass(Constants.RowLeft); result.AddRowAction(true) .HasText(T("Run Now")) .HasName("RunNow") .HasValue(x => x.Id.ToString()) .HasButtonSize(ButtonSize.ExtraSmall) .HasButtonStyle(ButtonStyle.Success) .EnableWhen(x => x.Enabled); result.AddRowAction() .HasText(T("Edit")) .HasUrl(x => Url.Action("Edit", RouteData.Values.Merge(new { id = x.Id }))) .HasButtonSize(ButtonSize.ExtraSmall) .ShowModalDialog(); result.AddRowAction(true) .HasText(T("Delete")) .HasName("Delete") .HasValue(x => x.Id.ToString()) .HasButtonSize(ButtonSize.ExtraSmall) .HasButtonStyle(ButtonStyle.Danger) .HasConfirmMessage(T(Constants.Messages.ConfirmDeleteRecord)); result.AddReloadEvent("UPDATE_ENTITY_COMPLETE"); result.AddReloadEvent("DELETE_ENTITY_COMPLETE"); return(result); }
public virtual ActionResult Index() { if (!CheckPermissions()) { return(new HttpUnauthorizedResult()); } var result = new ControlGridFormResult <TEntity> { Title = T(PluralizedName), FetchAjaxSource = GetRecords, UpdateActionName = "Update", DefaultPageSize = WorkContext.DefaultPageSize, EnablePaginate = EnablePaginate, ActionsHeaderText = T("Actions"), GridWrapperStartHtml = Constants.Grid.GridWrapperStartHtml, GridWrapperEndHtml = Constants.Grid.GridWrapperEndHtml }; if (EnableCreate) { var createAction = result.AddAction() .HasText(CreateText) .HasIconCssClass("cx-icon cx-icon-add") .HasUrl(Url.Action("Create", RouteData.Values)) .HasButtonStyle(ButtonStyle.Primary) .HasParentClass(Constants.ContainerCssClassCol12); if (ShowModalDialog) { createAction.ShowModalDialog(DialogModalWidth, DialogModalHeight); } OnCreateCreateButton(createAction); } if (EnableEdit) { var editAction = result.AddRowAction() .HasText(EditText) .HasUrl(x => Url.Action("Edit", RouteData.Values.Merge(new { id = x.Id }))) .HasButtonSize(ButtonSize.ExtraSmall); if (ShowModalDialog) { editAction.ShowModalDialog(DialogModalWidth, DialogModalHeight); } OnCreateEditButton(editAction); } if (EnableDelete) { var deleteAction = result.AddRowAction(true) .HasText(T("Delete")) .HasName("Delete") .HasValue(x => x.Id.ToString()) .HasButtonSize(ButtonSize.ExtraSmall) .HasButtonStyle(ButtonStyle.Danger) .HasConfirmMessage(T(Constants.Messages.ConfirmDeleteRecord).Text); OnCreateDeleteButton(deleteAction); } OnViewIndex(result); result.AddReloadEvent("UPDATE_ENTITY_COMPLETE"); result.AddReloadEvent("DELETE_ENTITY_COMPLETE"); return(OnIndexResult(result)); }