public async Task <ActionResult> SiteAnnouncement_Partial(AddModel model) { model.UpdateData(); if (!ModelState.IsValid) { return(PartialView(model)); } if (model.TestMode) { return(FormProcessed(model, model.Message, model.Title, OnClose: OnCloseEnum.UpdateInPlace, OnPopupClose: OnPopupCloseEnum.UpdateInPlace, PopupOptions: "{encoded:true, canClose: true, autoClose: 0}")); } else { using (SiteAnnouncementDataProvider siteAnnounceDP = new SiteAnnouncementDataProvider()) { await YetaWF_Messenger_SiteAnnouncementsHub.SendMessageAsync(model.Message, model.Title); if (await siteAnnounceDP.IsInstalledAsync()) { if (!await siteAnnounceDP.AddItemAsync(model.GetData())) { throw new Error(this.__ResStr("noLog", "Message sent. New site announcement log record couldn't be added")); } } } return(FormProcessed(model)); } }
public ActionResult BrowseSiteAnnouncement() { using (SiteAnnouncementDataProvider sitAnncDP = new SiteAnnouncementDataProvider()) { if (!sitAnncDP.Usable) { return(View(SiteAnnouncementsUnavailableView.ViewName)); } } BrowseModel model = new BrowseModel { GridDef = GetGridModel() }; return(View(model)); }
private GridDefinition GetGridModel() { return(new GridDefinition { ModuleGuid = Module.ModuleGuid, SettingsModuleGuid = Module.PermanentGuid, RecordType = typeof(BrowseItem), AjaxUrl = GetActionUrl(nameof(BrowseSiteAnnouncement_GridData)), DirectDataAsync = async(int skip, int take, List <DataProviderSortInfo> sort, List <DataProviderFilterInfo> filters) => { using (SiteAnnouncementDataProvider dataProvider = new SiteAnnouncementDataProvider()) { DataProviderGetRecords <SiteAnnouncement> browseItems = await dataProvider.GetItemsAsync(skip, take, sort, filters); return new DataSourceResult { Data = (from s in browseItems.Data select new BrowseItem(Module, s)).ToList <object>(), Total = browseItems.Total }; } }, }); }