public ActionResult Index()
        {
            WorkContext.Breadcrumbs.Add(new Breadcrumb {
                Text = T("Quản lý cửa hàng phân phối"), Url = "#"
            });
            var result       = new ControlGridFormResult <StoreBranchInfo>();
            var siteSettings = WorkContext.Resolve <SiteSettings>();

            result.Title                = this.T("Quản lý cửa hàng phân phối");
            result.CssClass             = "table table-bordered table-striped";
            result.UpdateActionName     = "Update";
            result.IsAjaxSupported      = true;
            result.DefaultPageSize      = siteSettings.DefaultPageSize;
            result.EnablePaginate       = true;
            result.FetchAjaxSource      = this.GetStoreBranch;
            result.GridWrapperStartHtml = Constants.Grid.GridWrapperStartHtml;
            result.GridWrapperEndHtml   = Constants.Grid.GridWrapperEndHtml;
            result.ClientId             = TableName;
            result.ActionsColumnWidth   = 180;

            result.AddColumn(x => x.Id, T("ID")).AlignCenter().HasWidth(100);
            result.AddColumn(x => x.Name, T("Tên cửa hàng"));
            result.AddColumn(x => x.Address, T("Địa chỉ"));

            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);
        }
Пример #2
0
        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);
        }
        public ActionResult Index()
        {
            WorkContext.Breadcrumbs.Add(new Breadcrumb {
                Text = T("Quản lý thể tích chai"), Url = "#"
            });
            var result       = new ControlGridFormResult <ProductVolumeInfo>();
            var siteSettings = WorkContext.Resolve <SiteSettings>();

            result.Title                = this.T("Quản lý thể tích chai");
            result.CssClass             = "table table-bordered table-striped";
            result.UpdateActionName     = "Update";
            result.IsAjaxSupported      = true;
            result.DefaultPageSize      = siteSettings.DefaultPageSize;
            result.EnablePaginate       = true;
            result.FetchAjaxSource      = this.GetProductVolume;
            result.GridWrapperStartHtml = Constants.Grid.GridWrapperStartHtml;
            result.GridWrapperEndHtml   = Constants.Grid.GridWrapperEndHtml;
            result.ClientId             = TableName;
            result.ActionsColumnWidth   = 180;

            result.AddColumn(x => x.Id, T("Mã")).HasWidth(100);
            result.AddColumn(x => x.Name, T("Thể tích"));

            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("Không nên xóa dữ liệu thể tích chai vì có thể lỗi hệ thống, bạn có chắc chắn muốn xóa nó?"));

            result.AddReloadEvent("UPDATE_ENTITY_COMPLETE");
            result.AddReloadEvent("DELETE_ENTITY_COMPLETE");
            return(result);
        }
