/[LeafOK_CVS]/fenglin/bbs/themes/default/read_msg.view.php
ViewVC logotype

Annotation of /fenglin/bbs/themes/default/read_msg.view.php

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1.2 - (hide annotations)
Fri Apr 18 05:11:52 2025 UTC (10 months, 4 weeks ago) by sysadm
Branch: MAIN
Changes since 1.1: +7 -0 lines
Refine

1 sysadm 1.2 <?
2     // Prevent load standalone
3     if (!isset($result_set))
4     {
5     exit();
6     }
7     ?>
8 sysadm 1.1 <html>
9     <head>
10     <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
11     <title>查看消息——<? echo ($result_set["data"]["sent"] ? "发件箱" : "收件箱"); ?></title>
12     <link rel="stylesheet" href="css/default.css" type="text/css">
13     <script type="text/javascript" src="../js/nw_open.js"></script>
14     <script src="../js/polyfill.min.js"></script>
15     <script src="../js/axios.min.js"></script>
16     <script type="text/javascript">
17     function ch_page(page)
18     {
19     rpp = document.getElementById("rpp").value;
20     document.location = "read_msg.php?sent=<? echo ($result_set["data"]["sent"] ? "1" : "0"); ?>&page=" + page + "&rpp=" + rpp + "&ts=" + Date.now();
21     return false;
22     }
23    
24     function ch_rpp()
25     {
26     page = document.getElementById("page").value;
27     rpp = document.getElementById("rpp").value;
28     page = Math.floor((page - 1) * <? echo $result_set["data"]["rpp"]; ?> / rpp) + 1;
29     document.location = "read_msg.php?sent=<? echo ($result_set["data"]["sent"] ? "1" : "0"); ?>&page=" + page + "&rpp=" + rpp + "&ts=" + Date.now();
30     return false;
31     }
32    
33     function refresh_page()
34     {
35     page = document.getElementById("page").value;
36     rpp = document.getElementById("rpp").value;
37     document.location = "read_msg.php?sent=<? echo ($result_set["data"]["sent"] ? "1" : "0"); ?>&page=" + page + "&rpp=" + rpp + "&ts=" + Date.now();
38     return false;
39     }
40    
41     function set_checkboxes(do_check)
42     {
43     document.getElementsByName("delete_msg_id").forEach(element => {
44     element.checked = do_check;
45     });
46     return true;
47     }
48    
49     function show_send_msg(uid, nickname)
50     {
51     document.getElementById("uid").value = uid;
52     document.getElementById("nickname").value = nickname;
53     document.getElementById("content").value = "";
54     document.getElementById("tr_send_msg").style.visibility = "visible";
55    
56     return false;
57     }
58    
59     function hide_send_msg()
60     {
61     document.getElementById("uid").value = 0;
62     document.getElementById("nickname").value = "";
63     document.getElementById("content").value = "";
64     document.getElementById("tr_send_msg").style.visibility = "collapse";
65    
66     return false;
67     }
68    
69     function refresh_err_msg(errorFieldMap)
70     {
71     document.getElementsByName("err_msg").forEach(element => {
72     element.innerHTML = (errorFieldMap.has(element.id) ? errorFieldMap.get(element.id) : "");
73     });
74     }
75    
76     function send_msg()
77     {
78     instance.post('send_msg_sub.php', {
79     uid: document.getElementById("uid").value,
80     content: document.getElementById("content").value,
81     })
82     .then(function (response) {
83     var ret = response.data;
84     var errorFieldMap = new Map();
85     switch (ret.return.code)
86     {
87     case 0: // OK
88     errorFieldMap.set("err_msg_delete", "发送成功");
89     refresh_err_msg(errorFieldMap);
90     hide_send_msg();
91     break;
92     case -1: // Input validation failed
93     errorFieldMap.set("err_msg_send", ret.return.message + "<br />");
94     refresh_err_msg(errorFieldMap);
95     break;
96     case -2: // Internal error
97     console.log(ret.return.message);
98     errorFieldMap.set("err_msg_send", "内部错误<br />");
99     refresh_err_msg(errorFieldMap);
100     break;
101     default:
102     console.log(ret.return.code);
103     break;
104     }
105     })
106     .catch(function (error) {
107     console.log(error);
108     });
109    
110     return false;
111     }
112    
113     function delete_msg()
114     {
115     let delete_msg_id = [];
116     document.getElementsByName("delete_msg_id").forEach(element => {
117     if (element.checked)
118     {
119     delete_msg_id.push(element.value);
120     }
121     });
122    
123     instance.post('delete_msg.php', {
124     sent: <? echo ($result_set["data"]["sent"] ? "1" : "0"); ?>,
125     delete_msg_id: delete_msg_id,
126     })
127     .then(function (response) {
128     var ret = response.data;
129     var errorFieldMap = new Map();
130     switch (ret.return.code)
131     {
132     case 0: // OK
133     refresh_err_msg(errorFieldMap);
134     refresh_page();
135     break;
136     case -1: // Input validation failed
137     errorFieldMap.set("err_msg_delete", ret.return.message);
138     refresh_err_msg(errorFieldMap);
139     break;
140     case -2: // Internal error
141     console.log(ret.return.message);
142     errorFieldMap.set("err_msg_delete", "内部错误");
143     refresh_err_msg(errorFieldMap);
144     break;
145     default:
146     console.log(ret.return.code);
147     break;
148     }
149     })
150     .catch(function (error) {
151     console.log(error);
152     });
153    
154     return false;
155     }
156    
157     const instance = axios.create({
158     withCredentials: true,
159     timeout: 3000,
160     baseURL: document.location.protocol + '//' + document.location.hostname + (document.location.port=='' ? '' : (':' + document.location.port)) + '/bbs/',
161     });
162    
163     </script>
164     </head>
165     <body>
166     <center>
167     <table cols="2" border="0" cellpadding="5" cellspacing="0" width="1050">
168     <tr id="tr_send_msg" style="visibility: <? echo ($result_set["data"]["uid"] > 0 ? "visible" : "collapse"); ?>">
169     <td width="70%">
170     <input type="hidden" id="uid" name="uid" value="<? echo $result_set["data"]["uid"]; ?>">
171     <p>
172     <span id="err_msg_send" name="err_msg" style="color: red"></span>
173     发送给:<input id="nickname" name="nickname" value="<? echo $result_set["data"]["nickname"]; ?>" readonly><br />
174     内容:<br />
175     <textarea id="content" name="content" rows="10" cols="90"></textarea><br />
176     不能超过10行,每行256字符以内
177     </p>
178     <p align="center">
179     <a class="s2" href="#" onclick="return send_msg();">发送</a>&nbsp;&nbsp;
180     <a class="s2" href="#" onclick="return hide_send_msg();">取消</a>
181     </p>
182     </td>
183     <td width="30%">
184     </td>
185     </tr>
186     <tr bgcolor="#ffdead" height="25">
187     <td>
188     <?
189     if (!$result_set["data"]["sent"])
190     {
191     ?>
192     <a class="s2" href="read_msg.php?sent=1">切换至发件箱</a>&nbsp;
193     <?
194     if ($result_set["data"]["unread_msg_count"] > 0)
195     {
196     ?>您有<span style="color:red;"><? echo $result_set["data"]["unread_msg_count"]; ?></span>条未读消息<?
197     }
198     }
199     else
200     {
201     ?>
202     <a class="s2" href="read_msg.php?sent=0">切换至收件箱</a>&nbsp;
203     <?
204     }
205     ?>
206     &nbsp;&nbsp;&nbsp;<span id="err_msg_delete" name="err_msg" style="color: red"></span>
207     </td>
208     <td align="right">
209     共<? echo ($result_set["data"]["sent"] ? "发送" : "有"); ?><span style="color:red;"><? echo $result_set["data"]["msg_count"]; ?></span>条消息
210     </td>
211     </tr>
212     <?
213     $color[0]="#faf5f5";
214     $color[1]="#f0f0f0";
215     $count=0;
216    
217     foreach ($result_set["data"]["messages"] as $message)
218     {
219     ?>
220     <tr bgcolor="<? echo $color[1]; ?>">
221     <td>
222     <? echo ($result_set["data"]["sent"] ? "收件人" : "发送人"); ?>:<a class="s2" href="show_profile.php?uid=<? echo $message["uid"]; ?>" target=_blank title="查看用户资料"><? echo $message["nickname"]; ?></a>
223     &nbsp;&nbsp;发送时间:<? echo $message["send_dt"]->format("Y-m-d H:i:s"); ?>
224     <?
225     if ($message["new"])
226     {
227     ?>
228     <img src="images/new.gif">
229     <?
230     }
231     if ($message["uid"] != $BBS_sys_uid)
232     {
233     ?>
234     &nbsp;
235     <a class="s2" href="" onclick="return show_send_msg(<? echo $message["uid"]; ?>, '<? echo $message["nickname"]; ?>');">
236     <? echo ($result_set["data"]["sent"] ? "发送消息" : "回复消息"); ?>
237     </a>
238     <?
239     }
240     ?>
241     </td>
242     <td align="right">
243     <input type="checkbox" id="delete_msg_<? echo $message["mid"]; ?>" name="delete_msg_id" value="<? echo $message["mid"]; ?>">选中
244     </td>
245     </tr>
246     <tr bgcolor="<? echo $color[0]; ?>">
247     <td colspan="2">
248     <? echo LML(htmlspecialchars($message["content"], ENT_HTML401, 'UTF-8'), true, true, 100); ?>
249     </td>
250     </tr>
251     <?
252     }
253     ?>
254     <tr bgcolor="#ffdead" height="5">
255     <td colspan="2">
256     </td>
257     </tr>
258     <tr>
259     <td style="color: #909090">
260     每页<select size="1" id="rpp" name="rpp" onchange="ch_rpp();">
261     <?
262     foreach ($BBS_msg_rpp_options as $v)
263     {
264     echo ("<option value=\"$v\"" . ($v == $result_set["data"]["rpp"] ? " selected" : "") . ">$v</option>");
265     }
266     ?>
267     </select>条
268     <?
269     if ($result_set["data"]["page"] > 1)
270     {
271     ?>
272     <a class="s8" title="首页" href="" onclick="return ch_page(1);">|◀</a>
273     <a class="s8" title="上一页" href="" onclick='return ch_page(<? echo ($result_set["data"]["page"] - 1); ?>);'>◀</a>
274     <?
275     }
276     else
277     {
278     ?>
279     |◀ ◀
280     <?
281     }
282     ?>
283     第<input id="page" name="page" value="<? echo ($result_set["data"]["page"]) ; ?>" style="width: 30px;">/<? echo $result_set["data"]["page_total"]; ?>页
284     <?
285     if ($result_set["data"]["page"] < $result_set["data"]["page_total"])
286     {
287     ?>
288     <a class="s8" title="下一页" href="" onclick="return ch_page(<? echo ($result_set["data"]["page"] + 1); ?>);">▶</a>
289     <a class="s8" title="尾页" href="" onclick="return ch_page(<? echo ($result_set["data"]["page_total"]); ?>);">▶|</a>
290     <?
291     }
292     else
293     {
294     ?>
295     ▶ ▶|
296     <?
297     }
298     ?>
299     </td>
300     <td align="right">
301     <a class="s2" onclick="delete_msg();" href="#">删除</a>
302     <input type="checkbox" name="check_all" id="check_all" onclick="set_checkboxes(this.checked);">全选
303     </td>
304     </tr>
305     </table>
306     </center>
307     </body>
308     </html>

webmaster@leafok.com
ViewVC Help
Powered by ViewVC 1.3.0-beta1