public static bool Import(AtomEntry entry, int siteId) { var isNodeGroup = TranslateUtils.ToBool(AtomUtility.GetDcElementContent(entry.AdditionalElements, "IsContentGroup")); if (!isNodeGroup) { return(false); } var groupName = AtomUtility.GetDcElementContent(entry.AdditionalElements, new List <string> { nameof(ContentGroupInfo.GroupName), "ContentGroupName" }); if (string.IsNullOrEmpty(groupName)) { return(true); } if (ContentGroupManager.IsExists(siteId, groupName)) { return(true); } var taxis = TranslateUtils.ToInt(AtomUtility.GetDcElementContent(entry.AdditionalElements, nameof(ContentGroupInfo.Taxis))); var description = AtomUtility.GetDcElementContent(entry.AdditionalElements, nameof(ContentGroupInfo.Description)); DataProvider.ContentGroupDao.Insert(new ContentGroupInfo(groupName, siteId, taxis, description)); return(true); }
public static void SetAppIdForModule(ModuleInfo module, int?appId) { //var moduleController = new ModuleController(); // Reset temporary template ContentGroupManager.DeletePreviewTemplateId(module.ModuleID); // ToDo: Should throw exception if a real ContentGroup exists var zoneId = ZoneHelpers.GetZoneID(module.OwnerPortalID); if (appId == 0 || !appId.HasValue) { //moduleController.DeleteModuleSetting(module.ModuleID, AppNameString); DnnStuffToRefactor.UpdateModuleSettingForAllLanguages(module.ModuleID, Settings.AppNameString, null); } else { var appName = ((BaseCache)DataSource.GetCache(0, 0)).ZoneApps[zoneId.Value].Apps[appId.Value]; //moduleController.UpdateModuleSetting(module.ModuleID, AppNameString, appName); DnnStuffToRefactor.UpdateModuleSettingForAllLanguages(module.ModuleID, Settings.AppNameString, appName); } // Change to 1. available template if app has been set if (appId.HasValue) { //var sexyForNewApp = new SxcInstance(zoneId.Value, appId.Value);// 2016-03-26 2dm this used to have a third parameter false = don't enable caching, which hasn't been respected for a while; removed it var app = new App(zoneId.Value, appId.Value, PortalSettings.Current); var templates = app.TemplateManager.GetAvailableTemplatesForSelector(module.ModuleID, app.ContentGroupManager).ToList(); if (templates.Any()) { app.ContentGroupManager.SetModulePreviewTemplateId(module.ModuleID, templates.First().Guid /* .TemplateId */); } } }
public void SetAppIdForInstance(IInstanceInfo instance, IAppEnvironment env, int?appId, Log parentLog) { Log.Add($"SetAppIdForInstance({instance.Id}, -, appid: {appId})"); // Reset temporary template ContentGroupManager.ClearPreviewTemplate(instance.Id); // ToDo: Should throw exception if a real ContentGroup exists var module = (instance as EnvironmentInstance <ModuleInfo>).Original; var zoneId = env.ZoneMapper.GetZoneId(module.OwnerPortalID); if (appId == 0 || !appId.HasValue) { DnnStuffToRefactor.UpdateInstanceSettingForAllLanguages(instance.Id, Settings.AppNameString, null, Log); } else { var appName = ((BaseCache)DataSource.GetCache(0, 0)).ZoneApps[zoneId].Apps[appId.Value]; DnnStuffToRefactor.UpdateInstanceSettingForAllLanguages(instance.Id, Settings.AppNameString, appName, Log); } // Change to 1. available template if app has been set if (appId.HasValue) { var app = App.LightWithoutData(new DnnTenant(null), zoneId, appId.Value, parentLog: Log); var templateGuid = app.TemplateManager.GetAllTemplates().FirstOrDefault(t => !t.IsHidden)?.Guid; if (templateGuid.HasValue) { ContentGroupManager.SetPreviewTemplate(instance.Id, templateGuid.Value); } } }
public static void SetAppIdForModule(ModuleInfo module, int?appId) { // Reset temporary template ContentGroupManager.DeletePreviewTemplateId(module.ModuleID); // ToDo: Should throw exception if a real ContentGroup exists var zoneId = ZoneHelpers.GetZoneID(module.OwnerPortalID); if (appId == 0 || !appId.HasValue) { DnnStuffToRefactor.UpdateModuleSettingForAllLanguages(module.ModuleID, Settings.AppNameString, null); } else { var appName = ((BaseCache)DataSource.GetCache(0, 0)).ZoneApps[zoneId.Value].Apps[appId.Value]; DnnStuffToRefactor.UpdateModuleSettingForAllLanguages(module.ModuleID, Settings.AppNameString, appName); } // Change to 1. available template if app has been set if (appId.HasValue) { var app = new App(zoneId.Value, appId.Value, PortalSettings.Current); var templates = app.TemplateManager.GetAvailableTemplatesForSelector(module.ModuleID, app.ContentGroupManager).ToList(); if (templates.Any()) { app.ContentGroupManager.SetModulePreviewTemplateId(module.ModuleID, templates.First().Guid /* .TemplateId */); } } }
internal static void SetAppIdForModule(ModuleInfo module, IEnvironment <PortalSettings> env, int?appId, Log parentLog) { // Reset temporary template ContentGroupManager.DeletePreviewTemplateId(module.ModuleID); // ToDo: Should throw exception if a real ContentGroup exists var zoneId = /*new Environment.DnnEnvironment(parentLog)*/ env.ZoneMapper.GetZoneId(module.OwnerPortalID);// ZoneHelpers.GetZoneId(module.OwnerPortalID); if (appId == 0 || !appId.HasValue) { DnnStuffToRefactor.UpdateModuleSettingForAllLanguages(module.ModuleID, Settings.AppNameString, null); } else { var appName = ((BaseCache)DataSource.GetCache(0, 0)).ZoneApps[zoneId].Apps[appId.Value]; DnnStuffToRefactor.UpdateModuleSettingForAllLanguages(module.ModuleID, Settings.AppNameString, appName); } // Change to 1. available template if app has been set if (appId.HasValue) { var app = new App(zoneId, appId.Value, PortalSettings.Current); var templateGuid = app.TemplateManager.GetAllTemplates().FirstOrDefault(t => !t.IsHidden)?.Guid;// .GetFirstTemplateGuid(module.ModuleID, module.TabID, app.ContentGroupManager); if (templateGuid.HasValue) { app.ContentGroupManager.SetModulePreviewTemplateId(module.ModuleID, templateGuid.Value); } } }
public void Page_Load(object sender, EventArgs e) { if (IsForbidden) { return; } if (AuthRequest.IsQueryExists("Delete")) { var groupName = AuthRequest.GetQueryString("GroupName"); try { DataProvider.ContentGroupDao.Delete(groupName, SiteId); AuthRequest.AddSiteLog(SiteId, "删除内容组", $"内容组:{groupName}"); SuccessDeleteMessage(); } catch (Exception ex) { FailDeleteMessage(ex); } } if (AuthRequest.IsQueryExists("SetTaxis")) { var groupName = AuthRequest.GetQueryString("GroupName"); var direction = AuthRequest.GetQueryString("Direction"); switch (direction.ToUpper()) { case "UP": DataProvider.ContentGroupDao.UpdateTaxisToUp(SiteId, groupName); break; case "DOWN": DataProvider.ContentGroupDao.UpdateTaxisToDown(SiteId, groupName); break; } SuccessMessage("排序成功!"); AddWaitAndRedirectScript(GetRedirectUrl(SiteId)); } if (IsPostBack) { return; } VerifySitePermissions(ConfigManager.WebSitePermissions.Configration); RptContents.DataSource = ContentGroupManager.GetContentGroupInfoList(SiteId); RptContents.ItemDataBound += RptContents_ItemDataBound; RptContents.DataBind(); var showPopWinString = ModalContentGroupAdd.GetOpenWindowString(SiteId); BtnAddGroup.Attributes.Add("onclick", showPopWinString); }
public void Delete(string groupName, int siteId) { var contentGroupParms = new IDataParameter[] { GetParameter(ParmGroupName, DataType.VarChar, 255, groupName), GetParameter(ParmSiteId, DataType.Integer, siteId) }; ExecuteNonQuery(SqlDelete, contentGroupParms); ContentGroupManager.ClearCache(); }
public void Update(ContentGroupInfo contentGroup) { var updateParms = new IDataParameter[] { GetParameter(ParmDescription, DataType.Text, contentGroup.Description), GetParameter(ParmGroupName, DataType.VarChar, 255, contentGroup.GroupName), GetParameter(ParmSiteId, DataType.Integer, contentGroup.SiteId) }; ExecuteNonQuery(SqlUpdate, updateParms); ContentGroupManager.ClearCache(); }
// public ContentGroupInfo GetContentGroupInfo(string groupName, int siteId) // { // ContentGroupInfo contentGroup = null; // string sqlString = // $"SELECT GroupName, SiteId, Taxis, Description FROM siteserver_ContentGroup WHERE GroupName = @GroupName AND SiteId = {siteId}"; // var selectParms = new IDataParameter[] //{ // GetParameter(ParmGroupName, DataType.VarChar, 255, groupName) //}; // using (var rdr = ExecuteReader(sqlString, selectParms)) // { // if (rdr.Read()) // { // var i = 0; // contentGroup = new ContentGroupInfo(GetString(rdr, i++), GetInt(rdr, i++), GetInt(rdr, i++), GetString(rdr, i)); // } // rdr.Close(); // } // return contentGroup; // } private void SetTaxis(int siteId, string groupName, int taxis) { var sqlString = $"UPDATE {TableName} SET Taxis = {taxis} WHERE (GroupName = @GroupName AND SiteId = {siteId})"; var updateParms = new IDataParameter[] { GetParameter(ParmGroupName, DataType.VarChar, 255, groupName) }; ExecuteNonQuery(sqlString, updateParms); ContentGroupManager.ClearCache(); }
public override void Submit_OnClick(object sender, EventArgs e) { var isChanged = false; var contentGroupInfo = new ContentGroupInfo { GroupName = AttackUtils.FilterXss(TbContentGroupName.Text), SiteId = SiteId, Description = TbDescription.Text }; if (AuthRequest.IsQueryExists("GroupName")) { try { DataProvider.ContentGroupDao.Update(contentGroupInfo); AuthRequest.AddSiteLog(SiteId, "修改内容组", $"内容组:{contentGroupInfo.GroupName}"); isChanged = true; } catch (Exception ex) { FailMessage(ex, "内容组修改失败!"); } } else { if (ContentGroupManager.IsExists(SiteId, TbContentGroupName.Text)) { FailMessage("内容组添加失败,内容组名称已存在!"); } else { try { DataProvider.ContentGroupDao.Insert(contentGroupInfo); AuthRequest.AddSiteLog(SiteId, "添加内容组", $"内容组:{contentGroupInfo.GroupName}"); isChanged = true; } catch (Exception ex) { FailMessage(ex, "内容组添加失败!"); } } } if (isChanged) { LayerUtils.Close(Page); } }
public void Page_Load(object sender, EventArgs e) { if (IsForbidden) { return; } PageUtils.CheckRequestParameter("siteId"); if (AuthRequest.IsQueryExists("isContent")) { _isContent = AuthRequest.GetQueryBool("isContent"); } if (_isContent) { BtnAddGroup.Text = " 新建内容组"; _idsDictionary = ContentUtility.GetIDsDictionary(Request.QueryString); } else { BtnAddGroup.Text = " 新建栏目组"; _channelIdArrayList = TranslateUtils.StringCollectionToIntList(AuthRequest.GetQueryString("ChannelIDCollection")); } if (!IsPostBack) { if (_isContent) { var contentGroupNameList = ContentGroupManager.GetGroupNameList(SiteId); foreach (var groupName in contentGroupNameList) { var item = new ListItem(groupName, groupName); CblGroupNameCollection.Items.Add(item); } var showPopWinString = ModalContentGroupAdd.GetOpenWindowString(SiteId); BtnAddGroup.Attributes.Add("onclick", showPopWinString); } else { var nodeGroupNameList = ChannelGroupManager.GetGroupNameList(SiteId); foreach (var groupName in nodeGroupNameList) { var item = new ListItem(groupName, groupName); CblGroupNameCollection.Items.Add(item); } var showPopWinString = ModalNodeGroupAdd.GetOpenWindowString(SiteId); BtnAddGroup.Attributes.Add("onclick", showPopWinString); } } }
public void Insert(ContentGroupInfo contentGroup) { var maxTaxis = GetMaxTaxis(contentGroup.SiteId); contentGroup.Taxis = maxTaxis + 1; var insertParms = new IDataParameter[] { GetParameter(ParmGroupName, DataType.VarChar, 255, contentGroup.GroupName), GetParameter(ParmSiteId, DataType.Integer, contentGroup.SiteId), GetParameter(ParmTaxis, DataType.Integer, contentGroup.Taxis), GetParameter(ParmDescription, DataType.Text, contentGroup.Description) }; ExecuteNonQuery(SqlInsert, insertParms); ContentGroupManager.ClearCache(); }
public ContentGroup GetInstanceContentGroup(ContentGroupManager cgm, Log log, int instanceId, int?pageId) { var mci = ModuleController.Instance; var tabId = pageId ?? mci.GetTabModulesByModule(instanceId)[0].TabID; log.Add($"find content-group for mid#{instanceId} and tab#{tabId}"); var settings = mci.GetModule(instanceId, tabId, false).ModuleSettings; var maybeGuid = settings[Settings.ContentGroupGuidString]; Guid.TryParse(maybeGuid?.ToString(), out var groupGuid); var previewTemplateString = settings[Settings.PreviewTemplateIdString]?.ToString(); var templateGuid = !string.IsNullOrEmpty(previewTemplateString) ? Guid.Parse(previewTemplateString) : new Guid(); return(cgm.GetContentGroupOrGeneratePreview(groupGuid, templateGuid)); }
public IHttpActionResult GetConfig() { try { var request = new RequestImpl(); var siteId = request.GetQueryInt("siteId"); var channelId = request.GetQueryInt("channelId"); if (!request.IsUserLoggin || !request.UserPermissionsImpl.HasChannelPermissions(siteId, channelId, ConfigManager.ChannelPermissions.ContentDelete)) { return(Unauthorized()); } var siteInfo = SiteManager.GetSiteInfo(siteId); if (siteInfo == null) { return(BadRequest("无法确定内容对应的站点")); } var channelInfo = ChannelManager.GetChannelInfo(siteId, channelId); if (channelInfo == null) { return(BadRequest("无法确定内容对应的栏目")); } var contentGroupNameList = ContentGroupManager.GetGroupNameList(siteId); return(Ok(new { Value = contentGroupNameList })); } catch (Exception ex) { LogUtils.AddErrorLog(ex); return(InternalServerError(ex)); } }
public void UpdateTaxisToDown(int siteId, string groupName) { //Get Lower Taxis and ID //string sqlString = // $"SELECT TOP 1 GroupName, Taxis FROM siteserver_ContentGroup WHERE (Taxis < (SELECT Taxis FROM siteserver_ContentGroup WHERE GroupName = @GroupName AND SiteId = {siteId}) AND SiteId = {siteId}) ORDER BY Taxis DESC"; var sqlString = SqlUtils.ToTopSqlString("siteserver_ContentGroup", "GroupName, Taxis", $"WHERE (Taxis < (SELECT Taxis FROM siteserver_ContentGroup WHERE GroupName = @GroupName AND SiteId = {siteId}) AND SiteId = {siteId})", "ORDER BY Taxis DESC", 1); var selectParms = new IDataParameter[] { GetParameter(ParmGroupName, DataType.VarChar, 255, groupName) }; var lowerGroupName = string.Empty; var lowerTaxis = 0; using (var rdr = ExecuteReader(sqlString, selectParms)) { if (rdr.Read()) { lowerGroupName = GetString(rdr, 0); lowerTaxis = GetInt(rdr, 1); } rdr.Close(); } if (!string.IsNullOrEmpty(lowerGroupName)) { //Get Taxis Of Selected Class var selectedTaxis = GetTaxis(siteId, groupName); //Set The Selected Class Taxis To Lower Level SetTaxis(siteId, groupName, lowerTaxis); //Set The Lower Class Taxis To Higher Level SetTaxis(siteId, lowerGroupName, selectedTaxis); } ContentGroupManager.ClearCache(); }
public void Page_Load(object sender, EventArgs e) { if (IsForbidden) { return; } if (!IsPostBack) { if (AuthRequest.IsQueryExists("GroupName")) { var groupName = AuthRequest.GetQueryString("GroupName"); var contentGroupInfo = ContentGroupManager.GetContentGroupInfo(SiteId, groupName); if (contentGroupInfo != null) { TbContentGroupName.Text = contentGroupInfo.GroupName; TbContentGroupName.Visible = false; LtlContentGroupName.Text = $"<strong>{contentGroupInfo.GroupName}</strong>"; TbDescription.Text = contentGroupInfo.Description; } } } }
public void Export() { var siteInfo = SiteManager.GetSiteInfo(_siteId); var feed = AtomUtility.GetEmptyFeed(); AtomUtility.AddDcElement(feed.AdditionalElements, new List <string> { SiteAttribute.Id, "PublishmentSystemId" }, siteInfo.Id.ToString()); AtomUtility.AddDcElement(feed.AdditionalElements, new List <string> { SiteAttribute.SiteName, "PublishmentSystemName" }, siteInfo.SiteName); AtomUtility.AddDcElement(feed.AdditionalElements, new List <string> { SiteAttribute.SiteDir, "PublishmentSystemDir" }, siteInfo.SiteDir); AtomUtility.AddDcElement(feed.AdditionalElements, new List <string> { SiteAttribute.TableName, "AuxiliaryTableForContent" }, siteInfo.TableName); AtomUtility.AddDcElement(feed.AdditionalElements, new List <string> { SiteAttribute.IsRoot, "IsHeadquarters" }, siteInfo.IsRoot.ToString()); AtomUtility.AddDcElement(feed.AdditionalElements, new List <string> { SiteAttribute.ParentId, "ParentPublishmentSystemId" }, siteInfo.ParentId.ToString()); AtomUtility.AddDcElement(feed.AdditionalElements, SiteAttribute.Taxis, siteInfo.Taxis.ToString()); AtomUtility.AddDcElement(feed.AdditionalElements, SiteAttribute.SettingsXml, siteInfo.Additional.ToString()); var indexTemplateId = TemplateManager.GetDefaultTemplateId(siteInfo.Id, TemplateType.IndexPageTemplate); if (indexTemplateId != 0) { var indexTemplateName = TemplateManager.GetTemplateName(_siteId, indexTemplateId); AtomUtility.AddDcElement(feed.AdditionalElements, DefaultIndexTemplateName, indexTemplateName); } var channelTemplateId = TemplateManager.GetDefaultTemplateId(siteInfo.Id, TemplateType.ChannelTemplate); if (channelTemplateId != 0) { var channelTemplateName = TemplateManager.GetTemplateName(_siteId, channelTemplateId); AtomUtility.AddDcElement(feed.AdditionalElements, DefaultChannelTemplateName, channelTemplateName); } var contentTemplateId = TemplateManager.GetDefaultTemplateId(siteInfo.Id, TemplateType.ContentTemplate); if (contentTemplateId != 0) { var contentTemplateName = TemplateManager.GetTemplateName(_siteId, contentTemplateId); AtomUtility.AddDcElement(feed.AdditionalElements, DefaultContentTemplateName, contentTemplateName); } var fileTemplateId = TemplateManager.GetDefaultTemplateId(siteInfo.Id, TemplateType.FileTemplate); if (fileTemplateId != 0) { var fileTemplateName = TemplateManager.GetTemplateName(siteInfo.Id, fileTemplateId); AtomUtility.AddDcElement(feed.AdditionalElements, DefaultFileTemplateName, fileTemplateName); } var channelGroupInfoList = ChannelGroupManager.GetChannelGroupInfoList(siteInfo.Id); channelGroupInfoList.Reverse(); foreach (var channelGroupInfo in channelGroupInfoList) { var entry = ChannelGroupIe.Export(channelGroupInfo); feed.Entries.Add(entry); } var contentGroupInfoList = ContentGroupManager.GetContentGroupInfoList(siteInfo.Id); contentGroupInfoList.Reverse(); foreach (var contentGroupInfo in contentGroupInfoList) { var entry = ContentGroupIe.Export(contentGroupInfo); feed.Entries.Add(entry); } feed.Save(_filePath); }
public void Page_Load(object sender, EventArgs e) { if (IsForbidden) { return; } PageUtils.CheckRequestParameter("siteId", "channelId"); var channelId = AuthRequest.GetQueryInt("channelId"); var contentId = AuthRequest.GetQueryInt("id"); ReturnUrl = StringUtils.ValueFromUrl(AuthRequest.GetQueryString("returnUrl")); if (string.IsNullOrEmpty(ReturnUrl)) { ReturnUrl = CmsPages.GetContentsUrl(SiteId, channelId); } _channelInfo = ChannelManager.GetChannelInfo(SiteId, channelId); _tableName = ChannelManager.GetTableName(SiteInfo, _channelInfo); ContentInfo contentInfo = null; _styleInfoList = TableStyleManager.GetContentStyleInfoList(SiteInfo, _channelInfo); if (!IsPermissions(contentId)) { return; } if (contentId > 0) { contentInfo = ContentManager.GetContentInfo(SiteInfo, _channelInfo, contentId); } var titleFormat = IsPostBack ? Request.Form[ContentAttribute.GetFormatStringAttributeName(ContentAttribute.Title)] : contentInfo?.GetString(ContentAttribute.GetFormatStringAttributeName(ContentAttribute.Title)); LtlTitleHtml.Text = ContentUtility.GetTitleHtml(titleFormat, AjaxCmsService.GetTitlesUrl(SiteId, _channelInfo.Id)); AcAttributes.SiteInfo = SiteInfo; AcAttributes.ChannelId = _channelInfo.Id; AcAttributes.ContentId = contentId; AcAttributes.StyleInfoList = _styleInfoList; if (!IsPostBack) { var pageTitle = contentId == 0 ? "添加内容" : "编辑内容"; LtlPageTitle.Text = pageTitle; if (HasChannelPermissions(_channelInfo.Id, ConfigManager.ChannelPermissions.ContentTranslate)) { PhTranslate.Visible = true; BtnTranslate.Attributes.Add("onclick", ModalChannelMultipleSelect.GetOpenWindowString(SiteId, true)); ETranslateContentTypeUtils.AddListItems(DdlTranslateType, true); ControlUtils.SelectSingleItem(DdlTranslateType, ETranslateContentTypeUtils.GetValue(ETranslateContentType.Copy)); } else { PhTranslate.Visible = false; } CblContentAttributes.Items.Add(new ListItem("置顶", ContentAttribute.IsTop)); CblContentAttributes.Items.Add(new ListItem("推荐", ContentAttribute.IsRecommend)); CblContentAttributes.Items.Add(new ListItem("热点", ContentAttribute.IsHot)); CblContentAttributes.Items.Add(new ListItem("醒目", ContentAttribute.IsColor)); TbAddDate.DateTime = DateTime.Now; TbAddDate.Now = true; var contentGroupNameList = ContentGroupManager.GetGroupNameList(SiteId); foreach (var groupName in contentGroupNameList) { var item = new ListItem(groupName, groupName); CblContentGroups.Items.Add(item); } BtnContentGroupAdd.Attributes.Add("onclick", ModalContentGroupAdd.GetOpenWindowString(SiteId)); LtlTags.Text = ContentUtility.GetTagsHtml(AjaxCmsService.GetTagsUrl(SiteId)); if (HasChannelPermissions(_channelInfo.Id, ConfigManager.ChannelPermissions.ContentCheck)) { PhStatus.Visible = true; int checkedLevel; var isChecked = CheckManager.GetUserCheckLevel(AuthRequest.AdminPermissionsImpl, SiteInfo, _channelInfo.Id, out checkedLevel); if (AuthRequest.IsQueryExists("contentLevel")) { checkedLevel = TranslateUtils.ToIntWithNagetive(AuthRequest.GetQueryString("contentLevel")); if (checkedLevel != CheckManager.LevelInt.NotChange) { isChecked = checkedLevel >= SiteInfo.Additional.CheckContentLevel; } } CheckManager.LoadContentLevelToEdit(DdlContentLevel, SiteInfo, contentInfo, isChecked, checkedLevel); } else { PhStatus.Visible = false; } BtnSubmit.Attributes.Add("onclick", InputParserUtils.GetValidateSubmitOnClickScript("myForm", true, "autoCheckKeywords()")); //自动检测敏感词 ClientScriptRegisterStartupScript("autoCheckKeywords", WebUtils.GetAutoCheckKeywordsScript(SiteInfo)); if (contentId == 0) { var attributes = TableStyleManager.GetDefaultAttributes(_styleInfoList); if (AuthRequest.IsQueryExists("isUploadWord")) { var isFirstLineTitle = AuthRequest.GetQueryBool("isFirstLineTitle"); var isFirstLineRemove = AuthRequest.GetQueryBool("isFirstLineRemove"); var isClearFormat = AuthRequest.GetQueryBool("isClearFormat"); var isFirstLineIndent = AuthRequest.GetQueryBool("isFirstLineIndent"); var isClearFontSize = AuthRequest.GetQueryBool("isClearFontSize"); var isClearFontFamily = AuthRequest.GetQueryBool("isClearFontFamily"); var isClearImages = AuthRequest.GetQueryBool("isClearImages"); var contentLevel = AuthRequest.GetQueryInt("contentLevel"); var fileName = AuthRequest.GetQueryString("fileName"); var formCollection = WordUtils.GetWordNameValueCollection(SiteId, isFirstLineTitle, isFirstLineRemove, isClearFormat, isFirstLineIndent, isClearFontSize, isClearFontFamily, isClearImages, fileName); attributes.Load(formCollection); TbTitle.Text = formCollection[ContentAttribute.Title]; } AcAttributes.Attributes = attributes; } else if (contentInfo != null) { TbTitle.Text = contentInfo.Title; TbTags.Text = contentInfo.Tags; var list = new List <string>(); if (contentInfo.IsTop) { list.Add(ContentAttribute.IsTop); } if (contentInfo.IsRecommend) { list.Add(ContentAttribute.IsRecommend); } if (contentInfo.IsHot) { list.Add(ContentAttribute.IsHot); } if (contentInfo.IsColor) { list.Add(ContentAttribute.IsColor); } ControlUtils.SelectMultiItems(CblContentAttributes, list); TbLinkUrl.Text = contentInfo.LinkUrl; TbAddDate.DateTime = contentInfo.AddDate; ControlUtils.SelectMultiItems(CblContentGroups, TranslateUtils.StringCollectionToStringList(contentInfo.GroupNameCollection)); AcAttributes.Attributes = contentInfo; } } else { AcAttributes.Attributes = new AttributesImpl(Request.Form); } //DataBind(); }
protected override void SavePreviewTemplateId(Guid templateGuid) => ContentGroupManager.SetPreviewTemplate(ModuleId, templateGuid);
public IHttpActionResult Submit() { try { var request = new RequestImpl(); var siteId = request.GetPostInt("siteId"); var channelId = request.GetPostInt("channelId"); var contentIdList = TranslateUtils.StringCollectionToIntList(request.GetPostString("contentIds")); var pageType = request.GetPostString("pageType"); var groupNames = TranslateUtils.StringCollectionToStringList(request.GetPostString("groupNames")); var groupName = request.GetPostString("groupName"); var description = request.GetPostString("description"); if (!request.IsUserLoggin || !request.UserPermissionsImpl.HasChannelPermissions(siteId, channelId, ConfigManager.ChannelPermissions.ContentEdit)) { return(Unauthorized()); } var siteInfo = SiteManager.GetSiteInfo(siteId); if (siteInfo == null) { return(BadRequest("无法确定内容对应的站点")); } var channelInfo = ChannelManager.GetChannelInfo(siteId, channelId); if (channelInfo == null) { return(BadRequest("无法确定内容对应的栏目")); } if (pageType == "setGroup") { foreach (var contentId in contentIdList) { var contentInfo = ContentManager.GetContentInfo(siteInfo, channelInfo, contentId); if (contentInfo == null) { continue; } var list = TranslateUtils.StringCollectionToStringList(contentInfo.GroupNameCollection); foreach (var name in groupNames) { if (!list.Contains(name)) { list.Add(name); } } contentInfo.GroupNameCollection = TranslateUtils.ObjectCollectionToString(list); DataProvider.ContentDao.Update(siteInfo, channelInfo, contentInfo); } request.AddSiteLog(siteId, "批量设置内容组", $"内容组:{TranslateUtils.ObjectCollectionToString(groupNames)}"); } else if (pageType == "cancelGroup") { foreach (var contentId in contentIdList) { var contentInfo = ContentManager.GetContentInfo(siteInfo, channelInfo, contentId); if (contentInfo == null) { continue; } var list = TranslateUtils.StringCollectionToStringList(contentInfo.GroupNameCollection); foreach (var name in groupNames) { if (list.Contains(name)) { list.Remove(name); } } contentInfo.GroupNameCollection = TranslateUtils.ObjectCollectionToString(list); DataProvider.ContentDao.Update(siteInfo, channelInfo, contentInfo); } request.AddSiteLog(siteId, "批量取消内容组", $"内容组:{TranslateUtils.ObjectCollectionToString(groupNames)}"); } else if (pageType == "addGroup") { var groupInfo = new ContentGroupInfo { GroupName = AttackUtils.FilterXss(groupName), SiteId = siteId, Description = AttackUtils.FilterXss(description) }; if (ContentGroupManager.IsExists(siteId, groupInfo.GroupName)) { DataProvider.ContentGroupDao.Update(groupInfo); request.AddSiteLog(siteId, "修改内容组", $"内容组:{groupInfo.GroupName}"); } else { DataProvider.ContentGroupDao.Insert(groupInfo); request.AddSiteLog(siteId, "添加内容组", $"内容组:{groupInfo.GroupName}"); } foreach (var contentId in contentIdList) { var contentInfo = ContentManager.GetContentInfo(siteInfo, channelInfo, contentId); if (contentInfo == null) { continue; } var list = TranslateUtils.StringCollectionToStringList(contentInfo.GroupNameCollection); if (!list.Contains(groupInfo.GroupName)) { list.Add(groupInfo.GroupName); } contentInfo.GroupNameCollection = TranslateUtils.ObjectCollectionToString(list); DataProvider.ContentDao.Update(siteInfo, channelInfo, contentInfo); } request.AddSiteLog(siteId, "批量设置内容组", $"内容组:{groupInfo.GroupName}"); } return(Ok(new { Value = contentIdList })); } catch (Exception ex) { LogUtils.AddErrorLog(ex); return(InternalServerError(ex)); } }
public object GetContentAdd(RequestImpl request) { var requestSiteId = request.SiteId; var requestChannelId = request.ChannelId; var requestContentId = request.ContentId; var sites = new List <object>(); var channels = new List <object>(); object site = null; object channel = null; List <string> groupNames = null; List <string> tagNames = null; ContentInfo contentInfo = null; List <TableStyleInfo> styles = null; List <KeyValuePair <int, string> > checkedLevels = null; var checkedLevel = 0; if (request.IsUserLoggin) { SiteInfo siteInfo = null; ChannelInfo channelInfo = null; var siteIdList = request.UserPermissionsImpl.GetSiteIdList(); foreach (var siteId in siteIdList) { var permissionSiteInfo = SiteManager.GetSiteInfo(siteId); if (requestSiteId == siteId) { siteInfo = permissionSiteInfo; } sites.Add(new { permissionSiteInfo.Id, permissionSiteInfo.SiteName }); } if (siteInfo == null && siteIdList.Count > 0) { siteInfo = SiteManager.GetSiteInfo(siteIdList[0]); } if (siteInfo != null) { var channelIdList = request.UserPermissionsImpl.GetChannelIdList(siteInfo.Id, ConfigManager.ChannelPermissions.ContentAdd); foreach (var permissionChannelId in channelIdList) { var permissionChannelInfo = ChannelManager.GetChannelInfo(siteInfo.Id, permissionChannelId); if (channelInfo == null || permissionChannelInfo.Id == requestChannelId) { channelInfo = permissionChannelInfo; } channels.Add(new { permissionChannelInfo.Id, ChannelName = ChannelManager.GetChannelNameNavigation(siteInfo.Id, permissionChannelId) }); } site = new { siteInfo.Id, siteInfo.SiteName, SiteUrl = PageUtility.GetSiteUrl(siteInfo, false) }; groupNames = ContentGroupManager.GetGroupNameList(siteInfo.Id); tagNames = ContentTagManager.GetTagNameList(siteInfo.Id); } if (channelInfo != null) { channel = new { channelInfo.Id, ChannelName = ChannelManager.GetChannelNameNavigation(siteInfo.Id, channelInfo.Id) }; styles = TableStyleManager.GetContentStyleInfoList(siteInfo, channelInfo); var checkKeyValuePair = CheckManager.GetUserCheckLevel(request.AdminPermissionsImpl, siteInfo, siteInfo.Id); checkedLevels = CheckManager.GetCheckedLevels(siteInfo, checkKeyValuePair.Key, checkedLevel, true); if (requestContentId != 0) { checkedLevels.Insert(0, new KeyValuePair <int, string>(CheckManager.LevelInt.NotChange, CheckManager.Level.NotChange)); checkedLevel = CheckManager.LevelInt.NotChange; contentInfo = ContentManager.GetContentInfo(siteInfo, channelInfo, requestContentId); if (contentInfo != null && (contentInfo.SiteId != siteInfo.Id || contentInfo.ChannelId != channelInfo.Id)) { contentInfo = null; } } else { contentInfo = new ContentInfo(new { Id = 0, SiteId = siteInfo.Id, ChannelId = channelInfo.Id, AddDate = DateTime.Now }); } } } return(new { Value = request.UserInfo, Config = ConfigManager.Instance.SystemConfigInfo, Sites = sites, Channels = channels, Site = site, Channel = channel, AllGroupNames = groupNames, AllTagNames = tagNames, Styles = styles, CheckedLevels = checkedLevels, CheckedLevel = checkedLevel, Content = contentInfo, }); }