Пример #4
0
 protected override void OnViewIndex(ControlGridFormResult <MetaTag> controlGrid)
 {
     controlGrid.AddColumn(x => x.Name);
     controlGrid.AddColumn(x => x.Content);
     controlGrid.AddColumn(x => x.Charset);
     controlGrid.ActionsColumnWidth = 150;
 }
        public ActionResult Index()
        {
            WorkContext.Breadcrumbs.Add(new Breadcrumb {
                Text = T("Quản lý tuyển dụng"), Url = "#"
            });
            var result       = new ControlGridFormResult <RecruitmentInfo>();
            var siteSettings = WorkContext.Resolve <SiteSettings>();

            result.Title = this.T("Quản lý tuyển dụng");

            result.CssClass             = "table table-bordered table-striped";
            result.UpdateActionName     = "Update";
            result.IsAjaxSupported      = true;
            result.DefaultPageSize      = siteSettings.DefaultPageSize;
            result.EnablePaginate       = true;
            result.FetchAjaxSource      = this.GetRecruitment;
            result.GridWrapperStartHtml = Constants.Grid.GridWrapperStartHtml;
            result.GridWrapperEndHtml   = Constants.Grid.GridWrapperEndHtml;
            result.ClientId             = TableName;
            result.ActionsColumnWidth   = 120;

            result.AddColumn(x => x.Id, T("ID")).AlignCenter().HasWidth(100);
            result.AddColumn(x => x.Title, T("Tiêu đề"));
            result.AddColumn(x => x.Position, T("Vị trí tuyển dụng"));
            result.AddColumn(x => x.TimeWork, T("Thời gian làm việc"));
            result.AddColumn(x => x.FinishDate.ToString(Extensions.Constants.DateTimeFomat), T("Hạn nộp hồ sơ"));

            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()
        {
            if (!CheckPermission(DashboardPermissions.ManageModuleSettings))
            {
                return(new HttpUnauthorizedResult());
            }

            WorkContext.Breadcrumbs.Add(T("Extension Modules"));

            ViewBag.Title = T("Extension Modules");

            var result = new ControlGridFormResult <ShellFeature>
            {
                Title                = T("Extension Modules").Text,
                UpdateActionName     = "Update",
                FetchAjaxSource      = GetData,
                IsAjaxSupported      = true,
                GridWrapperStartHtml = Constants.Grid.GridWrapperStartHtml,
                GridWrapperEndHtml   = Constants.Grid.GridWrapperEndHtml,
                ActionsColumnWidth   = 150
            };

            result.AddColumn(x => x.Name);

            result.AddAction()
            .HasText(T("Create"))
            .HasUrl(Url.Action("Create", RouteData.Values))
            .HasButtonStyle(ButtonStyle.Primary)
            .HasBoxButton(false)
            .HasCssClass(Constants.RowLeft)
            .ShowModalDialog();

            result.AddAction()
            .HasText(T("Installer Module"))
            .HasUrl(Url.Action("InstallerModuleFileZip"))
            .HasButtonStyle(ButtonStyle.Success)
            .HasBoxButton(false)
            .HasRow(false)
            .HasCssClass(Constants.RowLeft);

            result.AddRowAction()
            .HasText(T("Edit"))
            .HasUrl(x => Url.Action("Edit", RouteData.Values.Merge(new { name = x.Name })))
            .HasButtonStyle(ButtonStyle.Default)
            .HasButtonSize(ButtonSize.ExtraSmall)
            .ShowModalDialog();

            result.AddRowAction(true)
            .HasText(T("Delete"))
            .HasName("Delete")
            .HasUrl(x => Url.Action("Delete", RouteData.Values.Merge(new { name = x.Name })))
            .HasButtonStyle(ButtonStyle.Danger)
            .HasButtonSize(ButtonSize.ExtraSmall)
            .HasConfirmMessage(T(Constants.Messages.ConfirmDeleteRecord).Text);

            result.AddReloadEvent("UPDATE_ENTITY_COMPLETE");
            result.AddReloadEvent("DELETE_ENTITY_COMPLETE");

            return(result);
        }
Пример #7
0
        public ActionResult Index()
        {
            if (!CheckPermission(DashboardPermissions.ManageThemes))
            {
                return(new HttpUnauthorizedResult());
            }

            WorkContext.Breadcrumbs.Add(T("Themes"));

            var currentTheme = siteSettings.Theme;

            var result = new ControlGridFormResult <ExtensionDescriptorModel>
            {
                Title                = T("Themes"),
                FetchAjaxSource      = GetThemes,
                UpdateActionName     = "Update",
                ActionsColumnWidth   = 220,
                GridWrapperStartHtml = Constants.Grid.GridWrapperStartHtml,
                GridWrapperEndHtml   = Constants.Grid.GridWrapperEndHtml
            };

            result.AddColumn(x => x.Name);
            result.AddColumn(x => x.IsDefault)
            .HasHeaderText(T("Is Default"))
            .AlignCenter()
            .RenderAsStatusImage(showTrueOnly: true);

            result.AddColumn(x => x.Installed)
            .HasHeaderText(T("Installed"))
            .AlignCenter()
            .RenderAsStatusImage();

            result.AddRowAction(true)
            .HasText(T("Set Default"))
            .HasName("SetDefault")
            .HasValue(x => x.Id)
            .HasButtonSize(ButtonSize.ExtraSmall)
            .HasButtonStyle(ButtonStyle.Primary)
            .EnableWhen(x => x.Installed && x.Id != currentTheme);

            result.AddRowAction(true)
            .HasText(T("Install"))
            .HasName("Install")
            .HasValue(x => x.Id)
            .HasButtonSize(ButtonSize.ExtraSmall)
            .HasButtonStyle(ButtonStyle.Success)
            .EnableWhen(x => !x.Installed);

            result.AddRowAction(true)
            .HasText(T("Uninstall"))
            .HasName("Uninstall")
            .HasValue(x => x.Id)
            .HasButtonSize(ButtonSize.ExtraSmall)
            .HasButtonStyle(ButtonStyle.Danger)
            .EnableWhen(x => x.Installed && x.Id != currentTheme && x.Id != "Default");

            result.AddReloadEvent("UPDATE_ENTITY_COMPLETE");

            return(result);
        }
        public ActionResult Edit(int id)
        {
            WorkContext.Breadcrumbs.Add(new Breadcrumb {
                Text = T("Quản lý đơn hàng"), Url = "#"
            });
            WorkContext.Breadcrumbs.Add(new Breadcrumb {
                Text = T("Xem thông tin đơn hàng"), Url = Url.Action("Index")
            });
            var model = new OrdersModel();

            if (id > 0)
            {
                model = this.service.GetById(id);
            }

            var result = new ControlFormResult <OrdersModel>(model)
            {
                Title                = this.T("Xem thông tin đơn hàng"),
                FormMethod           = FormMethod.Post,
                UpdateActionName     = "Update",
                ShowCancelButton     = false,
                ShowBoxHeader        = false,
                FormWrapperStartHtml = Constants.Form.FormWrapperStartHtml,
                FormWrapperEndHtml   = Constants.Form.FormWrapperEndHtml
            };

            result.MakeReadOnlyProperty(x => x.OrderCode);
            result.MakeReadOnlyProperty(x => x.FullName);
            result.MakeReadOnlyProperty(x => x.PhoneNumber);
            result.MakeReadOnlyProperty(x => x.Email);
            result.MakeReadOnlyProperty(x => x.PaymentType);
            result.MakeReadOnlyProperty(x => x.PaymentCode);
            result.RegisterExternalDataSource(x => x.PaymentType, y => BindPaymentTypes());

            var result2 = new ControlGridFormResult <OrderDetailsInfo>
            {
                Title                = T("Danh sách sản phẩm"),
                CssClass             = "table table-bordered table-striped",
                IsAjaxSupported      = true,
                FetchAjaxSource      = GetProducts,
                DefaultPageSize      = WorkContext.DefaultPageSize,
                EnablePaginate       = true,
                UpdateActionName     = "Update",
                GridWrapperStartHtml = Constants.Grid.GridWrapperStartHtml,
                GridWrapperEndHtml   = Constants.Grid.GridWrapperEndHtml,
                ClientId             = TableName
            };

            result2.AddCustomVar(Extensions.Constants.OrderId, id);
            result2.AddColumn(x => x.ProductName, T("Tên sản phẩm"));
            result2.AddColumn(x => x.Capacity, T("Thể tích"));
            result2.AddColumn(x => x.Quantity, T("Số lượng"));
            result2.AddColumn(x => x.Price, T("Giá"));
            result2.AddColumn(x => (x.Price * x.Quantity), T("Thành tiền"));

            result.AddAction().HasText(this.T("Back")).HasUrl(this.Url.Action("Index")).HasButtonStyle(ButtonStyle.Danger);

            return(new ControlFormsResult(result, result2));
        }
 protected override void OnViewIndex(ControlGridFormResult <QueuedSms> controlGrid)
 {
     controlGrid.AddColumn(x => x.FromNumber).HasHeaderText("From Number");
     controlGrid.AddColumn(x => x.ToNumber).HasHeaderText("To Number");
     controlGrid.AddColumn(x => x.CreatedOnUtc).HasHeaderText("Created On Utc");
     controlGrid.AddColumn(x => x.SentOnUtc).HasHeaderText("Sent On Utc");
     controlGrid.AddColumn(x => x.SentTries).HasHeaderText(T("Sent Tries"));
 }
Пример #10
0
        public ActionResult Index()
        {
            if (!CheckPermission(WidgetPermissions.ManageWidgets))
            {
                return(new HttpUnauthorizedResult());
            }

            WorkContext.Breadcrumbs.Add(T("Widgets"), Url.Action("Index", "Widget"));
            WorkContext.Breadcrumbs.Add(T("Zones"));

            var result = new ControlGridFormResult <Zone>
            {
                Title                = T("Manage Zones").Text,
                UpdateActionName     = "Update",
                FetchAjaxSource      = GetZones,
                EnablePaginate       = false,
                GridWrapperStartHtml = Constants.Grid.GridWrapperStartHtml,
                GridWrapperEndHtml   = Constants.Grid.GridWrapperEndHtml
            };

            result.AddColumn(x => x.Name);

            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)
            .ShowModalDialog();

            result.AddAction()
            .HasText(T("Widgets"))
            .HasUrl(Url.Action("Index", "Widget"))
            .HasButtonStyle(ButtonStyle.Default)
            .HasBoxButton(false)
            .HasRow(false)
            .HasCssClass(Constants.RowLeft);

            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_ENTITY_COMPLETE");
            result.AddReloadEvent("DELETE_ENTITY_COMPLETE");

            return(result);
        }
Пример #11
0
        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);
        }
Пример #12
0
        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);
        }
Пример #14
0
        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);
        }
Пример #15
0
        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);
        }
Пример #16
0
        protected override void OnViewIndex(ControlGridFormResult <PageTag> controlGrid)
        {
            controlGrid.ActionsColumnWidth = 120;
            controlGrid.AddColumn(x => x.Name);
            controlGrid.AddColumn(x => x.Content);

            controlGrid.GridWrapperStartHtml = Constants.Grid.GridWrapperStartHtml;
            controlGrid.GridWrapperEndHtml   = Constants.Grid.GridWrapperEndHtml;

            WorkContext.Breadcrumbs.Add(T("Pages"), Url.Action("Index", "Page"));
            WorkContext.Breadcrumbs.Add(T("Page Tags"));
        }
Пример #17
0
        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);
        }
Пример #18
0
        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);
        }
Пример #20
0
        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.AddCustomVar(Extensions.Constants.StatusId, "$('#" + Extensions.Constants.StatusId + "').val();", true);

            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("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(BuildStatus)).HasParentClass(Constants.ContainerCssClassCol3);

            result.AddReloadEvent("UPDATE_ENTITY_COMPLETE");
            result.AddReloadEvent("DELETE_ENTITY_COMPLETE");
            return(result);
        }
