<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="SensitiveWordManage.aspx.cs" Inherits="Microsoft.Portal.CMS.Website.WordSearch.SensitiveWordManage" %>
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1" />
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title></title>
<link href="../Js/jquery-easyui/themes/default/easyui.css" rel="stylesheet" />
<link href="../Js/jquery-easyui/themes/icon.css" rel="stylesheet" />
<script src="../Js/jquery-easyui/jquery.min.js"></script>
<script src="../Js/jquery-easyui/jquery.easyui.min.js"></script>
<script src="../Js/jquery-easyui/locale/easyui-lang-zh_CN.js"></script>
<link href="../css/public_style.css" rel="stylesheet" />
</head>
<body>
<div class="mainform">
<table class="bread" id="Table2" cellspacing="0" cellpadding="0" width="100%" border="0">
<tr>
<td width="2%"> </td>
<td class="bread">
<asp:Label ID="Label4" runat="server">Currently Position</asp:Label>: <a href="../EnterAPPConfig.aspx"><asp:Label
ID="Label5" runat="server">业务应用</asp:Label></a> > <a href="SensitiveWordManage.aspx">
<asp:Label ID="Label6" runat="server">敏感词列表</asp:Label></a></td>
</tr>
</table>
<br>
<!--导航条 end-->
<!--页面框架(上) begin-->
<table height="100%" cellspacing="0" cellpadding="0" width="90%" align="Center" border="0">
<tr>
<td width="13" style="height: 434px">
<img height="100%" src="../images/CMS_main_shadow.jpg" width="13">
</td>
<td class="grayborder" valign="top">
<table cellspacing="0" cellpadding="0" width="100%" border="0">
<tr>
<td class="blackbacktitle">
<asp:Label ID="Label11" runat="server">敏感词管理列表</asp:Label></td>
</tr>
<tr>
<td style="width: 600px; height: 793px">
<div id="cc1" class="easyui-layout" data-options="fit:true">
<div data-options="region:'center',border:false">
<div class="easyui-layout" data-options="fit:true">
<div data-options="region:'west',border:false" style="width: 200px;"></div>
<div data-options="region:'center',border:false" style="overflow: hidden">
<label for="language">语言</label>
<select name="langs" id="langs">
<option value="cn">中文</option>
<option value="en">英文</option>
<option value="jp">日文</option>
<option value="ru">俄文</option>
</select>
敏感词:<input type="text" id="txtKeyWord" name="txtKeyWord"/>
<input type="button" id="btnSearch" value="搜索" />
<form id="form1" runat="server" style="display: none">
<asp:Button ID="Button1" runat="server" OnClick="Button1_Click" Text="下载" />
<asp:LinkButton ID="LinkButton1" runat="server"></asp:LinkButton>
<asp:HiddenField ID="HiddenField1" runat="server" />
</form>
<table id="tt" title="标题,可以使用代码进行初始化,也可以使用这种属性的方式" iconcls="icon-edit"></table>
<!----------------弹出来的删除的 对话框- 开始------------>
<div id="deleteDialogDiv">
<iframe id="deleteFrame" sandbox="allow-same-origin allow-scripts allow-popups allow-forms" frameborder="0" width="100%" height="100%"></iframe>
</div>
<!----------------弹出来的删除的 对话框- 结束------------>
<!----------------弹出来的浏览网页的 对话框- 开始------------>
<div id="webpageDialogDiv" style="overflow: hidden;">
<iframe id="webpageFrame" sandbox="allow-same-origin allow-scripts allow-popups allow-forms" frameborder="0" width="100%" height="100%"></iframe>
</div>
<!----------------弹出来的浏览网页的 对话框- 结束------------>
</div>
</div>
</div>
</div>
<script type="text/javascript">
$(function () {
initTable();
$("#addDialogDiv").css("display", "none");
bindSearchBtnClick();
iframeOnloadEvent();
});
function initTable(queryParam) {
$('#tt').datagrid({
url: 'SensitiveWordHandler.ashx?action=GetSensitiveWordList',//rows:一页有多少条,page:请求当前页
type: "post",
title: '敏感词列表',
width: $("#cc1").width() - 400,
height: $("#cc1").height() - 20,
fitColumns: true,
idField: 'ID',
loadMsg: '正在加载信息...',
pagination: true,
singleSelect: false,
pageSize: 20,
pageNumber: 1,
pageList: [20, 30, 40],
queryParams: queryParam,//让表格在加载数据的时候,额外传输的数据。
columns: [[
{ field: 'ck', checkbox: true, align: 'left', width: 50 },
{ field: 'ID', title: 'ID', width: 10 },
{ field: 'KeyWord', title: '敏感词', width: 30 },
{
field: 'URL', title: 'url', width: 220, formatter: function (value, row, index) {
var str = "";
str += "<a href='javascript:void(0)' class='urlLink' url='" + row.URL + "'>" + row.URL + "</a>";
return str;
}
},
{
field: 'Status', title: '处理状态', width: 20, align: 'center', formatter: function (value, row, index) {
var str = "";
if (urlFormatValidation(row.URL)) {
if (row.IsProcess == "True") {
str = "<p style='color:green;display: inline;'>已处理</p>";
}
else {
str = "未处理";
}
}
return str;
}
},
{
field: 'ModfiedOn', title: '操作', width: 26, align: 'center', formatter: function (value, row, index) {
var str = "";
if (urlFormatValidation(row.URL)) {
str += "<a href='javascript:void(0)' class='lsNotProcess' rid=" + row.ID + " style='text-decoration:underline;'>不处理</a>   ";
str += "<a href='javascript:void(0)' class='deletLink' rid=" + row.ID + " url=" + row.URL + " style='text-decoration:underline;'>删除</a>";
}
return str;
}
}
]],
toolbar: [{
id: 'btnDelete',
text: '删除',
iconCls: 'icon-cancel',
handler: function () {
deleteEvent();
}
}, {
id: 'btnDownload',
text: '下载',
iconCls: 'icon-save',
handler: function () {
saveEvent();
}
}],
onHeaderContextMenu: function (e, field) {
},
onLoadSuccess: function (data) {
$(".urlLink").click(function () {
showPage($(this).attr("url"));
return false;
});
$(".lsNotProcess").click(function () {
ProcessEvent($(this).attr("rid"), 1);
return false;
});
$(".deletLink").click(function () {
deletEvent($(this).attr("rid"),$(this).attr("url"));
return false;
});
var queryParams = $('#tt').datagrid('options').queryParams;
queryParams.fromway = "";
$("#btnSearch").attr('disabled', false);
$('#tt').datagrid('clearSelections');
//不可操作行不可选中
$.each(data.rows, function (i, e) {
if (!urlFormatValidation(e.URL)) {
$("input:checkbox[name='ck']")[i].disabled = true;
}
});
},
onBeforeSelect: function (index, row) {
var row = $(this).datagrid('getRows')[index];
if (!urlFormatValidation(row.URL)) {
row._selecting = false;
return row._selecting;
}
},
onCheckAll: function (rows) {
$.each(rows, function (i, e) {
if (!urlFormatValidation(e.URL)) {
$("input:checkbox[name='ck']").eq(i).parents("tr").removeClass("datagrid-row-selected")
}
});
},
onClickCell: function (index, field, value) {
if (field == 'ModfiedOn') {
$(this).datagrid('selectRow', index);
}
}
})
}
function showPage(url) {
//给deleteFrame 的src属性做一个赋值
url = url.toLowerCase();
url = url.replace("https://www.h3c.com/", "../../");
$("#webpageFrame").attr("src", url);
var searchText = $("#txtKeyWord").val();
if (searchText.length == 0) {
return false;
}
$("#webpageDialogDiv").css("display", "block");
$("#webpageDialogDiv").dialog({
title: "链接浏览",
modal: true,
width: 1000,
height: 800,
left: 470,
top: 0,
collapsible: true,
minimizable: true,
maximizable: true,
resizable: true,
buttons: [{
id: 'btnCancel',
text: '关闭',
iconCls: 'icon-cancel',
handler: function () {
$("#webpageDialogDiv").dialog("close");
}
}]
});
}
//删除按钮被点击的时候执行。
function deleteEvent() {
//第一步拿到 easyui里面的选中的项
var selectedRows = $('#tt').datagrid("getSelections");
if (selectedRows.length <= 0) {
//error,question,info,warning.
$.messager.alert("错误提醒", "请选中要删除的数据!", "question");
return;
}
var docIds = "", selectIDs = "";
// 把数据删除
for (var key in selectedRows) {
url = selectedRows[key].URL;
if (urlFormatValidation(url)) {
selectID = selectedRows[key].ID;
var index = url.lastIndexOf("\/");
var index2 = url.lastIndexOf(".");
var id = (url.substring(index + 1, index2 + 1)).split('_')[0];
docIds = docIds + id + ",";
selectIDs = selectIDs + selectID + ",";
}
}
if (docIds == "" || selectIDs == "") {
$.messager.alert("错误提醒", "请选中要删除的数据!", "question");
return;
}
//ids: 1,2, 4,5,6,
docIds = docIds.substr(0, docIds.length - 1);
selectIDs = selectIDs.substr(0, selectIDs.length - 1);
//docIds = "1275911,1275958";
$.messager.confirm("操作提示", "您确定要删除ID为" + selectIDs + "的条目吗?", function (data) {
if (data) {
load();
$.post("SensitiveWordHandler.ashx?action=delete", { ids: selectIDs, docIds: docIds }, function (data) {
disLoad();
if (data == "ok") {
$.messager.alert("提醒消息", "删除成功", "info");
//刷新表格
$("#tt").datagrid('reload');
} else {
$.messager.alert("提醒消息", "删除失败", "error");
}
});
}
else {
}
});
}
//删除按钮被点击的时候执行。
function deletEvent(rid,url) {
$.messager.confirm("操作提示", "您确定要删除ID为" + rid+"的条目吗?", function (data) {
if (data) {
var index = url.lastIndexOf("\/");
var index2 = url.lastIndexOf(".");
var docId = (url.substring(index + 1, index2 + 1)).split('_')[0];
//id = "1275916";
//docId = "1275979";
var id = rid;
load();
$.post("SensitiveWordHandler.ashx?action=delete", { ids: id, docIds: docId }, function (data) {
disLoad();
if (data == "ok") {
$.messager.alert("提醒消息", "删除成功", "info");
//刷新表格
$("#tt").datagrid('reload');
} else {
$.messager.alert("提醒消息", "删除失败", "error");
}
});
} else {
}
});
}
//绑定搜索查询事件
function bindSearchBtnClick() {
$("#btnSearch").click(function () {
var data = { txtKeyWord: $("#txtKeyWord").val(), language: $("#langs option:selected").val(), fromway: "SearchClick" };
initTable(data);
$("#btnSearch").attr('disabled', true);
});
}
function iframeOnloadEvent() {
var iframe = document.getElementById("webpageFrame");
if (iframe.attachEvent) {
iframe.attachEvent("onload", function () {
var searchText = $("#txtKeyWord").val();
var content = $("#webpageFrame").contents().find("body").html();
if (sensitiveMatch(searchText, content)) {
var regExp = new RegExp(searchText, 'g');
var newHtml = content.replace(regExp, '<span id="result" style="background:yellow;color:red;">' + searchText + '</span>');
$("#webpageFrame").contents().find("body").html(newHtml);
var X = $("#webpageFrame").contents().find("#result").offset().top;
var Y = $("#webpageFrame").contents().find("#result").offset().left;
document.getElementById('webpageFrame').contentWindow.scrollTo(X, Y);
//document.getElementById('webpageFrame').contentWindow.scrollTop(X);
}
});
} else {
iframe.onload = function () {
var searchText = $("#txtKeyWord").val();
var content = $("#webpageFrame").contents().find("body").html();
if (sensitiveMatch(searchText, content)) {
var regExp = new RegExp(searchText, 'g');
var newHtml = content.replace(regExp, '<span id="result" style="background:yellow;color:red;">' + searchText + '</span>');
//$("#webpageFrame").contents().find("body").html(newHtml);
document.getElementById('webpageFrame').contentWindow.document.getElementsByTagName("body")[0].innerHTML = newHtml;
var X = $("#webpageFrame").contents().find("#result").offset().top;
var Y = $("#webpageFrame").contents().find("#result").offset().left;
document.getElementById('webpageFrame').contentWindow.scrollTo(X, Y);
//document.getElementById('webpageFrame').contentWindow.scrollTop(X);
}
};
}
}
function ProcessEvent(id, ProcessStatus) {
load();
$.post("SensitiveWordHandler.ashx?action=process", { id: id, ProcessStatus: ProcessStatus }, function (data) {
disLoad();
if (data == "ok") {
//刷新表格
$("#tt").datagrid('reload');
} else {
$.messager.alert("提醒消息", "操作失败", "error");
}
});
}
//下载按钮被点击
function saveEvent() {
var searchText = $("#txtKeyWord").val();
if (searchText == "") {
//error,question,info,warning.
$.messager.alert("错误提醒", "请输入敏感词!", "question");
return;
}
document.getElementById('<%=HiddenField1.ClientID%>').value = searchText;
__doPostBack('Button1', '')
}
//验证URL格式
function urlFormatValidation(url) {
var reg = /(?:d_)(?:\d{6})\/(?:\d{1,20})_(?:\d{1,20})_(?:\d{1,20})(?:.htm)/;
if (!reg.test(url)) {
return false;
} else {
return true;
}
}
//sensitiveMatch
function sensitiveMatch(keyWord, htmlContent) {
var reg = new RegExp("(" + keyWord + ")");
return reg.test(htmlContent);
}
//弹出加载层
function load() {
$("<div class=\"datagrid-mask\"></div>").css({
display: "block",
width: "100%",
height: $(window).height()
}).appendTo("body");
$("<div class=\"datagrid-mask-msg\"></div>").html("处理中,请稍候...").appendTo("body").css({
display: "block",
left: ($(document.body).outerWidth(true) - 190) / 2,
top: ($(window).height() - 45) / 2,
height: "auto"
});
}
//取消加载层
function disLoad() {
$(".datagrid-mask").remove();
$(".datagrid-mask-msg").remove();
}
</script>
</td>
</tr>
</table>
</td>
</tr>
</table>
</div>
</body>
</html>
easui敏感词
最新推荐文章于 2024-09-24 21:04:50 发布