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

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

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1.3 - (show annotations)
Sat Apr 19 04:18:14 2025 UTC (10 months, 4 weeks ago) by sysadm
Branch: MAIN
Changes since 1.2: +0 -1 lines
Remove legacy code

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

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