/[LeafOK_CVS]/fenglin/bbs/section_setting.php
ViewVC logotype

Contents of /fenglin/bbs/section_setting.php

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1.11 - (show annotations)
Tue Apr 29 11:55:32 2025 UTC (10 months, 2 weeks ago) by sysadm
Branch: MAIN
CVS Tags: HEAD
Changes since 1.10: +0 -1 lines
Remove redundant PHP closing tag

1 <?php
2 require_once "../lib/db_open.inc.php";
3 require_once "./section_list.inc.php";
4 require_once "./session_init.inc.php";
5 require_once "./theme.inc.php";
6
7 force_login();
8
9 $result_set = array(
10 "return" => array(
11 "code" => 0,
12 "message" => "",
13 "errorFields" => array(),
14 )
15 );
16
17 $sid = (isset($_GET["sid"]) ? intval($_GET["sid"]) : $BBS_default_sid);
18
19 if (!$_SESSION["BBS_priv"]->checkpriv($sid, S_POST | S_MAN_S))
20 {
21 $result_set["return"]["code"] = -1;
22 $result_set["return"]["message"] = "没有权限";
23
24 mysqli_close($db_conn);
25 exit(json_encode($result_set));
26 }
27
28 // Load section setting
29 $sql = "SELECT * FROM section_config WHERE SID = $sid AND enable";
30
31 $rs = mysqli_query($db_conn, $sql);
32 if ($rs == false)
33 {
34 $result_set["return"]["code"] = -2;
35 $result_set["return"]["message"] = "Query section data error: " . mysqli_error($db_conn);
36
37 mysqli_close($db_conn);
38 exit(json_encode($result_set));
39 }
40
41 if ($row = mysqli_fetch_array($rs))
42 {
43 $result_set["data"] = array(
44 "sid" => $sid,
45 "cid" => $row["CID"],
46 "sname" => $row["sname"],
47 "title" => $row["title"],
48 "exp_get" => $row["exp_get"],
49 "recommend" => $row["recommend"],
50 "read_user_level" => $row["read_user_level"],
51 "write_user_level" => $row["write_user_level"],
52 "announcement" => $row["announcement"],
53 "comment" => $row["comment"],
54 "ex_update" => $row["ex_update"],
55 "sort_order" => $row["sort_order"],
56 "class_sections" => array(),
57 "section_hierachy" => array(),
58 "masters" => array(),
59 );
60 }
61 else
62 {
63 $result_set["return"]["code"] = -1;
64 $result_set["return"]["message"] = "Section data not exist";
65
66 mysqli_close($db_conn);
67 exit(json_encode($result_set));
68 }
69
70 mysqli_free_result($rs);
71
72 // Load section master
73 $sql = "SELECT section_master.UID, username, major, begin_dt, end_dt FROM section_master
74 INNER JOIN user_list ON section_master.UID = user_list.UID
75 WHERE SID = $sid AND section_master.enable AND (NOW() BETWEEN begin_dt AND end_dt)
76 ORDER BY major DESC, begin_dt ASC, end_dt ASC";
77
78 $rs = mysqli_query($db_conn, $sql);
79 if ($rs == false)
80 {
81 $result_set["return"]["code"] = -2;
82 $result_set["return"]["message"] = "Query section master error: " . mysqli_error($db_conn);
83
84 mysqli_close($db_conn);
85 exit(json_encode($result_set));
86 }
87
88 while ($row = mysqli_fetch_array($rs))
89 {
90 array_push($result_set["data"]["masters"], array(
91 "uid" => $row["UID"],
92 "username" => $row["username"],
93 "major" => $row["major"],
94 "begin_dt" => $row["begin_dt"],
95 "end_dt" => $row["end_dt"],
96 ));
97 }
98 mysqli_free_result($rs);
99
100 // Load sections in current class
101 $sql = "SELECT SID, title, sort_order FROM section_config WHERE CID = " .
102 $result_set["data"]["cid"] . " AND enable ORDER BY sort_order";
103
104 $rs = mysqli_query($db_conn, $sql);
105 if ($rs == false)
106 {
107 $result_set["return"]["code"] = -2;
108 $result_set["return"]["message"] = "Query section list error: " . mysqli_error($db_conn);
109
110 mysqli_close($db_conn);
111 exit(json_encode($result_set));
112 }
113
114 while ($row = mysqli_fetch_array($rs))
115 {
116 array_push($result_set["data"]["class_sections"], array(
117 "sid" => $row["SID"],
118 "title" => $row["title"],
119 "sort_order" => $row["sort_order"],
120 ));
121 }
122 mysqli_free_result($rs);
123
124 // Load section list
125 $ret = load_section_list($result_set["data"]["section_hierachy"],
126 function (array $section, array $filter_param) : bool
127 {
128 return $_SESSION["BBS_priv"]->checkpriv($section["SID"], S_POST | S_MAN_S);
129 },
130 function (array $section, array $filter_param) : mixed
131 {
132 return null;
133 },
134 $db_conn);
135
136 if ($ret == false)
137 {
138 $result_set["return"]["code"] = -2;
139 $result_set["return"]["message"] = "Query section error: " . mysqli_error($db_conn);
140
141 mysqli_close($db_conn);
142 exit(json_encode($result_set));
143 }
144
145 mysqli_close($db_conn);
146
147 // Output with theme view
148 $theme_view_file = get_theme_file("view/section_setting", $_SESSION["BBS_theme_name"]);
149 if ($theme_view_file == null)
150 {
151 exit(json_encode($result_set)); // Output data in Json
152 }
153 include $theme_view_file;

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