Пример #21
0
        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 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);
        }
Пример #23
0
        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);
        }
        protected override void OnViewIndex(ControlGridFormResult <QueuedEmail> controlGrid)
        {
            controlGrid.AddColumn(x => x.Subject);
            controlGrid.AddColumn(x => x.ToAddress).HasHeaderText("To Address");
            controlGrid.AddColumn(x => x.CreatedOnUtc).HasHeaderText("Created On Utc");
            controlGrid.AddColumn(x => x.SentOnUtc).HasHeaderText("Sent On Utc");
            controlGrid.AddColumn(x => x.SentTries).HasHeaderText(T("Sent Tries"));

            controlGrid.AddAction()
            .HasText(T("SMTP Settings"))
            .HasUrl(Url.Action("Edit", "Settings", new
            {
                area      = Constants.Areas.Core,
                id        = "CMSSolutions.Net.Mail.SmtpSettings",
                returnUrl = Url.Action("Index")
            }))
            .HasIconCssClass("cx-icon cx-icon-mail")
            .HasButtonStyle(ButtonStyle.Success).HasBoxButton(false)
            .HasRow(false)
            .HasCssClass(Constants.RowLeft);
        }
Пример #25
0
        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);
        }
Пример #26
0
        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);
        }
Пример #28
0
        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);
        }
Пример #29
0
        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);
        }
Пример #30
0
        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);
        }