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

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

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1.15 - (hide annotations)
Wed Apr 23 06:31:34 2025 UTC (10 months, 3 weeks ago) by sysadm
Branch: MAIN
Changes since 1.14: +1 -1 lines
Rename read_msg to msg_read

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/astro.inc.php";
9     ?>
10     <html>
11     <head>
12     <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
13     <title>查看用户资料</title>
14 sysadm 1.13 <link rel="stylesheet" href="<?= get_theme_file('css/default'); ?>" type="text/css">
15 sysadm 1.1 <script type="text/javascript" src="../js/img_adjust.js"></script>
16     <script src="../js/polyfill.min.js"></script>
17     <script src="../js/axios.min.js"></script>
18     <script type="text/javascript">
19 sysadm 1.2 function refresh_err_msg(errorFieldMap)
20     {
21     document.getElementsByName("err_msg").forEach(element => {
22     element.innerHTML = (errorFieldMap.has(element.id) ? errorFieldMap.get(element.id) : "");
23     });
24     }
25    
26 sysadm 1.5 function transfer_score(f)
27 sysadm 1.2 {
28     if (window.confirm('真的要转让吗?') == false)
29     {
30     return false;
31     }
32    
33     instance.post('transfer_score_sub.php', {
34 sysadm 1.13 uid: <?= $result_set["data"]["uid"]; ?>,
35 sysadm 1.2 amount: f.amount.value,
36     })
37     .then(function (response) {
38     var ret = response.data;
39     var errorFieldMap = new Map();
40     switch (ret.return.code)
41     {
42     case 0: // OK
43     errorFieldMap.set("err_msg_transfer", "积分转让成功<br />");
44     refresh_err_msg(errorFieldMap);
45     break;
46     case -1: // Input validation failed
47     ret.return.errorFields.forEach(field => {
48     errorFieldMap.set("err_msg_" + field.id, field.errMsg + "<br />");
49     });
50     refresh_err_msg(errorFieldMap);
51     break;
52     case -2: // Internal error
53     console.log(ret.return.message);
54     errorFieldMap.set("err_msg_transfer", "内部错误<br />");
55     refresh_err_msg(errorFieldMap);
56     break;
57     default:
58     console.log(ret.return.code);
59     break;
60     }
61     })
62     .catch(function (error) {
63     console.log(error);
64     });
65    
66     return false;
67     }
68    
69 sysadm 1.5 function set_life(f)
70     {
71     instance.post('set_life.php', {
72 sysadm 1.13 uid: <?= $result_set["data"]["uid"]; ?>,
73 sysadm 1.5 life: f.life.value,
74     })
75     .then(function (response) {
76     var ret = response.data;
77     var errorFieldMap = new Map();
78     switch (ret.return.code)
79     {
80     case 0: // OK
81     refresh_err_msg(errorFieldMap);
82 sysadm 1.13 document.location = "show_profile.php?uid=<?= $result_set["data"]["uid"]; ?>&ts=" + Date.now();
83 sysadm 1.5 break;
84     case -1: // Input validation failed
85     errorFieldMap.set("err_msg_life", ret.return.message + "<br />");
86     refresh_err_msg(errorFieldMap);
87     break;
88     case -2: // Internal error
89     console.log(ret.return.message);
90     errorFieldMap.set("err_msg_life", "内部错误<br />");
91     refresh_err_msg(errorFieldMap);
92     break;
93     default:
94     console.log(ret.return.code);
95     break;
96     }
97     })
98     .catch(function (error) {
99     console.log(error);
100     });
101    
102     return false;
103     }
104    
105 sysadm 1.6 function ban_user(f)
106     {
107 sysadm 1.12 instance.post('user_service_ban.php', {
108 sysadm 1.13 uid: <?= $result_set["data"]["uid"]; ?>,
109 sysadm 1.6 ban: f.ban.value,
110     sid: f.sid.value,
111     day: f.day.value,
112     reason: f.reason.value,
113     })
114     .then(function (response) {
115     var ret = response.data;
116     var errorFieldMap = new Map();
117     switch (ret.return.code)
118     {
119     case 0: // OK
120     errorFieldMap.set("err_msg_ban", "操作成功<br />");
121     refresh_err_msg(errorFieldMap);
122     break;
123     case -1: // Input validation failed
124     errorFieldMap.set("err_msg_ban", ret.return.message + "<br />");
125     refresh_err_msg(errorFieldMap);
126     break;
127     case -2: // Internal error
128     console.log(ret.return.message);
129     errorFieldMap.set("err_msg_ban", "内部错误<br />");
130     refresh_err_msg(errorFieldMap);
131     break;
132     default:
133     console.log(ret.return.code);
134     break;
135     }
136     })
137     .catch(function (error) {
138     console.log(error);
139     });
140    
141     return false;
142     }
143    
144 sysadm 1.3 function set_friend(set)
145     {
146     instance.post('set_friend.php', {
147 sysadm 1.13 uid: <?= $result_set["data"]["uid"]; ?>,
148 sysadm 1.3 set: set,
149     })
150     .then(function (response) {
151     var ret = response.data;
152     var errorFieldMap = new Map();
153     switch (ret.return.code)
154     {
155     case 0: // OK
156     case 1: // Already set
157     refresh_err_msg(errorFieldMap);
158 sysadm 1.13 document.location = "show_profile.php?uid=<?= $result_set["data"]["uid"]; ?>&ts=" + Date.now();
159 sysadm 1.3 break;
160     case -1: // Input validation failed
161     errorFieldMap.set("err_msg_friend", ret.return.message);
162     refresh_err_msg(errorFieldMap);
163     break;
164     case -2: // Internal error
165     console.log(ret.return.message);
166     errorFieldMap.set("err_msg_friend", "内部错误");
167     refresh_err_msg(errorFieldMap);
168     break;
169     default:
170     console.log(ret.return.code);
171     break;
172     }
173     })
174     .catch(function (error) {
175     console.log(error);
176     });
177    
178     return false;
179     }
180    
181 sysadm 1.2 const instance = axios.create({
182     withCredentials: true,
183     timeout: 3000,
184     baseURL: document.location.protocol + '//' + document.location.hostname + (document.location.port=='' ? '' : (':' + document.location.port)) + '/bbs/',
185     });
186    
187     window.addEventListener("load", () => {
188 sysadm 1.5 var f1 = document.getElementById("transfer_score");
189     if (f1)
190     {
191     f1.addEventListener("submit", (e) => {
192     e.preventDefault();
193     transfer_score(f1);
194     });
195     }
196    
197     var f2 = document.getElementById("set_life");
198     if (f2)
199     {
200     f2.addEventListener("submit", (e) => {
201     e.preventDefault();
202     set_life(f2);
203     });
204     }
205 sysadm 1.6
206     var f3 = document.getElementById("ban_user");
207     if (f3)
208     {
209     f3.addEventListener("submit", (e) => {
210     e.preventDefault();
211     ban_user(f3);
212     });
213     }
214    
215 sysadm 1.2 });
216    
217 sysadm 1.1 </script>
218     </head>
219     <body>
220     <center>
221 sysadm 1.9 <table border="0" cellpadding="0" cellspacing="10" width="1050">
222 sysadm 1.1 <tr>
223     <td colspan="2" align="center" style="font-size: 16px; font-family: 楷体; font-weight: bold; color: red">
224 sysadm 1.13 <?= $result_set["data"]["username"]; ?>的个人资料
225 sysadm 1.1 </td>
226     </tr>
227     <tr height="1" bgcolor="gray">
228     <td colspan="2">
229     </td>
230     </tr>
231     <tr>
232     <td width="35%" align="right">
233     头像:
234     </td>
235     <td width="65%">
236 sysadm 1.13 <img src="<?= $result_set["data"]["photo"]; ?>" border="0">
237 sysadm 1.1 </td>
238     </tr>
239     <tr height="1" bgcolor="gray">
240     <td colspan="2">
241     </td>
242     </tr>
243     <tr>
244     <td align="right">
245     昵称:
246     </td>
247     <td>
248 sysadm 1.10 <span style="color: #909090; ">
249 sysadm 1.13 <?= $result_set["data"]["nickname"]; ?>
250 sysadm 1.1 </span>
251     </td>
252     </tr>
253     <tr>
254     <td align="right">
255     星座:
256     </td>
257     <td>
258 sysadm 1.13 <?php
259 sysadm 1.1 $astro = Date2Astro(intval($result_set["data"]["birthday"]->format("m")), intval($result_set["data"]["birthday"]->format("d"))) . "座";
260    
261     if ($result_set["data"]["gender_pub"])
262     {
263     if ($result_set["data"]["gender"] == "M")
264     {
265 sysadm 1.13 ?><span style="color:blue;"><?= $astro; ?></span><?php
266 sysadm 1.1 }
267     else if ($result_set["data"]["gender"] == "F")
268     {
269 sysadm 1.13 ?><span style="color:red;"><?= $astro; ?></span><?php
270 sysadm 1.1 }
271     }
272     else
273     {
274 sysadm 1.13 ?><span style="color:green;"><?= $astro; ?></span><?php
275 sysadm 1.1 }
276     ?>
277     </td>
278     </tr>
279     <tr>
280     <td align="right">
281     注册时间:
282     </td>
283     <td>
284 sysadm 1.13 <?= $result_set["data"]["signup_dt"]->format("Y年m月d日 H:i:s"); ?>
285 sysadm 1.1 </td>
286     </tr>
287     <tr>
288     <td align="right">
289     最后活动:
290     </td>
291     <td>
292 sysadm 1.13 <?= $result_set["data"]["last_tm"]->format("Y年m月d日 H:i:s"); ?>
293 sysadm 1.1 </td>
294     </tr>
295     <tr>
296     <td align="right">
297     源IP地址:
298     </td>
299     <td>
300 sysadm 1.13 <?= $result_set["data"]["ip"]; ?>
301 sysadm 1.1 </td>
302     </tr>
303     <tr>
304     <td align="right">
305     经验值&nbsp;/&nbsp;生命值:
306     </td>
307     <td>
308 sysadm 1.13 <span style="color: blue"><?= $result_set["data"]["exp"] . "&nbsp;/&nbsp;" . $result_set["data"]["life"]; ?></span>
309 sysadm 1.5 </td>
310     </tr>
311 sysadm 1.13 <?php
312 sysadm 1.7 if ($_SESSION["BBS_priv"]->checklevel(P_ADMIN_M | P_ADMIN_S))
313 sysadm 1.5 {
314     ?>
315     <tr>
316     <td>
317     </td>
318     <td>
319     <form method="POST" action="#" id="set_life" name="set_life">
320     <span id="err_msg_life" name="err_msg" style="color: red;"></span>
321 sysadm 1.13 <input name="life" value="<?= $result_set["data"]["life"]; ?>" size="3">&nbsp;&nbsp;
322 sysadm 1.5 <input type="submit" value="授予">
323     </form>
324 sysadm 1.13 <?php
325 sysadm 1.5 }
326     ?>
327 sysadm 1.1 </td>
328     </tr>
329     <tr>
330     <td align="right">
331     等级:
332     </td>
333     <td>
334     <span style="color:orange; ">
335 sysadm 1.14 <?= user_level($result_set["data"]["exp"]); ?>
336 sysadm 1.1 </span>
337     </td>
338     </tr>
339     <tr>
340     <td align="right">
341     状态:
342     </td>
343     <td>
344 sysadm 1.13 <?php
345 sysadm 1.1 if (!$result_set["data"]["dead"] && $result_set["data"]["verified"])
346     {
347     if ($result_set["data"]["p_all"])
348     {
349 sysadm 1.13 ?><span style="color: green">正常</span><?php
350 sysadm 1.1 }
351     if (!$result_set["data"]["p_login"])
352     {
353 sysadm 1.13 ?><span style="color: red">限制登陆</span><?php
354 sysadm 1.1 }
355     if (!$result_set["data"]["p_post"])
356     {
357 sysadm 1.13 ?><span style="color: red">限制发帖</span><?php
358 sysadm 1.1 }
359     if (!$result_set["data"]["p_msg"])
360     {
361 sysadm 1.13 ?><span style="color: red">限制消息</span><?php
362 sysadm 1.1 }
363     }
364     else
365     {
366     if (!$result_set["data"]["verified"])
367     {
368 sysadm 1.13 ?><span style="color: red">尚未确认</span><?php
369 sysadm 1.1 }
370     if ($result_set["data"]["dead"])
371     {
372 sysadm 1.13 ?><span style="color: red">已升天</span><?php
373 sysadm 1.1 }
374     }
375    
376     if ($result_set["data"]["online"])
377     {
378 sysadm 1.13 ?>&nbsp;&nbsp;<span style="color: blue">在线</span><?php
379 sysadm 1.1 }
380     else
381     {
382 sysadm 1.13 ?>&nbsp;&nbsp;<span style="color: gray">离线</span><?php
383 sysadm 1.1 }
384     ?>
385     </td>
386     </tr>
387     <tr>
388     <td align="right">
389     最近发表的主题:
390     </td>
391     <td>
392 sysadm 1.13 <a class="s7" href="search_article.php?uid=<?= $result_set["data"]["uid"]; ?>" target=_blank>查看&gt;&gt;</a>
393 sysadm 1.1 </td>
394     </tr>
395     <tr height="1" bgcolor="gray">
396     <td colspan="2">
397     </td>
398     </tr>
399     <tr>
400     <td align="right">
401     个人介绍:
402     </td>
403     <td>
404     </td>
405     </tr>
406     <tr>
407     <td colspan="2" align="center">
408     <table border="0" cellspacing="0" cellpadding="0" width="80%">
409     <tr>
410     <td style="color:gray; font-size:14px;">
411 sysadm 1.13 <?= LML(htmlspecialchars($result_set["data"]["introduction"], ENT_HTML401, 'UTF-8'), true, true, 80); ?>
412 sysadm 1.1 </td>
413     </tr>
414     </table>
415     </td>
416     </tr>
417     <tr height="1" bgcolor="gray">
418     <td colspan="2">
419     </td>
420     </tr>
421     <tr>
422     <td align="right">
423     用户操作:
424     </td>
425 sysadm 1.2 <td>
426 sysadm 1.13 <?php
427 sysadm 1.10 if ($_SESSION["BBS_priv"]->checkpriv(0, S_MSG) && $result_set["data"]["uid"] != $BBS_sys_uid)
428 sysadm 1.1 {
429     ?>
430 sysadm 1.15 <a class="s2" href="msg_read.php?sent=1&uid=<?= $result_set["data"]["uid"]; ?>" target=_blank>发送消息</a>
431 sysadm 1.13 <?php
432 sysadm 1.1 }
433    
434 sysadm 1.4 if ($_SESSION["BBS_uid"] > 0 && $_SESSION["BBS_uid"] != $result_set["data"]["uid"])
435 sysadm 1.1 {
436     ?>
437 sysadm 1.13 <a class="s2" href="#" onclick="return set_friend(<?= ($result_set["data"]["is_friend"] ? 0 : 1); ?>);"><?= ($result_set["data"]["is_friend"]? "删除好友" : "加为好友"); ?></a>
438 sysadm 1.3 <span id="err_msg_friend" name="err_msg" style="color: red;"></span>
439 sysadm 1.13 <?php
440 sysadm 1.1 }
441     ?>
442     </td>
443     </tr>
444 sysadm 1.13 <?php
445 sysadm 1.2 if ($_SESSION["BBS_uid"] > 0 && $_SESSION["BBS_uid"] != $result_set["data"]["uid"])
446     {
447     ?>
448     <tr>
449     <td align="right">
450     积分转让:
451     </td>
452     <td>
453     <span id="err_msg_transfer" name="err_msg" style="color: red;"></span>
454     <form method="post" action="#" id="transfer_score" name="transfer_score">
455     <input id="amount" name="amount" value="0" size="3">&nbsp;&nbsp;
456 sysadm 1.6 <input type="submit" value="转让">
457 sysadm 1.2 </form>
458 sysadm 1.6 转让额必须是10的倍数,单次限额10000。<br />
459     <span style="color:red; ">服务费率为转让额的10%</span>
460 sysadm 1.2 </td>
461     </tr>
462 sysadm 1.13 <?php
463 sysadm 1.2 }
464    
465 sysadm 1.7 if ($_SESSION["BBS_priv"]->checklevel(P_ADMIN_M | P_ADMIN_S | P_MAN_M))
466 sysadm 1.1 {
467     ?>
468     <tr height="1" bgcolor="gray">
469     <td colspan="2">
470     </td>
471     </tr>
472     <tr>
473     <td align="right">
474     封禁权限:
475     </td>
476     <td>
477 sysadm 1.6 <form method="POST" action="#" id="ban_user" name="ban_user">
478     <p>
479     <span id="err_msg_ban" name="err_msg" style="color: red;"></span>
480     <input type="radio" name="ban" value="1" checked>封
481     <input type="radio" name="ban" value="0">解封
482     <select id="sid" name="sid" size="1">
483     <option value="0">全站发帖</option>
484     <option value="-1">用户登录</option>
485     <option value="-2">站内消息</option>
486 sysadm 1.13 <?php
487 sysadm 1.6 foreach ($result_set["data"]["section_hierachy"] as $c_index => $section_class)
488     {
489     ?>
490 sysadm 1.13 <option value="-100">==<?= $section_class["title"]; ?>==</option>
491     <?php
492 sysadm 1.6 foreach ($section_class["sections"] as $s_index => $section)
493     {
494     ?>
495 sysadm 1.13 <option value="<?= $section["sid"]; ?>">&nbsp;&nbsp;├<?= $section["title"]; ?></option>
496     <?php
497 sysadm 1.6 }
498     }
499     ?>
500     </select>
501     权限
502     <input name="day" size="3">天(最多365)<br />
503     理由:<br />
504     <textarea name="reason" cols="40" rows="5"></textarea>
505     </p>
506     <input type="submit" value="提交">
507 sysadm 1.1 </form>
508     </td>
509     </tr>
510 sysadm 1.13 <?php
511 sysadm 1.1 }
512     ?>
513     <tr height="1" bgcolor="gray">
514     <td colspan="2">
515     </td>
516     </tr>
517     </table>
518     </center>
519     </body>
520     </html>

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