📄 wm.sys_message.asp
字号:
<!--#include file="WM.Sys_Cook.asp"-->
<%
If CheckAdminFlag("Message") = False Then Call WRMPS.ErrView("·您没有权限进行此操作",0)
Call WM_Content
Sub WM_Content()
Dim UserName,DelDate,isRead,Key,Table,User,messageCount,messageCount1,messageCount2
Set Rs = server.createobject("adodb.recordset")
Select Case WRMPS.CheckStr(Request("Action"), 0)
Case "DelUser"
UserName = WRMPS.CheckStr(Request("UserName"), 0)
If UserName = "" Or IsNUll(UserName) Then Call WRMPS.ErrView("·请输入要删除消息的用户", 0)
Call DBConnBegin()
Set Rs = Conn.Execute("Select WM_Addressee,WM_Key From WM_Message Where WM_Addressee = '"&UserName&"' Or WM_Addresser = '"&UserName&"'")
Do While Not Rs.Eof
Set Rso = Conn.Execute("Select WM_Message From WM_Member Where WM_UserName = '"&Rs(0)&"'")
If Not Rso.Eof Then
messageCount = Rso(0)
messageCount1 = Int(Split(messageCount,"|")(0))-1
messageCount2 = Int(Split(messageCount,"|")(1))
If Rs(1) = 0 Then messageCount2 = messageCount2-1
If messageCount1 < 0 Then messageCount1 = 0
If messageCount2 < 0 Then messageCount2 = 0
messageCount = messageCount1 & "|" & messageCount2
Conn.Execute("Update WM_Member Set WM_Message = '"&messageCount&"' Where WM_UserName = '"&Rs(0)&"'")
End If
Rso.Close
Rs.MoveNext
Loop
Rs.Close
Set Rs = Nothing
Conn.Execute("Delete From WM_Message Where WM_Addressee = '"&UserName&"' Or WM_Addresser = '"&UserName&"'")
Call DBConnEnd()
Call WRMPS.ErrView("·用户 "&UserName&" 的消息删除成功!<meta http-equiv=refresh content='1;URL=WM.Sys_Message.asp'>", 1)
Case "DelDate"
DelDate = WRMPS.CheckStr(Request("DelDate"), 1)
isRead = WRMPS.CheckStr(Request("isRead"), 1)
If isRead = "" Then isRead = 0
If DelDate < 999 Then SQL = "and WM_Time <= "&ConnTime&"-"&DelDate&""
If isRead = 0 Then SQL = SQL & " and WM_Key = 1"
Call DBConnBegin()
Set Rs = Conn.Execute("Select WM_Addressee,WM_Key From WM_Message Where WM_Type = 0"&SQL)
Do While Not Rs.Eof
Set Rso = Conn.Execute("Select WM_Message From WM_Member Where WM_UserName = '"&Rs(0)&"'")
If Not Rso.Eof Then
messageCount = Rso(0)
messageCount1 = Int(Split(messageCount,"|")(0))-1
messageCount2 = Int(Split(messageCount,"|")(1))
If Rs(1) = 0 Then messageCount2 = messageCount2-1
If messageCount1 < 0 Then messageCount1 = 0
If messageCount2 < 0 Then messageCount2 = 0
messageCount = messageCount1 & "|" & messageCount2
Conn.Execute("Update WM_Member Set WM_Message = '"&messageCount&"' Where WM_UserName = '"&Rs(0)&"'")
End If
Rso.Close
Rs.MoveNext
Loop
Rs.Close
Set Rs = Nothing
Conn.Execute("Delete From WM_Message Where WM_Type = 0"&SQL)
Call DBConnEnd()
Call WRMPS.ErrView("·消息删除成功!<meta http-equiv=refresh content='1;URL=WM.Sys_Message.asp'>", 1)
Case "DelKey"
Key = WRMPS.CheckStr(Request("Key"), 0)
Table = WRMPS.CheckStr(Request("Table"), 0)
If Key = "" Or IsNUll(Key) Then Call WRMPS.ErrView("·请输入关键字", 0)
Select Case Table
Case "Con"
SQL = " Where WM_Message like'%"&Key&"%'"
Case "Tit"
SQL = " Where WM_Title like'%"&Key&"%'"
End Select
Call DBConnBegin()
Set Rs = Conn.Execute("Select WM_Addressee,WM_Key From WM_Message"&SQL)
Do While Not Rs.Eof
Set Rso = Conn.Execute("Select WM_Message From WM_Member Where WM_UserName = '"&Rs(0)&"'")
If Not Rso.Eof Then
messageCount = Rso(0)
messageCount1 = Int(Split(messageCount,"|")(0))-1
messageCount2 = Int(Split(messageCount,"|")(1))
If Rs(1) = 0 Then messageCount2 = messageCount2-1
If messageCount1 < 0 Then messageCount1 = 0
If messageCount2 < 0 Then messageCount2 = 0
messageCount = messageCount1 & "|" & messageCount2
Conn.Execute("Update WM_Member Set WM_Message = '"&messageCount&"' Where WM_UserName = '"&Rs(0)&"'")
End If
Rso.Close
Rs.MoveNext
Loop
Rs.Close
Set Rs = Nothing
Conn.Execute("Delete From WM_Message"&SQL)
Call DBConnEnd()
Call WRMPS.ErrView("·消息删除成功!<meta http-equiv=refresh content='1;URL=WM.Sys_Message.asp'>", 1)
Case "DelSys"
Call DBConnBegin()
Set Rs = Conn.Execute("Select WM_Addressee,WM_Key From WM_Message Where WM_Type = 1")
Do While Not Rs.Eof
Set Rso = Conn.Execute("Select WM_Message From WM_Member Where WM_UserName = '"&Rs(0)&"'")
If Not Rso.Eof Then
messageCount = Rso(0)
messageCount1 = Int(Split(messageCount,"|")(0))-1
messageCount2 = Int(Split(messageCount,"|")(1))
If Rs(1) = 0 Then messageCount2 = messageCount2-1
If messageCount1 < 0 Then messageCount1 = 0
If messageCount2 < 0 Then messageCount2 = 0
messageCount = messageCount1 & "|" & messageCount2
Conn.Execute("Update WM_Member Set WM_Message = '"&messageCount&"' Where WM_UserName = '"&Rs(0)&"'")
End If
Rso.Close
Rs.MoveNext
Loop
Rs.Close
Set Rs = Nothing
Conn.Execute("Delete From WM_Message Where WM_Type = 1")
Call DBConnEnd()
Call WRMPS.ErrView("·系统消息删除成功!<meta http-equiv=refresh content='1;URL=WM.Sys_Message.asp'>", 1)
Case "Send"
Dim WM_Title,WM_Message,i
UserName = WRMPS.CheckStr(Request("UserName"),1)
User = WRMPS.CheckStr(Request("User"),0)
WM_Title = WRMPS.CheckStr(Request("WM_title"),6)
WM_Message = WRMPS.CheckStr(Request("WM_Message"),2)
If WM_title = "" Then Call WRMPS.ErrView("·请输入消息标题",0)
If WM_Message = "" Then Call WRMPS.ErrView("·请输入消息内容",0)
Call DBConnBegin()
If User = "" Then
Select Case UserName
Case 0
Call WRDB.SendMessage(NULL,NULL,WM_Title,WM_Message)
Case Else
Set Rs = Conn.Execute("Select WM_UserName from WM_Member Where WM_GroupID = "&UserName)
Do While Not Rs.EOF
If User = "" Then User = Rs(0) Else User = User&","&Rs(0)
Rs.MoveNext
Loop
Rs.Close
Set Rs = Nothing
End Select
End If
If User <> "" Then
For i = 0 To UBOUND(Split(User,","))
If Split(User,",")(i) <> "" Then
Call WRDB.SendMessage(Split(User,",")(i),NULL,WM_Title,WM_Message)
End If
Next
End If
Call DBConnEnd()
Call WRMPS.ErrView("·消息发送成功!<meta http-equiv=refresh content='1;URL=WM.Sys_Message.asp'>", 1)
Case Else
Content = Content & "<table width='100%' cellpadding=3 cellspacing=1 class=td1>" & vbCrLf
Content = Content & "<tr Class=td4><td colspan=2><b>短消息管理</b></td></tr>" & vbCrLf
Content = Content & "<form name=addform method='post' Action='?Action=DelUser'>" & vbCrLf
Content = Content & "<tr Class=td2>" & vbCrLf
Content = Content & "<td colspan=2>批量删除某用户短消息(主要用于删除系统批量信息):<br><input type='text' size=20 name='UserName' maxlength='50'> <input type=submit name='Submit' value=' 删 除 ' ></td>" & vbCrLf
Content = Content & "</tr>" & vbCrLf
Content = Content & "</form>" & vbCrLf
Content = Content & "<form name=addform method='post' Action='?Action=DelDate'>" & vbCrLf
Content = Content & "<tr Class=td3>" & vbCrLf
Content = Content & "<td colspan=2>批量删除指定日期内短消息(默认为删除已读信息,此操作不删除系统信息):<br><select name='DelDate' size=1><option value=7>一个星期前</option><option value=30>一个月前</option><option value=60>两个月前</option><option value=180>半年前</option><option value=999>所有信息</option></select> <input type=checkbox class=checkbox name=isRead value=1>包括未读信息 <input type=submit name='Submit' value=' 删 除 ' ></td>" & vbCrLf
Content = Content & "</tr>" & vbCrLf
Content = Content & "</form>" & vbCrLf
Content = Content & "<form name=addform method='post' Action='?Action=DelKey'>" & vbCrLf
Content = Content & "<tr Class=td2>" & vbCrLf
Content = Content & "<td colspan=2>批量删除含有某关键字消息(注意:本操作将删除所有已读和未读信息):<br><input type='text' size=20 name='Key'> <select name='Table' size=1><option value=Tit>标题中</option><option value=Con>内容中</option></select> <input type=submit name='Submit' value=' 删 除 ' ></td>" & vbCrLf
Content = Content & "</tr>" & vbCrLf
Content = Content & "</form>" & vbCrLf
Content = Content & "<form name=addform method='post' Action='?Action=DelSys'>" & vbCrLf
Content = Content & "<tr Class=td2>" & vbCrLf
Content = Content & "<td colspan=2>批量删除所有系统信息:<br><input type=submit name='Submit' value=' 删 除 ' ></td>" & vbCrLf
Content = Content & "</tr>" & vbCrLf
Content = Content & "</form>" & vbCrLf
Content = Content & "<tr Class=td4><td colspan=2><b>发送短消息</b></td></tr>" & vbCrLf
Content = Content & "<form action='?Action=Send' name=myform method=POST>" & vbCrLf
Content = Content & " <tr>" & vbCrlf
Content = Content & " <td width=""25%""><strong>收件会员组:</strong></td>" & vbCrlf
Content = Content & " <td width=""75%""><select name=UserName align=absmiddle><option value=0>所有用户</option>"
Call DBConnBegin()
Set Rs = Conn.Execute("Select WM_GroupName,WM_ID from WM_UserGroup Where WM_GroupUser > 0 Order by WM_ID")
Do While Not Rs.EOF
Content = Content & "<option value=" & Rs(1) & ">所有" & Rs(0) & "</option>"
Rs.MoveNext
Loop
Rs.Close
Set Rs = Nothing
Call DBConnEnd()
Content = Content & "</select></td>" & vbCrlf
Content = Content & " </tr>" & vbCrlf
Content = Content & " <tr>" & vbCrlf
Content = Content & " <td><strong>具体收件人:</strong><br>这里填写后上述收件会员组设置将失效<br>多个会员请用英文豆号隔开</td>" & vbCrlf
Content = Content & " <td><input name=""User"" type=""text"" size=""42"" maxlength=""200""></td>" & vbCrlf
Content = Content & " </tr>" & vbCrlf
Content = Content & " <tr>" & vbCrlf
Content = Content & " <td><strong>标 题:</strong></td>" & vbCrlf
Content = Content & " <td><input name=""WM_title"" type=""text"" size=""42"" maxlength=""200""></td>" & vbCrlf
Content = Content & " </tr>" & vbCrlf
Content = Content & " <tr>" & vbCrlf
Content = Content & " <td><strong>内 容:</strong></td>" & vbCrlf
Content = Content & " <td><p style=""line-height:180%""><textarea name=""WM_Message"" cols=50 rows=8></textarea></td>" & vbCrlf
Content = Content & " </tr>" & vbCrlf
Content = Content & " <tr>" & vbCrlf
Content = Content & " <td></td>" & vbCrlf
Content = Content & " <td><input type=""submit"" name=""Submit"" value="" 发 送 "" onclick=""Loading.style.display=''""></td>" & vbCrlf
Content = Content & " </tr>" & vbCrlf
Content = Content & "</Form>" & vbCrLf
Content = Content & "</table>" & vbCrLf
End Select
Call WRMPS.Loading("")
Call ClassEnd()
Response.Write Content
Call GetBottom()
End Sub
%>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -