public string GetContentOrderByString(int siteId, string orderValue, TaxisType defaultType) { var taxisType = defaultType; var orderByString = string.Empty; if (!string.IsNullOrEmpty(orderValue)) { if (StringUtils.EqualsIgnoreCase(orderValue, StlParserUtility.OrderDefault)) { taxisType = TaxisType.OrderByTaxisDesc; } else if (StringUtils.EqualsIgnoreCase(orderValue, StlParserUtility.OrderBack)) { taxisType = TaxisType.OrderByTaxis; } else if (StringUtils.EqualsIgnoreCase(orderValue, StlParserUtility.OrderAddDate)) { taxisType = TaxisType.OrderByAddDateDesc; } else if (StringUtils.EqualsIgnoreCase(orderValue, StlParserUtility.OrderAddDateBack)) { taxisType = TaxisType.OrderByAddDate; } else if (StringUtils.EqualsIgnoreCase(orderValue, StlParserUtility.OrderLastModifiedDate)) { taxisType = TaxisType.OrderByLastModifiedDateDesc; } else if (StringUtils.EqualsIgnoreCase(orderValue, StlParserUtility.OrderLastModifiedDateBack)) { taxisType = TaxisType.OrderByLastModifiedDate; } else if (StringUtils.EqualsIgnoreCase(orderValue, StlParserUtility.OrderHits)) { taxisType = TaxisType.OrderByHits; } else if (StringUtils.EqualsIgnoreCase(orderValue, StlParserUtility.OrderHitsByDay)) { taxisType = TaxisType.OrderByHitsByDay; } else if (StringUtils.EqualsIgnoreCase(orderValue, StlParserUtility.OrderHitsByWeek)) { taxisType = TaxisType.OrderByHitsByWeek; } else if (StringUtils.EqualsIgnoreCase(orderValue, StlParserUtility.OrderHitsByMonth)) { taxisType = TaxisType.OrderByHitsByMonth; } else if (StringUtils.EqualsIgnoreCase(orderValue, StlParserUtility.OrderRandom)) { taxisType = TaxisType.OrderByRandom; } else { orderByString = orderValue; } } return(ETaxisTypeUtils.GetContentOrderByString(taxisType, orderByString)); }
public static string GetContentOrderByString(int siteId, string orderValue, ETaxisType defaultType) { var taxisType = defaultType; var orderByString = string.Empty; if (!string.IsNullOrEmpty(orderValue)) { if (orderValue.ToLower().Equals(StlParserUtility.OrderDefault.ToLower())) { taxisType = ETaxisType.OrderByTaxisDesc; } else if (orderValue.ToLower().Equals(StlParserUtility.OrderBack.ToLower())) { taxisType = ETaxisType.OrderByTaxis; } else if (orderValue.ToLower().Equals(StlParserUtility.OrderAddDate.ToLower())) { taxisType = ETaxisType.OrderByAddDateDesc; } else if (orderValue.ToLower().Equals(StlParserUtility.OrderAddDateBack.ToLower())) { taxisType = ETaxisType.OrderByAddDate; } else if (orderValue.ToLower().Equals(StlParserUtility.OrderLastEditDate.ToLower())) { taxisType = ETaxisType.OrderByLastEditDateDesc; } else if (orderValue.ToLower().Equals(StlParserUtility.OrderLastEditDateBack.ToLower())) { taxisType = ETaxisType.OrderByLastEditDate; } else if (orderValue.ToLower().Equals(StlParserUtility.OrderHits.ToLower())) { taxisType = ETaxisType.OrderByHits; } else if (orderValue.ToLower().Equals(StlParserUtility.OrderHitsByDay.ToLower())) { taxisType = ETaxisType.OrderByHitsByDay; } else if (orderValue.ToLower().Equals(StlParserUtility.OrderHitsByWeek.ToLower())) { taxisType = ETaxisType.OrderByHitsByWeek; } else if (orderValue.ToLower().Equals(StlParserUtility.OrderHitsByMonth.ToLower())) { taxisType = ETaxisType.OrderByHitsByMonth; } else if (orderValue.ToLower().Equals(StlParserUtility.OrderRandom.ToLower())) { taxisType = ETaxisType.OrderByRandom; } else { orderByString = orderValue; } } return(ETaxisTypeUtils.GetContentOrderByString(taxisType, orderByString)); }
private static async Task CreateContentsAsync(int siteId, int channelId) { var siteInfo = SiteManager.GetSiteInfo(siteId); var channelInfo = ChannelManager.GetChannelInfo(siteId, channelId); var tableName = ChannelManager.GetTableName(siteInfo, channelInfo); var orderByString = ETaxisTypeUtils.GetContentOrderByString(ETaxisType.OrderByTaxisDesc); var contentIdList = StlContentCache.GetContentIdListChecked(tableName, channelId, orderByString); foreach (var contentId in contentIdList) { await CreateContentAsync(siteInfo, channelInfo, contentId); } }
public void CreateContents(int nodeId) { var nodeInfo = NodeManager.GetNodeInfo(PublishmentSystemId, nodeId); var tableStyle = NodeManager.GetTableStyle(PublishmentSystemInfo, nodeInfo); var tableName = NodeManager.GetTableName(PublishmentSystemInfo, nodeInfo); var orderByString = ETaxisTypeUtils.GetContentOrderByString(ETaxisType.OrderByTaxisDesc); var contentIdList = DataProvider.ContentDao.GetContentIdListChecked(tableName, nodeId, orderByString); foreach (var contentId in contentIdList) { CreateContent(tableStyle, tableName, nodeId, contentId); } }
private void TranslateContent(int channelId, int targetSiteId, int targetChannelId) { var tableName = ChannelManager.GetTableName(SiteInfo, channelId); var orderByString = ETaxisTypeUtils.GetContentOrderByString(ETaxisType.OrderByTaxis); var contentIdList = DataProvider.ContentDao.GetContentIdListChecked(tableName, channelId, orderByString); var translateType = RblIsDeleteAfterTranslate.Visible && EBooleanUtils.Equals(RblIsDeleteAfterTranslate.SelectedValue, EBoolean.True) ? ETranslateContentType.Cut : ETranslateContentType.Copy; foreach (var contentId in contentIdList) { ContentUtility.Translate(SiteInfo, channelId, contentId, targetSiteId, targetChannelId, translateType); } }
private static async Task CreateContentsAsync(int siteId, int channelId) { var siteInfo = SiteManager.GetSiteInfo(siteId); var nodeInfo = ChannelManager.GetChannelInfo(siteId, channelId); var tableName = ChannelManager.GetTableName(siteInfo, nodeInfo); var orderByString = ETaxisTypeUtils.GetContentOrderByString(ETaxisType.OrderByTaxisDesc); var contentIdList = Content.GetContentIdListChecked(tableName, channelId, orderByString); foreach (var contentId in contentIdList) { try { await CreateContentAsync(siteInfo, tableName, channelId, contentId); } catch (Exception ex) { LogUtils.AddSystemErrorLog(ex, "CreateContent"); } } }
/// <summary> /// 导出栏目及栏目下内容至XML文件 /// </summary> /// <returns></returns> public void Export(int publishmentSystemId, int nodeId, bool isSaveContents) { var nodeInfo = NodeManager.GetNodeInfo(publishmentSystemId, nodeId); if (nodeInfo == null) { return; } var publishmentSystemInfo = PublishmentSystemManager.GetPublishmentSystemInfo(publishmentSystemId); var tableStyle = NodeManager.GetTableStyle(publishmentSystemInfo, nodeInfo); var tableName = NodeManager.GetTableName(publishmentSystemInfo, nodeInfo); var fileName = DataProvider.NodeDao.GetOrderStringInPublishmentSystem(nodeId); var filePath = _siteContentDirectoryPath + PathUtils.SeparatorChar + fileName + ".xml"; var feed = ExportNodeInfo(nodeInfo); if (isSaveContents) { var orderByString = ETaxisTypeUtils.GetContentOrderByString(ETaxisType.OrderByTaxis); var contentIdList = DataProvider.ContentDao.GetContentIdListChecked(tableName, nodeId, orderByString); foreach (var contentId in contentIdList) { var contentInfo = DataProvider.ContentDao.GetContentInfo(tableStyle, tableName, contentId); //ContentUtility.PutImagePaths(publishmentSystemInfo, contentInfo as BackgroundContentInfo, collection); var entry = ExportContentInfo(contentInfo); feed.Entries.Add(entry); } } feed.Save(filePath); // foreach (string imageUrl in collection.Keys) // { // string sourceFilePath = collection[imageUrl]; // string destFilePath = PathUtility.MapPath(this.siteContentDirectoryPath, imageUrl); // DirectoryUtils.CreateDirectoryIfNotExists(destFilePath); // FileUtils.MoveFile(sourceFilePath, destFilePath, true); // } }
public void Export(int siteId, int channelId, bool isSaveContents) { var channelInfo = ChannelManager.GetChannelInfo(siteId, channelId); if (channelInfo == null) { return; } var siteInfo = SiteManager.GetSiteInfo(siteId); var tableName = ChannelManager.GetTableName(siteInfo, channelInfo); var fileName = DataProvider.ChannelDao.GetOrderStringInSite(channelId); var filePath = _siteContentDirectoryPath + PathUtils.SeparatorChar + fileName + ".xml"; var feed = _channelIe.ExportNodeInfo(channelInfo); if (isSaveContents) { var orderByString = ETaxisTypeUtils.GetContentOrderByString(ETaxisType.OrderByTaxis); var contentIdList = DataProvider.ContentDao.GetContentIdListChecked(tableName, channelId, orderByString); foreach (var contentId in contentIdList) { var contentInfo = ContentManager.GetContentInfo(siteInfo, channelInfo, contentId); //ContentUtility.PutImagePaths(siteInfo, contentInfo as BackgroundContentInfo, collection); var entry = _contentIe.ExportContentInfo(contentInfo); feed.Entries.Add(entry); } } feed.Save(filePath); // foreach (string imageUrl in collection.Keys) // { // string sourceFilePath = collection[imageUrl]; // string destFilePath = PathUtility.MapPath(this.siteContentDirectoryPath, imageUrl); // DirectoryUtils.CreateDirectoryIfNotExists(destFilePath); // FileUtils.MoveFile(sourceFilePath, destFilePath, true); // } }
private void TranslateContent(SiteInfo targetSiteInfo, int channelId, int targetChannelId, bool isChecked, int checkedLevel) { var tableName = ChannelManager.GetTableName(SiteInfo, channelId); var orderByString = ETaxisTypeUtils.GetContentOrderByString(ETaxisType.OrderByTaxis); var targetTableName = ChannelManager.GetTableName(targetSiteInfo, targetChannelId); var contentIdList = DataProvider.ContentDao.GetContentIdListChecked(tableName, channelId, orderByString); foreach (var contentId in contentIdList) { var contentInfo = DataProvider.ContentDao.GetContentInfo(tableName, contentId); FileUtility.MoveFileByContentInfo(SiteInfo, targetSiteInfo, contentInfo); contentInfo.SiteId = TranslateUtils.ToInt(DdlSiteId.SelectedValue); contentInfo.SourceId = contentInfo.ChannelId; contentInfo.ChannelId = targetChannelId; contentInfo.IsChecked = isChecked; contentInfo.CheckedLevel = checkedLevel; var theContentId = DataProvider.ContentDao.Insert(targetTableName, targetSiteInfo, contentInfo); if (contentInfo.IsChecked) { CreateManager.CreateContentAndTrigger(targetSiteInfo.Id, contentInfo.ChannelId, theContentId); } } if (RblIsDeleteAfterTranslate.Visible && EBooleanUtils.Equals(RblIsDeleteAfterTranslate.SelectedValue, EBoolean.True)) { try { DataProvider.ContentDao.TrashContents(SiteId, tableName, contentIdList, channelId); } catch { // ignored } } }
public void CreateContents(int nodeId) { var nodeInfo = NodeManager.GetNodeInfo(PublishmentSystemId, nodeId); var tableStyle = NodeManager.GetTableStyle(PublishmentSystemInfo, nodeInfo); var tableName = NodeManager.GetTableName(PublishmentSystemInfo, nodeInfo); var orderByString = ETaxisTypeUtils.GetContentOrderByString(ETaxisType.OrderByTaxisDesc); var contentIdList = DataProvider.ContentDao.GetContentIdListChecked(tableName, nodeId, orderByString); //foreach (var contentId in contentIdList) //{ // CreateContent(tableStyle, tableName, nodeId, contentId); //} if (PublishmentSystemInfo.Additional.IsCreateMultiThread) // 多线程并发生成页面 { for (int i = 0; i < contentIdList.Count; i = i + 3) { var list = new List <int>(); list.Add(contentIdList[i]); if (i < contentIdList.Count - 1) { list.Add(contentIdList[i + 1]); } if (i < contentIdList.Count - 2) { list.Add(contentIdList[i + 2]); } Parallel.ForEach(list, contentId => CreateContent(tableStyle, tableName, nodeId, contentId)); } } else // 单线程生成页面 { foreach (var contentId in contentIdList) { CreateContent(tableStyle, tableName, nodeId, contentId); } } }
public void Page_Load(object sender, EventArgs e) { if (IsForbidden) { return; } PageUtils.CheckRequestParameter("siteId"); _channelId = AuthRequest.IsQueryExists("channelId") ? AuthRequest.GetQueryInt("channelId") : SiteId; _isCheckOnly = AuthRequest.GetQueryBool("isCheckOnly"); _isTrashOnly = AuthRequest.GetQueryBool("isTrashOnly"); _isWritingOnly = AuthRequest.GetQueryBool("isWritingOnly"); _isAdminOnly = AuthRequest.GetQueryBool("isAdminOnly"); _channelInfo = ChannelManager.GetChannelInfo(SiteId, _channelId); var tableName = ChannelManager.GetTableName(SiteInfo, _channelInfo); _styleInfoList = TableStyleManager.GetContentStyleInfoList(SiteInfo, _channelInfo); _attributesOfDisplay = TranslateUtils.StringCollectionToStringCollection(ChannelManager.GetContentAttributesOfDisplay(SiteId, _channelId)); _allStyleInfoList = ContentUtility.GetAllTableStyleInfoList(_styleInfoList); _pluginIds = PluginContentManager.GetContentPluginIds(_channelInfo); _pluginColumns = PluginContentManager.GetContentColumns(_pluginIds); _isEdit = TextUtility.IsEdit(SiteInfo, _channelId, AuthRequest.AdminPermissionsImpl); var state = AuthRequest.IsQueryExists("state") ? AuthRequest.GetQueryInt("state") : CheckManager.LevelInt.All; var searchType = AuthRequest.IsQueryExists("searchType") ? AuthRequest.GetQueryString("searchType") : ContentAttribute.Title; var dateFrom = AuthRequest.IsQueryExists("dateFrom") ? AuthRequest.GetQueryString("dateFrom") : string.Empty; var dateTo = AuthRequest.IsQueryExists("dateTo") ? AuthRequest.GetQueryString("dateTo") : string.Empty; var keyword = AuthRequest.IsQueryExists("keyword") ? AuthRequest.GetQueryString("keyword") : string.Empty; var checkedLevel = 5; var isChecked = true; foreach (var owningChannelId in AuthRequest.AdminPermissionsImpl.ChannelIdList) { int checkedLevelByChannelId; var isCheckedByChannelId = CheckManager.GetUserCheckLevel(AuthRequest.AdminPermissionsImpl, SiteInfo, owningChannelId, out checkedLevelByChannelId); if (checkedLevel > checkedLevelByChannelId) { checkedLevel = checkedLevelByChannelId; } if (!isCheckedByChannelId) { isChecked = false; } } RptContents.ItemDataBound += RptContents_ItemDataBound; var allAttributeNameList = TableColumnManager.GetTableColumnNameList(tableName, DataType.Text); var adminId = _isAdminOnly ? AuthRequest.AdminId : AuthRequest.AdminPermissionsImpl.GetAdminId(SiteInfo.Id, _channelInfo.Id); var whereString = DataProvider.ContentDao.GetPagerWhereSqlString(SiteInfo, _channelInfo, searchType, keyword, dateFrom, dateTo, state, _isCheckOnly, false, _isTrashOnly, _isWritingOnly, adminId, AuthRequest.AdminPermissionsImpl, allAttributeNameList); PgContents.Param = new PagerParam { ControlToPaginate = RptContents, TableName = tableName, PageSize = SiteInfo.Additional.PageSize, Page = AuthRequest.GetQueryInt(Pager.QueryNamePage, 1), OrderSqlString = ETaxisTypeUtils.GetContentOrderByString(ETaxisType.OrderByIdDesc), ReturnColumnNames = TranslateUtils.ObjectCollectionToString(allAttributeNameList), WhereSqlString = whereString, TotalCount = DataProvider.DatabaseDao.GetPageTotalCount(tableName, whereString) }; if (IsPostBack) { return; } if (_isTrashOnly) { if (AuthRequest.IsQueryExists("IsDeleteAll")) { //DataProvider.ContentDao.DeleteContentsByTrash(SiteId, _channelId, tableName); var list = DataProvider.ContentDao.GetContentIdListByTrash(SiteId, tableName); foreach (var(contentChannelId, contentId) in list) { ContentUtility.Delete(tableName, SiteInfo, contentChannelId, contentId); } AuthRequest.AddSiteLog(SiteId, "清空回收站"); SuccessMessage("成功清空回收站!"); } else if (AuthRequest.IsQueryExists("IsRestore")) { var idsDictionary = ContentUtility.GetIDsDictionary(Request.QueryString); foreach (var channelId in idsDictionary.Keys) { var contentIdList = idsDictionary[channelId]; DataProvider.ContentDao.UpdateTrashContents(SiteId, channelId, ChannelManager.GetTableName(SiteInfo, channelId), contentIdList); } AuthRequest.AddSiteLog(SiteId, "从回收站还原内容"); SuccessMessage("成功还原内容!"); } else if (AuthRequest.IsQueryExists("IsRestoreAll")) { DataProvider.ContentDao.UpdateRestoreContentsByTrash(SiteId, _channelId, tableName); AuthRequest.AddSiteLog(SiteId, "从回收站还原所有内容"); SuccessMessage("成功还原所有内容!"); } } ChannelManager.AddListItems(DdlChannelId.Items, SiteInfo, true, true, AuthRequest.AdminPermissionsImpl); if (_isCheckOnly) { CheckManager.LoadContentLevelToCheck(DdlState, SiteInfo, isChecked, checkedLevel); } else { CheckManager.LoadContentLevelToList(DdlState, SiteInfo, _isCheckOnly, isChecked, checkedLevel); } ControlUtils.SelectSingleItem(DdlState, state.ToString()); foreach (var styleInfo in _allStyleInfoList) { if (styleInfo.InputType == InputType.TextEditor) { continue; } var listitem = new ListItem(styleInfo.DisplayName, styleInfo.AttributeName); DdlSearchType.Items.Add(listitem); } //ETriStateUtils.AddListItems(DdlState, "全部", "已审核", "待审核"); if (SiteId != _channelId) { ControlUtils.SelectSingleItem(DdlChannelId, _channelId.ToString()); } //ControlUtils.SelectSingleItem(DdlState, AuthRequest.GetQueryString("State")); ControlUtils.SelectSingleItem(DdlSearchType, searchType); TbKeyword.Text = keyword; TbDateFrom.Text = dateFrom; TbDateTo.Text = dateTo; PgContents.DataBind(); LtlColumnsHead.Text += TextUtility.GetColumnsHeadHtml(_styleInfoList, _pluginColumns, _attributesOfDisplay); BtnSelect.Attributes.Add("onclick", ModalSelectColumns.GetOpenWindowString(SiteId, _channelId)); if (_isTrashOnly) { LtlColumnsHead.Text += @"<th class=""text-center text-nowrap"" width=""150"">删除时间</th>"; BtnAddToGroup.Visible = BtnTranslate.Visible = BtnCheck.Visible = false; PhTrash.Visible = true; if (!HasChannelPermissions(_channelId, ConfigManager.ChannelPermissions.ContentDelete)) { BtnDelete.Visible = false; BtnDeleteAll.Visible = false; } else { BtnDelete.Attributes.Add("onclick", PageContentDelete.GetRedirectClickStringForMultiChannels(SiteId, true, PageUrl)); BtnDeleteAll.Attributes.Add("onclick", PageUtils.GetRedirectStringWithConfirm(PageUtils.AddQueryString(PageUrl, "IsDeleteAll", "True"), "确实要清空回收站吗?")); } BtnRestore.Attributes.Add("onclick", PageUtils.GetRedirectStringWithCheckBoxValue(PageUtils.AddQueryString(PageUrl, "IsRestore", "True"), "IDsCollection", "IDsCollection", "请选择需要还原的内容!")); BtnRestoreAll.Attributes.Add("onclick", PageUtils.GetRedirectStringWithConfirm(PageUtils.AddQueryString(PageUrl, "IsRestoreAll", "True"), "确实要还原所有内容吗?")); } else { LtlColumnsHead.Text += @"<th class=""text-center text-nowrap"" width=""100"">操作</th>"; BtnAddToGroup.Attributes.Add("onclick", ModalAddToGroup.GetOpenWindowStringToContentForMultiChannels(SiteId)); if (HasChannelPermissions(SiteId, ConfigManager.ChannelPermissions.ContentCheck)) { BtnCheck.Attributes.Add("onclick", ModalContentCheck.GetOpenWindowStringForMultiChannels(SiteId, PageUrl)); if (_isCheckOnly) { BtnCheck.CssClass = "btn m-r-5 btn-success"; } } else { PhCheck.Visible = false; } if (!HasChannelPermissions(_channelId, ConfigManager.ChannelPermissions.ContentTranslate)) { BtnTranslate.Visible = false; } else { BtnTranslate.Attributes.Add("onclick", PageContentTranslate.GetRedirectClickStringForMultiChannels(SiteId, PageUrl)); } if (!HasChannelPermissions(_channelId, ConfigManager.ChannelPermissions.ContentDelete)) { BtnDelete.Visible = false; } else { BtnDelete.Attributes.Add("onclick", PageContentDelete.GetRedirectClickStringForMultiChannels(SiteId, false, PageUrl)); } } }
public static int GetValue(PublishmentSystemInfo publishmentSystemInfo, NodeInfo nodeInfo) { int firstContentId; var hashtable = GetHashtable(); if (hashtable[nodeInfo.NodeId] != null) { firstContentId = (int)hashtable[nodeInfo.NodeId]; } else { var tableName = NodeManager.GetTableName(publishmentSystemInfo, nodeInfo); firstContentId = BaiRongDataProvider.ContentDao.GetContentId(tableName, nodeInfo.NodeId, ETaxisTypeUtils.GetContentOrderByString(ETaxisType.OrderByTaxisDesc)); hashtable[nodeInfo.NodeId] = firstContentId; } return(firstContentId); }
public void Page_Load(object sender, EventArgs e) { if (IsForbidden) { return; } var permissions = PermissionsManager.GetPermissions(Body.AdminName); PageUtils.CheckRequestParameter("siteId"); _channelId = Body.GetQueryInt("channelId"); if (_channelId == 0) { _channelId = SiteId; } var channelInfo = ChannelManager.GetChannelInfo(SiteId, _channelId); var tableName = ChannelManager.GetTableName(SiteInfo, channelInfo); _relatedIdentities = RelatedIdentities.GetChannelRelatedIdentities(SiteId, _channelId); _tableStyleInfoList = TableStyleManager.GetTableStyleInfoList(tableName, _relatedIdentities); SpContents.ControlToPaginate = RptContents; if (string.IsNullOrEmpty(Body.GetQueryString("channelId"))) { SpContents.ItemsPerPage = TranslateUtils.ToInt(DdlPageNum.SelectedValue) == 0 ? SiteInfo.Additional.PageSize : TranslateUtils.ToInt(DdlPageNum.SelectedValue); SpContents.SelectCommand = DataProvider.ContentDao.GetSqlString(tableName, SiteId, _channelId, permissions.IsSystemAdministrator, ProductPermissionsManager.Current.OwningChannelIdList, DdlSearchType.SelectedValue, TbKeyword.Text, TbDateFrom.Text, TbDateTo.Text, true, ETriState.All, false, true); } else { SpContents.ItemsPerPage = Body.GetQueryInt("PageNum") == 0 ? SiteInfo.Additional.PageSize : Body.GetQueryInt("PageNum"); SpContents.SelectCommand = DataProvider.ContentDao.GetSqlString(tableName, SiteId, _channelId, permissions.IsSystemAdministrator, ProductPermissionsManager.Current.OwningChannelIdList, Body.GetQueryString("SearchType"), Body.GetQueryString("Keyword"), Body.GetQueryString("DateFrom"), Body.GetQueryString("DateTo"), true, ETriState.All, false, true); } SpContents.OrderByString = ETaxisTypeUtils.GetContentOrderByString(ETaxisType.OrderByIdDesc); RptContents.ItemDataBound += RptContents_ItemDataBound; if (!IsPostBack) { VerifySitePermissions(ConfigManager.Permissions.WebSite.ContentTrash); if (Body.IsQueryExists("IsDeleteAll")) { DataProvider.ContentDao.DeleteContentsByTrash(SiteId, tableName); Body.AddSiteLog(SiteId, "清空回收站"); SuccessMessage("成功清空回收站!"); AddWaitAndRedirectScript(PageUrl); return; } if (Body.IsQueryExists("IsRestore")) { var idsDictionary = ContentUtility.GetIDsDictionary(Request.QueryString); foreach (var channelId in idsDictionary.Keys) { var contentIdArrayList = idsDictionary[channelId]; DataProvider.ContentDao.TrashContents(SiteId, ChannelManager.GetTableName(SiteInfo, channelId), contentIdArrayList); } Body.AddSiteLog(SiteId, "从回收站还原内容"); SuccessMessage("成功还原内容!"); AddWaitAndRedirectScript(PageUrl); return; } if (Body.IsQueryExists("IsRestoreAll")) { DataProvider.ContentDao.RestoreContentsByTrash(SiteId, tableName); Body.AddSiteLog(SiteId, "从回收站还原所有内容"); SuccessMessage("成功还原所有内容!"); AddWaitAndRedirectScript(PageUrl); return; } ChannelManager.AddListItems(DdlChannelId.Items, SiteInfo, true, false, Body.AdminName); if (_tableStyleInfoList != null) { foreach (var styleInfo in _tableStyleInfoList) { var listitem = new ListItem(styleInfo.DisplayName, styleInfo.AttributeName); DdlSearchType.Items.Add(listitem); } } //添加隐藏属性 DdlSearchType.Items.Add(new ListItem("内容ID", ContentAttribute.Id)); DdlSearchType.Items.Add(new ListItem("添加者", ContentAttribute.AddUserName)); DdlSearchType.Items.Add(new ListItem("最后修改者", ContentAttribute.LastEditUserName)); if (Body.IsQueryExists("channelId")) { if (SiteId != _channelId) { ControlUtils.SelectSingleItem(DdlChannelId, _channelId.ToString()); } ControlUtils.SelectSingleItem(DdlPageNum, Body.GetQueryString("PageNum")); ControlUtils.SelectSingleItem(DdlSearchType, Body.GetQueryString("SearchType")); TbKeyword.Text = Body.GetQueryString("Keyword"); TbDateFrom.Text = Body.GetQueryString("DateFrom"); TbDateTo.Text = Body.GetQueryString("DateTo"); } SpContents.DataBind(); } if (!HasChannelPermissions(_channelId, ConfigManager.Permissions.Channel.ContentDelete)) { BtnDelete.Visible = false; BtnDeleteAll.Visible = false; } else { BtnDelete.Attributes.Add("onclick", PageContentDelete.GetRedirectClickStringForMultiChannels(SiteId, true, PageUrl)); BtnDeleteAll.Attributes.Add("onclick", PageUtils.GetRedirectStringWithConfirm(PageUtils.AddQueryString(PageUrl, "IsDeleteAll", "True"), "确实要清空回收站吗?")); } BtnRestore.Attributes.Add("onclick", PageUtils.GetRedirectStringWithCheckBoxValue(PageUtils.AddQueryString(PageUrl, "IsRestore", "True"), "IDsCollection", "IDsCollection", "请选择需要还原的内容!")); BtnRestoreAll.Attributes.Add("onclick", PageUtils.GetRedirectStringWithConfirm(PageUtils.AddQueryString(PageUrl, "IsRestoreAll", "True"), "确实要还原所有内容吗?")); }
//对“flash滚动焦点图”(stl:focusViewer)元素进行解析 public static async Task <object> ParseAsync(IParseManager parseManager) { // 如果是实体标签则返回空 if (parseManager.ContextInfo.IsStlEntity) { return(string.Empty); } var channelIndex = string.Empty; var channelName = string.Empty; var scopeType = ScopeType.Self; var groupChannel = string.Empty; var groupChannelNot = string.Empty; var groupContent = string.Empty; var groupContentNot = string.Empty; var tags = string.Empty; var orderByString = ETaxisTypeUtils.GetContentOrderByString(TaxisType.OrderByTaxisDesc); var startNum = 1; var totalNum = 0; var isShowText = true; var isTopText = string.Empty; var titleWordNum = 0; var isTop = false; var isTopExists = false; var isRecommend = false; var isRecommendExists = false; var isHot = false; var isHotExists = false; var isColor = false; var isColorExists = false; var theme = string.Empty; var imageWidth = 260; var imageHeight = 182; var textHeight = 25; var bgColor = string.Empty; var attributes = new NameValueCollection(); foreach (var name in parseManager.ContextInfo.Attributes.AllKeys) { var value = parseManager.ContextInfo.Attributes[name]; if (StringUtils.EqualsIgnoreCase(name, AttributeChannelIndex)) { channelIndex = value; } else if (StringUtils.EqualsIgnoreCase(name, AttributeChannelName)) { channelName = value; } else if (StringUtils.EqualsIgnoreCase(name, AttributeScope)) { scopeType = TranslateUtils.ToEnum(value, ScopeType.Self); } else if (StringUtils.EqualsIgnoreCase(name, AttributeGroupChannel)) { groupChannel = await parseManager.ReplaceStlEntitiesForAttributeValueAsync(value); } else if (StringUtils.EqualsIgnoreCase(name, AttributeGroupChannelNot)) { groupChannelNot = await parseManager.ReplaceStlEntitiesForAttributeValueAsync(value); } else if (StringUtils.EqualsIgnoreCase(name, AttributeGroupContent)) { groupContent = await parseManager.ReplaceStlEntitiesForAttributeValueAsync(value); } else if (StringUtils.EqualsIgnoreCase(name, AttributeGroupContentNot)) { groupContentNot = await parseManager.ReplaceStlEntitiesForAttributeValueAsync(value); } else if (StringUtils.EqualsIgnoreCase(name, AttributeTags)) { tags = await parseManager.ReplaceStlEntitiesForAttributeValueAsync(value); } else if (StringUtils.EqualsIgnoreCase(name, AttributeOrder)) { var dataManager = new StlDataManager(parseManager.DatabaseManager); orderByString = dataManager.GetContentOrderByString(parseManager.PageInfo.SiteId, value, TaxisType.OrderByTaxisDesc); } else if (StringUtils.EqualsIgnoreCase(name, AttributeStartNum)) { startNum = TranslateUtils.ToInt(value, 1); } else if (StringUtils.EqualsIgnoreCase(name, AttributeTotalNum)) { totalNum = TranslateUtils.ToInt(value); } else if (StringUtils.EqualsIgnoreCase(name, AttributeTitleWordNum)) { titleWordNum = TranslateUtils.ToInt(value); } else if (StringUtils.EqualsIgnoreCase(name, AttributeIsTop)) { isTopExists = true; isTop = TranslateUtils.ToBool(value); } else if (StringUtils.EqualsIgnoreCase(name, AttributeIsRecommend)) { isRecommendExists = true; isRecommend = TranslateUtils.ToBool(value); } else if (StringUtils.EqualsIgnoreCase(name, AttributeIsHot)) { isHotExists = true; isHot = TranslateUtils.ToBool(value); } else if (StringUtils.EqualsIgnoreCase(name, AttributeIsColor)) { isColorExists = true; isColor = TranslateUtils.ToBool(value); } else if (StringUtils.EqualsIgnoreCase(name, AttributeTheme)) { theme = value; } else if (StringUtils.EqualsIgnoreCase(name, AttributeWidth)) { if (StringUtils.EndsWithIgnoreCase(value, "px")) { value = value.Substring(0, value.Length - 2); } imageWidth = TranslateUtils.ToInt(value); } else if (StringUtils.EqualsIgnoreCase(name, AttributeHeight)) { if (StringUtils.EndsWithIgnoreCase(value, "px")) { value = value.Substring(0, value.Length - 2); } imageHeight = TranslateUtils.ToInt(value); } else if (StringUtils.EqualsIgnoreCase(name, AttributeBgColor)) { bgColor = value; } else if (StringUtils.EqualsIgnoreCase(name, AttributeIsShowText)) { isShowText = TranslateUtils.ToBool(value, true); } else if (StringUtils.EqualsIgnoreCase(name, AttributeIsTopText)) { isTopText = value; } else { attributes[name] = value; } } return(await ParseImplAsync(parseManager, attributes, channelIndex, channelName, scopeType, groupChannel, groupChannelNot, groupContent, groupContentNot, tags, orderByString, startNum, totalNum, isShowText, isTopText, titleWordNum, isTop, isTopExists, isRecommend, isRecommendExists, isHot, isHotExists, isColor, isColorExists, theme, imageWidth, imageHeight, textHeight, bgColor)); }
public static string Parse(string stlElement, XmlNode node, PageInfo pageInfo, ContextInfo contextInfo) { var parsedContent = string.Empty; try { var ie = node.Attributes.GetEnumerator(); var version = string.Empty; var title = string.Empty; var description = string.Empty; var scopeTypeString = string.Empty; var groupChannel = string.Empty; var groupChannelNot = string.Empty; var groupContent = string.Empty; var groupContentNot = string.Empty; var tags = string.Empty; var channelIndex = string.Empty; var channelName = string.Empty; var totalNum = 0; var startNum = 1; var orderByString = ETaxisTypeUtils.GetContentOrderByString(ETaxisType.OrderByTaxisDesc); var isTop = false; var isTopExists = false; var isRecommend = false; var isRecommendExists = false; var isHot = false; var isHotExists = false; var isColor = false; var isColorExists = false; while (ie.MoveNext()) { var attr = (XmlAttribute)ie.Current; var attributeName = attr.Name.ToLower(); if (attributeName.Equals(Attribute_Version)) { version = attr.Value; } else if (attributeName.Equals(Attribute_Title)) { title = attr.Value; } else if (attributeName.Equals(Attribute_Description)) { description = attr.Value; } else if (attributeName.Equals(Attribute_Scope)) { scopeTypeString = attr.Value; } else if (attributeName.Equals(Attribute_ChannelIndex)) { channelIndex = attr.Value; } else if (attributeName.Equals(Attribute_ChannelName)) { channelName = attr.Value; } else if (attributeName.Equals(Attribute_GroupChannel)) { groupChannel = attr.Value; } else if (attributeName.Equals(Attribute_GroupChannelNot)) { groupChannelNot = attr.Value; } else if (attributeName.Equals(Attribute_GroupContent)) { groupContent = attr.Value; } else if (attributeName.Equals(Attribute_GroupContentNot)) { groupContentNot = attr.Value; } else if (attributeName.Equals(Attribute_Tags)) { tags = attr.Value; } else if (attributeName.Equals(Attribute_TotalNum)) { totalNum = TranslateUtils.ToInt(attr.Value); } else if (attributeName.Equals(Attribute_StartNum)) { startNum = TranslateUtils.ToInt(attr.Value, 1); } else if (attributeName.Equals(Attribute_Order)) { orderByString = StlDataUtility.GetOrderByString(pageInfo.PublishmentSystemId, attr.Value, ETableStyle.BackgroundContent, ETaxisType.OrderByTaxisDesc); } else if (attributeName.Equals(Attribute_IsTop)) { isTopExists = true; isTop = TranslateUtils.ToBool(attr.Value); } else if (attributeName.Equals(Attribute_IsRecommend)) { isRecommendExists = true; isRecommend = TranslateUtils.ToBool(attr.Value); } else if (attributeName.Equals(Attribute_IsHot)) { isHotExists = true; isHot = TranslateUtils.ToBool(attr.Value); } else if (attributeName.Equals(Attribute_IsColor)) { isColorExists = true; isColor = TranslateUtils.ToBool(attr.Value); } } parsedContent = ParseImpl(pageInfo, contextInfo, version, title, description, scopeTypeString, groupChannel, groupChannelNot, groupContent, groupContentNot, tags, channelIndex, channelName, totalNum, startNum, orderByString, isTop, isTopExists, isRecommend, isRecommendExists, isHot, isHotExists, isColor, isColorExists); } catch (Exception ex) { parsedContent = StlParserUtility.GetStlErrorMessage(ElementName, ex); } return(parsedContent); }
public static string Parse(PageInfo pageInfo, ContextInfo contextInfo) { var title = string.Empty; var description = string.Empty; var scopeTypeString = string.Empty; var groupChannel = string.Empty; var groupChannelNot = string.Empty; var groupContent = string.Empty; var groupContentNot = string.Empty; var tags = string.Empty; var channelIndex = string.Empty; var channelName = string.Empty; var totalNum = 0; var startNum = 1; var orderByString = ETaxisTypeUtils.GetContentOrderByString(ETaxisType.OrderByTaxisDesc); var isTop = false; var isTopExists = false; var isRecommend = false; var isRecommendExists = false; var isHot = false; var isHotExists = false; var isColor = false; var isColorExists = false; foreach (var name in contextInfo.Attributes.AllKeys) { var value = contextInfo.Attributes[name]; if (StringUtils.EqualsIgnoreCase(name, Title)) { title = value; } else if (StringUtils.EqualsIgnoreCase(name, Description)) { description = value; } else if (StringUtils.EqualsIgnoreCase(name, Scope)) { scopeTypeString = value; } else if (StringUtils.EqualsIgnoreCase(name, ChannelIndex)) { channelIndex = value; } else if (StringUtils.EqualsIgnoreCase(name, ChannelName)) { channelName = value; } else if (StringUtils.EqualsIgnoreCase(name, GroupChannel)) { groupChannel = value; } else if (StringUtils.EqualsIgnoreCase(name, GroupChannelNot)) { groupChannelNot = value; } else if (StringUtils.EqualsIgnoreCase(name, GroupContent)) { groupContent = value; } else if (StringUtils.EqualsIgnoreCase(name, GroupContentNot)) { groupContentNot = value; } else if (StringUtils.EqualsIgnoreCase(name, Tags)) { tags = value; } else if (StringUtils.EqualsIgnoreCase(name, TotalNum)) { totalNum = TranslateUtils.ToInt(value); } else if (StringUtils.EqualsIgnoreCase(name, StartNum)) { startNum = TranslateUtils.ToInt(value, 1); } else if (StringUtils.EqualsIgnoreCase(name, Order)) { orderByString = StlDataUtility.GetContentOrderByString(pageInfo.SiteId, value, ETaxisType.OrderByTaxisDesc); } else if (StringUtils.EqualsIgnoreCase(name, IsTop)) { isTopExists = true; isTop = TranslateUtils.ToBool(value); } else if (StringUtils.EqualsIgnoreCase(name, IsRecommend)) { isRecommendExists = true; isRecommend = TranslateUtils.ToBool(value); } else if (StringUtils.EqualsIgnoreCase(name, IsHot)) { isHotExists = true; isHot = TranslateUtils.ToBool(value); } else if (StringUtils.EqualsIgnoreCase(name, IsColor)) { isColorExists = true; isColor = TranslateUtils.ToBool(value); } } return(ParseImpl(pageInfo, contextInfo, title, description, scopeTypeString, groupChannel, groupChannelNot, groupContent, groupContentNot, tags, channelIndex, channelName, totalNum, startNum, orderByString, isTop, isTopExists, isRecommend, isRecommendExists, isHot, isHotExists, isColor, isColorExists)); }
//得到栏目经过计算后的连接地址 public static string GetChannelUrl(SiteInfo siteInfo, ChannelInfo channelInfo, bool isLocal) { if (channelInfo == null) { return(string.Empty); } if (isLocal) { return(ApiRoutePreview.GetChannelUrl(siteInfo.Id, channelInfo.Id)); } var url = string.Empty; if (channelInfo.ParentId == 0) { url = GetChannelUrlNotComputed(siteInfo, channelInfo.Id, false); } else { var linkType = ELinkTypeUtils.GetEnumType(channelInfo.LinkType); if (linkType == ELinkType.None) { url = GetChannelUrlNotComputed(siteInfo, channelInfo.Id, false); } else if (linkType == ELinkType.NoLink) { url = PageUtils.UnclickedUrl; } else { if (linkType == ELinkType.NoLinkIfContentNotExists) { var count = ContentManager.GetCount(siteInfo, channelInfo, true); url = count == 0 ? PageUtils.UnclickedUrl : GetChannelUrlNotComputed(siteInfo, channelInfo.Id, false); } else if (linkType == ELinkType.LinkToOnlyOneContent) { var count = ContentManager.GetCount(siteInfo, channelInfo, true); if (count == 1) { var tableName = ChannelManager.GetTableName(siteInfo, channelInfo); var contentId = StlContentCache.GetContentId(tableName, channelInfo.Id, ETaxisTypeUtils.GetContentOrderByString(ETaxisTypeUtils.GetEnumType(channelInfo.Additional.DefaultTaxisType))); url = GetContentUrl(siteInfo, channelInfo, contentId, false); } else { url = GetChannelUrlNotComputed(siteInfo, channelInfo.Id, false); } } else if (linkType == ELinkType.NoLinkIfContentNotExistsAndLinkToOnlyOneContent) { var count = ContentManager.GetCount(siteInfo, channelInfo, true); if (count == 0) { url = PageUtils.UnclickedUrl; } else if (count == 1) { var tableName = ChannelManager.GetTableName(siteInfo, channelInfo); var contentId = StlContentCache.GetContentId(tableName, channelInfo.Id, ETaxisTypeUtils.GetContentOrderByString(ETaxisTypeUtils.GetEnumType(channelInfo.Additional.DefaultTaxisType))); url = GetContentUrl(siteInfo, channelInfo, contentId, false); } else { url = GetChannelUrlNotComputed(siteInfo, channelInfo.Id, false); } } else if (linkType == ELinkType.LinkToFirstContent) { var count = ContentManager.GetCount(siteInfo, channelInfo, true); if (count >= 1) { var tableName = ChannelManager.GetTableName(siteInfo, channelInfo); var contentId = StlContentCache.GetContentId(tableName, channelInfo.Id, ETaxisTypeUtils.GetContentOrderByString(ETaxisTypeUtils.GetEnumType(channelInfo.Additional.DefaultTaxisType))); //var contentId = StlCacheManager.FirstContentId.GetValue(siteInfo, nodeInfo); url = GetContentUrl(siteInfo, channelInfo, contentId, false); } else { url = GetChannelUrlNotComputed(siteInfo, channelInfo.Id, false); } } else if (linkType == ELinkType.NoLinkIfContentNotExistsAndLinkToFirstContent) { var count = ContentManager.GetCount(siteInfo, channelInfo, true); if (count >= 1) { var tableName = ChannelManager.GetTableName(siteInfo, channelInfo); var contentId = StlContentCache.GetContentId(tableName, channelInfo.Id, ETaxisTypeUtils.GetContentOrderByString(ETaxisTypeUtils.GetEnumType(channelInfo.Additional.DefaultTaxisType))); //var contentId = StlCacheManager.FirstContentId.GetValue(siteInfo, nodeInfo); url = GetContentUrl(siteInfo, channelInfo, contentId, false); } else { url = PageUtils.UnclickedUrl; } } else if (linkType == ELinkType.NoLinkIfChannelNotExists) { url = channelInfo.ChildrenCount == 0 ? PageUtils.UnclickedUrl : GetChannelUrlNotComputed(siteInfo, channelInfo.Id, false); } else if (linkType == ELinkType.LinkToLastAddChannel) { var lastAddChannelInfo = StlChannelCache.GetChannelInfoByLastAddDate(channelInfo.Id); url = lastAddChannelInfo != null?GetChannelUrl(siteInfo, lastAddChannelInfo, false) : GetChannelUrlNotComputed(siteInfo, channelInfo.Id, false); } else if (linkType == ELinkType.LinkToFirstChannel) { var firstChannelInfo = StlChannelCache.GetChannelInfoByTaxis(channelInfo.Id); url = firstChannelInfo != null?GetChannelUrl(siteInfo, firstChannelInfo, false) : GetChannelUrlNotComputed(siteInfo, channelInfo.Id, false); } else if (linkType == ELinkType.NoLinkIfChannelNotExistsAndLinkToLastAddChannel) { var lastAddChannelInfo = StlChannelCache.GetChannelInfoByLastAddDate(channelInfo.Id); url = lastAddChannelInfo != null?GetChannelUrl(siteInfo, lastAddChannelInfo, false) : PageUtils.UnclickedUrl; } else if (linkType == ELinkType.NoLinkIfChannelNotExistsAndLinkToFirstChannel) { var firstChannelInfo = StlChannelCache.GetChannelInfoByTaxis(channelInfo.Id); url = firstChannelInfo != null?GetChannelUrl(siteInfo, firstChannelInfo, false) : PageUtils.UnclickedUrl; } } } return(RemoveDefaultFileName(siteInfo, url)); }
//对“flash滚动焦点图”(stl:focusViewer)元素进行解析 public static string Parse(PageInfo pageInfo, ContextInfo contextInfo) { // 如果是实体标签则返回空 if (contextInfo.IsStlEntity) { return(string.Empty); } var channelIndex = string.Empty; var channelName = string.Empty; var scopeType = EScopeType.Self; var groupChannel = string.Empty; var groupChannelNot = string.Empty; var groupContent = string.Empty; var groupContentNot = string.Empty; var tags = string.Empty; var orderByString = ETaxisTypeUtils.GetContentOrderByString(ETaxisType.OrderByTaxisDesc); var startNum = 1; var totalNum = 0; var isShowText = true; var isTopText = string.Empty; var titleWordNum = 0; var where = string.Empty; var isTop = false; var isTopExists = false; var isRecommend = false; var isRecommendExists = false; var isHot = false; var isHotExists = false; var isColor = false; var isColorExists = false; var theme = string.Empty; var imageWidth = 260; var imageHeight = 182; var textHeight = 25; var bgColor = string.Empty; var genericControl = new HtmlGenericControl("div"); foreach (var name in contextInfo.Attributes.AllKeys) { var value = contextInfo.Attributes[name]; if (StringUtils.EqualsIgnoreCase(name, AttributeChannelIndex)) { channelIndex = value; } else if (StringUtils.EqualsIgnoreCase(name, AttributeChannelName)) { channelName = value; } else if (StringUtils.EqualsIgnoreCase(name, AttributeScope)) { scopeType = EScopeTypeUtils.GetEnumType(value); } else if (StringUtils.EqualsIgnoreCase(name, AttributeGroupChannel)) { groupChannel = StlEntityParser.ReplaceStlEntitiesForAttributeValue(value, pageInfo, contextInfo); } else if (StringUtils.EqualsIgnoreCase(name, AttributeGroupChannelNot)) { groupChannelNot = StlEntityParser.ReplaceStlEntitiesForAttributeValue(value, pageInfo, contextInfo); } else if (StringUtils.EqualsIgnoreCase(name, AttributeGroupContent)) { groupContent = StlEntityParser.ReplaceStlEntitiesForAttributeValue(value, pageInfo, contextInfo); } else if (StringUtils.EqualsIgnoreCase(name, AttributeGroupContentNot)) { groupContentNot = StlEntityParser.ReplaceStlEntitiesForAttributeValue(value, pageInfo, contextInfo); } else if (StringUtils.EqualsIgnoreCase(name, AttributeTags)) { tags = StlEntityParser.ReplaceStlEntitiesForAttributeValue(value, pageInfo, contextInfo); } else if (StringUtils.EqualsIgnoreCase(name, AttributeOrder)) { orderByString = StlDataUtility.GetContentOrderByString(pageInfo.SiteId, value, ETaxisType.OrderByTaxisDesc); } else if (StringUtils.EqualsIgnoreCase(name, AttributeStartNum)) { startNum = TranslateUtils.ToInt(value, 1); } else if (StringUtils.EqualsIgnoreCase(name, AttributeTotalNum)) { totalNum = TranslateUtils.ToInt(value); } else if (StringUtils.EqualsIgnoreCase(name, AttributeTitleWordNum)) { titleWordNum = TranslateUtils.ToInt(value); } else if (StringUtils.EqualsIgnoreCase(name, AttributeWhere)) { where = value; } else if (StringUtils.EqualsIgnoreCase(name, AttributeIsTop)) { isTopExists = true; isTop = TranslateUtils.ToBool(value); } else if (StringUtils.EqualsIgnoreCase(name, AttributeIsRecommend)) { isRecommendExists = true; isRecommend = TranslateUtils.ToBool(value); } else if (StringUtils.EqualsIgnoreCase(name, AttributeIsHot)) { isHotExists = true; isHot = TranslateUtils.ToBool(value); } else if (StringUtils.EqualsIgnoreCase(name, AttributeIsColor)) { isColorExists = true; isColor = TranslateUtils.ToBool(value); } else if (StringUtils.EqualsIgnoreCase(name, AttributeTheme)) { theme = value; } else if (StringUtils.EqualsIgnoreCase(name, AttributeWidth)) { if (StringUtils.EndsWithIgnoreCase(value, "px")) { value = value.Substring(0, value.Length - 2); } imageWidth = TranslateUtils.ToInt(value); } else if (StringUtils.EqualsIgnoreCase(name, AttributeHeight)) { if (StringUtils.EndsWithIgnoreCase(value, "px")) { value = value.Substring(0, value.Length - 2); } imageHeight = TranslateUtils.ToInt(value); } else if (StringUtils.EqualsIgnoreCase(name, AttributeBgColor)) { bgColor = value; } else if (StringUtils.EqualsIgnoreCase(name, AttributeIsShowText)) { isShowText = TranslateUtils.ToBool(value, true); } else if (StringUtils.EqualsIgnoreCase(name, AttributeIsTopText)) { isTopText = value; } else { genericControl.Attributes[name] = value; } } return(ParseImpl(pageInfo, contextInfo, genericControl, channelIndex, channelName, scopeType, groupChannel, groupChannelNot, groupContent, groupContentNot, tags, orderByString, startNum, totalNum, isShowText, isTopText, titleWordNum, where, isTop, isTopExists, isRecommend, isRecommendExists, isHot, isHotExists, isColor, isColorExists, theme, imageWidth, imageHeight, textHeight, bgColor)); }
public void Page_Load(object sender, EventArgs e) { if (IsForbidden) { return; } var permissions = PermissionsManager.GetPermissions(Body.AdminName); PageUtils.CheckRequestParameter("SiteId"); _channelId = Body.IsQueryExists("ChannelId") ? Body.GetQueryInt("ChannelId") : SiteId; _isWritingOnly = Body.GetQueryBool("isWritingOnly"); var administratorName = string.Empty; _isSelfOnly = Body.GetQueryBool("isSelfOnly"); if (!_isSelfOnly) { administratorName = AdminUtility.IsViewContentOnlySelf(Body.AdminName, SiteId, _channelId) ? Body.AdminName : string.Empty; } _nodeInfo = ChannelManager.GetChannelInfo(SiteId, _channelId); var tableName = ChannelManager.GetTableName(SiteInfo, _nodeInfo); _relatedIdentities = RelatedIdentities.GetChannelRelatedIdentities(SiteId, _channelId); _styleInfoList = TableStyleManager.GetTableStyleInfoList(tableName, _relatedIdentities); _attributesOfDisplay = TranslateUtils.StringCollectionToStringCollection(ChannelManager.GetContentAttributesOfDisplay(SiteId, _channelId)); _attributesOfDisplayStyleInfoList = ContentUtility.GetColumnTableStyleInfoList(SiteInfo, _styleInfoList); _pluginLinks = PluginContentManager.GetContentLinks(_nodeInfo); _isEdit = TextUtility.IsEdit(SiteInfo, _channelId, Body.AdminName); var stateType = Body.IsQueryExists("state") ? ETriStateUtils.GetEnumType(Body.GetQueryString("state")) : ETriState.All; var searchType = Body.IsQueryExists("searchType") ? Body.GetQueryString("searchType") : ContentAttribute.Title; var dateFrom = Body.IsQueryExists("dateFrom") ? Body.GetQueryString("dateFrom") : string.Empty; var dateTo = Body.IsQueryExists("dateTo") ? Body.GetQueryString("dateTo") : string.Empty; var isDuplicate = Body.IsQueryExists("isDuplicate") && Body.GetQueryBool("isDuplicate"); var keyword = Body.IsQueryExists("keyword") ? Body.GetQueryString("keyword") : string.Empty; SpContents.ControlToPaginate = RptContents; SpContents.SelectCommand = DataProvider.ContentDao.GetSqlString(tableName, SiteId, _channelId, permissions.IsSystemAdministrator, ProductPermissionsManager.Current.OwningChannelIdList, searchType, keyword, dateFrom, dateTo, true, stateType, !isDuplicate, false, _isWritingOnly, administratorName); SpContents.ItemsPerPage = SiteInfo.Additional.PageSize; SpContents.SortField = ContentAttribute.Id; SpContents.SortMode = SortMode.DESC; SpContents.OrderByString = ETaxisTypeUtils.GetContentOrderByString(ETaxisType.OrderByIdDesc); RptContents.ItemDataBound += RptContents_ItemDataBound; if (!IsPostBack) { ChannelManager.AddListItems(DdlChannelId.Items, SiteInfo, true, true, Body.AdminName); DdlSearchType.Items.Add(new ListItem("标题", ContentAttribute.Title)); if (_styleInfoList != null) { foreach (var styleInfo in _styleInfoList) { if (styleInfo.AttributeName != ContentAttribute.AddDate) { var listitem = new ListItem(styleInfo.DisplayName, styleInfo.AttributeName); DdlSearchType.Items.Add(listitem); } } } DdlSearchType.Items.Add(new ListItem("内容ID", ContentAttribute.Id)); DdlSearchType.Items.Add(new ListItem("添加者", ContentAttribute.AddUserName)); DdlSearchType.Items.Add(new ListItem("最后修改者", ContentAttribute.LastEditUserName)); ETriStateUtils.AddListItems(DdlState, "全部", "已审核", "待审核"); if (SiteId != _channelId) { ControlUtils.SelectSingleItem(DdlChannelId, _channelId.ToString()); } ControlUtils.SelectSingleItem(DdlState, Body.GetQueryString("State")); CbIsDuplicate.Checked = isDuplicate; ControlUtils.SelectSingleItem(DdlSearchType, searchType); TbKeyword.Text = keyword; TbDateFrom.Text = dateFrom; TbDateTo.Text = dateTo; SpContents.DataBind(); var showPopWinString = ModalAddToGroup.GetOpenWindowStringToContentForMultiChannels(SiteId); BtnAddToGroup.Attributes.Add("onclick", showPopWinString); showPopWinString = ModalSelectColumns.GetOpenWindowString(SiteId, _channelId, true); BtnSelect.Attributes.Add("onclick", showPopWinString); if (AdminUtility.HasChannelPermissions(Body.AdminName, SiteId, SiteId, ConfigManager.Permissions.Channel.ContentCheck)) { showPopWinString = ModalContentCheck.GetOpenWindowStringForMultiChannels(SiteId, PageUrl); BtnCheck.Attributes.Add("onclick", showPopWinString); } else { PhCheck.Visible = false; } LtlColumnsHead.Text = TextUtility.GetColumnsHeadHtml(_styleInfoList, _attributesOfDisplay, SiteInfo); } if (!HasChannelPermissions(_channelId, ConfigManager.Permissions.Channel.ContentAdd)) { BtnAddContent.Visible = false; } if (!HasChannelPermissions(_channelId, ConfigManager.Permissions.Channel.ContentTranslate)) { BtnTranslate.Visible = false; } else { BtnTranslate.Attributes.Add("onclick", PageContentTranslate.GetRedirectClickStringForMultiChannels(SiteId, PageUrl)); } if (!HasChannelPermissions(_channelId, ConfigManager.Permissions.Channel.ContentDelete)) { BtnDelete.Visible = false; } else { BtnDelete.Attributes.Add("onclick", PageContentDelete.GetRedirectClickStringForMultiChannels(SiteId, false, PageUrl)); } }
public void Page_Load(object sender, EventArgs e) { if (IsForbidden) { return; } PageUtils.CheckRequestParameter("siteId", "channelId"); var channelId = AuthRequest.GetQueryInt("channelId"); _relatedIdentities = RelatedIdentities.GetChannelRelatedIdentities(SiteId, channelId); _channelInfo = ChannelManager.GetChannelInfo(SiteId, channelId); _tableName = ChannelManager.GetTableName(SiteInfo, _channelInfo); _styleInfoList = TableStyleManager.GetTableStyleInfoList(_tableName, _relatedIdentities); _attributesOfDisplay = TranslateUtils.StringCollectionToStringCollection(ChannelManager.GetContentAttributesOfDisplay(SiteId, channelId)); _attributesOfDisplayStyleInfoList = ContentUtility.GetAllTableStyleInfoList(_styleInfoList); _pluginLinks = PluginContentManager.GetContentLinks(_channelInfo); _isEdit = TextUtility.IsEdit(SiteInfo, channelId, AuthRequest.AdminPermissions); if (_channelInfo.Additional.IsPreviewContents) { new Action(() => { DataProvider.ContentDao.DeletePreviewContents(SiteId, _tableName, _channelInfo); }).BeginInvoke(null, null); } if (!HasChannelPermissions(channelId, ConfigManager.ChannelPermissions.ContentView, ConfigManager.ChannelPermissions.ContentAdd, ConfigManager.ChannelPermissions.ContentEdit, ConfigManager.ChannelPermissions.ContentDelete, ConfigManager.ChannelPermissions.ContentTranslate)) { if (!AuthRequest.IsAdminLoggin) { PageUtils.RedirectToLoginPage(); return; } PageUtils.RedirectToErrorPage("您无此栏目的操作权限!"); return; } SpContents.ControlToPaginate = RptContents; RptContents.ItemDataBound += RptContents_ItemDataBound; SpContents.ItemsPerPage = SiteInfo.Additional.PageSize; var administratorName = AuthRequest.AdminPermissions.IsViewContentOnlySelf(SiteId, channelId) ? AuthRequest.AdminName : string.Empty; if (AuthRequest.IsQueryExists("searchType")) { var owningChannelIdList = new List <int> { channelId }; SpContents.SelectCommand = DataProvider.ContentDao.GetSqlString(_tableName, SiteId, channelId, AuthRequest.AdminPermissions.IsSystemAdministrator, owningChannelIdList, AuthRequest.GetQueryString("searchType"), AuthRequest.GetQueryString("keyword"), AuthRequest.GetQueryString("dateFrom"), string.Empty, false, ETriState.All, false, false, false, administratorName); } else { SpContents.SelectCommand = DataProvider.ContentDao.GetSqlString(_tableName, channelId, ETriState.All, administratorName); } //spContents.SortField = DataProvider.ContentDao.GetSortFieldName(); //spContents.SortMode = SortMode.DESC; //spContents.OrderByString = ETaxisTypeUtils.GetOrderByString(tableStyle, ETaxisType.OrderByTaxisDesc); SpContents.OrderByString = ETaxisTypeUtils.GetContentOrderByString(ETaxisTypeUtils.GetEnumType(_channelInfo.Additional.DefaultTaxisType)); SpContents.TotalCount = _channelInfo.ContentNum; if (IsPostBack) { return; } LtlButtons.Text = WebUtils.GetContentCommands(AuthRequest.AdminPermissions, SiteInfo, _channelInfo, PageUrl); LtlMoreButtons.Text = WebUtils.GetContentMoreCommands(AuthRequest.AdminPermissions, SiteInfo, _channelInfo, PageUrl); SpContents.DataBind(); if (_styleInfoList != null) { foreach (var styleInfo in _styleInfoList) { var listitem = new ListItem(styleInfo.DisplayName, styleInfo.AttributeName); DdlSearchType.Items.Add(listitem); } } //添加隐藏属性 DdlSearchType.Items.Add(new ListItem("内容ID", ContentAttribute.Id)); DdlSearchType.Items.Add(new ListItem("添加者", ContentAttribute.AddUserName)); DdlSearchType.Items.Add(new ListItem("最后修改者", ContentAttribute.LastEditUserName)); DdlSearchType.Items.Add(new ListItem("内容组", ContentAttribute.GroupNameCollection)); if (AuthRequest.IsQueryExists("searchType")) { TbDateFrom.Text = AuthRequest.GetQueryString("dateFrom"); ControlUtils.SelectSingleItem(DdlSearchType, AuthRequest.GetQueryString("searchType")); TbKeyword.Text = AuthRequest.GetQueryString("keyword"); if (!string.IsNullOrEmpty(AuthRequest.GetQueryString("searchType")) || !string.IsNullOrEmpty(TbDateFrom.Text) || !string.IsNullOrEmpty(TbKeyword.Text)) { LtlButtons.Text += @" <script> $(document).ready(function() { $('#contentSearch').show(); }); </script> "; } } LtlColumnsHead.Text = TextUtility.GetColumnsHeadHtml(_styleInfoList, _attributesOfDisplay, SiteInfo); }
public void Page_Load(object sender, EventArgs e) { if (IsForbidden) { return; } PageUtils.CheckRequestParameter("SiteId"); _channelId = AuthRequest.IsQueryExists("ChannelId") ? AuthRequest.GetQueryInt("ChannelId") : SiteId; _isWritingOnly = AuthRequest.GetQueryBool("isWritingOnly"); var administratorName = string.Empty; _isSelfOnly = AuthRequest.GetQueryBool("isSelfOnly"); if (!_isSelfOnly) { administratorName = AuthRequest.AdminPermissions.IsViewContentOnlySelf(SiteId, _channelId) ? AuthRequest.AdminName : string.Empty; } _channelInfo = ChannelManager.GetChannelInfo(SiteId, _channelId); var tableName = ChannelManager.GetTableName(SiteInfo, _channelInfo); _relatedIdentities = RelatedIdentities.GetChannelRelatedIdentities(SiteId, _channelId); _styleInfoList = TableStyleManager.GetTableStyleInfoList(tableName, _relatedIdentities); _attributesOfDisplay = TranslateUtils.StringCollectionToStringCollection(ChannelManager.GetContentAttributesOfDisplay(SiteId, _channelId)); _allStyleInfoList = ContentUtility.GetAllTableStyleInfoList(_styleInfoList); _pluginLinks = PluginContentManager.GetContentLinks(_channelInfo); _isEdit = TextUtility.IsEdit(SiteInfo, _channelId, AuthRequest.AdminPermissions); var stateType = AuthRequest.IsQueryExists("state") ? ETriStateUtils.GetEnumType(AuthRequest.GetQueryString("state")) : ETriState.All; var searchType = AuthRequest.IsQueryExists("searchType") ? AuthRequest.GetQueryString("searchType") : ContentAttribute.Title; var dateFrom = AuthRequest.IsQueryExists("dateFrom") ? AuthRequest.GetQueryString("dateFrom") : string.Empty; var dateTo = AuthRequest.IsQueryExists("dateTo") ? AuthRequest.GetQueryString("dateTo") : string.Empty; var keyword = AuthRequest.IsQueryExists("keyword") ? AuthRequest.GetQueryString("keyword") : string.Empty; RptContents.ItemDataBound += RptContents_ItemDataBound; var allLowerAttributeNameList = TableMetadataManager.GetAllLowerAttributeNameListExcludeText(tableName); var pagerParam = new PagerParam { ControlToPaginate = RptContents, TableName = tableName, PageSize = SiteInfo.Additional.PageSize, Page = AuthRequest.GetQueryInt(Pager.QueryNamePage, 1), OrderSqlString = ETaxisTypeUtils.GetContentOrderByString(ETaxisType.OrderByIdDesc), ReturnColumnNames = TranslateUtils.ObjectCollectionToString(allLowerAttributeNameList) }; var channelIdList = ChannelManager.GetChannelIdList(_channelInfo, EScopeType.All, string.Empty, string.Empty, _channelInfo.ContentModelPluginId); var searchChannelIdList = new List <int>(); if (AuthRequest.AdminPermissions.IsSystemAdministrator) { searchChannelIdList = channelIdList; } else { foreach (var theChannelId in channelIdList) { if (AuthRequest.AdminPermissions.OwningChannelIdList.Contains(theChannelId)) { searchChannelIdList.Add(theChannelId); } } } pagerParam.WhereSqlString = DataProvider.ContentDao.GetPagerWhereSqlString(allLowerAttributeNameList, SiteId, _channelInfo, AuthRequest.AdminPermissions.IsSystemAdministrator, searchChannelIdList, searchType, keyword, dateFrom, dateTo, true, stateType, false, _isWritingOnly, administratorName); pagerParam.TotalCount = DataProvider.DatabaseDao.GetPageTotalCount(tableName, pagerParam.WhereSqlString); PgContents.Param = pagerParam; if (!IsPostBack) { ChannelManager.AddListItems(DdlChannelId.Items, SiteInfo, true, true, AuthRequest.AdminPermissions); foreach (var styleInfo in _allStyleInfoList) { if (styleInfo.InputType == InputType.TextEditor) { continue; } var listitem = new ListItem(styleInfo.DisplayName, styleInfo.AttributeName); DdlSearchType.Items.Add(listitem); } ETriStateUtils.AddListItems(DdlState, "全部", "已审核", "待审核"); if (SiteId != _channelId) { ControlUtils.SelectSingleItem(DdlChannelId, _channelId.ToString()); } ControlUtils.SelectSingleItem(DdlState, AuthRequest.GetQueryString("State")); ControlUtils.SelectSingleItem(DdlSearchType, searchType); TbKeyword.Text = keyword; TbDateFrom.Text = dateFrom; TbDateTo.Text = dateTo; PgContents.DataBind(); var showPopWinString = ModalAddToGroup.GetOpenWindowStringToContentForMultiChannels(SiteId); BtnAddToGroup.Attributes.Add("onclick", showPopWinString); showPopWinString = ModalSelectColumns.GetOpenWindowString(SiteId, _channelId, true); BtnSelect.Attributes.Add("onclick", showPopWinString); if (HasChannelPermissions(SiteId, ConfigManager.ChannelPermissions.ContentCheck)) { showPopWinString = ModalContentCheck.GetOpenWindowStringForMultiChannels(SiteId, PageUrl); BtnCheck.Attributes.Add("onclick", showPopWinString); } else { PhCheck.Visible = false; } LtlColumnsHead.Text = TextUtility.GetColumnsHeadHtml(_styleInfoList, _attributesOfDisplay, SiteInfo); } if (!HasChannelPermissions(_channelId, ConfigManager.ChannelPermissions.ContentAdd)) { BtnAddContent.Visible = false; } if (!HasChannelPermissions(_channelId, ConfigManager.ChannelPermissions.ContentTranslate)) { BtnTranslate.Visible = false; } else { BtnTranslate.Attributes.Add("onclick", PageContentTranslate.GetRedirectClickStringForMultiChannels(SiteId, PageUrl)); } if (!HasChannelPermissions(_channelId, ConfigManager.ChannelPermissions.ContentDelete)) { BtnDelete.Visible = false; } else { BtnDelete.Attributes.Add("onclick", PageContentDelete.GetRedirectClickStringForMultiChannels(SiteId, false, PageUrl)); } }
public void Page_Load(object sender, EventArgs e) { if (IsForbidden) { return; } _jsMethod = AuthRequest.GetQueryString("jsMethod"); PageUtils.CheckRequestParameter("siteId"); var channelId = AuthRequest.GetQueryInt("channelId"); if (channelId == 0) { channelId = SiteId; } _channelInfo = ChannelManager.GetChannelInfo(SiteId, channelId); _tableName = ChannelManager.GetTableName(SiteInfo, _channelInfo); _relatedIdentities = RelatedIdentities.GetChannelRelatedIdentities(SiteId, _channelInfo.Id); _tableStyleInfoList = TableStyleManager.GetTableStyleInfoList(_tableName, _relatedIdentities); SpContents.ControlToPaginate = RptContents; SpContents.SelectCommand = string.IsNullOrEmpty(AuthRequest.GetQueryString("channelId")) ? DataProvider.ContentDao.GetSqlString(_tableName, SiteId, _channelInfo.Id, AuthRequest.AdminPermissions.IsSystemAdministrator, AuthRequest.AdminPermissions.OwningChannelIdList, DdlSearchType.SelectedValue, TbKeyword.Text, TbDateFrom.Text, TbDateTo.Text, true, ETriState.True, false) : DataProvider.ContentDao.GetSqlString(_tableName, SiteId, _channelInfo.Id, AuthRequest.AdminPermissions.IsSystemAdministrator, AuthRequest.AdminPermissions.OwningChannelIdList, AuthRequest.GetQueryString("SearchType"), AuthRequest.GetQueryString("Keyword"), AuthRequest.GetQueryString("DateFrom"), AuthRequest.GetQueryString("DateTo"), true, ETriState.True, true); SpContents.ItemsPerPage = SiteInfo.Additional.PageSize; SpContents.SortField = ContentAttribute.Id; SpContents.SortMode = SortMode.DESC; SpContents.OrderByString = ETaxisTypeUtils.GetContentOrderByString(ETaxisType.OrderByIdDesc); RptContents.ItemDataBound += RptContents_ItemDataBound; if (IsPostBack) { return; } ChannelManager.AddListItems(DdlChannelId.Items, SiteInfo, false, true, AuthRequest.AdminPermissions); if (_tableStyleInfoList != null) { foreach (var styleInfo in _tableStyleInfoList) { var listitem = new ListItem(styleInfo.DisplayName, styleInfo.AttributeName); DdlSearchType.Items.Add(listitem); } } //添加隐藏属性 DdlSearchType.Items.Add(new ListItem("内容ID", ContentAttribute.Id)); DdlSearchType.Items.Add(new ListItem("添加者", ContentAttribute.AddUserName)); DdlSearchType.Items.Add(new ListItem("最后修改者", ContentAttribute.LastEditUserName)); if (AuthRequest.IsQueryExists("channelId")) { if (SiteId != _channelInfo.Id) { ControlUtils.SelectSingleItem(DdlChannelId, _channelInfo.Id.ToString()); } ControlUtils.SelectSingleItem(DdlSearchType, AuthRequest.GetQueryString("SearchType")); TbKeyword.Text = AuthRequest.GetQueryString("Keyword"); TbDateFrom.Text = AuthRequest.GetQueryString("DateFrom"); TbDateTo.Text = AuthRequest.GetQueryString("DateTo"); } SpContents.DataBind(); }