public static string GetSelectText(SiteInfo siteInfo, ChannelInfo channelInfo, PermissionsImpl adminPermissions, bool[] isLastNodeArray, bool isShowContentNum) { var retVal = string.Empty; if (channelInfo.Id == channelInfo.SiteId) { channelInfo.IsLastNode = true; } if (channelInfo.IsLastNode == false) { isLastNodeArray[channelInfo.ParentsCount] = false; } else { isLastNodeArray[channelInfo.ParentsCount] = true; } for (var i = 0; i < channelInfo.ParentsCount; i++) { retVal = string.Concat(retVal, isLastNodeArray[i] ? " " : "│"); } retVal = string.Concat(retVal, channelInfo.IsLastNode ? "└" : "├"); retVal = string.Concat(retVal, channelInfo.ChannelName); if (isShowContentNum) { var adminId = adminPermissions.GetAdminId(siteInfo.Id, channelInfo.Id); var count = ContentManager.GetCount(siteInfo, channelInfo, adminId); retVal = string.Concat(retVal, " (", count, ")"); } return(retVal); }
public static string GetContentMoreCommands(PermissionsImpl permissionsImpl, SiteInfo siteInfo, ChannelInfo channelInfo, string pageUrl) { var builder = new StringBuilder(); if (permissionsImpl.HasChannelPermissions(siteInfo.Id, channelInfo.Id, ConfigManager.ChannelPermissions.ContentAdd) && channelInfo.Additional.IsContentAddable) { builder.Append($@" <a class=""dropdown-item"" href=""javascript:;"" onclick=""{ModalContentImport.GetOpenWindowString(siteInfo.Id, channelInfo.Id)}""> 导 入 </a>"); } var adminId = permissionsImpl.GetAdminId(siteInfo.Id, channelInfo.Id); var count = ContentManager.GetCount(siteInfo, channelInfo, adminId); if (count > 0) { builder.Append($@" <a class=""dropdown-item"" href=""javascript:;"" onclick=""{ModalContentExport.GetOpenWindowString(siteInfo.Id, channelInfo.Id)}""> 导 出 </a>"); if (permissionsImpl.HasChannelPermissions(siteInfo.Id, channelInfo.Id, ConfigManager.ChannelPermissions.ContentOrder)) { builder.Append($@" <a class=""dropdown-item"" href=""javascript:;"" onclick=""{ModalContentTidyUp.GetOpenWindowString(siteInfo.Id, channelInfo.Id, pageUrl)}""> 整 理 </a>"); } if (CrossSiteTransUtility.IsCrossSiteTrans(siteInfo, channelInfo) && !CrossSiteTransUtility.IsAutomatic(channelInfo)) { builder.Append($@" <a class=""dropdown-item"" href=""javascript:;"" onclick=""{ModalContentCrossSiteTrans.GetOpenWindowString(siteInfo.Id, channelInfo.Id)}""> 跨站转发 </a>"); } } return(builder.ToString()); }
public static string GetChannelRowHtml(SiteInfo siteInfo, ChannelInfo nodeInfo, bool enabled, ELoadingType loadingType, NameValueCollection additional, PermissionsImpl permissionsImpl) { var nodeTreeItem = ChannelTreeItem.CreateInstance(siteInfo, nodeInfo, enabled, permissionsImpl); var adminId = permissionsImpl.GetAdminId(siteInfo.Id, nodeInfo.Id); var title = nodeTreeItem.GetItemHtml(loadingType, PageChannel.GetRedirectUrl(siteInfo.Id, nodeInfo.Id), adminId, additional); var rowHtml = string.Empty; if (loadingType == ELoadingType.ContentTree) { rowHtml = $@" <tr treeItemLevel=""{nodeInfo.ParentsCount + 1}""> <td nowrap>{title}</td> </tr> "; } else if (loadingType == ELoadingType.Channel) { var upLink = string.Empty; var downLink = string.Empty; var editUrl = string.Empty; var checkBoxHtml = string.Empty; if (enabled) { if (permissionsImpl.HasChannelPermissions(nodeInfo.SiteId, nodeInfo.Id, ConfigManager.ChannelPermissions.ChannelEdit)) { editUrl = $@"<a href=""{PageChannelEdit.GetRedirectUrl(nodeInfo.SiteId, nodeInfo.Id, PageChannel.GetRedirectUrl(nodeInfo.SiteId, nodeInfo.Id))}"" onclick=""event.stopPropagation()"">编辑</a>"; upLink = $@"<a href=""{PageUtils.GetCmsUrl(nodeInfo.SiteId, nameof(PageChannel), new NameValueCollection { {"Subtract", true.ToString()}, {"channelId", nodeInfo.Id.ToString()} })}"" onclick=""event.stopPropagation()""><img src=""../Pic/icon/up.gif"" border=""0"" alt=""上升"" /></a>"; downLink = $@"<a href=""{PageUtils.GetCmsUrl(nodeInfo.SiteId, nameof(PageChannel), new NameValueCollection { {"Add", true.ToString()}, {"channelId", nodeInfo.Id.ToString()} })}"" onclick=""event.stopPropagation()""><img src=""../Pic/icon/down.gif"" border=""0"" alt=""下降"" /></a>"; } checkBoxHtml = $@"<input type=""checkbox"" name=""ChannelIDCollection"" value=""{nodeInfo.Id}"" onclick=""checkboxClick(this)"" />"; } rowHtml = $@" <tr treeItemLevel=""{nodeInfo.ParentsCount + 1}"" onclick=""activeRow(this);return false;""> <td>{title}</td> <td class=""text-nowrap"">{nodeInfo.GroupNameCollection}</td> <td class=""text-nowrap"">{nodeInfo.IndexName}</td> <td class=""text-center"">{upLink}</td> <td class=""text-center"">{downLink}</td> <td class=""text-center"">{editUrl}</td> <td class=""text-center"">{checkBoxHtml}</td> </tr> "; } else if (loadingType == ELoadingType.SiteAnalysis) { var startDate = TranslateUtils.ToDateTime(additional["StartDate"]); var endDate = TranslateUtils.ToDateTime(additional["EndDate"]); var tableName = ChannelManager.GetTableName(siteInfo, nodeInfo); var num = DataProvider.ContentDao.GetCountOfContentAdd(tableName, siteInfo.Id, nodeInfo.Id, EScopeType.All, startDate, endDate, string.Empty, ETriState.All); var contentAddNum = num == 0 ? "0" : $"<strong>{num}</strong>"; num = DataProvider.ContentDao.GetCountOfContentUpdate(tableName, siteInfo.Id, nodeInfo.Id, EScopeType.All, startDate, endDate, string.Empty); var contentUpdateNum = num == 0 ? "0" : $"<strong>{num}</strong>"; rowHtml = $@" <tr treeItemLevel=""{nodeInfo.ParentsCount + 1}""> <td>{title}</td> <td class=""text-center"">{contentAddNum}</td> <td class=""text-center"">{contentUpdateNum}</td> </tr> "; } else if (loadingType == ELoadingType.TemplateFilePathRule) { var editLink = string.Empty; if (enabled) { var showPopWinString = ModalTemplateFilePathRule.GetOpenWindowString(nodeInfo.SiteId, nodeInfo.Id); editLink = $"<a href=\"javascript:;\" onclick=\"{showPopWinString}\">更改</a>"; } var filePath = PageUtility.GetInputChannelUrl(siteInfo, nodeInfo, false); rowHtml = $@" <tr treeItemLevel=""{nodeInfo.ParentsCount + 1}""> <td>{title}</td> <td>{filePath}</td> <td class=""text-center"">{editLink}</td> </tr> "; } else if (loadingType == ELoadingType.ConfigurationCreateDetails) { var editChannelLink = string.Empty; var nodeNames = string.Empty; if (enabled) { var showPopWinString = ModalConfigurationCreateChannel.GetOpenWindowString(nodeInfo.SiteId, nodeInfo.Id); editChannelLink = $"<a href=\"javascript:;\" onclick=\"{showPopWinString}\">触发栏目</a>"; } var nodeNameBuilder = new StringBuilder(); var channelIdList = TranslateUtils.StringCollectionToIntList(nodeInfo.Additional.CreateChannelIdsIfContentChanged); foreach (var theChannelId in channelIdList) { var theNodeInfo = ChannelManager.GetChannelInfo(siteInfo.Id, theChannelId); if (theNodeInfo != null) { nodeNameBuilder.Append(theNodeInfo.ChannelName).Append(","); } } if (nodeNameBuilder.Length > 0) { nodeNameBuilder.Length--; nodeNames = nodeNameBuilder.ToString(); } rowHtml = $@" <tr treeItemLevel=""{nodeInfo.ParentsCount + 1}""> <td>{title}</td> <td>{nodeNames}</td> <td class=""text-center"">{editChannelLink}</td> </tr> "; } else if (loadingType == ELoadingType.ConfigurationCrossSiteTrans) { var editLink = string.Empty; if (enabled) { var showPopWinString = ModalCrossSiteTransEdit.GetOpenWindowString(nodeInfo.SiteId, nodeInfo.Id); editLink = $"<a href=\"javascript:;\" onclick=\"{showPopWinString}\">更改</a>"; } var contribute = CrossSiteTransUtility.GetDescription(nodeInfo.SiteId, nodeInfo); rowHtml = $@" <tr treeItemLevel=""{nodeInfo.ParentsCount + 1}""> <td>{title}</td> <td>{contribute}</td> <td class=""text-center"">{editLink}</td> </tr> "; } else if (loadingType == ELoadingType.ChannelClickSelect) { rowHtml = $@" <tr treeItemLevel=""{nodeInfo.ParentsCount + 1}""> <td>{title}</td> </tr> "; } return(rowHtml); }
public static string GetContentCommands(PermissionsImpl permissionsImpl, SiteInfo siteInfo, ChannelInfo channelInfo, string pageUrl) { var builder = new StringBuilder(); if (permissionsImpl.HasChannelPermissions(siteInfo.Id, channelInfo.Id, ConfigManager.ChannelPermissions.ContentAdd) && channelInfo.Additional.IsContentAddable) { builder.Append($@" <a href=""{GetContentAddAddUrl(siteInfo.Id, channelInfo.Id, pageUrl)}"" class=""btn btn-light text-secondary""> <i class=""ion-plus""></i> 添加 </a>"); builder.Append($@" <a href=""javascript:;"" class=""btn btn-light text-secondary"" onclick=""{ModalUploadWord.GetOpenWindowString(siteInfo.Id, channelInfo.Id, StringUtils.ValueToUrl(pageUrl))}""> 导入Word </a>"); } var adminId = permissionsImpl.GetAdminId(siteInfo.Id, channelInfo.Id); var count = ContentManager.GetCount(siteInfo, channelInfo, adminId); if (count > 0 && permissionsImpl.HasChannelPermissions(siteInfo.Id, channelInfo.Id, ConfigManager.ChannelPermissions.ContentDelete)) { builder.Append($@" <a href=""javascript:;"" class=""btn btn-light text-secondary"" onclick=""{PageContentDelete.GetRedirectClickStringForSingleChannel(siteInfo.Id, channelInfo.Id, false, pageUrl)}""> <i class=""ion-trash-a""></i> 删 除 </a>"); } if (count > 0) { if (permissionsImpl.HasChannelPermissions(siteInfo.Id, channelInfo.Id, ConfigManager.ChannelPermissions.ContentEdit)) { builder.Append($@" <a href=""javascript:;"" class=""btn btn-light text-secondary"" onclick=""{ModalContentAttributes.GetOpenWindowString(siteInfo.Id, channelInfo.Id)}""> <i class=""ion-flag""></i> 属性 </a>"); builder.Append($@" <a href=""javascript:;"" class=""btn btn-light text-secondary"" onclick=""{ModalAddToGroup.GetOpenWindowStringToContent(siteInfo.Id, channelInfo.Id)}""> 内容组 </a>"); } if (permissionsImpl.HasChannelPermissions(siteInfo.Id, channelInfo.Id, ConfigManager.ChannelPermissions.ContentTranslate)) { var redirectUrl = PageContentTranslate.GetRedirectUrl(siteInfo.Id, channelInfo.Id, pageUrl); var clickString = PageUtils.GetRedirectStringWithCheckBoxValue(redirectUrl, "contentIdCollection", "contentIdCollection", "请选择需要转移的内容!"); builder.Append($@" <a href=""javascript:;"" class=""btn btn-light text-secondary"" onclick=""{clickString}""> 转 移 </a>"); } if (permissionsImpl.HasChannelPermissions(siteInfo.Id, channelInfo.Id, ConfigManager.ChannelPermissions.ContentEdit)) { builder.Append($@" <a href=""javascript:;"" class=""btn btn-light text-secondary"" onclick=""{ModalContentTaxis.GetOpenWindowString(siteInfo.Id, channelInfo.Id, pageUrl)}""> 排 序 </a>"); } if (permissionsImpl.HasChannelPermissions(siteInfo.Id, channelInfo.Id, ConfigManager.ChannelPermissions.ContentCheck)) { builder.Append($@" <a href=""javascript:;"" class=""btn btn-light text-secondary"" onclick=""{ModalContentCheck.GetOpenWindowString(siteInfo.Id, channelInfo.Id, pageUrl)}""> 审 核 </a>"); } if (permissionsImpl.HasSitePermissions(siteInfo.Id, ConfigManager.WebSitePermissions.Create) || permissionsImpl.HasChannelPermissions(siteInfo.Id, channelInfo.Id, ConfigManager.ChannelPermissions.CreatePage)) { builder.Append($@" <a href=""javascript:;"" class=""btn btn-light text-secondary"" onclick=""{ModalProgressBar.GetOpenWindowStringWithCreateContentsOneByOne(siteInfo.Id, channelInfo.Id)}""> <i class=""ion-wand""></i> 生 成 </a>"); } } if (permissionsImpl.HasChannelPermissions(siteInfo.Id, channelInfo.Id, ConfigManager.ChannelPermissions.ChannelEdit)) { builder.Append($@" <a href=""javascript:;"" class=""btn btn-light text-secondary"" onclick=""{ModalSelectColumns.GetOpenWindowString(siteInfo.Id, channelInfo.Id)}""> <i class=""ion-ios-list-outline""></i> 显示项 </a>"); } if (count > 0) { builder.Append(@" <a href=""javascript:;;"" class=""btn btn-light text-secondary text-secondary"" onClick=""$('#contentSearch').toggle(); return false""> <i class=""ion-search""></i> 查找 </a>"); } return(builder.ToString()); }