📄 u_messageinfo.asp
字号:
<%@ language="VBScript"%>
<!-- #include file="../config/common.asp" -->
<!-- #include file="msg.inc" -->
<script language="VBScript">
'--------------------------------------------------------------------
' 判断用户作了什么动作,【关闭】、【回复】还是【删除】?
'--------------------------------------------------------------------
' 用户按了【关闭】按钮
sub btnClose_OnClick()
document.HandleMessage.FormAction.value= "close"
HandleMessage.submit()
' window.close()
end sub
' 用户按了【回复】按钮
sub btnReply_OnClick()
Dim sReply
sReply = document.HandleMessage.reply.value
' if IsEmpty(sReply) or trim(sRelpy) = "" then '“这样写有问题唉!”
if trim(sReply = "") then
msgbox "请输入回复内容!"
document.HandleMessage.reply.focus()
exit sub
end if
document.HandleMessage.FormAction.value = "reply"
HandleMessage.submit()
end sub
' 用户按了【删除】按钮
sub btnDelete_OnClick()
document.HandleMessage.FormAction.value = "delete"
' msgbox document.HandleMessage.FormAction.value
HandleMessage.submit()
end sub
</script>
<%
'--------------------------------------------------------------------------------------
' 根据用户的选择:【关闭】、【回复】或【删除】进行相应的操作
' 变量前导 t 表示是本页传过来的参数
' 回复时消息发送者将成为回复消息的接收者,回复消息的主题将是"Re:原主题"
'--------------------------------------------------------------------------------------
Dim sActionError: sActionError = ""
Dim tFormAction : tFormAction = GetParam("FormAction")
Dim tMsgType : tMsgType = conMsgCommon
Dim tSerial : tSerial = GetParam("PMSerial")
Dim tMsgSerial : tMsgSerial = GetParam("MsgSerial")
Dim tSubject : tSubject = GetParam("Subject")
Dim tContent : tContent = GetParam("reply")
Dim tSender : tSender = Session("UserID")
Dim tReceiver : tReceiver = GetParam("Sender")
if Not IsEmpty(tMsgSubject) then
tMsgSubject = "Re:" & tMsgSubject
end if
SELECT CASE tFormAction
case empty
' do nothing
case "close" ' 更新消息的状态为已发送,然后关闭窗口
cn.execute "update T_PersonalMessage set beRead = 1, new = 1 where Serial = " & ToSQL(tSerial, "Number")
Response.write "<script language=""JavaScript"">self.close();</script>"
Response.End
case "reply" ' 发送回复消息并更新原消息的状态为已阅读,然后关闭窗口
sSQL = "proc_NewMessage" & _
" " & ToSQL(tMsgType,"Number") & _
"," & ToSQL(tSubject,"Text") & _
"," & ToSQL(tContent,"Text") & _
"," & ToSQL(tSender,"Text") & _
"," & ToSQL(tReceiver,"Text") & _
"," & ToSQL(tMsgSerial,"Number")
' Response.write sSQL : response.end
cn.Execute(sSQL)
Response.write "<script language=""JavaScript"">alert('恭喜,消息已经成功地回复了!');self.close();</script>"
'Dim rtnCode : rtnCode = newMessage("proc_NewMessage", tMsgType, tSubject, tContent, tSender, tReceiver, tMsgSerial)
' Dim rtnCode : rtnCode = newMessage(tMsgType, tSubject, tContent, tSender, tReceiver, tMsgSerial)
' if rtnCode = 0 then
' Response.write "<script language=""JavaScript"">alert('恭喜,消息已经成功地回复了!');self.close();</script>"
' Response.write "<script language=""JavaScript"">self.close();</script>"
' Response.End
' else
' Response.write "<script language=""JavaScript"">alert('消息发送没有成功,错误码为" & rtnCode & "');history.back();</script>"
' Response.End
' end if
case "delete" ' 删除消息,然后关闭窗口
cn.execute("delete from T_PersonalMessage where Serial = " & ToSQL(tSerial, "Number"))
sActionError = ProcessError
if sActionError <> "" then
response.write "<script language='JavaScript'>alert('消息删除不成功!');self.close();</script>"
Response.End
else
response.write "<script language='JavaScript'>alert('消息删除成功!');self.close();</script>"
Response.End
end if
case else
response.write "<script language='JavaScript'>alert('怎么会到这里来的?');self.close();</script>" ' 这种情况应该永远不会出现
Response.End
END SELECT
%>
<%
'--------------------------------------------------------------------
' 调用存储过程将员工工号翻译成员工姓名
'--------------------------------------------------------------------
function getName(idlist)
Dim rsName : rsName = CreateObject("ADODB.Recordset")
Set rsName = cn.Execute("proc_transEmpList " & ToSQL(idlist,"Text"))
getName = GetValue(rsName, "namelist")
rsName.close
Set rsName = nothing
end function
%>
<%
'--------------------------------------------------------------------
' 准备数据以备显示
'--------------------------------------------------------------------
Dim sMessageError : sMessageError = ""
Dim pAccountID : pAccountID = ""
Dim pSerial : pSerial = ""
Dim pMsgSerial : pMsgSerial = ""
Dim pMsgType : pMsgType = ""
Dim pSubject : pSubject = ""
Dim pContent : pContent = ""
Dim pSender : pSender = ""
Dim pSendTime : pSendTime = ""
Dim pReceiver : pReceiver = ""
Dim pSenderName : pSenderName = "" ' 翻译发送者姓名
'------------------------------------------
' 是不是传了T_PersonalMessage的消息序列号参数
'------------------------------------------
pSerial = GetParam("pmSerial")
if IsEmpty(pSerial) then sMessageError = "Error:无个人消息序列号参数"
'------------------------------------------
' 在T_Message中是不是找得到这样的消息
'------------------------------------------
sSQL = "select Account_id, Message_Serial, Message_Type, Subject, Content, Sender, Send_Time, Receiver from T_Message T1, T_PersonalMessage T2 where T2.Message_Serial = T1.Serial and T2.Serial = " & ToSQL(pSerial,"Number")
openrs rsMessage, sSQL
if rsMessage.EOF then
sMessageError = "Error:无相应的消息(T_PersonalMessage或T_Message中无相应记录)" & sSQL
end if
'------------------------------------------
' 该消息的主人是不是正在浏览的人
'------------------------------------------
pAccountID = GetValue(rsMessage, "Account_id")
if LCase(pAccountID) <> LCase(Session("UserID")) then
' sMessageError = "Error:不能偷看其它人的消息哦:" & pAccountID & ":" & Session("UserID") & ":" & sSQL
end if
if sMessageError <> "" then
' response.write "<script language='JavaScript'>window.alert('消息已经删除,请刷新页面!!!');self.close();</script>"
response.write "<script language='JavaScript'>window.alert('" & sMessageError &"');</script>"
end if
'------------------------------------------
' 从RecordSet中取到相应的值
'------------------------------------------
pMsgSerial = GetValue(rsMessage, "Message_Serial")
pMsgType = GetValue(rsMessage, "Message_Type")
pSubject = GetValue(rsMessage, "Subject")
pContent = GetValue(rsMessage, "Content")
pSender = GetValue(rsMessage, "Sender")
pSendTime = GetValue(rsMessage, "Send_Time")
pReceiver = GetValue(rsMessage, "Receiver")
'------------------------------------------
' 调用函数getName()翻译发送者和接收者的姓名
'------------------------------------------
pSenderName = getName(pSender) ' 翻译发送者姓名
pReceiver = getName(pReceiver) ' 翻译接收者姓名
'------------------------------------------
' 发送时间显示到分钟
'------------------------------------------
pSendTime = FormatDateTime(pSendTime, vbGeneralDate)
'------------------------------------------
' 释放
'------------------------------------------
rsMessage.close
Set rsMessage = nothing
%>
<html>
<head>
<style>
td {border-width:1px;border-color:white #D0D0D0 #D0D0D0 #D0D0D0;border-style:solid;font-size:9pt;height:20}
body {background-color:white;color:#000000;font-family:Arial,Tahoma,Verdana,Helvetica;color:#508CFF;
scrollbar-face-color:#FFFFFF; scrollbar-shadow-color:#FFFFFF; scrollbar-highlight-color:#FFFFFF; scrollbar-3dlight-color:#FFFFFF; scrollbar-darkshadow-color:#FFFFFF; scrollbar-track-color:#FFFFFF; scrollbar-arrow-color:gray;
margin-top:0px;margin-bottom:0px;margin-left:0px;margin-right:0px}
textarea {border-width:1px;border-color:gray;border-style:solid;font-size:9pt;line-height:14pt;}
.flatctrl {border-width:1px;border-color:gray; border-style:solid;font-size:9pt;line-heigth:20px}
</style>
</head>
<!--bgsound src="remind.wav" loop=1-->
<body>
<table cellspacing=0 cellpadding=0 width=300>
<tr><td align=center style="border-color:#D0D0D0 #D0D0D0 #D0D0D0 #D0D0D0;font-size:11pt;font-weight:600;height:30px">
<%
if pMsgType = conMsgBulletin then
response.write "最新公告"
elseif pMsgType = conMsgCommon then
response.write "最新消息"
elseif pMsgType = conMsgTaskRemind then
response.write "任务提醒"
elseif pMsgType = conMsgRMRemind then
response.write "例会提醒"
end if
%></td></tr>
<tr><td style="padding-left:5px;padding-right:10px" align="left"> 消息接收者:<font color="black"><%=pReceiver%></font></td></tr>
<tr><td style="padding-left:5px;padding-right:10px"> 标题:<font color="black"><%=pSubject%></font></td></tr>
<tr><td style="padding-left:5px;padding-right:10px"> 内容:<br><font color="black"><%=unescape(replace(escape(pContent),"%0D%0A","<br>"))%></font></td></tr>
<tr><td align="right" style="padding-right:15px"> <font color="black"><%=pSenderName%> <%=pSendTime%></font></td></tr>
<Form method="post" action="u_MessageInfo.asp" name="HandleMessage">
<tr><td style="padding-left:5px">回复标题:<br><input type="text" name="Subject" class="FlatCtrl" size="50" maxlength="50" value="Re:<%=pSubject%>"></td></tr>
<tr><td style="padding-left:5px">回复内容:<br><textarea name="reply" onFocus="JavaScript:this.select();" cols="48" rows=5>(这里填写回复内容)</textarea></td></tr>
<tr><td align="center">
<input type="hidden" name="PMSerial" value="<%=pSerial%>">
<input type="hidden" name="MsgSerial" value="<%=pMsgSerial%>">
<input type="hidden" name="Sender" value="<%=pSender%>">
<input type="hidden" name="FormAction" value="close">
<input type="button" name="btnReply" value=" 回复 " class="flatctrl">
<input type="button" name="btnDelete" value=" 删除 " class="flatctrl">
<input type="button" name="btnClose" value=" 关闭 " class="flatctrl">
</td></tr>
</Form>
</table>
</body>
</html>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -