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

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

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1.36 - (hide annotations)
Mon Jun 2 03:30:26 2025 UTC (9 months, 2 weeks ago) by sysadm
Branch: MAIN
Changes since 1.35: +0 -2 lines
Remove ads

1 sysadm 1.13 <?php
2 sysadm 1.1 // Prevent load standalone
3     if (!isset($result_set))
4     {
5     exit();
6     }
7    
8     require_once "../lib/lml.inc.php";
9     require_once "../lib/str_process.inc.php";
10     require_once "./user_level.inc.php";
11    
12     // Pre-defined color setting of article display
13     $color = array(
14     "#FAFBFC",
15     "#f0F3Fa"
16     );
17     $color_index = 0;
18    
19 sysadm 1.27 $title = htmlspecialchars($result_set["data"]["title"], ENT_HTML401, 'UTF-8');
20     $section_scope = ($result_set["data"]["ex"] ? "文摘区" : "讨论区");
21    
22     $css_file = get_theme_file('css/default');
23    
24     $navigator_bar = <<<HTML
25     <a class="s2" href="main.php?sid={$result_set['data']['sid']}">{$BBS_name}</a>&gt;&gt;<a class="s2" href="list.php?sid={$result_set['data']['sid']}">{$result_set["data"]["section_title"]}</a>&gt;&gt;<a class="s2" href="list.php?sid={$result_set['data']['sid']}&ex={$result_set['data']['ex']}">{$section_scope}</a>
26     <a class="s2" href="article_post.php?reply_id={$result_set['data']['id']}&quote=0" title="直接回复该文章">[快速回复]</a>
27     HTML;
28     if ($previous_id > 0)
29     {
30     $navigator_bar .= <<<HTML
31     <a class="s2" href="view_article.php?id={$previous_id}&ex={$result_set['data']['ex']}&trash={$result_set['data']['trash']}">[上一主题]</a>
32     HTML;
33     }
34     if ($next_id > 0)
35 sysadm 1.1 {
36 sysadm 1.27 $navigator_bar .= <<<HTML
37     <a class="s2" href="view_article.php?id={$next_id}&ex={$result_set['data']['ex']}&trash={$result_set['data']['trash']}">[下一主题]</a>
38     HTML;
39 sysadm 1.1 }
40    
41 sysadm 1.27 $ex_dir_selector = "";
42     // Only show set_ex_file at page 1
43     if ($result_set["data"]["excerption"] && $result_set["data"]["page"] == 1 && $_SESSION["BBS_priv"]->checkpriv($result_set["data"]["sid"], S_POST | S_MAN_S))
44     {
45     $option_non_ex_checked = ($result_set["data"]["fid"] == -1 ? "selected" : "");
46     $option_root_checked = ($result_set["data"]["fid"] == 0 ? "selected" : "");
47    
48     $ex_dir_selector .= <<<HTML
49     <span id="err_msg_ex_dir" name="err_msg" style="color: red;"></span>
50     <select id="ex_dir" name="ex_dir" size="1">
51     <option value="-1" {$option_non_ex_checked}>[不属于精华区]</option>
52     <option value="0" {$option_root_checked}>(根目录)</option>
53     HTML;
54    
55     foreach ($result_set["data"]["section_ex_dirs"] as $section_ex_dir)
56     {
57     $option_checked = ($result_set["data"]["fid"] == $section_ex_dir["fid"] ? "selected" : "");
58    
59     $ex_dir_selector .= <<<HTML
60     <option value="{$section_ex_dir['fid']}" {$option_checked}>{$section_ex_dir["dir"]}({$section_ex_dir["name"]})</option>
61     HTML;
62     }
63 sysadm 1.1
64 sysadm 1.27 $ex_dir_selector .= <<<HTML
65     </select>
66     HTML;
67     }
68     else if ($result_set["data"]["fid"] >= 0)
69     {
70     $ex_dir_selector .= <<<HTML
71     <a class="s2" href="/gen_ex/{$result_set['data']['sid']}/{$result_set['data']['ex_dir']}" target="_blank" title="精华区目录">
72     {$result_set["data"]["ex_dir"]}({$result_set["data"]["ex_name"]})
73     </a>
74     HTML;
75     }
76 sysadm 1.1
77 sysadm 1.27 echo <<<HTML
78     <html>
79     <head>
80     <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
81     <title>{$title}</title>
82     <link rel="stylesheet" href="{$css_file}" type="text/css">
83     <style type="text/css">
84     SPAN.title_normal
85     {
86     color: #909090;
87     }
88     SPAN.title_deleted
89     {
90     color: red;
91     text-decoration: line-through;
92     }
93     TD.content_normal
94     {
95     font-size: 16px;
96     }
97     TD.content_deleted
98     {
99     font-size: 16px;
100     text-decoration: line-through;
101     }
102 sysadm 1.33 IMG.auto_adjust
103     {
104     display: none;
105     }
106 sysadm 1.27 </style>
107     <script src="../js/polyfill.min.js"></script>
108     <script src="../js/axios.min.js"></script>
109 sysadm 1.33 <script src="../js/jquery.min.js"></script>
110 sysadm 1.27 <script type="text/javascript">
111     function ch_page(page)
112     {
113     document.change_page.page.value = page;
114     document.change_page.submit();
115     return false;
116     }
117 sysadm 1.1
118 sysadm 1.27 function ch_rpp()
119 sysadm 1.1 {
120 sysadm 1.27 document.change_page.page.value = Math.floor((document.change_page.page.value - 1) * {$result_set["data"]["rpp"]} / document.change_page.rpp.value) + 1;
121     document.change_page.submit();
122 sysadm 1.1 return false;
123     }
124    
125 sysadm 1.27 function refresh_err_msg(errorFieldMap)
126     {
127     document.getElementsByName("err_msg").forEach(element => {
128     element.innerHTML = (errorFieldMap.has(element.id) ? errorFieldMap.get(element.id) : "");
129     });
130     }
131    
132     function upload_del(id)
133     {
134     if (window.confirm('真的要删除吗?') == false)
135     {
136     return false;
137     }
138    
139     instance.post('upload_service_del.php', {
140     aid: id,
141     })
142     .then(function (response) {
143     var ret = response.data;
144     var errorFieldMap = new Map();
145     switch (ret.return.code)
146     {
147     case 0: // OK
148     case 1: // Already deleted
149     document.getElementById("attachment_" + id).style.display = "none";
150     refresh_err_msg(errorFieldMap);
151     break;
152     case -1: // Input validation failed
153     errorFieldMap.set("err_msg_attachment_" + id, ret.return.message);
154     refresh_err_msg(errorFieldMap);
155     break;
156     case -2: // Internal error
157     console.log(ret.return.message);
158     errorFieldMap.set("err_msg_attachment_" + id, "内部错误<br />");
159     refresh_err_msg(errorFieldMap);
160     break;
161     default:
162     console.log(ret.return.code);
163 sysadm 1.1 break;
164 sysadm 1.27 }
165     })
166     .catch(function (error) {
167     console.log(error);
168     });
169 sysadm 1.1
170 sysadm 1.27 return false;
171     }
172 sysadm 1.1
173 sysadm 1.27 function article_op(op_type, id, set, confirm = false)
174     {
175     var opService = new Map([
176     ["delete", "article_service_del.php"],
177     ["restore", "article_service_restore.php"],
178     ["excerption", "article_service_excerption.php"],
179     ["ontop", "article_service_ontop.php"],
180     ["lock", "article_service_lock.php"],
181     ["transship", "article_service_transship.php"],
182     ]);
183    
184     var opNeedRefresh = new Set([
185     "delete",
186     "restore",
187     ]);
188 sysadm 1.1
189 sysadm 1.27 if (confirm && window.confirm('真的要操作吗?') == false)
190     {
191     return false;
192     }
193 sysadm 1.1
194 sysadm 1.27 instance.post(opService.get(op_type), {
195     id: id,
196     set: set,
197     })
198     .then(function (response) {
199     var ret = response.data;
200     var errorFieldMap = new Map();
201     switch (ret.return.code)
202     {
203     case 0: // OK
204     case 1: // Already set
205     if (opNeedRefresh.has(op_type))
206     {
207     // Refresh with additional parameters
208     document.location = "view_article.php?trash=1&rpp={$result_set["data"]["rpp"]}&ts=" + Date.now() + "&id=" + id + "#" + id;
209     break;
210     }
211     document.getElementById("set_" + op_type + "_" + id).style.display = (set ? "none" : "inline");
212     document.getElementById("unset_" + op_type + "_" + id).style.display = (set ? "inline" : "none");
213     refresh_err_msg(errorFieldMap);
214     break;
215     case -1: // Input validation failed
216     errorFieldMap.set("err_msg_ctrl_" + id, ret.return.message);
217     refresh_err_msg(errorFieldMap);
218     break;
219     case -2: // Internal error
220     console.log(ret.return.message);
221     errorFieldMap.set("err_msg_ctrl_" + id, "内部错误");
222     refresh_err_msg(errorFieldMap);
223     break;
224     default:
225     console.log(ret.return.code);
226     break;
227     }
228     })
229     .catch(function (error) {
230     console.log(error);
231     });
232 sysadm 1.1
233 sysadm 1.27 return false;
234     }
235 sysadm 1.1
236 sysadm 1.27 function move_article(sid)
237 sysadm 1.1 {
238 sysadm 1.27 instance.post('article_service_move.php', {
239     id: {$result_set["data"]["id"]},
240     sid: sid,
241     })
242     .then(function (response) {
243     var ret = response.data;
244     var errorFieldMap = new Map();
245     switch (ret.return.code)
246     {
247     case 0: // OK
248     refresh_err_msg(errorFieldMap);
249     document.location = "view_article.php?id={$result_set["data"]["id"]}&trash={$result_set["data"]["trash"]}&rpp={$result_set["data"]["rpp"]}&ts=" + Date.now();
250     break;
251     case -1: // Input validation failed
252     errorFieldMap.set("err_msg_move", ret.return.message);
253     refresh_err_msg(errorFieldMap);
254     break;
255     case -2: // Internal error
256     console.log(ret.return.message);
257     errorFieldMap.set("err_msg_move", "内部错误");
258     refresh_err_msg(errorFieldMap);
259     break;
260     default:
261     console.log(ret.return.code);
262     break;
263     }
264     })
265     .catch(function (error) {
266     console.log(error);
267 sysadm 1.1 });
268 sysadm 1.27
269     return false;
270 sysadm 1.1 }
271    
272 sysadm 1.27 function set_ex_dir(fid)
273 sysadm 1.1 {
274 sysadm 1.27 instance.post('article_service_genex.php', {
275     id: {$result_set["data"]["id"]},
276     fid: fid,
277     })
278     .then(function (response) {
279     var ret = response.data;
280     var errorFieldMap = new Map();
281     switch (ret.return.code)
282     {
283     case 0: // OK
284     refresh_err_msg(errorFieldMap);
285     document.location = "view_article.php?id={$result_set["data"]["id"]}&trash={$result_set["data"]["trash"]}&rpp={$result_set["data"]["rpp"]}&ts=" + Date.now();
286     break;
287     case -1: // Input validation failed
288     errorFieldMap.set("err_msg_ex_dir", ret.return.message);
289     refresh_err_msg(errorFieldMap);
290     break;
291     case -2: // Internal error
292     console.log(ret.return.message);
293     errorFieldMap.set("err_msg_ex_dir", "内部错误");
294     refresh_err_msg(errorFieldMap);
295     break;
296     default:
297     console.log(ret.return.code);
298     break;
299     }
300     })
301     .catch(function (error) {
302     console.log(error);
303 sysadm 1.1 });
304 sysadm 1.27
305     return false;
306 sysadm 1.1 }
307    
308 sysadm 1.27 const instance = axios.create({
309     withCredentials: true,
310     timeout: 3000,
311     baseURL: document.location.protocol + '//' + document.location.hostname + (document.location.port=='' ? '' : (':' + document.location.port)) + '/bbs/',
312     });
313    
314 sysadm 1.35 window.addEventListener("load", () => {
315     var s = document.getElementById("ex_dir");
316     if (s)
317     {
318     s.addEventListener("change", (e) => {
319     set_ex_dir(s.value);
320     });
321     }
322 sysadm 1.27
323 sysadm 1.35 var f = document.getElementById("move_article");
324     if (f)
325     {
326     f.addEventListener("submit", (e) => {
327     e.preventDefault();
328     if (f.sid.value > 0)
329     {
330     move_article(f.sid.value);
331     }
332     });
333     }
334     });
335 sysadm 1.27
336 sysadm 1.35 $(document).ready(function() {
337 sysadm 1.33 $("img[class=auto_adjust]").on("load", function() {
338     if ($(this).width() > {$BBS_img_max_width})
339     {
340     $(this).width({$BBS_img_max_width});
341     }
342     $(this).show();
343     })
344     .on("mousewheel", function(e) {
345     var zoom = parseFloat($(this).css("zoom"));
346     zoom *= (1 + e.originalEvent.wheelDelta / 1000);
347     if (zoom > 0)
348     {
349     $(this).css("zoom", zoom);
350     }
351     });
352     });
353 sysadm 1.27 </script>
354     </head>
355     <body>
356 sysadm 1.1 <a name="top"></a>
357     <center>
358     <span id="err_msg_prompt" name="err_msg" style="color: red;"></span>
359 sysadm 1.7 <table cols="2" border="0" cellpadding="0" cellspacing="0" width="1050">
360 sysadm 1.1 <tr>
361     <td width="50%">
362 sysadm 1.27 {$navigator_bar}
363 sysadm 1.1 </td>
364     <td width="50%" align="right">
365 sysadm 1.27 {$ex_dir_selector}
366 sysadm 1.1 </td>
367     </tr>
368 sysadm 1.7 <tr bgcolor="#d0d3F0" height="25">
369 sysadm 1.1 <td colspan="2" align="center" class="title">
370 sysadm 1.27 [{$result_set["data"]["id"]}]&nbsp;主题:&nbsp;{$title}
371 sysadm 1.1 </td>
372     </tr>
373     </table>
374 sysadm 1.27 HTML;
375    
376 sysadm 1.1 foreach ($result_set["data"]["articles"] as $article)
377     {
378     $color_index = ($color_index + 1) % count($color);
379    
380 sysadm 1.27 $user_viewable = (isset($result_set["data"]["author_list"][$article["uid"]]) ? "true" : "false");
381 sysadm 1.8
382 sysadm 1.1 if ($article["tid"] != 0)
383     {
384 sysadm 1.27 echo <<<HTML
385     <a name="{$article['aid']}"></a>
386     <table border="0" cellpadding="0" cellspacing="0" width="1050">
387     <tr height="1" bgcolor="#202020">
388     <td>
389     </td>
390     </tr>
391     </table>
392     HTML;
393 sysadm 1.1 }
394 sysadm 1.27
395     $article_ctrl_bar = "";
396 sysadm 1.1 if ($_SESSION["BBS_priv"]->checkpriv(0, S_MSG) && $_SESSION["BBS_uid"] != $article["uid"])
397     {
398 sysadm 1.27 $article_ctrl_bar .= <<<HTML
399     <img src="images/mail.gif" width="16" height="16"><a class="s4" href="msg_read.php?sent=1&uid={$article['uid']}" target="_blank" title="给作者发消息">消息</a>
400     HTML;
401 sysadm 1.1 }
402     if ($article["visible"])
403     {
404     if ($_SESSION["BBS_priv"]->checkpriv($result_set["data"]["sid"], S_POST) && $_SESSION["BBS_uid"] == $article["uid"] && (!$article["excerption"]))
405     {
406 sysadm 1.27 $article_ctrl_bar .= <<<HTML
407     <a class="s4" href="article_post.php?id={$article['aid']}" title="修改该文章">修改</a>
408     HTML;
409 sysadm 1.1 }
410     if ($_SESSION["BBS_priv"]->checkpriv($result_set["data"]["sid"], S_POST) &&
411     ($_SESSION["BBS_priv"]->checkpriv($result_set["data"]["sid"], S_MAN_S) || $_SESSION["BBS_uid"] == $article["uid"]) && (!$article["excerption"]))
412     {
413 sysadm 1.27 $article_ctrl_bar .= <<<HTML
414     <span id="set_delete_{$article['aid']}"><img src="images/del.gif" width="16" height="16"><a class="s4" href="" onclick="return article_op('delete', {$article['aid']}, 1, true);" title="删除该文章">删除</a></span>
415     HTML;
416 sysadm 1.1 }
417     if ($_SESSION["BBS_priv"]->checkpriv($result_set["data"]["sid"], S_POST))
418     {
419 sysadm 1.27 $article_ctrl_bar .= <<<HTML
420     <img src="images/edit.gif" width="16" height="16"><a class="s4" href="article_post.php?reply_id={$article['aid']}" title="引用回复该文章">回复</a>
421     HTML;
422 sysadm 1.1 }
423     if ($_SESSION["BBS_priv"]->checkpriv($result_set["data"]["sid"], S_POST | S_MAN_S))
424     {
425 sysadm 1.27 $set_ex_display = ($article["excerption"] ? "none" : "inline");
426     $unset_ex_display = ($article["excerption"] ? "inline" : "none");
427    
428     $article_ctrl_bar .= <<<HTML
429     <a class="s4" id="set_excerption_{$article['aid']}" style="display: {$set_ex_display}" href="" onclick="return article_op('excerption', {$article['aid']}, 1)" title="加入文摘区">收录</a>
430     <a class="s4" id="unset_excerption_{$article['aid']}" style="display: {$unset_ex_display}" href="" onclick="return article_op('excerption', {$article['aid']}, 0, true)" title="移出文摘区">移出</a>
431     HTML;
432 sysadm 1.1 }
433     if ($article["tid"] == 0 && $_SESSION["BBS_priv"]->checkpriv($result_set["data"]["sid"], S_POST | S_MAN_S))
434     {
435 sysadm 1.27 $set_ontop_display = ($article["ontop"] ? "none" : "inline");
436     $unset_ontop_display = ($article["ontop"] ? "inline" : "none");
437    
438     $article_ctrl_bar .= <<<HTML
439     <a class="s4" id="set_ontop_{$article['aid']}" style="display: {$set_ontop_display}" href="" onclick="return article_op('ontop', {$article['aid']}, 1, true)" title="置顶">置顶</a>
440     <a class="s4" id="unset_ontop_{$article['aid']}" style="display: {$unset_ontop_display}" href="" onclick="return article_op('ontop', {$article['aid']}, 0)" title="取消置顶">取消置顶</a>
441     HTML;
442 sysadm 1.1 }
443 sysadm 1.29 if ($article["tid"] == 0 && $_SESSION["BBS_priv"]->checkpriv($result_set["data"]["sid"], S_POST) &&
444 sysadm 1.1 ($_SESSION["BBS_priv"]->checkpriv($result_set["data"]["sid"], S_MAN_S) || $_SESSION["BBS_uid"] == $article["uid"]))
445     {
446 sysadm 1.27 $set_lock_display = ($article["lock"] ? "none" : "inline");
447     $unset_lock_display = ($article["lock"] ? "inline" : "none");
448    
449     $article_ctrl_bar .= <<<HTML
450     <a class="s4" id="set_lock_{$article['aid']}" style="display: {$set_lock_display}" href="" onclick="return article_op('lock', {$article['aid']}, 1);" title="禁止回复">静默</a>
451     <a class="s4" id="unset_lock_{$article['aid']}" style="display: {$unset_lock_display}" href="" onclick="return article_op('lock', {$article['aid']}, 0);" title="取消禁止回复">取消静默</a>
452     HTML;
453 sysadm 1.1 }
454     if ($article["tid"] == 0 && $_SESSION["BBS_priv"]->checkpriv($result_set["data"]["sid"], S_POST | S_MAN_S) && (!$article["transship"]) && (!$article["excerption"]))
455     {
456 sysadm 1.27 $set_transship_display = ($article["transship"] ? "none" : "inline");
457    
458     $article_ctrl_bar .= <<<HTML
459     <a class="s4" id="set_transship_{$article['aid']}" style="display: {$set_transship_display}" href="" onclick="return article_op('transship', {$article['aid']}, 1, true);" title="设为转载">设为转载</a>
460     <a class="s4" id="unset_transship_{$article['aid']}" style="display: none" href=""></a>
461     HTML;
462 sysadm 1.1 }
463     }
464     else
465     {
466     if ($_SESSION["BBS_priv"]->checkpriv($result_set["data"]["sid"], S_POST | S_MAN_S) && $article["m_del"])
467     {
468 sysadm 1.27 $article_ctrl_bar .= <<<HTML
469     <a class="s4" id="set_restore_{$article['aid']}" href="" onclick="return article_op('restore', {$article['aid']}, 1, true);" title="恢复删除">恢复</a>
470     HTML;
471     }
472     }
473    
474     $username = htmlspecialchars($article["username"], ENT_HTML401, 'UTF-8');
475     $nickname = htmlspecialchars($article["nickname"], ENT_HTML401, 'UTF-8');
476     $title_f = split_line(htmlspecialchars($article["title"], ENT_HTML401, 'UTF-8'), "", 65, 2, "<br />");
477     $title_class = ($article["visible"] ? "title_normal" : "title_deleted");
478 sysadm 1.29 $content_f = LML(htmlspecialchars($article["content"], ENT_HTML401, 'UTF-8'), true, true, 80);
479 sysadm 1.27 $content_class = ($article["visible"] ? "content_normal" : "content_deleted");
480    
481     $transship_info = "";
482     if ($article["transship"])
483     {
484     $transship_info = <<<HTML
485     <font color="red">[转载]</font>
486     HTML;
487     }
488    
489     $level = user_level($article["exp"]);
490    
491     $atta_list = "";
492     foreach ($article["attachments"] as $attachment)
493     {
494     $filename = $attachment["filename"];
495    
496     $atta_list .= <<<HTML
497     <span id="attachment_{$attachment['aid']}"><img src="images/closed.gif"><a class="s2" href="dl_file.php?aid={$attachment['aid']}" target="_target">{$filename}</a> ({$attachment["size"]}字节)
498     HTML;
499    
500     if (!$attachment["check"])
501     {
502     $atta_list .= <<<HTML
503     <font color="red">未审核</font>
504     HTML;
505     }
506    
507     if ($_SESSION["BBS_priv"]->checkpriv($result_set["data"]["sid"], S_POST) &&
508     ($_SESSION["BBS_priv"]->checkpriv($result_set["data"]["sid"], S_MAN_S) || $_SESSION["BBS_uid"] == $article["uid"]) && (!$article["excerption"]))
509     {
510     $atta_list .= <<<HTML
511     <a class="s2" href="#" onclick="return upload_del({$attachment['aid']});">删除</a>
512     <span id="err_msg_attachment_{$attachment['aid']}" name="err_msg" style="color: red;"></span>
513     HTML;
514     }
515    
516     if ($attachment["check"])
517     {
518 sysadm 1.28 $ext = strtolower(pathinfo($filename, PATHINFO_EXTENSION));
519 sysadm 1.27 switch ($ext)
520     {
521     case "bmp":
522     case "gif":
523     case "jpg":
524     case "jpeg":
525     case "png":
526     case "tif":
527     case "tiff":
528     $atta_list .= <<<HTML
529     <br />
530 sysadm 1.33 <img class="auto_adjust" src="dl_file.php?aid={$attachment['aid']}">
531 sysadm 1.27 HTML;
532     break;
533     }
534 sysadm 1.1 }
535 sysadm 1.27
536     $atta_list .= <<<HTML
537     </span><br />
538     HTML;
539 sysadm 1.1 }
540 sysadm 1.27
541     echo <<<HTML
542     <table bgcolor="{$color[$color_index]}" border="0" cellpadding="0" cellspacing="10" width="1050">
543     <tr>
544     <td width="20%">
545     </td>
546     <td width="75%">
547     {$article_ctrl_bar}
548     <span id="err_msg_ctrl_{$article['aid']}" name="err_msg" style="color: red;"></span>
549 sysadm 1.1 </td>
550     <td width="5%">
551     </td>
552     </tr>
553     <tr>
554     <td width="20%" align="center">
555 sysadm 1.27 作者:&nbsp;<a class="s2" href="view_user.php?uid={$article['uid']}" onclick='return {$user_viewable}' target=_blank title="查看用户资料">{$username}</a>
556 sysadm 1.1 </td>
557     <td width="75%" class="body">
558 sysadm 1.29 <span style="color: #606060">标题:</span>
559 sysadm 1.27 <img src="images/expression/{$article['icon']}.gif">
560     <span id="title_{$article['aid']}" class="{$title_class}">
561     {$title_f}
562 sysadm 1.1 </span>
563 sysadm 1.27 {$transship_info}
564 sysadm 1.1 </td>
565     <td width="5%">
566     </td>
567     </tr>
568     <tr>
569     <td align="center">
570 sysadm 1.29 昵称:&nbsp;<span style="color: #909090">{$nickname}</span>
571 sysadm 1.1 </td>
572     <td class="body">
573 sysadm 1.29 <span style="color: #606060">来自:</span>&nbsp;<span style="color: #909090">{$article["sub_ip"]}</span>
574 sysadm 1.1 </td>
575     <td>
576     </td>
577     </tr>
578     <tr>
579     <td align="center">
580 sysadm 1.27 经验值:&nbsp;<span style="color:red;">{$article["exp"]}</span>
581 sysadm 1.1 </td>
582     <td class="body">
583 sysadm 1.29 <span style="color: #606060">发贴时间:</span>&nbsp;<span style="color: #909090">{$article["sub_dt"]->format("Y年m月d日 H:i:s (\U\T\C P)")}</span>
584 sysadm 1.1 </td>
585     <td>
586     </td>
587     </tr>
588     <tr>
589     <td align="center">
590 sysadm 1.29 等级:&nbsp;<span style="color: #909090">{$level}</span>
591 sysadm 1.1 </td>
592     <td class="body">
593 sysadm 1.29 <span style="color: #606060">长度:</span>&nbsp;<span style="color: #909090">{$article["length"]}字</span>
594 sysadm 1.1 </td>
595     <td>
596     </td>
597     </tr>
598     <tr height="2">
599     <td>
600     </td>
601 sysadm 1.29 <td style="background-color: #909090">
602 sysadm 1.1 </td>
603     <td>
604     </td>
605     </tr>
606     <tr>
607     <td align="center" valign="top">
608 sysadm 1.27 <img src="{$article['photo_path']}" border="0">
609 sysadm 1.1 </td>
610 sysadm 1.27 <td id="content_{$article['aid']}" class="{$content_class}">
611     <pre>{$content_f}</pre>
612 sysadm 1.1 </td>
613     <td>
614     </td>
615     </tr>
616     <tr>
617     <td>
618     </td>
619 sysadm 1.29 <td style="color: #000000">
620 sysadm 1.1 ========== * * * * * ==========
621     <br />
622 sysadm 1.27 {$atta_list}
623 sysadm 1.1 </td>
624     <td>
625     </td>
626     </tr>
627     </table>
628 sysadm 1.27
629     HTML;
630     }
631    
632     $rpp_options = "";
633     foreach ($BBS_view_rpp_options as $v)
634     {
635     $selected = ($v == $result_set["data"]["rpp"] ? "selected" : "");
636    
637     $rpp_options .= <<<HTML
638     <option value="{$v}" {$selected}>{$v}</option>
639     HTML;
640 sysadm 1.1 }
641 sysadm 1.27
642     echo <<<HTML
643 sysadm 1.7 <table cols="3" border="0" cellpadding="5" cellspacing="0" width="1050">
644 sysadm 1.1 <tr bgcolor="#d0d3F0" height="10">
645     <td colspan="3">
646     </td>
647     </tr>
648     <tr>
649 sysadm 1.10 <td width="40%" style="color: #909090">
650 sysadm 1.1 <form action="view_article.php" method="get" id="change_page" name="change_page">
651 sysadm 1.27 <input type="hidden" id="id" name="id" value="{$result_set['data']['id']}">
652     <input type="hidden" id="ex" name="ex" value="{$result_set['data']['ex']}">
653     <input type="hidden" id="trash" name="trash" value="{$result_set['data']['trash']}">
654     每页<select size="1" id="rpp" name="rpp" onchange="ch_rpp()">
655     {$rpp_options}
656 sysadm 1.1 </select>条
657 sysadm 1.27 HTML;
658    
659 sysadm 1.1 if ($result_set["data"]["page"] > 1)
660     {
661 sysadm 1.27 echo <<<HTML
662     <a class="s8" title="首页" href="" onclick="return ch_page(1)">|◀</a>
663     <a class="s8" title="上一页" href="" onclick="return ch_page({$result_set['data']['page']} - 1)">◀</a>
664     HTML;
665 sysadm 1.1 }
666     else
667     {
668 sysadm 1.27 echo <<<HTML
669     |◀ ◀
670     HTML;
671 sysadm 1.1 }
672 sysadm 1.27
673     echo <<<HTML
674     第<input id="page" name="page" value="{$result_set['data']['page']}" style="width: 30px;">/{$result_set['data']['page_total']}页
675     HTML;
676    
677 sysadm 1.1 if ($result_set["data"]["page"] < $result_set["data"]["page_total"])
678     {
679 sysadm 1.27 echo <<<HTML
680     <a class="s8" title="下一页" href="" onclick="return ch_page({$result_set['data']['page']} + 1)">▶</a>
681     <a class="s8" title="尾页" href="" onclick="return ch_page({$result_set['data']['page_total']})">▶|</a>
682     HTML;
683 sysadm 1.1 }
684     else
685     {
686 sysadm 1.27 echo <<<HTML
687     ▶ ▶|
688     HTML;
689 sysadm 1.1 }
690 sysadm 1.27
691     echo <<<HTML
692 sysadm 1.1 </form>
693     </td>
694     <td width="35%" align="center">
695 sysadm 1.27 HTML;
696    
697 sysadm 1.1 if ($_SESSION["BBS_priv"]->checkpriv($result_set["data"]["sid"], S_POST | S_MAN_S) && (!$result_set["data"]["excerption"]))
698     {
699 sysadm 1.27 echo <<<HTML
700 sysadm 1.1 <form method="post" id="move_article" name="move_article" action="#">
701     <select id="sid" name="sid" size="1">
702 sysadm 1.27 {$result_set["data"]["section_list_options"]}
703 sysadm 1.1 </select>
704     <input type="submit" value="移动">
705     <span id="err_msg_move" name="err_msg" style="color: red;"></span>
706     </form>
707 sysadm 1.27 HTML;
708 sysadm 1.1 }
709 sysadm 1.27
710     echo <<<HTML
711     </td>
712 sysadm 1.1 <td width="25%" align="right">
713     <a class="s2" href="#top" title="返回页首"><img src="images/gotop.gif" border="0">Top<img src="images/gotop.gif" border="0"></a>
714     </td>
715     </tr>
716     </table>
717     </center>
718 sysadm 1.27 HTML;
719    
720 sysadm 1.1 include "./foot.inc.php";
721 sysadm 1.27
722     echo <<<HTML
723     </body>
724     </html>
725     HTML;

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