@@ -13,8 +13,9 @@ discard block |
||
13 | 13 | * @version 2.1 Beta 4 |
14 | 14 | */ |
15 | 15 | |
16 | -if (!defined('SMF')) |
|
16 | +if (!defined('SMF')) { |
|
17 | 17 | die('No direct access...'); |
18 | +} |
|
18 | 19 | |
19 | 20 | /** |
20 | 21 | * Show the database queries for debugging |
@@ -30,8 +31,9 @@ discard block |
||
30 | 31 | global $scripturl, $settings, $context, $db_connection, $boarddir, $smcFunc, $txt, $db_show_debug; |
31 | 32 | |
32 | 33 | // We should have debug mode enabled, as well as something to display! |
33 | - if (!isset($db_show_debug) || $db_show_debug !== true || !isset($_SESSION['debug'])) |
|
34 | - fatal_lang_error('no_access', false); |
|
34 | + if (!isset($db_show_debug) || $db_show_debug !== true || !isset($_SESSION['debug'])) { |
|
35 | + fatal_lang_error('no_access', false); |
|
36 | + } |
|
35 | 37 | |
36 | 38 | // Don't allow except for administrators. |
37 | 39 | isAllowedTo('admin_forum'); |
@@ -41,10 +43,11 @@ discard block |
||
41 | 43 | { |
42 | 44 | $_SESSION['view_queries'] = $_SESSION['view_queries'] == 1 ? 0 : 1; |
43 | 45 | |
44 | - if (strpos($_SESSION['old_url'], 'action=viewquery') !== false) |
|
45 | - redirectexit(); |
|
46 | - else |
|
47 | - redirectexit($_SESSION['old_url']); |
|
46 | + if (strpos($_SESSION['old_url'], 'action=viewquery') !== false) { |
|
47 | + redirectexit(); |
|
48 | + } else { |
|
49 | + redirectexit($_SESSION['old_url']); |
|
50 | + } |
|
48 | 51 | } |
49 | 52 | |
50 | 53 | call_integration_hook('integrate_egg_nog'); |
@@ -83,26 +86,28 @@ discard block |
||
83 | 86 | foreach ($query as $line) |
84 | 87 | { |
85 | 88 | preg_match('/^(\t*)/', $line, $temp); |
86 | - if (strlen($temp[0]) < $min_indent || $min_indent == 0) |
|
87 | - $min_indent = strlen($temp[0]); |
|
89 | + if (strlen($temp[0]) < $min_indent || $min_indent == 0) { |
|
90 | + $min_indent = strlen($temp[0]); |
|
91 | + } |
|
92 | + } |
|
93 | + foreach ($query as $l => $dummy) { |
|
94 | + $query[$l] = substr($dummy, $min_indent); |
|
88 | 95 | } |
89 | - foreach ($query as $l => $dummy) |
|
90 | - $query[$l] = substr($dummy, $min_indent); |
|
91 | 96 | $query_data['q'] = implode("\n", $query); |
92 | 97 | |
93 | 98 | // Make the filenames look a bit better. |
94 | - if (isset($query_data['f'])) |
|
95 | - $query_data['f'] = preg_replace('~^' . preg_quote($boarddir, '~') . '~', '...', $query_data['f']); |
|
99 | + if (isset($query_data['f'])) { |
|
100 | + $query_data['f'] = preg_replace('~^' . preg_quote($boarddir, '~') . '~', '...', $query_data['f']); |
|
101 | + } |
|
96 | 102 | |
97 | 103 | $is_select_query = substr(trim($query_data['q']), 0, 6) == 'SELECT'; |
98 | - if ($is_select_query) |
|
99 | - $select = $query_data['q']; |
|
100 | - elseif (preg_match('~^INSERT(?: IGNORE)? INTO \w+(?:\s+\([^)]+\))?\s+(SELECT .+)$~s', trim($query_data['q']), $matches) != 0) |
|
104 | + if ($is_select_query) { |
|
105 | + $select = $query_data['q']; |
|
106 | + } elseif (preg_match('~^INSERT(?: IGNORE)? INTO \w+(?:\s+\([^)]+\))?\s+(SELECT .+)$~s', trim($query_data['q']), $matches) != 0) |
|
101 | 107 | { |
102 | 108 | $is_select_query = true; |
103 | 109 | $select = $matches[1]; |
104 | - } |
|
105 | - elseif (preg_match('~^CREATE TEMPORARY TABLE .+?(SELECT .+)$~s', trim($query_data['q']), $matches) != 0) |
|
110 | + } elseif (preg_match('~^CREATE TEMPORARY TABLE .+?(SELECT .+)$~s', trim($query_data['q']), $matches) != 0) |
|
106 | 111 | { |
107 | 112 | $is_select_query = true; |
108 | 113 | $select = $matches[1]; |
@@ -110,10 +115,11 @@ discard block |
||
110 | 115 | // Temporary tables created in earlier queries are not explainable. |
111 | 116 | if ($is_select_query) |
112 | 117 | { |
113 | - foreach (array('log_topics_unread', 'topics_posted_in', 'tmp_log_search_topics', 'tmp_log_search_messages') as $tmp) |
|
114 | - if (strpos($select, $tmp) !== false) |
|
118 | + foreach (array('log_topics_unread', 'topics_posted_in', 'tmp_log_search_topics', 'tmp_log_search_messages') as $tmp) { |
|
119 | + if (strpos($select, $tmp) !== false) |
|
115 | 120 | { |
116 | 121 | $is_select_query = false; |
122 | + } |
|
117 | 123 | break; |
118 | 124 | } |
119 | 125 | } |
@@ -124,13 +130,15 @@ discard block |
||
124 | 130 | ', nl2br(str_replace("\t", ' ', $smcFunc['htmlspecialchars']($query_data['q']))), ' |
125 | 131 | </a><br>'; |
126 | 132 | |
127 | - if (!empty($query_data['f']) && !empty($query_data['l'])) |
|
128 | - echo sprintf($txt['debug_query_in_line'], $query_data['f'], $query_data['l']); |
|
133 | + if (!empty($query_data['f']) && !empty($query_data['l'])) { |
|
134 | + echo sprintf($txt['debug_query_in_line'], $query_data['f'], $query_data['l']); |
|
135 | + } |
|
129 | 136 | |
130 | - if (isset($query_data['s'], $query_data['t']) && isset($txt['debug_query_which_took_at'])) |
|
131 | - echo sprintf($txt['debug_query_which_took_at'], round($query_data['t'], 8), round($query_data['s'], 8)); |
|
132 | - else |
|
133 | - echo sprintf($txt['debug_query_which_took'], round($query_data['t'], 8)); |
|
137 | + if (isset($query_data['s'], $query_data['t']) && isset($txt['debug_query_which_took_at'])) { |
|
138 | + echo sprintf($txt['debug_query_which_took_at'], round($query_data['t'], 8), round($query_data['s'], 8)); |
|
139 | + } else { |
|
140 | + echo sprintf($txt['debug_query_which_took'], round($query_data['t'], 8)); |
|
141 | + } |
|
134 | 142 | |
135 | 143 | echo ' |
136 | 144 | </div>'; |
@@ -11,8 +11,9 @@ discard block |
||
11 | 11 | * @version 2.1 Beta 4 |
12 | 12 | */ |
13 | 13 | |
14 | -if (!defined('SMF')) |
|
14 | +if (!defined('SMF')) { |
|
15 | 15 | die('No direct access...'); |
16 | +} |
|
16 | 17 | |
17 | 18 | /** |
18 | 19 | * Used for the "custom search index" option |
@@ -54,8 +55,9 @@ discard block |
||
54 | 55 | return; |
55 | 56 | } |
56 | 57 | |
57 | - if (empty($modSettings['search_custom_index_config'])) |
|
58 | - return; |
|
58 | + if (empty($modSettings['search_custom_index_config'])) { |
|
59 | + return; |
|
60 | + } |
|
59 | 61 | |
60 | 62 | $this->indexSettings = smf_json_decode($modSettings['search_custom_index_config'], true); |
61 | 63 | |
@@ -117,21 +119,23 @@ discard block |
||
117 | 119 | |
118 | 120 | $subwords = text2words($word, $this->min_word_length, true); |
119 | 121 | |
120 | - if (empty($modSettings['search_force_index'])) |
|
121 | - $wordsSearch['words'][] = $word; |
|
122 | + if (empty($modSettings['search_force_index'])) { |
|
123 | + $wordsSearch['words'][] = $word; |
|
124 | + } |
|
122 | 125 | |
123 | 126 | // Excluded phrases don't benefit from being split into subwords. |
124 | - if (count($subwords) > 1 && $isExcluded) |
|
125 | - return; |
|
126 | - else |
|
127 | + if (count($subwords) > 1 && $isExcluded) { |
|
128 | + return; |
|
129 | + } else |
|
127 | 130 | { |
128 | 131 | foreach ($subwords as $subword) |
129 | 132 | { |
130 | 133 | if ($smcFunc['strlen']($subword) >= $this->min_word_length && !in_array($subword, $this->bannedWords)) |
131 | 134 | { |
132 | 135 | $wordsSearch['indexed_words'][] = $subword; |
133 | - if ($isExcluded) |
|
134 | - $wordsExclude[] = $subword; |
|
136 | + if ($isExcluded) { |
|
137 | + $wordsExclude[] = $subword; |
|
138 | + } |
|
135 | 139 | } |
136 | 140 | } |
137 | 141 | } |
@@ -152,8 +156,9 @@ discard block |
||
152 | 156 | $query_where = array(); |
153 | 157 | $query_params = $search_data['params']; |
154 | 158 | |
155 | - if ($query_params['id_search']) |
|
156 | - $query_select['id_search'] = '{int:id_search}'; |
|
159 | + if ($query_params['id_search']) { |
|
160 | + $query_select['id_search'] = '{int:id_search}'; |
|
161 | + } |
|
157 | 162 | |
158 | 163 | $count = 0; |
159 | 164 | foreach ($words['words'] as $regularWord) |
@@ -162,30 +167,37 @@ discard block |
||
162 | 167 | $query_params['complex_body_' . $count++] = empty($modSettings['search_match_words']) || $search_data['no_regexp'] ? '%' . strtr($regularWord, array('_' => '\\_', '%' => '\\%')) . '%' : '[[:<:]]' . addcslashes(preg_replace(array('/([\[\]$.+*?|{}()])/'), array('[$1]'), $regularWord), '\\\'') . '[[:>:]]'; |
163 | 168 | } |
164 | 169 | |
165 | - if ($query_params['user_query']) |
|
166 | - $query_where[] = '{raw:user_query}'; |
|
167 | - if ($query_params['board_query']) |
|
168 | - $query_where[] = 'm.id_board {raw:board_query}'; |
|
170 | + if ($query_params['user_query']) { |
|
171 | + $query_where[] = '{raw:user_query}'; |
|
172 | + } |
|
173 | + if ($query_params['board_query']) { |
|
174 | + $query_where[] = 'm.id_board {raw:board_query}'; |
|
175 | + } |
|
169 | 176 | |
170 | - if ($query_params['topic']) |
|
171 | - $query_where[] = 'm.id_topic = {int:topic}'; |
|
172 | - if ($query_params['min_msg_id']) |
|
173 | - $query_where[] = 'm.id_msg >= {int:min_msg_id}'; |
|
174 | - if ($query_params['max_msg_id']) |
|
175 | - $query_where[] = 'm.id_msg <= {int:max_msg_id}'; |
|
177 | + if ($query_params['topic']) { |
|
178 | + $query_where[] = 'm.id_topic = {int:topic}'; |
|
179 | + } |
|
180 | + if ($query_params['min_msg_id']) { |
|
181 | + $query_where[] = 'm.id_msg >= {int:min_msg_id}'; |
|
182 | + } |
|
183 | + if ($query_params['max_msg_id']) { |
|
184 | + $query_where[] = 'm.id_msg <= {int:max_msg_id}'; |
|
185 | + } |
|
176 | 186 | |
177 | 187 | $count = 0; |
178 | - if (!empty($query_params['excluded_phrases']) && empty($modSettings['search_force_index'])) |
|
179 | - foreach ($query_params['excluded_phrases'] as $phrase) |
|
188 | + if (!empty($query_params['excluded_phrases']) && empty($modSettings['search_force_index'])) { |
|
189 | + foreach ($query_params['excluded_phrases'] as $phrase) |
|
180 | 190 | { |
181 | 191 | $query_where[] = 'subject NOT ' . (empty($modSettings['search_match_words']) || $search_data['no_regexp'] ? ' LIKE ' : ' RLIKE ') . '{string:exclude_subject_phrase_' . $count . '}'; |
192 | + } |
|
182 | 193 | $query_params['exclude_subject_phrase_' . $count++] = empty($modSettings['search_match_words']) || $search_data['no_regexp'] ? '%' . strtr($phrase, array('_' => '\\_', '%' => '\\%')) . '%' : '[[:<:]]' . addcslashes(preg_replace(array('/([\[\]$.+*?|{}()])/'), array('[$1]'), $phrase), '\\\'') . '[[:>:]]'; |
183 | 194 | } |
184 | 195 | $count = 0; |
185 | - if (!empty($query_params['excluded_subject_words']) && empty($modSettings['search_force_index'])) |
|
186 | - foreach ($query_params['excluded_subject_words'] as $excludedWord) |
|
196 | + if (!empty($query_params['excluded_subject_words']) && empty($modSettings['search_force_index'])) { |
|
197 | + foreach ($query_params['excluded_subject_words'] as $excludedWord) |
|
187 | 198 | { |
188 | 199 | $query_where[] = 'subject NOT ' . (empty($modSettings['search_match_words']) || $search_data['no_regexp'] ? ' LIKE ' : ' RLIKE ') . '{string:exclude_subject_words_' . $count . '}'; |
200 | + } |
|
189 | 201 | $query_params['exclude_subject_words_' . $count++] = empty($modSettings['search_match_words']) || $search_data['no_regexp'] ? '%' . strtr($excludedWord, array('_' => '\\_', '%' => '\\%')) . '%' : '[[:<:]]' . addcslashes(preg_replace(array('/([\[\]$.+*?|{}()])/'), array('[$1]'), $excludedWord), '\\\'') . '[[:>:]]'; |
190 | 202 | } |
191 | 203 | |
@@ -198,8 +210,7 @@ discard block |
||
198 | 210 | { |
199 | 211 | $query_left_join[] = '{db_prefix}log_search_words AS lsw' . $numTables . ' ON (lsw' . $numTables . '.id_word = ' . $indexedWord . ' AND lsw' . $numTables . '.id_msg = m.id_msg)'; |
200 | 212 | $query_where[] = '(lsw' . $numTables . '.id_word IS NULL)'; |
201 | - } |
|
202 | - else |
|
213 | + } else |
|
203 | 214 | { |
204 | 215 | $query_inner_join[] = '{db_prefix}log_search_words AS lsw' . $numTables . ' ON (lsw' . $numTables . '.id_msg = ' . ($prev_join === 0 ? 'm' : 'lsw' . $prev_join) . '.id_msg)'; |
205 | 216 | $query_where[] = 'lsw' . $numTables . '.id_word = ' . $indexedWord; |
@@ -235,16 +246,18 @@ discard block |
||
235 | 246 | $customIndexSettings = smf_json_decode($modSettings['search_custom_index_config'], true); |
236 | 247 | |
237 | 248 | $inserts = array(); |
238 | - foreach (text2words($msgOptions['body'], $customIndexSettings['bytes_per_word'], true) as $word) |
|
239 | - $inserts[] = array($word, $msgOptions['id']); |
|
249 | + foreach (text2words($msgOptions['body'], $customIndexSettings['bytes_per_word'], true) as $word) { |
|
250 | + $inserts[] = array($word, $msgOptions['id']); |
|
251 | + } |
|
240 | 252 | |
241 | - if (!empty($inserts)) |
|
242 | - $smcFunc['db_insert']('ignore', |
|
253 | + if (!empty($inserts)) { |
|
254 | + $smcFunc['db_insert']('ignore', |
|
243 | 255 | '{db_prefix}log_search_words', |
244 | 256 | array('id_word' => 'int', 'id_msg' => 'int'), |
245 | 257 | $inserts, |
246 | 258 | array('id_word', 'id_msg') |
247 | 259 | ); |
260 | + } |
|
248 | 261 | } |
249 | 262 | |
250 | 263 | /** |
@@ -287,8 +300,9 @@ discard block |
||
287 | 300 | if (!empty($inserted_words)) |
288 | 301 | { |
289 | 302 | $inserts = array(); |
290 | - foreach ($inserted_words as $word) |
|
291 | - $inserts[] = array($word, $msgOptions['id']); |
|
303 | + foreach ($inserted_words as $word) { |
|
304 | + $inserts[] = array($word, $msgOptions['id']); |
|
305 | + } |
|
292 | 306 | $smcFunc['db_insert']('insert', |
293 | 307 | '{db_prefix}log_search_words', |
294 | 308 | array('id_word' => 'string', 'id_msg' => 'int'), |
@@ -13,8 +13,9 @@ discard block |
||
13 | 13 | * @version 2.1 Beta 4 |
14 | 14 | */ |
15 | 15 | |
16 | -if (!defined('SMF')) |
|
16 | +if (!defined('SMF')) { |
|
17 | 17 | die('No direct access...'); |
18 | +} |
|
18 | 19 | |
19 | 20 | /** |
20 | 21 | * Class Likes |
@@ -108,8 +109,9 @@ discard block |
||
108 | 109 | $this->_extra = isset($_GET['extra']) ? $_GET['extra'] : false; |
109 | 110 | |
110 | 111 | // We do not want to output debug information here. |
111 | - if ($this->_js) |
|
112 | - $db_show_debug = false; |
|
112 | + if ($this->_js) { |
|
113 | + $db_show_debug = false; |
|
114 | + } |
|
113 | 115 | } |
114 | 116 | |
115 | 117 | /** |
@@ -143,8 +145,9 @@ discard block |
||
143 | 145 | $call = $this->_sa; |
144 | 146 | |
145 | 147 | // Guest can only view likes. |
146 | - if ($call != 'view') |
|
147 | - is_not_guest(); |
|
148 | + if ($call != 'view') { |
|
149 | + is_not_guest(); |
|
150 | + } |
|
148 | 151 | |
149 | 152 | checkSession('get'); |
150 | 153 | |
@@ -182,15 +185,17 @@ discard block |
||
182 | 185 | global $smcFunc, $modSettings; |
183 | 186 | |
184 | 187 | // This feature is currently disable. |
185 | - if (empty($modSettings['enable_likes'])) |
|
186 | - return $this->_error = 'like_disable'; |
|
188 | + if (empty($modSettings['enable_likes'])) { |
|
189 | + return $this->_error = 'like_disable'; |
|
190 | + } |
|
187 | 191 | |
188 | 192 | // Zerothly, they did indicate some kind of content to like, right? |
189 | 193 | preg_match('~^([a-z0-9\-\_]{1,6})~i', $this->_type, $matches); |
190 | 194 | $this->_type = isset($matches[1]) ? $matches[1] : ''; |
191 | 195 | |
192 | - if ($this->_type == '' || $this->_content <= 0) |
|
193 | - return $this->_error = 'cannot_'; |
|
196 | + if ($this->_type == '' || $this->_content <= 0) { |
|
197 | + return $this->_error = 'cannot_'; |
|
198 | + } |
|
194 | 199 | |
195 | 200 | // First we need to verify if the user can see the type of content or not. This is set up to be extensible, |
196 | 201 | // so we'll check for the one type we do know about, and if it's not that, we'll defer to any hooks. |
@@ -209,12 +214,14 @@ discard block |
||
209 | 214 | 'msg' => $this->_content, |
210 | 215 | ) |
211 | 216 | ); |
212 | - if ($smcFunc['db_num_rows']($request) == 1) |
|
213 | - list ($this->_idTopic, $topicOwner) = $smcFunc['db_fetch_row']($request); |
|
217 | + if ($smcFunc['db_num_rows']($request) == 1) { |
|
218 | + list ($this->_idTopic, $topicOwner) = $smcFunc['db_fetch_row']($request); |
|
219 | + } |
|
214 | 220 | |
215 | 221 | $smcFunc['db_free_result']($request); |
216 | - if (empty($this->_idTopic)) |
|
217 | - return $this->_error = 'cannot_'; |
|
222 | + if (empty($this->_idTopic)) { |
|
223 | + return $this->_error = 'cannot_'; |
|
224 | + } |
|
218 | 225 | |
219 | 226 | // So we know what topic it's in and more importantly we know the user can see it. |
220 | 227 | // If we're not viewing, we need some info set up. |
@@ -224,9 +231,7 @@ discard block |
||
224 | 231 | $this->_validLikes['can_see'] = allowedTo('likes_view') ? true : 'cannot_view_likes'; |
225 | 232 | |
226 | 233 | $this->_validLikes['can_like'] = ($this->_user['id'] == $topicOwner ? 'cannot_like_content' : (allowedTo('likes_like') ? true : 'cannot_like_content')); |
227 | - } |
|
228 | - |
|
229 | - else |
|
234 | + } else |
|
230 | 235 | { |
231 | 236 | // Modders: This will give you whatever the user offers up in terms of liking, e.g. $this->_type=msg, $this->_content=1 |
232 | 237 | // When you hook this, check $this->_type first. If it is not something your mod worries about, return false. |
@@ -244,8 +249,9 @@ discard block |
||
244 | 249 | if ($result !== false) |
245 | 250 | { |
246 | 251 | // Match the type with what we already have. |
247 | - if (!isset($result['type']) || $result['type'] != $this->_type) |
|
248 | - return $this->_error = 'not_valid_like_type'; |
|
252 | + if (!isset($result['type']) || $result['type'] != $this->_type) { |
|
253 | + return $this->_error = 'not_valid_like_type'; |
|
254 | + } |
|
249 | 255 | |
250 | 256 | // Fill out the rest. |
251 | 257 | $this->_type = $result['type']; |
@@ -256,17 +262,20 @@ discard block |
||
256 | 262 | } |
257 | 263 | } |
258 | 264 | |
259 | - if (!$found) |
|
260 | - return $this->_error = 'cannot_'; |
|
265 | + if (!$found) { |
|
266 | + return $this->_error = 'cannot_'; |
|
267 | + } |
|
261 | 268 | } |
262 | 269 | |
263 | 270 | // Does the user can see this? |
264 | - if (isset($this->_validLikes['can_see']) && is_string($this->_validLikes['can_see'])) |
|
265 | - return $this->_error = $this->_validLikes['can_see']; |
|
271 | + if (isset($this->_validLikes['can_see']) && is_string($this->_validLikes['can_see'])) { |
|
272 | + return $this->_error = $this->_validLikes['can_see']; |
|
273 | + } |
|
266 | 274 | |
267 | 275 | // Does the user can like this? Viewing a list of likes doesn't require this permission. |
268 | - if ($this->_sa != 'view' && isset($this->_validLikes['can_like']) && is_string($this->_validLikes['can_like'])) |
|
269 | - return $this->_error = $this->_validLikes['can_like']; |
|
276 | + if ($this->_sa != 'view' && isset($this->_validLikes['can_like']) && is_string($this->_validLikes['can_like'])) { |
|
277 | + return $this->_error = $this->_validLikes['can_like']; |
|
278 | + } |
|
270 | 279 | } |
271 | 280 | |
272 | 281 | /** |
@@ -291,8 +300,9 @@ discard block |
||
291 | 300 | ); |
292 | 301 | |
293 | 302 | // Are we calling this directly? if so, set a proper data for the response. Do note that __METHOD__ returns both the class name and the function name. |
294 | - if ($this->_sa == __FUNCTION__) |
|
295 | - $this->_data = __FUNCTION__; |
|
303 | + if ($this->_sa == __FUNCTION__) { |
|
304 | + $this->_data = __FUNCTION__; |
|
305 | + } |
|
296 | 306 | } |
297 | 307 | |
298 | 308 | /** |
@@ -322,8 +332,8 @@ discard block |
||
322 | 332 | |
323 | 333 | // Add a background task to process sending alerts. |
324 | 334 | // Mod author, you can add your own background task for your own custom like event using the "integrate_issue_like" hook or your callback, both are immediately called after this. |
325 | - if ($this->_type == 'msg') |
|
326 | - $smcFunc['db_insert']('insert', |
|
335 | + if ($this->_type == 'msg') { |
|
336 | + $smcFunc['db_insert']('insert', |
|
327 | 337 | '{db_prefix}background_tasks', |
328 | 338 | array('task_file' => 'string', 'task_class' => 'string', 'task_data' => 'string', 'claimed_time' => 'int'), |
329 | 339 | array('$sourcedir/tasks/Likes-Notify.php', 'Likes_Notify_Background', json_encode(array( |
@@ -335,10 +345,12 @@ discard block |
||
335 | 345 | )), 0), |
336 | 346 | array('id_task') |
337 | 347 | ); |
348 | + } |
|
338 | 349 | |
339 | 350 | // Are we calling this directly? if so, set a proper data for the response. Do note that __METHOD__ returns both the class name and the function name. |
340 | - if ($this->_sa == __FUNCTION__) |
|
341 | - $this->_data = __FUNCTION__; |
|
351 | + if ($this->_sa == __FUNCTION__) { |
|
352 | + $this->_data = __FUNCTION__; |
|
353 | + } |
|
342 | 354 | } |
343 | 355 | |
344 | 356 | /** |
@@ -364,8 +376,9 @@ discard block |
||
364 | 376 | $smcFunc['db_free_result']($request); |
365 | 377 | |
366 | 378 | // If you want to call this directly, fill out _data property too. |
367 | - if ($this->_sa == __FUNCTION__) |
|
368 | - $this->_data = $this->_numLikes; |
|
379 | + if ($this->_sa == __FUNCTION__) { |
|
380 | + $this->_data = $this->_numLikes; |
|
381 | + } |
|
369 | 382 | } |
370 | 383 | |
371 | 384 | /** |
@@ -378,8 +391,9 @@ discard block |
||
378 | 391 | global $smcFunc; |
379 | 392 | |
380 | 393 | // Safety first! |
381 | - if (empty($this->_type) || empty($this->_content)) |
|
382 | - return $this->_error = 'cannot_'; |
|
394 | + if (empty($this->_type) || empty($this->_content)) { |
|
395 | + return $this->_error = 'cannot_'; |
|
396 | + } |
|
383 | 397 | |
384 | 398 | // Do we already like this? |
385 | 399 | $request = $smcFunc['db_query']('', ' |
@@ -397,26 +411,28 @@ discard block |
||
397 | 411 | $this->_alreadyLiked = (bool) $smcFunc['db_num_rows']($request) != 0; |
398 | 412 | $smcFunc['db_free_result']($request); |
399 | 413 | |
400 | - if ($this->_alreadyLiked) |
|
401 | - $this->delete(); |
|
402 | - |
|
403 | - else |
|
404 | - $this->insert(); |
|
414 | + if ($this->_alreadyLiked) { |
|
415 | + $this->delete(); |
|
416 | + } else { |
|
417 | + $this->insert(); |
|
418 | + } |
|
405 | 419 | |
406 | 420 | // Now, how many people like this content now? We *could* just +1 / -1 the relevant container but that has proven to become unstable. |
407 | 421 | $this->_count(); |
408 | 422 | |
409 | 423 | // Update the likes count for messages. |
410 | - if ($this->_type == 'msg') |
|
411 | - $this->msgIssueLike(); |
|
424 | + if ($this->_type == 'msg') { |
|
425 | + $this->msgIssueLike(); |
|
426 | + } |
|
412 | 427 | |
413 | 428 | // Any callbacks? |
414 | 429 | elseif (!empty($this->_validLikes['callback'])) |
415 | 430 | { |
416 | 431 | $call = call_helper($this->_validLikes['callback'], true); |
417 | 432 | |
418 | - if (!empty($call)) |
|
419 | - call_user_func_array($call, array($this)); |
|
433 | + if (!empty($call)) { |
|
434 | + call_user_func_array($call, array($this)); |
|
435 | + } |
|
420 | 436 | } |
421 | 437 | |
422 | 438 | // Sometimes there might be other things that need updating after we do this like. |
@@ -425,8 +441,9 @@ discard block |
||
425 | 441 | // Now some clean up. This is provided here for any like handlers that want to do any cache flushing. |
426 | 442 | // This way a like handler doesn't need to explicitly declare anything in integrate_issue_like, but do so |
427 | 443 | // in integrate_valid_likes where it absolutely has to exist. |
428 | - if (!empty($this->_validLikes['flush_cache'])) |
|
429 | - cache_put_data($this->_validLikes['flush_cache'], null); |
|
444 | + if (!empty($this->_validLikes['flush_cache'])) { |
|
445 | + cache_put_data($this->_validLikes['flush_cache'], null); |
|
446 | + } |
|
430 | 447 | |
431 | 448 | // All done, start building the data to pass as response. |
432 | 449 | $this->_data = array( |
@@ -450,8 +467,9 @@ discard block |
||
450 | 467 | { |
451 | 468 | global $smcFunc; |
452 | 469 | |
453 | - if ($this->_type !== 'msg') |
|
454 | - return; |
|
470 | + if ($this->_type !== 'msg') { |
|
471 | + return; |
|
472 | + } |
|
455 | 473 | |
456 | 474 | $smcFunc['db_query']('', ' |
457 | 475 | UPDATE {db_prefix}messages |
@@ -492,8 +510,9 @@ discard block |
||
492 | 510 | 'like_type' => $this->_type, |
493 | 511 | ) |
494 | 512 | ); |
495 | - while ($row = $smcFunc['db_fetch_assoc']($request)) |
|
496 | - $context['likers'][$row['id_member']] = array('timestamp' => $row['like_time']); |
|
513 | + while ($row = $smcFunc['db_fetch_assoc']($request)) { |
|
514 | + $context['likers'][$row['id_member']] = array('timestamp' => $row['like_time']); |
|
515 | + } |
|
497 | 516 | |
498 | 517 | // Now to get member data, including avatars and so on. |
499 | 518 | $members = array_keys($context['likers']); |
@@ -501,8 +520,9 @@ discard block |
||
501 | 520 | if (count($loaded) != count($members)) |
502 | 521 | { |
503 | 522 | $members = array_diff($members, $loaded); |
504 | - foreach ($members as $not_loaded) |
|
505 | - unset ($context['likers'][$not_loaded]); |
|
523 | + foreach ($members as $not_loaded) { |
|
524 | + unset ($context['likers'][$not_loaded]); |
|
525 | + } |
|
506 | 526 | } |
507 | 527 | |
508 | 528 | foreach ($context['likers'] as $liker => $dummy) |
@@ -544,12 +564,14 @@ discard block |
||
544 | 564 | global $context, $txt; |
545 | 565 | |
546 | 566 | // Don't do anything if someone else has already take care of the response. |
547 | - if (!$this->_setResponse) |
|
548 | - return; |
|
567 | + if (!$this->_setResponse) { |
|
568 | + return; |
|
569 | + } |
|
549 | 570 | |
550 | 571 | // Want a json response huh? |
551 | - if ($this->_validLikes['json']) |
|
552 | - return $this->jsonResponse(); |
|
572 | + if ($this->_validLikes['json']) { |
|
573 | + return $this->jsonResponse(); |
|
574 | + } |
|
553 | 575 | |
554 | 576 | // Set everything up for display. |
555 | 577 | loadTemplate('Likes'); |
@@ -559,8 +581,9 @@ discard block |
||
559 | 581 | if ($this->_error) |
560 | 582 | { |
561 | 583 | // If this is a generic error, set it up good. |
562 | - if ($this->_error == 'cannot_') |
|
563 | - $this->_error = $this->_sa == 'view' ? 'cannot_view_likes' : 'cannot_like_content'; |
|
584 | + if ($this->_error == 'cannot_') { |
|
585 | + $this->_error = $this->_sa == 'view' ? 'cannot_view_likes' : 'cannot_like_content'; |
|
586 | + } |
|
564 | 587 | |
565 | 588 | // Is this request coming from an ajax call? |
566 | 589 | if ($this->_js) |
@@ -570,8 +593,9 @@ discard block |
||
570 | 593 | } |
571 | 594 | |
572 | 595 | // Nope? then just do a redirect to whatever URL was provided. |
573 | - else |
|
574 | - redirectexit(!empty($this->_validLikes['redirect']) ? $this->_validLikes['redirect'] . ';error=' . $this->_error : ''); |
|
596 | + else { |
|
597 | + redirectexit(!empty($this->_validLikes['redirect']) ? $this->_validLikes['redirect'] . ';error=' . $this->_error : ''); |
|
598 | + } |
|
575 | 599 | |
576 | 600 | return; |
577 | 601 | } |
@@ -580,8 +604,9 @@ discard block |
||
580 | 604 | else |
581 | 605 | { |
582 | 606 | // Not an ajax request so send the user back to the previous location or the main page. |
583 | - if (!$this->_js) |
|
584 | - redirectexit(!empty($this->_validLikes['redirect']) ? $this->_validLikes['redirect'] : ''); |
|
607 | + if (!$this->_js) { |
|
608 | + redirectexit(!empty($this->_validLikes['redirect']) ? $this->_validLikes['redirect'] : ''); |
|
609 | + } |
|
585 | 610 | |
586 | 611 | // These fine gentlemen all share the same template. |
587 | 612 | $generic = array('delete', 'insert', '_count'); |
@@ -612,8 +637,9 @@ discard block |
||
612 | 637 | // If there is an error, send it. |
613 | 638 | if ($this->_error) |
614 | 639 | { |
615 | - if ($this->_error == 'cannot_') |
|
616 | - $this->_error = $this->_sa == 'view' ? 'cannot_view_likes' : 'cannot_like_content'; |
|
640 | + if ($this->_error == 'cannot_') { |
|
641 | + $this->_error = $this->_sa == 'view' ? 'cannot_view_likes' : 'cannot_like_content'; |
|
642 | + } |
|
617 | 643 | |
618 | 644 | $print['error'] = $this->_error; |
619 | 645 | } |
@@ -649,33 +675,36 @@ discard block |
||
649 | 675 | <body style="background-color: #444455; color: white; font-style: italic; font-family: serif;"> |
650 | 676 | <div style="margin-top: 12%; font-size: 1.1em; line-height: 1.4; text-align: center;">'; |
651 | 677 | |
652 | - if (!isset($_GET['verse']) || ($_GET['verse'] != '2:18' && $_GET['verse'] != '22:1-2')) |
|
653 | - $_GET['verse'] = '4:16'; |
|
678 | + if (!isset($_GET['verse']) || ($_GET['verse'] != '2:18' && $_GET['verse'] != '22:1-2')) { |
|
679 | + $_GET['verse'] = '4:16'; |
|
680 | + } |
|
654 | 681 | |
655 | - if ($_GET['verse'] == '2:18') |
|
656 | - echo ' |
|
682 | + if ($_GET['verse'] == '2:18') { |
|
683 | + echo ' |
|
657 | 684 | Woe, it was that his name wasn\'t <em>known</em>, that he came in mystery, and was recognized by none. And it became to be in those days <em>something</em>. Something not yet <em id="unknown" name="[Unknown]">unknown</em> to mankind. And thus what was to be known the <em>secret project</em> began into its existence. Henceforth the opposition was only <em>weary</em> and <em>fearful</em>, for now their match was at arms against them.'; |
658 | - elseif ($_GET['verse'] == '4:16') |
|
659 | - echo ' |
|
685 | + } elseif ($_GET['verse'] == '4:16') { |
|
686 | + echo ' |
|
660 | 687 | And it came to pass that the <em>unbelievers</em> dwindled in number and saw rise of many <em>proselytizers</em>, and the opposition found fear in the face of the <em>x</em> and the <em>j</em> while those who stood with the <em>something</em> grew stronger and came together. Still, this was only the <em>beginning</em>, and what lay in the future was <em id="unknown" name="[Unknown]">unknown</em> to all, even those on the right side.'; |
661 | - elseif ($_GET['verse'] == '22:1-2') |
|
662 | - echo ' |
|
688 | + } elseif ($_GET['verse'] == '22:1-2') { |
|
689 | + echo ' |
|
663 | 690 | <p>Now <em>behold</em>, that which was once the secret project was <em id="unknown" name="[Unknown]">unknown</em> no longer. Alas, it needed more than <em>only one</em>, but yet even thought otherwise. It became that the opposition <em>rumored</em> and lied, but still to no avail. Their match, though not <em>perfect</em>, had them outdone.</p> |
664 | 691 | <p style="margin: 2ex 1ex 0 1ex; font-size: 1.05em; line-height: 1.5; text-align: center;">Let it continue. <em>The end</em>.</p>'; |
692 | + } |
|
665 | 693 | |
666 | 694 | echo ' |
667 | 695 | </div> |
668 | 696 | <div style="margin-top: 2ex; font-size: 2em; text-align: right;">'; |
669 | 697 | |
670 | - if ($_GET['verse'] == '2:18') |
|
671 | - echo ' |
|
698 | + if ($_GET['verse'] == '2:18') { |
|
699 | + echo ' |
|
672 | 700 | from <span style="font-family: Georgia, serif;"><strong><a href="', $scripturl, '?action=about:unknown;verse=4:16" style="color: white; text-decoration: none; cursor: text;">The Book of Unknown</a></strong>, 2:18</span>'; |
673 | - elseif ($_GET['verse'] == '4:16') |
|
674 | - echo ' |
|
701 | + } elseif ($_GET['verse'] == '4:16') { |
|
702 | + echo ' |
|
675 | 703 | from <span style="font-family: Georgia, serif;"><strong><a href="', $scripturl, '?action=about:unknown;verse=22:1-2" style="color: white; text-decoration: none; cursor: text;">The Book of Unknown</a></strong>, 4:16</span>'; |
676 | - elseif ($_GET['verse'] == '22:1-2') |
|
677 | - echo ' |
|
704 | + } elseif ($_GET['verse'] == '22:1-2') { |
|
705 | + echo ' |
|
678 | 706 | from <span style="font-family: Georgia, serif;"><strong>The Book of Unknown</strong>, 22:1-2</span>'; |
707 | + } |
|
679 | 708 | |
680 | 709 | echo ' |
681 | 710 | </div> |
@@ -13,8 +13,9 @@ discard block |
||
13 | 13 | * @version 2.1 Beta 4 |
14 | 14 | */ |
15 | 15 | |
16 | -if (!defined('SMF')) |
|
16 | +if (!defined('SMF')) { |
|
17 | 17 | die('No direct access...'); |
18 | +} |
|
18 | 19 | |
19 | 20 | /** |
20 | 21 | * Add the functions implemented in this file to the $smcFunc array. |
@@ -23,8 +24,8 @@ discard block |
||
23 | 24 | { |
24 | 25 | global $smcFunc; |
25 | 26 | |
26 | - if (!isset($smcFunc['db_backup_table']) || $smcFunc['db_backup_table'] != 'smf_db_backup_table') |
|
27 | - $smcFunc += array( |
|
27 | + if (!isset($smcFunc['db_backup_table']) || $smcFunc['db_backup_table'] != 'smf_db_backup_table') { |
|
28 | + $smcFunc += array( |
|
28 | 29 | 'db_backup_table' => 'smf_db_backup_table', |
29 | 30 | 'db_optimize_table' => 'smf_db_optimize_table', |
30 | 31 | 'db_table_sql' => 'smf_db_table_sql', |
@@ -32,7 +33,8 @@ discard block |
||
32 | 33 | 'db_get_version' => 'smf_db_get_version', |
33 | 34 | 'db_get_engine' => 'smf_db_get_engine', |
34 | 35 | ); |
35 | -} |
|
36 | + } |
|
37 | + } |
|
36 | 38 | |
37 | 39 | /** |
38 | 40 | * Backup $table to $backup_table. |
@@ -74,8 +76,9 @@ discard block |
||
74 | 76 | )); |
75 | 77 | |
76 | 78 | // Old school or no school? |
77 | - if ($request) |
|
78 | - return $request; |
|
79 | + if ($request) { |
|
80 | + return $request; |
|
81 | + } |
|
79 | 82 | } |
80 | 83 | |
81 | 84 | // At this point, the quick method failed. |
@@ -99,8 +102,9 @@ discard block |
||
99 | 102 | foreach ($create as $k => $l) |
100 | 103 | { |
101 | 104 | // Get the name of the auto_increment column. |
102 | - if (strpos($l, 'auto_increment')) |
|
103 | - $auto_inc = trim($l); |
|
105 | + if (strpos($l, 'auto_increment')) { |
|
106 | + $auto_inc = trim($l); |
|
107 | + } |
|
104 | 108 | |
105 | 109 | // For the engine type, see if we can work out what it is. |
106 | 110 | if (strpos($l, 'ENGINE') !== false || strpos($l, 'TYPE') !== false) |
@@ -108,30 +112,36 @@ discard block |
||
108 | 112 | // Extract the engine type. |
109 | 113 | preg_match('~(ENGINE|TYPE)=(\w+)(\sDEFAULT)?(\sCHARSET=(\w+))?(\sCOLLATE=(\w+))?~', $l, $match); |
110 | 114 | |
111 | - if (!empty($match[1])) |
|
112 | - $engine = $match[1]; |
|
115 | + if (!empty($match[1])) { |
|
116 | + $engine = $match[1]; |
|
117 | + } |
|
113 | 118 | |
114 | - if (!empty($match[2])) |
|
115 | - $engine = $match[2]; |
|
119 | + if (!empty($match[2])) { |
|
120 | + $engine = $match[2]; |
|
121 | + } |
|
116 | 122 | |
117 | - if (!empty($match[5])) |
|
118 | - $charset = $match[5]; |
|
123 | + if (!empty($match[5])) { |
|
124 | + $charset = $match[5]; |
|
125 | + } |
|
119 | 126 | |
120 | - if (!empty($match[7])) |
|
121 | - $collate = $match[7]; |
|
127 | + if (!empty($match[7])) { |
|
128 | + $collate = $match[7]; |
|
129 | + } |
|
122 | 130 | } |
123 | 131 | |
124 | 132 | // Skip everything but keys... |
125 | - if (strpos($l, 'KEY') === false) |
|
126 | - unset($create[$k]); |
|
133 | + if (strpos($l, 'KEY') === false) { |
|
134 | + unset($create[$k]); |
|
135 | + } |
|
127 | 136 | } |
128 | 137 | |
129 | - if (!empty($create)) |
|
130 | - $create = '( |
|
138 | + if (!empty($create)) { |
|
139 | + $create = '( |
|
131 | 140 | ' . implode(' |
132 | 141 | ', $create) . ')'; |
133 | - else |
|
134 | - $create = ''; |
|
142 | + } else { |
|
143 | + $create = ''; |
|
144 | + } |
|
135 | 145 | |
136 | 146 | $request = $smcFunc['db_query']('', ' |
137 | 147 | CREATE TABLE {raw:backup_table} {raw:create} |
@@ -150,8 +160,9 @@ discard block |
||
150 | 160 | |
151 | 161 | if ($auto_inc != '') |
152 | 162 | { |
153 | - if (preg_match('~\`(.+?)\`\s~', $auto_inc, $match) != 0 && substr($auto_inc, -1, 1) == ',') |
|
154 | - $auto_inc = substr($auto_inc, 0, -1); |
|
163 | + if (preg_match('~\`(.+?)\`\s~', $auto_inc, $match) != 0 && substr($auto_inc, -1, 1) == ',') { |
|
164 | + $auto_inc = substr($auto_inc, 0, -1); |
|
165 | + } |
|
155 | 166 | |
156 | 167 | $smcFunc['db_query']('', ' |
157 | 168 | ALTER TABLE {raw:backup_table} |
@@ -195,8 +206,9 @@ discard block |
||
195 | 206 | 'table' => $table, |
196 | 207 | ) |
197 | 208 | ); |
198 | - if (!$request) |
|
199 | - return -1; |
|
209 | + if (!$request) { |
|
210 | + return -1; |
|
211 | + } |
|
200 | 212 | |
201 | 213 | // How much left? |
202 | 214 | $request = $smcFunc['db_query']('', ' |
@@ -239,8 +251,9 @@ discard block |
||
239 | 251 | ) |
240 | 252 | ); |
241 | 253 | $tables = array(); |
242 | - while ($row = $smcFunc['db_fetch_row']($request)) |
|
243 | - $tables[] = $row[0]; |
|
254 | + while ($row = $smcFunc['db_fetch_row']($request)) { |
|
255 | + $tables[] = $row[0]; |
|
256 | + } |
|
244 | 257 | $smcFunc['db_free_result']($request); |
245 | 258 | |
246 | 259 | return $tables; |
@@ -284,8 +297,9 @@ discard block |
||
284 | 297 | if (!empty($row['Default']) || $row['Null'] !== 'YES') |
285 | 298 | { |
286 | 299 | // Make a special case of auto-timestamp. |
287 | - if ($row['Default'] == 'CURRENT_TIMESTAMP') |
|
288 | - $schema_create .= ' /*!40102 NOT NULL default CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP */'; |
|
300 | + if ($row['Default'] == 'CURRENT_TIMESTAMP') { |
|
301 | + $schema_create .= ' /*!40102 NOT NULL default CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP */'; |
|
302 | + } |
|
289 | 303 | // Text shouldn't have a default. |
290 | 304 | elseif ($row['Default'] !== null) |
291 | 305 | { |
@@ -320,14 +334,16 @@ discard block |
||
320 | 334 | $row['Key_name'] = $row['Key_name'] == 'PRIMARY' ? 'PRIMARY KEY' : (empty($row['Non_unique']) ? 'UNIQUE ' : ($row['Comment'] == 'FULLTEXT' || (isset($row['Index_type']) && $row['Index_type'] == 'FULLTEXT') ? 'FULLTEXT ' : 'KEY ')) . '`' . $row['Key_name'] . '`'; |
321 | 335 | |
322 | 336 | // Is this the first column in the index? |
323 | - if (empty($indexes[$row['Key_name']])) |
|
324 | - $indexes[$row['Key_name']] = array(); |
|
337 | + if (empty($indexes[$row['Key_name']])) { |
|
338 | + $indexes[$row['Key_name']] = array(); |
|
339 | + } |
|
325 | 340 | |
326 | 341 | // A sub part, like only indexing 15 characters of a varchar. |
327 | - if (!empty($row['Sub_part'])) |
|
328 | - $indexes[$row['Key_name']][$row['Seq_in_index']] = '`' . $row['Column_name'] . '`(' . $row['Sub_part'] . ')'; |
|
329 | - else |
|
330 | - $indexes[$row['Key_name']][$row['Seq_in_index']] = '`' . $row['Column_name'] . '`'; |
|
342 | + if (!empty($row['Sub_part'])) { |
|
343 | + $indexes[$row['Key_name']][$row['Seq_in_index']] = '`' . $row['Column_name'] . '`(' . $row['Sub_part'] . ')'; |
|
344 | + } else { |
|
345 | + $indexes[$row['Key_name']][$row['Seq_in_index']] = '`' . $row['Column_name'] . '`'; |
|
346 | + } |
|
331 | 347 | } |
332 | 348 | $smcFunc['db_free_result']($result); |
333 | 349 | |
@@ -365,8 +381,9 @@ discard block |
||
365 | 381 | { |
366 | 382 | static $ver; |
367 | 383 | |
368 | - if (!empty($ver)) |
|
369 | - return $ver; |
|
384 | + if (!empty($ver)) { |
|
385 | + return $ver; |
|
386 | + } |
|
370 | 387 | |
371 | 388 | global $smcFunc; |
372 | 389 | |
@@ -391,8 +408,9 @@ discard block |
||
391 | 408 | global $smcFunc; |
392 | 409 | static $db_type; |
393 | 410 | |
394 | - if (!empty($db_type)) |
|
395 | - return $db_type; |
|
411 | + if (!empty($db_type)) { |
|
412 | + return $db_type; |
|
413 | + } |
|
396 | 414 | |
397 | 415 | $request = $smcFunc['db_query']('', 'SELECT @@version_comment'); |
398 | 416 | list ($comment) = $smcFunc['db_fetch_row']($request); |
@@ -401,13 +419,15 @@ discard block |
||
401 | 419 | // Skip these if we don't have a comment. |
402 | 420 | if (!empty($comment)) |
403 | 421 | { |
404 | - if (stripos($comment, 'percona') !== false) |
|
405 | - return 'Percona'; |
|
406 | - if (stripos($comment, 'mariadb') !== false) |
|
407 | - return 'MariaDB'; |
|
422 | + if (stripos($comment, 'percona') !== false) { |
|
423 | + return 'Percona'; |
|
424 | + } |
|
425 | + if (stripos($comment, 'mariadb') !== false) { |
|
426 | + return 'MariaDB'; |
|
427 | + } |
|
428 | + } else { |
|
429 | + return 'fail'; |
|
408 | 430 | } |
409 | - else |
|
410 | - return 'fail'; |
|
411 | 431 | |
412 | 432 | return 'MySQL'; |
413 | 433 | } |
@@ -13,8 +13,9 @@ discard block |
||
13 | 13 | * @version 2.1 Beta 4 |
14 | 14 | */ |
15 | 15 | |
16 | -if (!defined('SMF')) |
|
16 | +if (!defined('SMF')) { |
|
17 | 17 | die('No direct access...'); |
18 | +} |
|
18 | 19 | |
19 | 20 | /** |
20 | 21 | * Main entry point for the admin search settings screen. |
@@ -107,11 +108,13 @@ discard block |
||
107 | 108 | // Perhaps the search method wants to add some settings? |
108 | 109 | require_once($sourcedir . '/Search.php'); |
109 | 110 | $searchAPI = findSearchAPI(); |
110 | - if (is_callable(array($searchAPI, 'searchSettings'))) |
|
111 | - call_user_func_array(array($searchAPI, 'searchSettings'), array(&$config_vars)); |
|
111 | + if (is_callable(array($searchAPI, 'searchSettings'))) { |
|
112 | + call_user_func_array(array($searchAPI, 'searchSettings'), array(&$config_vars)); |
|
113 | + } |
|
112 | 114 | |
113 | - if ($return_config) |
|
114 | - return $config_vars; |
|
115 | + if ($return_config) { |
|
116 | + return $config_vars; |
|
117 | + } |
|
115 | 118 | |
116 | 119 | $context['page_title'] = $txt['search_settings_title']; |
117 | 120 | $context['sub_template'] = 'show_settings'; |
@@ -126,8 +129,9 @@ discard block |
||
126 | 129 | |
127 | 130 | call_integration_hook('integrate_save_search_settings'); |
128 | 131 | |
129 | - if (empty($_POST['search_results_per_page'])) |
|
130 | - $_POST['search_results_per_page'] = !empty($modSettings['search_results_per_page']) ? $modSettings['search_results_per_page'] : $modSettings['defaultMaxMessages']; |
|
132 | + if (empty($_POST['search_results_per_page'])) { |
|
133 | + $_POST['search_results_per_page'] = !empty($modSettings['search_results_per_page']) ? $modSettings['search_results_per_page'] : $modSettings['defaultMaxMessages']; |
|
134 | + } |
|
131 | 135 | saveDBSettings($config_vars); |
132 | 136 | $_SESSION['adm-save'] = true; |
133 | 137 | redirectexit('action=admin;area=managesearch;sa=settings;' . $context['session_var'] . '=' . $context['session_id']); |
@@ -177,17 +181,20 @@ discard block |
||
177 | 181 | call_integration_hook('integrate_save_search_weights'); |
178 | 182 | |
179 | 183 | $changes = array(); |
180 | - foreach ($factors as $factor) |
|
181 | - $changes[$factor] = (int) $_POST[$factor]; |
|
184 | + foreach ($factors as $factor) { |
|
185 | + $changes[$factor] = (int) $_POST[$factor]; |
|
186 | + } |
|
182 | 187 | updateSettings($changes); |
183 | 188 | } |
184 | 189 | |
185 | 190 | $context['relative_weights'] = array('total' => 0); |
186 | - foreach ($factors as $factor) |
|
187 | - $context['relative_weights']['total'] += isset($modSettings[$factor]) ? $modSettings[$factor] : 0; |
|
191 | + foreach ($factors as $factor) { |
|
192 | + $context['relative_weights']['total'] += isset($modSettings[$factor]) ? $modSettings[$factor] : 0; |
|
193 | + } |
|
188 | 194 | |
189 | - foreach ($factors as $factor) |
|
190 | - $context['relative_weights'][$factor] = round(100 * (isset($modSettings[$factor]) ? $modSettings[$factor] : 0) / $context['relative_weights']['total'], 1); |
|
195 | + foreach ($factors as $factor) { |
|
196 | + $context['relative_weights'][$factor] = round(100 * (isset($modSettings[$factor]) ? $modSettings[$factor] : 0) / $context['relative_weights']['total'], 1); |
|
197 | + } |
|
191 | 198 | |
192 | 199 | createToken('admin-msw'); |
193 | 200 | } |
@@ -215,8 +222,9 @@ discard block |
||
215 | 222 | $context['search_apis'] = loadSearchAPIs(); |
216 | 223 | |
217 | 224 | // Detect whether a fulltext index is set. |
218 | - if ($context['supports_fulltext']) |
|
219 | - detectFulltextIndex(); |
|
225 | + if ($context['supports_fulltext']) { |
|
226 | + detectFulltextIndex(); |
|
227 | + } |
|
220 | 228 | |
221 | 229 | if (!empty($_REQUEST['sa']) && $_REQUEST['sa'] == 'createfulltext') |
222 | 230 | { |
@@ -240,8 +248,7 @@ discard block |
||
240 | 248 | 'language' => $language_ftx |
241 | 249 | ) |
242 | 250 | ); |
243 | - } |
|
244 | - else |
|
251 | + } else |
|
245 | 252 | { |
246 | 253 | // Make sure it's gone before creating it. |
247 | 254 | $smcFunc['db_query']('', ' |
@@ -259,8 +266,7 @@ discard block |
||
259 | 266 | ) |
260 | 267 | ); |
261 | 268 | } |
262 | - } |
|
263 | - elseif (!empty($_REQUEST['sa']) && $_REQUEST['sa'] == 'removefulltext' && !empty($context['fulltext_index'])) |
|
269 | + } elseif (!empty($_REQUEST['sa']) && $_REQUEST['sa'] == 'removefulltext' && !empty($context['fulltext_index'])) |
|
264 | 270 | { |
265 | 271 | checkSession('get'); |
266 | 272 | validateToken('admin-msm', 'get'); |
@@ -277,12 +283,12 @@ discard block |
||
277 | 283 | $context['fulltext_index'] = array(); |
278 | 284 | |
279 | 285 | // Go back to the default search method. |
280 | - if (!empty($modSettings['search_index']) && $modSettings['search_index'] == 'fulltext') |
|
281 | - updateSettings(array( |
|
286 | + if (!empty($modSettings['search_index']) && $modSettings['search_index'] == 'fulltext') { |
|
287 | + updateSettings(array( |
|
282 | 288 | 'search_index' => '', |
283 | 289 | )); |
284 | - } |
|
285 | - elseif (!empty($_REQUEST['sa']) && $_REQUEST['sa'] == 'removecustom') |
|
290 | + } |
|
291 | + } elseif (!empty($_REQUEST['sa']) && $_REQUEST['sa'] == 'removecustom') |
|
286 | 292 | { |
287 | 293 | checkSession('get'); |
288 | 294 | validateToken('admin-msm', 'get'); |
@@ -304,12 +310,12 @@ discard block |
||
304 | 310 | )); |
305 | 311 | |
306 | 312 | // Go back to the default search method. |
307 | - if (!empty($modSettings['search_index']) && $modSettings['search_index'] == 'custom') |
|
308 | - updateSettings(array( |
|
313 | + if (!empty($modSettings['search_index']) && $modSettings['search_index'] == 'custom') { |
|
314 | + updateSettings(array( |
|
309 | 315 | 'search_index' => '', |
310 | 316 | )); |
311 | - } |
|
312 | - elseif (isset($_POST['save'])) |
|
317 | + } |
|
318 | + } elseif (isset($_POST['save'])) |
|
313 | 319 | { |
314 | 320 | checkSession(); |
315 | 321 | validateToken('admin-msmpost'); |
@@ -331,8 +337,8 @@ discard block |
||
331 | 337 | // Get some info about the messages table, to show its size and index size. |
332 | 338 | if ($db_type == 'mysql') |
333 | 339 | { |
334 | - if (preg_match('~^`(.+?)`\.(.+?)$~', $db_prefix, $match) !== 0) |
|
335 | - $request = $smcFunc['db_query']('', ' |
|
340 | + if (preg_match('~^`(.+?)`\.(.+?)$~', $db_prefix, $match) !== 0) { |
|
341 | + $request = $smcFunc['db_query']('', ' |
|
336 | 342 | SHOW TABLE STATUS |
337 | 343 | FROM {string:database_name} |
338 | 344 | LIKE {string:table_name}', |
@@ -341,14 +347,15 @@ discard block |
||
341 | 347 | 'table_name' => str_replace('_', '\_', $match[2]) . 'messages', |
342 | 348 | ) |
343 | 349 | ); |
344 | - else |
|
345 | - $request = $smcFunc['db_query']('', ' |
|
350 | + } else { |
|
351 | + $request = $smcFunc['db_query']('', ' |
|
346 | 352 | SHOW TABLE STATUS |
347 | 353 | LIKE {string:table_name}', |
348 | 354 | array( |
349 | 355 | 'table_name' => str_replace('_', '\_', $db_prefix) . 'messages', |
350 | 356 | ) |
351 | 357 | ); |
358 | + } |
|
352 | 359 | if ($request !== false && $smcFunc['db_num_rows']($request) == 1) |
353 | 360 | { |
354 | 361 | // Only do this if the user has permission to execute this query. |
@@ -360,8 +367,8 @@ discard block |
||
360 | 367 | } |
361 | 368 | |
362 | 369 | // Now check the custom index table, if it exists at all. |
363 | - if (preg_match('~^`(.+?)`\.(.+?)$~', $db_prefix, $match) !== 0) |
|
364 | - $request = $smcFunc['db_query']('', ' |
|
370 | + if (preg_match('~^`(.+?)`\.(.+?)$~', $db_prefix, $match) !== 0) { |
|
371 | + $request = $smcFunc['db_query']('', ' |
|
365 | 372 | SHOW TABLE STATUS |
366 | 373 | FROM {string:database_name} |
367 | 374 | LIKE {string:table_name}', |
@@ -370,14 +377,15 @@ discard block |
||
370 | 377 | 'table_name' => str_replace('_', '\_', $match[2]) . 'log_search_words', |
371 | 378 | ) |
372 | 379 | ); |
373 | - else |
|
374 | - $request = $smcFunc['db_query']('', ' |
|
380 | + } else { |
|
381 | + $request = $smcFunc['db_query']('', ' |
|
375 | 382 | SHOW TABLE STATUS |
376 | 383 | LIKE {string:table_name}', |
377 | 384 | array( |
378 | 385 | 'table_name' => str_replace('_', '\_', $db_prefix) . 'log_search_words', |
379 | 386 | ) |
380 | 387 | ); |
388 | + } |
|
381 | 389 | if ($request !== false && $smcFunc['db_num_rows']($request) == 1) |
382 | 390 | { |
383 | 391 | // Only do this if the user has permission to execute this query. |
@@ -386,8 +394,7 @@ discard block |
||
386 | 394 | $context['table_info']['custom_index_length'] = $row['Data_length'] + $row['Index_length']; |
387 | 395 | $smcFunc['db_free_result']($request); |
388 | 396 | } |
389 | - } |
|
390 | - elseif ($db_type == 'postgresql') |
|
397 | + } elseif ($db_type == 'postgresql') |
|
391 | 398 | { |
392 | 399 | // In order to report the sizes correctly we need to perform vacuum (optimize) on the tables we will be using. |
393 | 400 | //db_extend(); |
@@ -429,38 +436,38 @@ discard block |
||
429 | 436 | $context['table_info']['data_length'] = (int) $row['table_size']; |
430 | 437 | $context['table_info']['index_length'] = (int) $row['index_size']; |
431 | 438 | $context['table_info']['fulltext_length'] = (int) $row['index_size']; |
432 | - } |
|
433 | - elseif ($row['indexname'] == $db_prefix . 'log_search_words') |
|
439 | + } elseif ($row['indexname'] == $db_prefix . 'log_search_words') |
|
434 | 440 | { |
435 | 441 | $context['table_info']['index_length'] = (int) $row['index_size']; |
436 | 442 | $context['table_info']['custom_index_length'] = (int) $row['index_size']; |
437 | 443 | } |
438 | 444 | } |
439 | 445 | $smcFunc['db_free_result']($request); |
440 | - } |
|
441 | - else |
|
442 | - // Didn't work for some reason... |
|
446 | + } else { |
|
447 | + // Didn't work for some reason... |
|
443 | 448 | $context['table_info'] = array( |
444 | 449 | 'data_length' => $txt['not_applicable'], |
445 | 450 | 'index_length' => $txt['not_applicable'], |
446 | 451 | 'fulltext_length' => $txt['not_applicable'], |
447 | 452 | 'custom_index_length' => $txt['not_applicable'], |
448 | 453 | ); |
449 | - } |
|
450 | - else |
|
451 | - $context['table_info'] = array( |
|
454 | + } |
|
455 | + } else { |
|
456 | + $context['table_info'] = array( |
|
452 | 457 | 'data_length' => $txt['not_applicable'], |
453 | 458 | 'index_length' => $txt['not_applicable'], |
454 | 459 | 'fulltext_length' => $txt['not_applicable'], |
455 | 460 | 'custom_index_length' => $txt['not_applicable'], |
456 | 461 | ); |
462 | + } |
|
457 | 463 | |
458 | 464 | // Format the data and index length in kilobytes. |
459 | 465 | foreach ($context['table_info'] as $type => $size) |
460 | 466 | { |
461 | 467 | // If it's not numeric then just break. This database engine doesn't support size. |
462 | - if (!is_numeric($size)) |
|
463 | - break; |
|
468 | + if (!is_numeric($size)) { |
|
469 | + break; |
|
470 | + } |
|
464 | 471 | |
465 | 472 | $context['table_info'][$type] = comma_format($context['table_info'][$type] / 1024) . ' ' . $txt['search_method_kilobytes']; |
466 | 473 | } |
@@ -489,8 +496,9 @@ discard block |
||
489 | 496 | |
490 | 497 | // Scotty, we need more time... |
491 | 498 | @set_time_limit(600); |
492 | - if (function_exists('apache_reset_timeout')) |
|
493 | - @apache_reset_timeout(); |
|
499 | + if (function_exists('apache_reset_timeout')) { |
|
500 | + @apache_reset_timeout(); |
|
501 | + } |
|
494 | 502 | |
495 | 503 | $context[$context['admin_menu_name']]['current_subsection'] = 'method'; |
496 | 504 | $context['page_title'] = $txt['search_index_custom']; |
@@ -520,8 +528,7 @@ discard block |
||
520 | 528 | $context['start'] = (int) $context['index_settings']['resume_at']; |
521 | 529 | unset($context['index_settings']['resume_at']); |
522 | 530 | $context['step'] = 1; |
523 | - } |
|
524 | - else |
|
531 | + } else |
|
525 | 532 | { |
526 | 533 | $context['index_settings'] = array( |
527 | 534 | 'bytes_per_word' => isset($_REQUEST['bytes_per_word']) && isset($index_properties[$_REQUEST['bytes_per_word']]) ? (int) $_REQUEST['bytes_per_word'] : 2, |
@@ -530,12 +537,14 @@ discard block |
||
530 | 537 | $context['step'] = isset($_REQUEST['step']) ? (int) $_REQUEST['step'] : 0; |
531 | 538 | |
532 | 539 | // admin timeouts are painful when building these long indexes - but only if we actually have such things enabled |
533 | - if (empty($modSettings['securityDisable']) && $_SESSION['admin_time'] + 3300 < time() && $context['step'] >= 1) |
|
534 | - $_SESSION['admin_time'] = time(); |
|
540 | + if (empty($modSettings['securityDisable']) && $_SESSION['admin_time'] + 3300 < time() && $context['step'] >= 1) { |
|
541 | + $_SESSION['admin_time'] = time(); |
|
542 | + } |
|
535 | 543 | } |
536 | 544 | |
537 | - if ($context['step'] !== 0) |
|
538 | - checkSession('request'); |
|
545 | + if ($context['step'] !== 0) { |
|
546 | + checkSession('request'); |
|
547 | + } |
|
539 | 548 | |
540 | 549 | // Step 0: let the user determine how they like their index. |
541 | 550 | if ($context['step'] === 0) |
@@ -564,12 +573,14 @@ discard block |
||
564 | 573 | $smcFunc['db_create_word_search']($index_properties[$context['index_settings']['bytes_per_word']]['column_definition']); |
565 | 574 | |
566 | 575 | // Temporarily switch back to not using a search index. |
567 | - if (!empty($modSettings['search_index']) && $modSettings['search_index'] == 'custom') |
|
568 | - updateSettings(array('search_index' => '')); |
|
576 | + if (!empty($modSettings['search_index']) && $modSettings['search_index'] == 'custom') { |
|
577 | + updateSettings(array('search_index' => '')); |
|
578 | + } |
|
569 | 579 | |
570 | 580 | // Don't let simultanious processes be updating the search index. |
571 | - if (!empty($modSettings['search_custom_index_config'])) |
|
572 | - updateSettings(array('search_custom_index_config' => '')); |
|
581 | + if (!empty($modSettings['search_custom_index_config'])) { |
|
582 | + updateSettings(array('search_custom_index_config' => '')); |
|
583 | + } |
|
573 | 584 | } |
574 | 585 | |
575 | 586 | $num_messages = array( |
@@ -585,16 +596,16 @@ discard block |
||
585 | 596 | 'starting_id' => $context['start'], |
586 | 597 | ) |
587 | 598 | ); |
588 | - while ($row = $smcFunc['db_fetch_assoc']($request)) |
|
589 | - $num_messages[empty($row['todo']) ? 'done' : 'todo'] = $row['num_messages']; |
|
599 | + while ($row = $smcFunc['db_fetch_assoc']($request)) { |
|
600 | + $num_messages[empty($row['todo']) ? 'done' : 'todo'] = $row['num_messages']; |
|
601 | + } |
|
590 | 602 | |
591 | 603 | if (empty($num_messages['todo'])) |
592 | 604 | { |
593 | 605 | $context['step'] = 2; |
594 | 606 | $context['percentage'] = 80; |
595 | 607 | $context['start'] = 0; |
596 | - } |
|
597 | - else |
|
608 | + } else |
|
598 | 609 | { |
599 | 610 | // Number of seconds before the next step. |
600 | 611 | $stop = time() + 3; |
@@ -635,21 +646,22 @@ discard block |
||
635 | 646 | |
636 | 647 | $context['start'] += $forced_break ? $number_processed : $messages_per_batch; |
637 | 648 | |
638 | - if (!empty($inserts)) |
|
639 | - $smcFunc['db_insert']('ignore', |
|
649 | + if (!empty($inserts)) { |
|
650 | + $smcFunc['db_insert']('ignore', |
|
640 | 651 | '{db_prefix}log_search_words', |
641 | 652 | array('id_word' => 'int', 'id_msg' => 'int'), |
642 | 653 | $inserts, |
643 | 654 | array('id_word', 'id_msg') |
644 | 655 | ); |
656 | + } |
|
645 | 657 | if ($num_messages['todo'] === 0) |
646 | 658 | { |
647 | 659 | $context['step'] = 2; |
648 | 660 | $context['start'] = 0; |
649 | 661 | break; |
662 | + } else { |
|
663 | + updateSettings(array('search_custom_index_resume' => json_encode(array_merge($context['index_settings'], array('resume_at' => $context['start']))))); |
|
650 | 664 | } |
651 | - else |
|
652 | - updateSettings(array('search_custom_index_resume' => json_encode(array_merge($context['index_settings'], array('resume_at' => $context['start']))))); |
|
653 | 665 | } |
654 | 666 | |
655 | 667 | // Since there are still two steps to go, 80% is the maximum here. |
@@ -660,9 +672,9 @@ discard block |
||
660 | 672 | // Step 2: removing the words that occur too often and are of no use. |
661 | 673 | elseif ($context['step'] === 2) |
662 | 674 | { |
663 | - if ($context['index_settings']['bytes_per_word'] < 4) |
|
664 | - $context['step'] = 3; |
|
665 | - else |
|
675 | + if ($context['index_settings']['bytes_per_word'] < 4) { |
|
676 | + $context['step'] = 3; |
|
677 | + } else |
|
666 | 678 | { |
667 | 679 | $stop_words = $context['start'] === 0 || empty($modSettings['search_stopwords']) ? array() : explode(',', $modSettings['search_stopwords']); |
668 | 680 | $stop = time() + 3; |
@@ -683,20 +695,22 @@ discard block |
||
683 | 695 | 'minimum_messages' => $max_messages, |
684 | 696 | ) |
685 | 697 | ); |
686 | - while ($row = $smcFunc['db_fetch_assoc']($request)) |
|
687 | - $stop_words[] = $row['id_word']; |
|
698 | + while ($row = $smcFunc['db_fetch_assoc']($request)) { |
|
699 | + $stop_words[] = $row['id_word']; |
|
700 | + } |
|
688 | 701 | $smcFunc['db_free_result']($request); |
689 | 702 | |
690 | 703 | updateSettings(array('search_stopwords' => implode(',', $stop_words))); |
691 | 704 | |
692 | - if (!empty($stop_words)) |
|
693 | - $smcFunc['db_query']('', ' |
|
705 | + if (!empty($stop_words)) { |
|
706 | + $smcFunc['db_query']('', ' |
|
694 | 707 | DELETE FROM {db_prefix}log_search_words |
695 | 708 | WHERE id_word in ({array_int:stop_words})', |
696 | 709 | array( |
697 | 710 | 'stop_words' => $stop_words, |
698 | 711 | ) |
699 | 712 | ); |
713 | + } |
|
700 | 714 | |
701 | 715 | $context['start'] += $index_properties[$context['index_settings']['bytes_per_word']]['step_size']; |
702 | 716 | if ($context['start'] > $index_properties[$context['index_settings']['bytes_per_word']]['max_size']) |
@@ -757,8 +771,9 @@ discard block |
||
757 | 771 | $searchAPI = new $search_class_name(); |
758 | 772 | |
759 | 773 | // No Support? NEXT! |
760 | - if (!$searchAPI->is_supported) |
|
761 | - continue; |
|
774 | + if (!$searchAPI->is_supported) { |
|
775 | + continue; |
|
776 | + } |
|
762 | 777 | |
763 | 778 | $apis[$index_name] = array( |
764 | 779 | 'filename' => $file, |
@@ -805,10 +820,10 @@ discard block |
||
805 | 820 | 'messages_ftx' => $db_prefix . 'messages_ftx', |
806 | 821 | ) |
807 | 822 | ); |
808 | - while ($row = $smcFunc['db_fetch_assoc']($request)) |
|
809 | - $context['fulltext_index'][] = $row['indexname']; |
|
810 | - } |
|
811 | - else |
|
823 | + while ($row = $smcFunc['db_fetch_assoc']($request)) { |
|
824 | + $context['fulltext_index'][] = $row['indexname']; |
|
825 | + } |
|
826 | + } else |
|
812 | 827 | { |
813 | 828 | $request = $smcFunc['db_query']('', ' |
814 | 829 | SHOW INDEX |
@@ -819,17 +834,19 @@ discard block |
||
819 | 834 | $context['fulltext_index'] = array(); |
820 | 835 | if ($request !== false || $smcFunc['db_num_rows']($request) != 0) |
821 | 836 | { |
822 | - while ($row = $smcFunc['db_fetch_assoc']($request)) |
|
823 | - if ($row['Column_name'] == 'body' && (isset($row['Index_type']) && $row['Index_type'] == 'FULLTEXT' || isset($row['Comment']) && $row['Comment'] == 'FULLTEXT')) |
|
837 | + while ($row = $smcFunc['db_fetch_assoc']($request)) { |
|
838 | + if ($row['Column_name'] == 'body' && (isset($row['Index_type']) && $row['Index_type'] == 'FULLTEXT' || isset($row['Comment']) && $row['Comment'] == 'FULLTEXT')) |
|
824 | 839 | $context['fulltext_index'][] = $row['Key_name']; |
840 | + } |
|
825 | 841 | $smcFunc['db_free_result']($request); |
826 | 842 | |
827 | - if (is_array($context['fulltext_index'])) |
|
828 | - $context['fulltext_index'] = array_unique($context['fulltext_index']); |
|
843 | + if (is_array($context['fulltext_index'])) { |
|
844 | + $context['fulltext_index'] = array_unique($context['fulltext_index']); |
|
845 | + } |
|
829 | 846 | } |
830 | 847 | |
831 | - if (preg_match('~^`(.+?)`\.(.+?)$~', $db_prefix, $match) !== 0) |
|
832 | - $request = $smcFunc['db_query']('', ' |
|
848 | + if (preg_match('~^`(.+?)`\.(.+?)$~', $db_prefix, $match) !== 0) { |
|
849 | + $request = $smcFunc['db_query']('', ' |
|
833 | 850 | SHOW TABLE STATUS |
834 | 851 | FROM {string:database_name} |
835 | 852 | LIKE {string:table_name}', |
@@ -838,20 +855,22 @@ discard block |
||
838 | 855 | 'table_name' => str_replace('_', '\_', $match[2]) . 'messages', |
839 | 856 | ) |
840 | 857 | ); |
841 | - else |
|
842 | - $request = $smcFunc['db_query']('', ' |
|
858 | + } else { |
|
859 | + $request = $smcFunc['db_query']('', ' |
|
843 | 860 | SHOW TABLE STATUS |
844 | 861 | LIKE {string:table_name}', |
845 | 862 | array( |
846 | 863 | 'table_name' => str_replace('_', '\_', $db_prefix) . 'messages', |
847 | 864 | ) |
848 | 865 | ); |
866 | + } |
|
849 | 867 | |
850 | 868 | if ($request !== false) |
851 | 869 | { |
852 | - while ($row = $smcFunc['db_fetch_assoc']($request)) |
|
853 | - if (isset($row['Engine']) && strtolower($row['Engine']) != 'myisam' && !(strtolower($row['Engine']) == 'innodb' && version_compare($smcFunc['db_get_version'], '5.6.4', '>='))) |
|
870 | + while ($row = $smcFunc['db_fetch_assoc']($request)) { |
|
871 | + if (isset($row['Engine']) && strtolower($row['Engine']) != 'myisam' && !(strtolower($row['Engine']) == 'innodb' && version_compare($smcFunc['db_get_version'], '5.6.4', '>='))) |
|
854 | 872 | $context['cannot_create_fulltext'] = true; |
873 | + } |
|
855 | 874 | $smcFunc['db_free_result']($request); |
856 | 875 | } |
857 | 876 | } |
@@ -14,8 +14,9 @@ discard block |
||
14 | 14 | * @version 2.1 Beta 4 |
15 | 15 | */ |
16 | 16 | |
17 | -if (!defined('SMF')) |
|
17 | +if (!defined('SMF')) { |
|
18 | 18 | die('No direct access...'); |
19 | +} |
|
19 | 20 | |
20 | 21 | /** |
21 | 22 | * Entrance point for the registration center, it checks permissions and forwards |
@@ -31,8 +32,9 @@ discard block |
||
31 | 32 | global $context, $txt; |
32 | 33 | |
33 | 34 | // Old templates might still request this. |
34 | - if (isset($_REQUEST['sa']) && $_REQUEST['sa'] == 'browse') |
|
35 | - redirectexit('action=admin;area=viewmembers;sa=browse' . (isset($_REQUEST['type']) ? ';type=' . $_REQUEST['type'] : '')); |
|
35 | + if (isset($_REQUEST['sa']) && $_REQUEST['sa'] == 'browse') { |
|
36 | + redirectexit('action=admin;area=viewmembers;sa=browse' . (isset($_REQUEST['type']) ? ';type=' . $_REQUEST['type'] : '')); |
|
37 | + } |
|
36 | 38 | |
37 | 39 | $subActions = array( |
38 | 40 | 'register' => array('AdminRegister', 'moderate_forum'), |
@@ -99,9 +101,10 @@ discard block |
||
99 | 101 | checkSession(); |
100 | 102 | validateToken('admin-regc'); |
101 | 103 | |
102 | - foreach ($_POST as $key => $value) |
|
103 | - if (!is_array($_POST[$key])) |
|
104 | + foreach ($_POST as $key => $value) { |
|
105 | + if (!is_array($_POST[$key])) |
|
104 | 106 | $_POST[$key] = htmltrim__recursive(str_replace(array("\n", "\r"), '', $_POST[$key])); |
107 | + } |
|
105 | 108 | |
106 | 109 | $regOptions = array( |
107 | 110 | 'interface' => 'admin', |
@@ -161,12 +164,13 @@ discard block |
||
161 | 164 | ) |
162 | 165 | ); |
163 | 166 | $context['member_groups'] = array(0 => $txt['admin_register_group_none']); |
164 | - while ($row = $smcFunc['db_fetch_assoc']($request)) |
|
165 | - $context['member_groups'][$row['id_group']] = $row['group_name']; |
|
167 | + while ($row = $smcFunc['db_fetch_assoc']($request)) { |
|
168 | + $context['member_groups'][$row['id_group']] = $row['group_name']; |
|
169 | + } |
|
166 | 170 | $smcFunc['db_free_result']($request); |
171 | + } else { |
|
172 | + $context['member_groups'] = array(); |
|
167 | 173 | } |
168 | - else |
|
169 | - $context['member_groups'] = array(); |
|
170 | 174 | |
171 | 175 | // Basic stuff. |
172 | 176 | $context['sub_template'] = 'admin_register'; |
@@ -207,8 +211,9 @@ discard block |
||
207 | 211 | { |
208 | 212 | $context['editable_agreements']['.' . $lang['filename']] = $lang['name']; |
209 | 213 | // Are we editing this? |
210 | - if (isset($_POST['agree_lang']) && $_POST['agree_lang'] == '.' . $lang['filename']) |
|
211 | - $context['current_agreement'] = '.' . $lang['filename']; |
|
214 | + if (isset($_POST['agree_lang']) && $_POST['agree_lang'] == '.' . $lang['filename']) { |
|
215 | + $context['current_agreement'] = '.' . $lang['filename']; |
|
216 | + } |
|
212 | 217 | } |
213 | 218 | } |
214 | 219 | |
@@ -223,10 +228,11 @@ discard block |
||
223 | 228 | |
224 | 229 | updateSettings(array('requireAgreement' => !empty($_POST['requireAgreement']))); |
225 | 230 | |
226 | - if ($bytes == strlen($to_write)) |
|
227 | - $context['saved_successful'] = true; |
|
228 | - else |
|
229 | - $context['could_not_save'] = true; |
|
231 | + if ($bytes == strlen($to_write)) { |
|
232 | + $context['saved_successful'] = true; |
|
233 | + } else { |
|
234 | + $context['could_not_save'] = true; |
|
235 | + } |
|
230 | 236 | } |
231 | 237 | |
232 | 238 | $context['agreement'] = file_exists($boarddir . '/agreement' . $context['current_agreement'] . '.txt') ? $smcFunc['htmlspecialchars'](file_get_contents($boarddir . '/agreement' . $context['current_agreement'] . '.txt')) : ''; |
@@ -310,8 +316,9 @@ discard block |
||
310 | 316 | |
311 | 317 | call_integration_hook('integrate_modify_registration_settings', array(&$config_vars)); |
312 | 318 | |
313 | - if ($return_config) |
|
314 | - return $config_vars; |
|
319 | + if ($return_config) { |
|
320 | + return $config_vars; |
|
321 | + } |
|
315 | 322 | |
316 | 323 | // Setup the template |
317 | 324 | $context['sub_template'] = 'show_settings'; |
@@ -322,8 +329,9 @@ discard block |
||
322 | 329 | checkSession(); |
323 | 330 | |
324 | 331 | // Are there some contacts missing? |
325 | - if (!empty($_POST['coppaAge']) && !empty($_POST['coppaType']) && empty($_POST['coppaPost']) && empty($_POST['coppaFax'])) |
|
326 | - fatal_lang_error('admin_setting_coppa_require_contact'); |
|
332 | + if (!empty($_POST['coppaAge']) && !empty($_POST['coppaType']) && empty($_POST['coppaPost']) && empty($_POST['coppaFax'])) { |
|
333 | + fatal_lang_error('admin_setting_coppa_require_contact'); |
|
334 | + } |
|
327 | 335 | |
328 | 336 | // Post needs to take into account line breaks. |
329 | 337 | $_POST['coppaPost'] = str_replace("\n", '<br>', empty($_POST['coppaPost']) ? '' : $_POST['coppaPost']); |
@@ -15,8 +15,9 @@ discard block |
||
15 | 15 | * @version 2.1 Beta 4 |
16 | 16 | */ |
17 | 17 | |
18 | -if (!defined('SMF')) |
|
18 | +if (!defined('SMF')) { |
|
19 | 19 | die('No direct access...'); |
20 | +} |
|
20 | 21 | |
21 | 22 | /** |
22 | 23 | * The main designating function for modifying profiles. Loads up info, determins what to do, etc. |
@@ -29,18 +30,21 @@ discard block |
||
29 | 30 | global $modSettings, $memberContext, $profile_vars, $post_errors, $smcFunc; |
30 | 31 | |
31 | 32 | // Don't reload this as we may have processed error strings. |
32 | - if (empty($post_errors)) |
|
33 | - loadLanguage('Profile+Drafts'); |
|
33 | + if (empty($post_errors)) { |
|
34 | + loadLanguage('Profile+Drafts'); |
|
35 | + } |
|
34 | 36 | loadTemplate('Profile'); |
35 | 37 | |
36 | 38 | require_once($sourcedir . '/Subs-Menu.php'); |
37 | 39 | |
38 | 40 | // Did we get the user by name... |
39 | - if (isset($_REQUEST['user'])) |
|
40 | - $memberResult = loadMemberData($_REQUEST['user'], true, 'profile'); |
|
41 | + if (isset($_REQUEST['user'])) { |
|
42 | + $memberResult = loadMemberData($_REQUEST['user'], true, 'profile'); |
|
43 | + } |
|
41 | 44 | // ... or by id_member? |
42 | - elseif (!empty($_REQUEST['u'])) |
|
43 | - $memberResult = loadMemberData((int) $_REQUEST['u'], false, 'profile'); |
|
45 | + elseif (!empty($_REQUEST['u'])) { |
|
46 | + $memberResult = loadMemberData((int) $_REQUEST['u'], false, 'profile'); |
|
47 | + } |
|
44 | 48 | // If it was just ?action=profile, edit your own profile, but only if you're not a guest. |
45 | 49 | else |
46 | 50 | { |
@@ -50,8 +54,9 @@ discard block |
||
50 | 54 | } |
51 | 55 | |
52 | 56 | // Check if loadMemberData() has returned a valid result. |
53 | - if (!$memberResult) |
|
54 | - fatal_lang_error('not_a_user', false, 404); |
|
57 | + if (!$memberResult) { |
|
58 | + fatal_lang_error('not_a_user', false, 404); |
|
59 | + } |
|
55 | 60 | |
56 | 61 | // If all went well, we have a valid member ID! |
57 | 62 | list ($memID) = $memberResult; |
@@ -67,8 +72,9 @@ discard block |
||
67 | 72 | |
68 | 73 | // Group management isn't actually a permission. But we need it to be for this, so we need a phantom permission. |
69 | 74 | // And we care about what the current user can do, not what the user whose profile it is. |
70 | - if ($user_info['mod_cache']['gq'] != '0=1') |
|
71 | - $user_info['permissions'][] = 'approve_group_requests'; |
|
75 | + if ($user_info['mod_cache']['gq'] != '0=1') { |
|
76 | + $user_info['permissions'][] = 'approve_group_requests'; |
|
77 | + } |
|
72 | 78 | |
73 | 79 | // If paid subscriptions are enabled, make sure we actually have at least one subscription available... |
74 | 80 | $context['subs_available'] = false; |
@@ -436,21 +442,25 @@ discard block |
||
436 | 442 | foreach ($section['areas'] as $area_id => $area) |
437 | 443 | { |
438 | 444 | // If it said no permissions that meant it wasn't valid! |
439 | - if (empty($area['permission'][$context['user']['is_owner'] ? 'own' : 'any'])) |
|
440 | - $profile_areas[$section_id]['areas'][$area_id]['enabled'] = false; |
|
445 | + if (empty($area['permission'][$context['user']['is_owner'] ? 'own' : 'any'])) { |
|
446 | + $profile_areas[$section_id]['areas'][$area_id]['enabled'] = false; |
|
447 | + } |
|
441 | 448 | // Otherwise pick the right set. |
442 | - else |
|
443 | - $profile_areas[$section_id]['areas'][$area_id]['permission'] = $area['permission'][$context['user']['is_owner'] ? 'own' : 'any']; |
|
449 | + else { |
|
450 | + $profile_areas[$section_id]['areas'][$area_id]['permission'] = $area['permission'][$context['user']['is_owner'] ? 'own' : 'any']; |
|
451 | + } |
|
444 | 452 | |
445 | 453 | // Password required in most cases |
446 | - if (!empty($area['password'])) |
|
447 | - $context['password_areas'][] = $area_id; |
|
454 | + if (!empty($area['password'])) { |
|
455 | + $context['password_areas'][] = $area_id; |
|
456 | + } |
|
448 | 457 | } |
449 | 458 | } |
450 | 459 | |
451 | 460 | // Is there an updated message to show? |
452 | - if (isset($_GET['updated'])) |
|
453 | - $context['profile_updated'] = $txt['profile_updated_own']; |
|
461 | + if (isset($_GET['updated'])) { |
|
462 | + $context['profile_updated'] = $txt['profile_updated_own']; |
|
463 | + } |
|
454 | 464 | |
455 | 465 | // Set a few options for the menu. |
456 | 466 | $menuOptions = array( |
@@ -465,8 +475,9 @@ discard block |
||
465 | 475 | $profile_include_data = createMenu($profile_areas, $menuOptions); |
466 | 476 | |
467 | 477 | // No menu means no access. |
468 | - if (!$profile_include_data && (!$user_info['is_guest'] || validateSession())) |
|
469 | - fatal_lang_error('no_access', false); |
|
478 | + if (!$profile_include_data && (!$user_info['is_guest'] || validateSession())) { |
|
479 | + fatal_lang_error('no_access', false); |
|
480 | + } |
|
470 | 481 | |
471 | 482 | // Make a note of the Unique ID for this menu. |
472 | 483 | $context['profile_menu_id'] = $context['max_menu_id']; |
@@ -492,8 +503,9 @@ discard block |
||
492 | 503 | if ($current_area == $area_id) |
493 | 504 | { |
494 | 505 | // This can't happen - but is a security check. |
495 | - if ((isset($section['enabled']) && $section['enabled'] == false) || (isset($area['enabled']) && $area['enabled'] == false)) |
|
496 | - fatal_lang_error('no_access', false); |
|
506 | + if ((isset($section['enabled']) && $section['enabled'] == false) || (isset($area['enabled']) && $area['enabled'] == false)) { |
|
507 | + fatal_lang_error('no_access', false); |
|
508 | + } |
|
497 | 509 | |
498 | 510 | // Are we saving data in a valid area? |
499 | 511 | if (isset($area['sc']) && (isset($_REQUEST['save']) || $context['do_preview'])) |
@@ -512,12 +524,14 @@ discard block |
||
512 | 524 | } |
513 | 525 | |
514 | 526 | // Does this require session validating? |
515 | - if (!empty($area['validate']) || (isset($_REQUEST['save']) && !$context['user']['is_owner'])) |
|
516 | - $security_checks['validate'] = true; |
|
527 | + if (!empty($area['validate']) || (isset($_REQUEST['save']) && !$context['user']['is_owner'])) { |
|
528 | + $security_checks['validate'] = true; |
|
529 | + } |
|
517 | 530 | |
518 | 531 | // Permissions for good measure. |
519 | - if (!empty($profile_include_data['permission'])) |
|
520 | - $security_checks['permission'] = $profile_include_data['permission']; |
|
532 | + if (!empty($profile_include_data['permission'])) { |
|
533 | + $security_checks['permission'] = $profile_include_data['permission']; |
|
534 | + } |
|
521 | 535 | |
522 | 536 | // Either way got something. |
523 | 537 | $found_area = true; |
@@ -526,21 +540,26 @@ discard block |
||
526 | 540 | } |
527 | 541 | |
528 | 542 | // Oh dear, some serious security lapse is going on here... we'll put a stop to that! |
529 | - if (!$found_area) |
|
530 | - fatal_lang_error('no_access', false); |
|
543 | + if (!$found_area) { |
|
544 | + fatal_lang_error('no_access', false); |
|
545 | + } |
|
531 | 546 | |
532 | 547 | // Release this now. |
533 | 548 | unset($profile_areas); |
534 | 549 | |
535 | 550 | // Now the context is setup have we got any security checks to carry out additional to that above? |
536 | - if (isset($security_checks['session'])) |
|
537 | - checkSession($security_checks['session']); |
|
538 | - if (isset($security_checks['validate'])) |
|
539 | - validateSession(); |
|
540 | - if (isset($security_checks['validateToken'])) |
|
541 | - validateToken($token_name, $token_type); |
|
542 | - if (isset($security_checks['permission'])) |
|
543 | - isAllowedTo($security_checks['permission']); |
|
551 | + if (isset($security_checks['session'])) { |
|
552 | + checkSession($security_checks['session']); |
|
553 | + } |
|
554 | + if (isset($security_checks['validate'])) { |
|
555 | + validateSession(); |
|
556 | + } |
|
557 | + if (isset($security_checks['validateToken'])) { |
|
558 | + validateToken($token_name, $token_type); |
|
559 | + } |
|
560 | + if (isset($security_checks['permission'])) { |
|
561 | + isAllowedTo($security_checks['permission']); |
|
562 | + } |
|
544 | 563 | |
545 | 564 | // Create a token if needed. |
546 | 565 | if (isset($security_checks['needsToken']) || isset($security_checks['validateToken'])) |
@@ -550,8 +569,9 @@ discard block |
||
550 | 569 | } |
551 | 570 | |
552 | 571 | // File to include? |
553 | - if (isset($profile_include_data['file'])) |
|
554 | - require_once($sourcedir . '/' . $profile_include_data['file']); |
|
572 | + if (isset($profile_include_data['file'])) { |
|
573 | + require_once($sourcedir . '/' . $profile_include_data['file']); |
|
574 | + } |
|
555 | 575 | |
556 | 576 | // Build the link tree. |
557 | 577 | $context['linktree'][] = array( |
@@ -559,17 +579,19 @@ discard block |
||
559 | 579 | 'name' => sprintf($txt['profile_of_username'], $context['member']['name']), |
560 | 580 | ); |
561 | 581 | |
562 | - if (!empty($profile_include_data['label'])) |
|
563 | - $context['linktree'][] = array( |
|
582 | + if (!empty($profile_include_data['label'])) { |
|
583 | + $context['linktree'][] = array( |
|
564 | 584 | 'url' => $scripturl . '?action=profile' . ($memID != $user_info['id'] ? ';u=' . $memID : '') . ';area=' . $profile_include_data['current_area'], |
565 | 585 | 'name' => $profile_include_data['label'], |
566 | 586 | ); |
587 | + } |
|
567 | 588 | |
568 | - if (!empty($profile_include_data['current_subsection']) && $profile_include_data['subsections'][$profile_include_data['current_subsection']][0] != $profile_include_data['label']) |
|
569 | - $context['linktree'][] = array( |
|
589 | + if (!empty($profile_include_data['current_subsection']) && $profile_include_data['subsections'][$profile_include_data['current_subsection']][0] != $profile_include_data['label']) { |
|
590 | + $context['linktree'][] = array( |
|
570 | 591 | 'url' => $scripturl . '?action=profile' . ($memID != $user_info['id'] ? ';u=' . $memID : '') . ';area=' . $profile_include_data['current_area'] . ';sa=' . $profile_include_data['current_subsection'], |
571 | 592 | 'name' => $profile_include_data['subsections'][$profile_include_data['current_subsection']][0], |
572 | 593 | ); |
594 | + } |
|
573 | 595 | |
574 | 596 | // Set the template for this area and add the profile layer. |
575 | 597 | $context['sub_template'] = $profile_include_data['function']; |
@@ -595,12 +617,14 @@ discard block |
||
595 | 617 | if ($check_password) |
596 | 618 | { |
597 | 619 | // Check to ensure we're forcing SSL for authentication |
598 | - if (!empty($modSettings['force_ssl']) && empty($maintenance) && (!isset($_SERVER['HTTPS']) || $_SERVER['HTTPS'] != 'on')) |
|
599 | - fatal_lang_error('login_ssl_required'); |
|
620 | + if (!empty($modSettings['force_ssl']) && empty($maintenance) && (!isset($_SERVER['HTTPS']) || $_SERVER['HTTPS'] != 'on')) { |
|
621 | + fatal_lang_error('login_ssl_required'); |
|
622 | + } |
|
600 | 623 | |
601 | 624 | // You didn't even enter a password! |
602 | - if (trim($_POST['oldpasswrd']) == '') |
|
603 | - $post_errors[] = 'no_password'; |
|
625 | + if (trim($_POST['oldpasswrd']) == '') { |
|
626 | + $post_errors[] = 'no_password'; |
|
627 | + } |
|
604 | 628 | |
605 | 629 | // Since the password got modified due to all the $_POST cleaning, lets undo it so we can get the correct password |
606 | 630 | $_POST['oldpasswrd'] = un_htmlspecialchars($_POST['oldpasswrd']); |
@@ -609,33 +633,35 @@ discard block |
||
609 | 633 | $good_password = in_array(true, call_integration_hook('integrate_verify_password', array($cur_profile['member_name'], $_POST['oldpasswrd'], false)), true); |
610 | 634 | |
611 | 635 | // Bad password!!! |
612 | - if (!$good_password && !hash_verify_password($user_profile[$memID]['member_name'], un_htmlspecialchars(stripslashes($_POST['oldpasswrd'])), $user_info['passwd'])) |
|
613 | - $post_errors[] = 'bad_password'; |
|
636 | + if (!$good_password && !hash_verify_password($user_profile[$memID]['member_name'], un_htmlspecialchars(stripslashes($_POST['oldpasswrd'])), $user_info['passwd'])) { |
|
637 | + $post_errors[] = 'bad_password'; |
|
638 | + } |
|
614 | 639 | |
615 | 640 | // Warn other elements not to jump the gun and do custom changes! |
616 | - if (in_array('bad_password', $post_errors)) |
|
617 | - $context['password_auth_failed'] = true; |
|
641 | + if (in_array('bad_password', $post_errors)) { |
|
642 | + $context['password_auth_failed'] = true; |
|
643 | + } |
|
618 | 644 | } |
619 | 645 | |
620 | 646 | // Change the IP address in the database. |
621 | - if ($context['user']['is_owner']) |
|
622 | - $profile_vars['member_ip'] = $user_info['ip']; |
|
647 | + if ($context['user']['is_owner']) { |
|
648 | + $profile_vars['member_ip'] = $user_info['ip']; |
|
649 | + } |
|
623 | 650 | |
624 | 651 | // Now call the sub-action function... |
625 | 652 | if ($current_area == 'activateaccount') |
626 | 653 | { |
627 | - if (empty($post_errors)) |
|
628 | - activateAccount($memID); |
|
629 | - } |
|
630 | - elseif ($current_area == 'deleteaccount') |
|
654 | + if (empty($post_errors)) { |
|
655 | + activateAccount($memID); |
|
656 | + } |
|
657 | + } elseif ($current_area == 'deleteaccount') |
|
631 | 658 | { |
632 | 659 | if (empty($post_errors)) |
633 | 660 | { |
634 | 661 | deleteAccount2($memID); |
635 | 662 | redirectexit(); |
636 | 663 | } |
637 | - } |
|
638 | - elseif ($current_area == 'groupmembership' && empty($post_errors)) |
|
664 | + } elseif ($current_area == 'groupmembership' && empty($post_errors)) |
|
639 | 665 | { |
640 | 666 | $msg = groupMembership2($profile_vars, $post_errors, $memID); |
641 | 667 | |
@@ -646,10 +672,9 @@ discard block |
||
646 | 672 | elseif ($current_area == 'authentication') |
647 | 673 | { |
648 | 674 | authentication($memID, true); |
649 | - } |
|
650 | - elseif (in_array($current_area, array('account', 'forumprofile', 'theme'))) |
|
651 | - saveProfileFields(); |
|
652 | - else |
|
675 | + } elseif (in_array($current_area, array('account', 'forumprofile', 'theme'))) { |
|
676 | + saveProfileFields(); |
|
677 | + } else |
|
653 | 678 | { |
654 | 679 | $force_redirect = true; |
655 | 680 | // Ensure we include this. |
@@ -665,34 +690,36 @@ discard block |
||
665 | 690 | // Load the language file so we can give a nice explanation of the errors. |
666 | 691 | loadLanguage('Errors'); |
667 | 692 | $context['post_errors'] = $post_errors; |
668 | - } |
|
669 | - elseif (!empty($profile_vars)) |
|
693 | + } elseif (!empty($profile_vars)) |
|
670 | 694 | { |
671 | 695 | // If we've changed the password, notify any integration that may be listening in. |
672 | - if (isset($profile_vars['passwd'])) |
|
673 | - call_integration_hook('integrate_reset_pass', array($cur_profile['member_name'], $cur_profile['member_name'], $_POST['passwrd2'])); |
|
696 | + if (isset($profile_vars['passwd'])) { |
|
697 | + call_integration_hook('integrate_reset_pass', array($cur_profile['member_name'], $cur_profile['member_name'], $_POST['passwrd2'])); |
|
698 | + } |
|
674 | 699 | |
675 | 700 | updateMemberData($memID, $profile_vars); |
676 | 701 | |
677 | 702 | // What if this is the newest member? |
678 | - if ($modSettings['latestMember'] == $memID) |
|
679 | - updateStats('member'); |
|
680 | - elseif (isset($profile_vars['real_name'])) |
|
681 | - updateSettings(array('memberlist_updated' => time())); |
|
703 | + if ($modSettings['latestMember'] == $memID) { |
|
704 | + updateStats('member'); |
|
705 | + } elseif (isset($profile_vars['real_name'])) { |
|
706 | + updateSettings(array('memberlist_updated' => time())); |
|
707 | + } |
|
682 | 708 | |
683 | 709 | // If the member changed his/her birthdate, update calendar statistics. |
684 | - if (isset($profile_vars['birthdate']) || isset($profile_vars['real_name'])) |
|
685 | - updateSettings(array( |
|
710 | + if (isset($profile_vars['birthdate']) || isset($profile_vars['real_name'])) { |
|
711 | + updateSettings(array( |
|
686 | 712 | 'calendar_updated' => time(), |
687 | 713 | )); |
714 | + } |
|
688 | 715 | |
689 | 716 | // Anything worth logging? |
690 | 717 | if (!empty($context['log_changes']) && !empty($modSettings['modlog_enabled'])) |
691 | 718 | { |
692 | 719 | $log_changes = array(); |
693 | 720 | require_once($sourcedir . '/Logging.php'); |
694 | - foreach ($context['log_changes'] as $k => $v) |
|
695 | - $log_changes[] = array( |
|
721 | + foreach ($context['log_changes'] as $k => $v) { |
|
722 | + $log_changes[] = array( |
|
696 | 723 | 'action' => $k, |
697 | 724 | 'log_type' => 'user', |
698 | 725 | 'extra' => array_merge($v, array( |
@@ -700,14 +727,16 @@ discard block |
||
700 | 727 | 'member_affected' => $memID, |
701 | 728 | )), |
702 | 729 | ); |
730 | + } |
|
703 | 731 | |
704 | 732 | logActions($log_changes); |
705 | 733 | } |
706 | 734 | |
707 | 735 | // Have we got any post save functions to execute? |
708 | - if (!empty($context['profile_execute_on_save'])) |
|
709 | - foreach ($context['profile_execute_on_save'] as $saveFunc) |
|
736 | + if (!empty($context['profile_execute_on_save'])) { |
|
737 | + foreach ($context['profile_execute_on_save'] as $saveFunc) |
|
710 | 738 | $saveFunc(); |
739 | + } |
|
711 | 740 | |
712 | 741 | // Let them know it worked! |
713 | 742 | $context['profile_updated'] = $context['user']['is_owner'] ? $txt['profile_updated_own'] : sprintf($txt['profile_updated_else'], $cur_profile['member_name']); |
@@ -721,27 +750,31 @@ discard block |
||
721 | 750 | if (!empty($post_errors)) |
722 | 751 | { |
723 | 752 | // Set all the errors so the template knows what went wrong. |
724 | - foreach ($post_errors as $error_type) |
|
725 | - $context['modify_error'][$error_type] = true; |
|
753 | + foreach ($post_errors as $error_type) { |
|
754 | + $context['modify_error'][$error_type] = true; |
|
755 | + } |
|
726 | 756 | } |
727 | 757 | // If it's you then we should redirect upon save. |
728 | - elseif (!empty($profile_vars) && $context['user']['is_owner'] && !$context['do_preview']) |
|
729 | - redirectexit('action=profile;area=' . $current_area . (!empty($current_sa) ? ';sa=' . $current_sa : '') . ';updated'); |
|
730 | - elseif (!empty($force_redirect)) |
|
731 | - redirectexit('action=profile' . ($context['user']['is_owner'] ? '' : ';u=' . $memID) . ';area=' . $current_area); |
|
758 | + elseif (!empty($profile_vars) && $context['user']['is_owner'] && !$context['do_preview']) { |
|
759 | + redirectexit('action=profile;area=' . $current_area . (!empty($current_sa) ? ';sa=' . $current_sa : '') . ';updated'); |
|
760 | + } elseif (!empty($force_redirect)) { |
|
761 | + redirectexit('action=profile' . ($context['user']['is_owner'] ? '' : ';u=' . $memID) . ';area=' . $current_area); |
|
762 | + } |
|
732 | 763 | |
733 | 764 | |
734 | 765 | // Get the right callable. |
735 | 766 | $call = call_helper($profile_include_data['function'], true); |
736 | 767 | |
737 | 768 | // Is it valid? |
738 | - if (!empty($call)) |
|
739 | - call_user_func($call, $memID); |
|
769 | + if (!empty($call)) { |
|
770 | + call_user_func($call, $memID); |
|
771 | + } |
|
740 | 772 | |
741 | 773 | // Set the page title if it's not already set... |
742 | - if (!isset($context['page_title'])) |
|
743 | - $context['page_title'] = $txt['profile'] . (isset($txt[$current_area]) ? ' - ' . $txt[$current_area] : ''); |
|
744 | -} |
|
774 | + if (!isset($context['page_title'])) { |
|
775 | + $context['page_title'] = $txt['profile'] . (isset($txt[$current_area]) ? ' - ' . $txt[$current_area] : ''); |
|
776 | + } |
|
777 | + } |
|
745 | 778 | |
746 | 779 | /** |
747 | 780 | * Set up the requirements for the profile popup - the area that is shown as the popup menu for the current user. |
@@ -864,16 +897,18 @@ discard block |
||
864 | 897 | if (!allowedTo('admin_forum') && $area != 'register') |
865 | 898 | { |
866 | 899 | // If it's the owner they can see two types of private fields, regardless. |
867 | - if ($memID == $user_info['id']) |
|
868 | - $where .= $area == 'summary' ? ' AND private < 3' : ' AND (private = 0 OR private = 2)'; |
|
869 | - else |
|
870 | - $where .= $area == 'summary' ? ' AND private < 2' : ' AND private = 0'; |
|
900 | + if ($memID == $user_info['id']) { |
|
901 | + $where .= $area == 'summary' ? ' AND private < 3' : ' AND (private = 0 OR private = 2)'; |
|
902 | + } else { |
|
903 | + $where .= $area == 'summary' ? ' AND private < 2' : ' AND private = 0'; |
|
904 | + } |
|
871 | 905 | } |
872 | 906 | |
873 | - if ($area == 'register') |
|
874 | - $where .= ' AND show_reg != 0'; |
|
875 | - elseif ($area != 'summary') |
|
876 | - $where .= ' AND show_profile = {string:area}'; |
|
907 | + if ($area == 'register') { |
|
908 | + $where .= ' AND show_reg != 0'; |
|
909 | + } elseif ($area != 'summary') { |
|
910 | + $where .= ' AND show_profile = {string:area}'; |
|
911 | + } |
|
877 | 912 | |
878 | 913 | // Load all the relevant fields - and data. |
879 | 914 | $request = $smcFunc['db_query']('', ' |
@@ -899,13 +934,15 @@ discard block |
||
899 | 934 | if (isset($_POST['customfield']) && isset($_POST['customfield'][$row['col_name']])) |
900 | 935 | { |
901 | 936 | $value = $smcFunc['htmlspecialchars']($_POST['customfield'][$row['col_name']]); |
902 | - if (in_array($row['field_type'], array('select', 'radio'))) |
|
903 | - $value = ($options = explode(',', $row['field_options'])) && isset($options[$value]) ? $options[$value] : ''; |
|
937 | + if (in_array($row['field_type'], array('select', 'radio'))) { |
|
938 | + $value = ($options = explode(',', $row['field_options'])) && isset($options[$value]) ? $options[$value] : ''; |
|
939 | + } |
|
904 | 940 | } |
905 | 941 | |
906 | 942 | // Don't show the "disabled" option for the "gender" field if we are on the "summary" area. |
907 | - if ($area == 'summary' && $row['col_name'] == 'cust_gender' && $value == 'Disabled') |
|
908 | - continue; |
|
943 | + if ($area == 'summary' && $row['col_name'] == 'cust_gender' && $value == 'Disabled') { |
|
944 | + continue; |
|
945 | + } |
|
909 | 946 | |
910 | 947 | // HTML for the input form. |
911 | 948 | $output_html = $value; |
@@ -914,8 +951,7 @@ discard block |
||
914 | 951 | $true = (!$exists && $row['default_value']) || $value; |
915 | 952 | $input_html = '<input type="checkbox" name="customfield[' . $row['col_name'] . ']" id="customfield[' . $row['col_name'] . ']"' . ($true ? ' checked' : '') . ' class="input_check">'; |
916 | 953 | $output_html = $true ? $txt['yes'] : $txt['no']; |
917 | - } |
|
918 | - elseif ($row['field_type'] == 'select') |
|
954 | + } elseif ($row['field_type'] == 'select') |
|
919 | 955 | { |
920 | 956 | $input_html = '<select name="customfield[' . $row['col_name'] . ']" id="customfield[' . $row['col_name'] . ']"><option value="-1"></option>'; |
921 | 957 | $options = explode(',', $row['field_options']); |
@@ -923,13 +959,13 @@ discard block |
||
923 | 959 | { |
924 | 960 | $true = (!$exists && $row['default_value'] == $v) || $value == $v; |
925 | 961 | $input_html .= '<option value="' . $k . '"' . ($true ? ' selected' : '') . '>' . $v . '</option>'; |
926 | - if ($true) |
|
927 | - $output_html = $v; |
|
962 | + if ($true) { |
|
963 | + $output_html = $v; |
|
964 | + } |
|
928 | 965 | } |
929 | 966 | |
930 | 967 | $input_html .= '</select>'; |
931 | - } |
|
932 | - elseif ($row['field_type'] == 'radio') |
|
968 | + } elseif ($row['field_type'] == 'radio') |
|
933 | 969 | { |
934 | 970 | $input_html = '<fieldset>'; |
935 | 971 | $options = explode(',', $row['field_options']); |
@@ -937,36 +973,37 @@ discard block |
||
937 | 973 | { |
938 | 974 | $true = (!$exists && $row['default_value'] == $v) || $value == $v; |
939 | 975 | $input_html .= '<label for="customfield_' . $row['col_name'] . '_' . $k . '"><input type="radio" name="customfield[' . $row['col_name'] . ']" class="input_radio" id="customfield_' . $row['col_name'] . '_' . $k . '" value="' . $k . '"' . ($true ? ' checked' : '') . '>' . $v . '</label><br>'; |
940 | - if ($true) |
|
941 | - $output_html = $v; |
|
976 | + if ($true) { |
|
977 | + $output_html = $v; |
|
978 | + } |
|
942 | 979 | } |
943 | 980 | $input_html .= '</fieldset>'; |
944 | - } |
|
945 | - elseif ($row['field_type'] == 'text') |
|
981 | + } elseif ($row['field_type'] == 'text') |
|
946 | 982 | { |
947 | 983 | $input_html = '<input type="text" name="customfield[' . $row['col_name'] . ']" id="customfield[' . $row['col_name'] . ']"' . ($row['field_length'] != 0 ? ' maxlength="' . $row['field_length'] . '"' : '') . ' size="' . ($row['field_length'] == 0 || $row['field_length'] >= 50 ? 50 : ($row['field_length'] > 30 ? 30 : ($row['field_length'] > 10 ? 20 : 10))) . '" value="' . un_htmlspecialchars($value) . '" class="input_text"' . ($row['show_reg'] == 2 ? ' required' : '') . '>'; |
948 | - } |
|
949 | - else |
|
984 | + } else |
|
950 | 985 | { |
951 | 986 | @list ($rows, $cols) = @explode(',', $row['default_value']); |
952 | 987 | $input_html = '<textarea name="customfield[' . $row['col_name'] . ']" id="customfield[' . $row['col_name'] . ']"' . (!empty($rows) ? ' rows="' . $rows . '"' : '') . (!empty($cols) ? ' cols="' . $cols . '"' : '') . ($row['show_reg'] == 2 ? ' required' : '') . '>' . un_htmlspecialchars($value) . '</textarea>'; |
953 | 988 | } |
954 | 989 | |
955 | 990 | // Parse BBCode |
956 | - if ($row['bbc']) |
|
957 | - $output_html = parse_bbc($output_html); |
|
958 | - elseif ($row['field_type'] == 'textarea') |
|
959 | - // Allow for newlines at least |
|
991 | + if ($row['bbc']) { |
|
992 | + $output_html = parse_bbc($output_html); |
|
993 | + } elseif ($row['field_type'] == 'textarea') { |
|
994 | + // Allow for newlines at least |
|
960 | 995 | $output_html = strtr($output_html, array("\n" => '<br>')); |
996 | + } |
|
961 | 997 | |
962 | 998 | // Enclosing the user input within some other text? |
963 | - if (!empty($row['enclose']) && !empty($output_html)) |
|
964 | - $output_html = strtr($row['enclose'], array( |
|
999 | + if (!empty($row['enclose']) && !empty($output_html)) { |
|
1000 | + $output_html = strtr($row['enclose'], array( |
|
965 | 1001 | '{SCRIPTURL}' => $scripturl, |
966 | 1002 | '{IMAGES_URL}' => $settings['images_url'], |
967 | 1003 | '{DEFAULT_IMAGES_URL}' => $settings['default_images_url'], |
968 | 1004 | '{INPUT}' => un_htmlspecialchars($output_html), |
969 | 1005 | )); |
1006 | + } |
|
970 | 1007 | |
971 | 1008 | $context['custom_fields'][] = array( |
972 | 1009 | 'name' => $row['field_name'], |
@@ -13,8 +13,9 @@ discard block |
||
13 | 13 | * @version 2.1 Beta 4 |
14 | 14 | */ |
15 | 15 | |
16 | -if (!defined('SMF')) |
|
16 | +if (!defined('SMF')) { |
|
17 | 17 | die('No direct access...'); |
18 | +} |
|
18 | 19 | |
19 | 20 | /** |
20 | 21 | * Dispatches to the right function based on the given subaction. |
@@ -176,8 +177,9 @@ discard block |
||
176 | 177 | // If it's inherited, just add it as a child. |
177 | 178 | if ($row['id_parent'] != -2) |
178 | 179 | { |
179 | - if (isset($context['groups'][$row['id_parent']])) |
|
180 | - $context['groups'][$row['id_parent']]['children'][$row['id_group']] = $row['group_name']; |
|
180 | + if (isset($context['groups'][$row['id_parent']])) { |
|
181 | + $context['groups'][$row['id_parent']]['children'][$row['id_group']] = $row['group_name']; |
|
182 | + } |
|
181 | 183 | continue; |
182 | 184 | } |
183 | 185 | |
@@ -202,10 +204,11 @@ discard block |
||
202 | 204 | 'access' => false, |
203 | 205 | ); |
204 | 206 | |
205 | - if ($row['min_posts'] == -1) |
|
206 | - $normalGroups[$row['id_group']] = $row['id_group']; |
|
207 | - else |
|
208 | - $postGroups[$row['id_group']] = $row['id_group']; |
|
207 | + if ($row['min_posts'] == -1) { |
|
208 | + $normalGroups[$row['id_group']] = $row['id_group']; |
|
209 | + } else { |
|
210 | + $postGroups[$row['id_group']] = $row['id_group']; |
|
211 | + } |
|
209 | 212 | } |
210 | 213 | $smcFunc['db_free_result']($query); |
211 | 214 | |
@@ -221,8 +224,9 @@ discard block |
||
221 | 224 | 'post_group_list' => $postGroups, |
222 | 225 | ) |
223 | 226 | ); |
224 | - while ($row = $smcFunc['db_fetch_assoc']($query)) |
|
225 | - $context['groups'][$row['id_group']]['num_members'] += $row['num_members']; |
|
227 | + while ($row = $smcFunc['db_fetch_assoc']($query)) { |
|
228 | + $context['groups'][$row['id_group']]['num_members'] += $row['num_members']; |
|
229 | + } |
|
226 | 230 | $smcFunc['db_free_result']($query); |
227 | 231 | } |
228 | 232 | |
@@ -238,8 +242,9 @@ discard block |
||
238 | 242 | 'normal_group_list' => $normalGroups, |
239 | 243 | ) |
240 | 244 | ); |
241 | - while ($row = $smcFunc['db_fetch_assoc']($query)) |
|
242 | - $context['groups'][$row['id_group']]['num_members'] += $row['num_members']; |
|
245 | + while ($row = $smcFunc['db_fetch_assoc']($query)) { |
|
246 | + $context['groups'][$row['id_group']]['num_members'] += $row['num_members']; |
|
247 | + } |
|
243 | 248 | $smcFunc['db_free_result']($query); |
244 | 249 | |
245 | 250 | // This one is slower, but it's okay... careful not to count twice! |
@@ -256,15 +261,17 @@ discard block |
||
256 | 261 | 'blank_string' => '', |
257 | 262 | ) |
258 | 263 | ); |
259 | - while ($row = $smcFunc['db_fetch_assoc']($query)) |
|
260 | - $context['groups'][$row['id_group']]['num_members'] += $row['num_members']; |
|
264 | + while ($row = $smcFunc['db_fetch_assoc']($query)) { |
|
265 | + $context['groups'][$row['id_group']]['num_members'] += $row['num_members']; |
|
266 | + } |
|
261 | 267 | $smcFunc['db_free_result']($query); |
262 | 268 | } |
263 | 269 | |
264 | 270 | foreach ($context['groups'] as $id => $data) |
265 | 271 | { |
266 | - if ($data['href'] != '') |
|
267 | - $context['groups'][$id]['link'] = '<a href="' . $data['href'] . '">' . $data['num_members'] . '</a>'; |
|
272 | + if ($data['href'] != '') { |
|
273 | + $context['groups'][$id]['link'] = '<a href="' . $data['href'] . '">' . $data['num_members'] . '</a>'; |
|
274 | + } |
|
268 | 275 | } |
269 | 276 | |
270 | 277 | if (empty($_REQUEST['pid'])) |
@@ -278,9 +285,10 @@ discard block |
||
278 | 285 | 'hidden_permissions' => !empty($context['hidden_permissions']) ? $context['hidden_permissions'] : array(), |
279 | 286 | ) |
280 | 287 | ); |
281 | - while ($row = $smcFunc['db_fetch_assoc']($request)) |
|
282 | - if (isset($context['groups'][(int) $row['id_group']]) && (!empty($row['add_deny']) || $row['id_group'] != -1)) |
|
288 | + while ($row = $smcFunc['db_fetch_assoc']($request)) { |
|
289 | + if (isset($context['groups'][(int) $row['id_group']]) && (!empty($row['add_deny']) || $row['id_group'] != -1)) |
|
283 | 290 | $context['groups'][(int) $row['id_group']]['num_permissions'][empty($row['add_deny']) ? 'denied' : 'allowed'] = $row['num_permissions']; |
291 | + } |
|
284 | 292 | $smcFunc['db_free_result']($request); |
285 | 293 | |
286 | 294 | // Get the "default" profile permissions too. |
@@ -297,17 +305,18 @@ discard block |
||
297 | 305 | ); |
298 | 306 | while ($row = $smcFunc['db_fetch_assoc']($request)) |
299 | 307 | { |
300 | - if (isset($context['groups'][(int) $row['id_group']]) && (!empty($row['add_deny']) || $row['id_group'] != -1)) |
|
301 | - $context['groups'][(int) $row['id_group']]['num_permissions'][empty($row['add_deny']) ? 'denied' : 'allowed'] += $row['num_permissions']; |
|
308 | + if (isset($context['groups'][(int) $row['id_group']]) && (!empty($row['add_deny']) || $row['id_group'] != -1)) { |
|
309 | + $context['groups'][(int) $row['id_group']]['num_permissions'][empty($row['add_deny']) ? 'denied' : 'allowed'] += $row['num_permissions']; |
|
310 | + } |
|
302 | 311 | } |
303 | 312 | $smcFunc['db_free_result']($request); |
304 | - } |
|
305 | - else |
|
313 | + } else |
|
306 | 314 | { |
307 | 315 | $_REQUEST['pid'] = (int) $_REQUEST['pid']; |
308 | 316 | |
309 | - if (!isset($context['profiles'][$_REQUEST['pid']])) |
|
310 | - fatal_lang_error('no_access', false); |
|
317 | + if (!isset($context['profiles'][$_REQUEST['pid']])) { |
|
318 | + fatal_lang_error('no_access', false); |
|
319 | + } |
|
311 | 320 | |
312 | 321 | // Change the selected tab to better reflect that this really is a board profile. |
313 | 322 | $context[$context['admin_menu_name']]['current_subsection'] = 'profiles'; |
@@ -323,8 +332,9 @@ discard block |
||
323 | 332 | ); |
324 | 333 | while ($row = $smcFunc['db_fetch_assoc']($request)) |
325 | 334 | { |
326 | - if (isset($context['groups'][(int) $row['id_group']]) && (!empty($row['add_deny']) || $row['id_group'] != -1)) |
|
327 | - $context['groups'][(int) $row['id_group']]['num_permissions'][empty($row['add_deny']) ? 'denied' : 'allowed'] += $row['num_permissions']; |
|
335 | + if (isset($context['groups'][(int) $row['id_group']]) && (!empty($row['add_deny']) || $row['id_group'] != -1)) { |
|
336 | + $context['groups'][(int) $row['id_group']]['num_permissions'][empty($row['add_deny']) ? 'denied' : 'allowed'] += $row['num_permissions']; |
|
337 | + } |
|
328 | 338 | } |
329 | 339 | $smcFunc['db_free_result']($request); |
330 | 340 | |
@@ -366,8 +376,8 @@ discard block |
||
366 | 376 | |
367 | 377 | if (!empty($changes)) |
368 | 378 | { |
369 | - foreach ($changes as $profile => $boards) |
|
370 | - $smcFunc['db_query']('', ' |
|
379 | + foreach ($changes as $profile => $boards) { |
|
380 | + $smcFunc['db_query']('', ' |
|
371 | 381 | UPDATE {db_prefix}boards |
372 | 382 | SET id_profile = {int:current_profile} |
373 | 383 | WHERE id_board IN ({array_int:board_list})', |
@@ -376,6 +386,7 @@ discard block |
||
376 | 386 | 'current_profile' => $profile, |
377 | 387 | ) |
378 | 388 | ); |
389 | + } |
|
379 | 390 | } |
380 | 391 | |
381 | 392 | $context['edit_all'] = false; |
@@ -400,8 +411,9 @@ discard block |
||
400 | 411 | ); |
401 | 412 | foreach ($boardList[$catid] as $boardid) |
402 | 413 | { |
403 | - if (!isset($context['profiles'][$boards[$boardid]['profile']])) |
|
404 | - $boards[$boardid]['profile'] = 1; |
|
414 | + if (!isset($context['profiles'][$boards[$boardid]['profile']])) { |
|
415 | + $boards[$boardid]['profile'] = 1; |
|
416 | + } |
|
405 | 417 | |
406 | 418 | $context['categories'][$catid]['boards'][$boardid] = array( |
407 | 419 | 'id' => &$boards[$boardid]['id'], |
@@ -433,64 +445,74 @@ discard block |
||
433 | 445 | loadIllegalGuestPermissions(); |
434 | 446 | |
435 | 447 | // Make sure only one of the quick options was selected. |
436 | - if ((!empty($_POST['predefined']) && ((isset($_POST['copy_from']) && $_POST['copy_from'] != 'empty') || !empty($_POST['permissions']))) || (!empty($_POST['copy_from']) && $_POST['copy_from'] != 'empty' && !empty($_POST['permissions']))) |
|
437 | - fatal_lang_error('permissions_only_one_option', false); |
|
448 | + if ((!empty($_POST['predefined']) && ((isset($_POST['copy_from']) && $_POST['copy_from'] != 'empty') || !empty($_POST['permissions']))) || (!empty($_POST['copy_from']) && $_POST['copy_from'] != 'empty' && !empty($_POST['permissions']))) { |
|
449 | + fatal_lang_error('permissions_only_one_option', false); |
|
450 | + } |
|
438 | 451 | |
439 | - if (empty($_POST['group']) || !is_array($_POST['group'])) |
|
440 | - $_POST['group'] = array(); |
|
452 | + if (empty($_POST['group']) || !is_array($_POST['group'])) { |
|
453 | + $_POST['group'] = array(); |
|
454 | + } |
|
441 | 455 | |
442 | 456 | // Only accept numeric values for selected membergroups. |
443 | - foreach ($_POST['group'] as $id => $group_id) |
|
444 | - $_POST['group'][$id] = (int) $group_id; |
|
457 | + foreach ($_POST['group'] as $id => $group_id) { |
|
458 | + $_POST['group'][$id] = (int) $group_id; |
|
459 | + } |
|
445 | 460 | $_POST['group'] = array_unique($_POST['group']); |
446 | 461 | |
447 | - if (empty($_REQUEST['pid'])) |
|
448 | - $_REQUEST['pid'] = 0; |
|
449 | - else |
|
450 | - $_REQUEST['pid'] = (int) $_REQUEST['pid']; |
|
462 | + if (empty($_REQUEST['pid'])) { |
|
463 | + $_REQUEST['pid'] = 0; |
|
464 | + } else { |
|
465 | + $_REQUEST['pid'] = (int) $_REQUEST['pid']; |
|
466 | + } |
|
451 | 467 | |
452 | 468 | // Fix up the old global to the new default! |
453 | 469 | $bid = max(1, $_REQUEST['pid']); |
454 | 470 | |
455 | 471 | // No modifying the predefined profiles. |
456 | - if ($_REQUEST['pid'] > 1 && $_REQUEST['pid'] < 5) |
|
457 | - fatal_lang_error('no_access', false); |
|
472 | + if ($_REQUEST['pid'] > 1 && $_REQUEST['pid'] < 5) { |
|
473 | + fatal_lang_error('no_access', false); |
|
474 | + } |
|
458 | 475 | |
459 | 476 | // Clear out any cached authority. |
460 | 477 | updateSettings(array('settings_updated' => time())); |
461 | 478 | |
462 | 479 | // No groups where selected. |
463 | - if (empty($_POST['group'])) |
|
464 | - redirectexit('action=admin;area=permissions;pid=' . $_REQUEST['pid']); |
|
480 | + if (empty($_POST['group'])) { |
|
481 | + redirectexit('action=admin;area=permissions;pid=' . $_REQUEST['pid']); |
|
482 | + } |
|
465 | 483 | |
466 | 484 | // Set a predefined permission profile. |
467 | 485 | if (!empty($_POST['predefined'])) |
468 | 486 | { |
469 | 487 | // Make sure it's a predefined permission set we expect. |
470 | - if (!in_array($_POST['predefined'], array('restrict', 'standard', 'moderator', 'maintenance'))) |
|
471 | - redirectexit('action=admin;area=permissions;pid=' . $_REQUEST['pid']); |
|
488 | + if (!in_array($_POST['predefined'], array('restrict', 'standard', 'moderator', 'maintenance'))) { |
|
489 | + redirectexit('action=admin;area=permissions;pid=' . $_REQUEST['pid']); |
|
490 | + } |
|
472 | 491 | |
473 | 492 | foreach ($_POST['group'] as $group_id) |
474 | 493 | { |
475 | - if (!empty($_REQUEST['pid'])) |
|
476 | - setPermissionLevel($_POST['predefined'], $group_id, $_REQUEST['pid']); |
|
477 | - else |
|
478 | - setPermissionLevel($_POST['predefined'], $group_id); |
|
494 | + if (!empty($_REQUEST['pid'])) { |
|
495 | + setPermissionLevel($_POST['predefined'], $group_id, $_REQUEST['pid']); |
|
496 | + } else { |
|
497 | + setPermissionLevel($_POST['predefined'], $group_id); |
|
498 | + } |
|
479 | 499 | } |
480 | 500 | } |
481 | 501 | // Set a permission profile based on the permissions of a selected group. |
482 | 502 | elseif ($_POST['copy_from'] != 'empty') |
483 | 503 | { |
484 | 504 | // Just checking the input. |
485 | - if (!is_numeric($_POST['copy_from'])) |
|
486 | - redirectexit('action=admin;area=permissions;pid=' . $_REQUEST['pid']); |
|
505 | + if (!is_numeric($_POST['copy_from'])) { |
|
506 | + redirectexit('action=admin;area=permissions;pid=' . $_REQUEST['pid']); |
|
507 | + } |
|
487 | 508 | |
488 | 509 | // Make sure the group we're copying to is never included. |
489 | 510 | $_POST['group'] = array_diff($_POST['group'], array($_POST['copy_from'])); |
490 | 511 | |
491 | 512 | // No groups left? Too bad. |
492 | - if (empty($_POST['group'])) |
|
493 | - redirectexit('action=admin;area=permissions;pid=' . $_REQUEST['pid']); |
|
513 | + if (empty($_POST['group'])) { |
|
514 | + redirectexit('action=admin;area=permissions;pid=' . $_REQUEST['pid']); |
|
515 | + } |
|
494 | 516 | |
495 | 517 | if (empty($_REQUEST['pid'])) |
496 | 518 | { |
@@ -504,22 +526,26 @@ discard block |
||
504 | 526 | ) |
505 | 527 | ); |
506 | 528 | $target_perm = array(); |
507 | - while ($row = $smcFunc['db_fetch_assoc']($request)) |
|
508 | - $target_perm[$row['permission']] = $row['add_deny']; |
|
529 | + while ($row = $smcFunc['db_fetch_assoc']($request)) { |
|
530 | + $target_perm[$row['permission']] = $row['add_deny']; |
|
531 | + } |
|
509 | 532 | $smcFunc['db_free_result']($request); |
510 | 533 | |
511 | 534 | $inserts = array(); |
512 | - foreach ($_POST['group'] as $group_id) |
|
513 | - foreach ($target_perm as $perm => $add_deny) |
|
535 | + foreach ($_POST['group'] as $group_id) { |
|
536 | + foreach ($target_perm as $perm => $add_deny) |
|
514 | 537 | { |
515 | 538 | // No dodgy permissions please! |
516 | 539 | if (!empty($context['illegal_permissions']) && in_array($perm, $context['illegal_permissions'])) |
517 | 540 | continue; |
518 | - if ($group_id == -1 && in_array($perm, $context['non_guest_permissions'])) |
|
519 | - continue; |
|
541 | + } |
|
542 | + if ($group_id == -1 && in_array($perm, $context['non_guest_permissions'])) { |
|
543 | + continue; |
|
544 | + } |
|
520 | 545 | |
521 | - if ($group_id != 1 && $group_id != 3) |
|
522 | - $inserts[] = array($perm, $group_id, $add_deny); |
|
546 | + if ($group_id != 1 && $group_id != 3) { |
|
547 | + $inserts[] = array($perm, $group_id, $add_deny); |
|
548 | + } |
|
523 | 549 | } |
524 | 550 | |
525 | 551 | // Delete the previous permissions... |
@@ -559,17 +585,19 @@ discard block |
||
559 | 585 | ) |
560 | 586 | ); |
561 | 587 | $target_perm = array(); |
562 | - while ($row = $smcFunc['db_fetch_assoc']($request)) |
|
563 | - $target_perm[$row['permission']] = $row['add_deny']; |
|
588 | + while ($row = $smcFunc['db_fetch_assoc']($request)) { |
|
589 | + $target_perm[$row['permission']] = $row['add_deny']; |
|
590 | + } |
|
564 | 591 | $smcFunc['db_free_result']($request); |
565 | 592 | |
566 | 593 | $inserts = array(); |
567 | - foreach ($_POST['group'] as $group_id) |
|
568 | - foreach ($target_perm as $perm => $add_deny) |
|
594 | + foreach ($_POST['group'] as $group_id) { |
|
595 | + foreach ($target_perm as $perm => $add_deny) |
|
569 | 596 | { |
570 | 597 | // Are these for guests? |
571 | 598 | if ($group_id == -1 && in_array($perm, $context['non_guest_permissions'])) |
572 | 599 | continue; |
600 | + } |
|
573 | 601 | |
574 | 602 | $inserts[] = array($perm, $group_id, $bid, $add_deny); |
575 | 603 | } |
@@ -607,13 +635,14 @@ discard block |
||
607 | 635 | list ($permissionType, $permission) = explode('/', $_POST['permissions']); |
608 | 636 | |
609 | 637 | // Check whether our input is within expected range. |
610 | - if (!in_array($_POST['add_remove'], array('add', 'clear', 'deny')) || !in_array($permissionType, array('membergroup', 'board'))) |
|
611 | - redirectexit('action=admin;area=permissions;pid=' . $_REQUEST['pid']); |
|
638 | + if (!in_array($_POST['add_remove'], array('add', 'clear', 'deny')) || !in_array($permissionType, array('membergroup', 'board'))) { |
|
639 | + redirectexit('action=admin;area=permissions;pid=' . $_REQUEST['pid']); |
|
640 | + } |
|
612 | 641 | |
613 | 642 | if ($_POST['add_remove'] == 'clear') |
614 | 643 | { |
615 | - if ($permissionType == 'membergroup') |
|
616 | - $smcFunc['db_query']('', ' |
|
644 | + if ($permissionType == 'membergroup') { |
|
645 | + $smcFunc['db_query']('', ' |
|
617 | 646 | DELETE FROM {db_prefix}permissions |
618 | 647 | WHERE id_group IN ({array_int:current_group_list}) |
619 | 648 | AND permission = {string:current_permission} |
@@ -624,8 +653,8 @@ discard block |
||
624 | 653 | 'illegal_permissions' => !empty($context['illegal_permissions']) ? $context['illegal_permissions'] : array(), |
625 | 654 | ) |
626 | 655 | ); |
627 | - else |
|
628 | - $smcFunc['db_query']('', ' |
|
656 | + } else { |
|
657 | + $smcFunc['db_query']('', ' |
|
629 | 658 | DELETE FROM {db_prefix}board_permissions |
630 | 659 | WHERE id_group IN ({array_int:current_group_list}) |
631 | 660 | AND id_profile = {int:current_profile} |
@@ -636,6 +665,7 @@ discard block |
||
636 | 665 | 'current_permission' => $permission, |
637 | 666 | ) |
638 | 667 | ); |
668 | + } |
|
639 | 669 | } |
640 | 670 | // Add a permission (either 'set' or 'deny'). |
641 | 671 | else |
@@ -644,32 +674,36 @@ discard block |
||
644 | 674 | $permChange = array(); |
645 | 675 | foreach ($_POST['group'] as $groupID) |
646 | 676 | { |
647 | - if ($groupID == -1 && in_array($permission, $context['non_guest_permissions'])) |
|
648 | - continue; |
|
677 | + if ($groupID == -1 && in_array($permission, $context['non_guest_permissions'])) { |
|
678 | + continue; |
|
679 | + } |
|
649 | 680 | |
650 | - if ($permissionType == 'membergroup' && $groupID != 1 && $groupID != 3 && (empty($context['illegal_permissions']) || !in_array($permission, $context['illegal_permissions']))) |
|
651 | - $permChange[] = array($permission, $groupID, $add_deny); |
|
652 | - elseif ($permissionType != 'membergroup') |
|
653 | - $permChange[] = array($permission, $groupID, $bid, $add_deny); |
|
681 | + if ($permissionType == 'membergroup' && $groupID != 1 && $groupID != 3 && (empty($context['illegal_permissions']) || !in_array($permission, $context['illegal_permissions']))) { |
|
682 | + $permChange[] = array($permission, $groupID, $add_deny); |
|
683 | + } elseif ($permissionType != 'membergroup') { |
|
684 | + $permChange[] = array($permission, $groupID, $bid, $add_deny); |
|
685 | + } |
|
654 | 686 | } |
655 | 687 | |
656 | 688 | if (!empty($permChange)) |
657 | 689 | { |
658 | - if ($permissionType == 'membergroup') |
|
659 | - $smcFunc['db_insert']('replace', |
|
690 | + if ($permissionType == 'membergroup') { |
|
691 | + $smcFunc['db_insert']('replace', |
|
660 | 692 | '{db_prefix}permissions', |
661 | 693 | array('permission' => 'string', 'id_group' => 'int', 'add_deny' => 'int'), |
662 | 694 | $permChange, |
663 | 695 | array('permission', 'id_group') |
664 | 696 | ); |
697 | + } |
|
665 | 698 | // Board permissions go into the other table. |
666 | - else |
|
667 | - $smcFunc['db_insert']('replace', |
|
699 | + else { |
|
700 | + $smcFunc['db_insert']('replace', |
|
668 | 701 | '{db_prefix}board_permissions', |
669 | 702 | array('permission' => 'string', 'id_group' => 'int', 'id_profile' => 'int', 'add_deny' => 'int'), |
670 | 703 | $permChange, |
671 | 704 | array('permission', 'id_group', 'id_profile') |
672 | 705 | ); |
706 | + } |
|
673 | 707 | } |
674 | 708 | } |
675 | 709 | |
@@ -687,14 +721,16 @@ discard block |
||
687 | 721 | { |
688 | 722 | global $context, $txt, $smcFunc, $modSettings; |
689 | 723 | |
690 | - if (!isset($_GET['group'])) |
|
691 | - fatal_lang_error('no_access', false); |
|
724 | + if (!isset($_GET['group'])) { |
|
725 | + fatal_lang_error('no_access', false); |
|
726 | + } |
|
692 | 727 | |
693 | 728 | $context['group']['id'] = (int) $_GET['group']; |
694 | 729 | |
695 | 730 | // It's not likely you'd end up here with this setting disabled. |
696 | - if ($_GET['group'] == 1) |
|
697 | - redirectexit('action=admin;area=permissions'); |
|
731 | + if ($_GET['group'] == 1) { |
|
732 | + redirectexit('action=admin;area=permissions'); |
|
733 | + } |
|
698 | 734 | |
699 | 735 | loadAllPermissions(); |
700 | 736 | loadPermissionProfiles(); |
@@ -715,13 +751,14 @@ discard block |
||
715 | 751 | $smcFunc['db_free_result']($result); |
716 | 752 | |
717 | 753 | // Cannot edit an inherited group! |
718 | - if ($parent != -2) |
|
719 | - fatal_lang_error('cannot_edit_permissions_inherited'); |
|
754 | + if ($parent != -2) { |
|
755 | + fatal_lang_error('cannot_edit_permissions_inherited'); |
|
756 | + } |
|
757 | + } elseif ($context['group']['id'] == -1) { |
|
758 | + $context['group']['name'] = $txt['membergroups_guests']; |
|
759 | + } else { |
|
760 | + $context['group']['name'] = $txt['membergroups_members']; |
|
720 | 761 | } |
721 | - elseif ($context['group']['id'] == -1) |
|
722 | - $context['group']['name'] = $txt['membergroups_guests']; |
|
723 | - else |
|
724 | - $context['group']['name'] = $txt['membergroups_members']; |
|
725 | 762 | |
726 | 763 | $context['profile']['id'] = empty($_GET['pid']) ? 0 : (int) $_GET['pid']; |
727 | 764 | |
@@ -767,8 +804,9 @@ discard block |
||
767 | 804 | 'current_group' => $_GET['group'], |
768 | 805 | ) |
769 | 806 | ); |
770 | - while ($row = $smcFunc['db_fetch_assoc']($result)) |
|
771 | - $permissions['membergroup'][empty($row['add_deny']) ? 'denied' : 'allowed'][] = $row['permission']; |
|
807 | + while ($row = $smcFunc['db_fetch_assoc']($result)) { |
|
808 | + $permissions['membergroup'][empty($row['add_deny']) ? 'denied' : 'allowed'][] = $row['permission']; |
|
809 | + } |
|
772 | 810 | $smcFunc['db_free_result']($result); |
773 | 811 | } |
774 | 812 | |
@@ -783,8 +821,9 @@ discard block |
||
783 | 821 | 'current_profile' => $context['permission_type'] == 'membergroup' ? 1 : $context['profile']['id'], |
784 | 822 | ) |
785 | 823 | ); |
786 | - while ($row = $smcFunc['db_fetch_assoc']($result)) |
|
787 | - $permissions['board'][empty($row['add_deny']) ? 'denied' : 'allowed'][] = $row['permission']; |
|
824 | + while ($row = $smcFunc['db_fetch_assoc']($result)) { |
|
825 | + $permissions['board'][empty($row['add_deny']) ? 'denied' : 'allowed'][] = $row['permission']; |
|
826 | + } |
|
788 | 827 | $smcFunc['db_free_result']($result); |
789 | 828 | |
790 | 829 | // Loop through each permission and set whether it's checked. |
@@ -803,9 +842,9 @@ discard block |
||
803 | 842 | { |
804 | 843 | $curPerm['any']['select'] = in_array($perm['id'] . '_any', $permissions[$permissionType]['allowed']) ? 'on' : (in_array($perm['id'] . '_any', $permissions[$permissionType]['denied']) ? 'deny' : 'off'); |
805 | 844 | $curPerm['own']['select'] = in_array($perm['id'] . '_own', $permissions[$permissionType]['allowed']) ? 'on' : (in_array($perm['id'] . '_own', $permissions[$permissionType]['denied']) ? 'deny' : 'off'); |
845 | + } else { |
|
846 | + $curPerm['select'] = in_array($perm['id'], $permissions[$permissionType]['denied']) ? 'deny' : (in_array($perm['id'], $permissions[$permissionType]['allowed']) ? 'on' : 'off'); |
|
806 | 847 | } |
807 | - else |
|
808 | - $curPerm['select'] = in_array($perm['id'], $permissions[$permissionType]['denied']) ? 'deny' : (in_array($perm['id'], $permissions[$permissionType]['allowed']) ? 'on' : 'off'); |
|
809 | 848 | |
810 | 849 | // Keep the last value if it's hidden. |
811 | 850 | if ($perm['hidden'] || $permissionArray['hidden']) |
@@ -822,13 +861,13 @@ discard block |
||
822 | 861 | $perm['any']['id'], |
823 | 862 | $curPerm['any']['select'] == 'deny' && !empty($modSettings['permission_enable_deny']) ? 'deny' : $curPerm['any']['select'], |
824 | 863 | ); |
825 | - } |
|
826 | - else |
|
827 | - $context['hidden_perms'][] = array( |
|
864 | + } else { |
|
865 | + $context['hidden_perms'][] = array( |
|
828 | 866 | $permissionType, |
829 | 867 | $perm['id'], |
830 | 868 | $curPerm['select'] == 'deny' && !empty($modSettings['permission_enable_deny']) ? 'deny' : $curPerm['select'], |
831 | 869 | ); |
870 | + } |
|
832 | 871 | } |
833 | 872 | } |
834 | 873 | } |
@@ -856,13 +895,14 @@ discard block |
||
856 | 895 | $_GET['pid'] = (int) $_GET['pid']; |
857 | 896 | |
858 | 897 | // Cannot modify predefined profiles. |
859 | - if ($_GET['pid'] > 1 && $_GET['pid'] < 5) |
|
860 | - fatal_lang_error('no_access', false); |
|
898 | + if ($_GET['pid'] > 1 && $_GET['pid'] < 5) { |
|
899 | + fatal_lang_error('no_access', false); |
|
900 | + } |
|
861 | 901 | |
862 | 902 | // Verify this isn't inherited. |
863 | - if ($_GET['group'] == -1 || $_GET['group'] == 0) |
|
864 | - $parent = -2; |
|
865 | - else |
|
903 | + if ($_GET['group'] == -1 || $_GET['group'] == 0) { |
|
904 | + $parent = -2; |
|
905 | + } else |
|
866 | 906 | { |
867 | 907 | $result = $smcFunc['db_query']('', ' |
868 | 908 | SELECT id_parent |
@@ -877,8 +917,9 @@ discard block |
||
877 | 917 | $smcFunc['db_free_result']($result); |
878 | 918 | } |
879 | 919 | |
880 | - if ($parent != -2) |
|
881 | - fatal_lang_error('cannot_edit_permissions_inherited'); |
|
920 | + if ($parent != -2) { |
|
921 | + fatal_lang_error('cannot_edit_permissions_inherited'); |
|
922 | + } |
|
882 | 923 | |
883 | 924 | $givePerms = array('membergroup' => array(), 'board' => array()); |
884 | 925 | |
@@ -896,12 +937,13 @@ discard block |
||
896 | 937 | { |
897 | 938 | if (is_array($perm_array)) |
898 | 939 | { |
899 | - foreach ($perm_array as $permission => $value) |
|
900 | - if ($value == 'on' || $value == 'deny') |
|
940 | + foreach ($perm_array as $permission => $value) { |
|
941 | + if ($value == 'on' || $value == 'deny') |
|
901 | 942 | { |
902 | 943 | // Don't allow people to escalate themselves! |
903 | 944 | if (!empty($context['illegal_permissions']) && in_array($permission, $context['illegal_permissions'])) |
904 | 945 | continue; |
946 | + } |
|
905 | 947 | |
906 | 948 | $givePerms[$perm_type][] = array($_GET['group'], $permission, $value == 'deny' ? 0 : 1); |
907 | 949 | } |
@@ -946,8 +988,9 @@ discard block |
||
946 | 988 | ); |
947 | 989 | if (!empty($givePerms['board'])) |
948 | 990 | { |
949 | - foreach ($givePerms['board'] as $k => $v) |
|
950 | - $givePerms['board'][$k][] = $profileid; |
|
991 | + foreach ($givePerms['board'] as $k => $v) { |
|
992 | + $givePerms['board'][$k][] = $profileid; |
|
993 | + } |
|
951 | 994 | $smcFunc['db_insert']('replace', |
952 | 995 | '{db_prefix}board_permissions', |
953 | 996 | array('id_group' => 'int', 'permission' => 'string', 'add_deny' => 'int', 'id_profile' => 'int'), |
@@ -988,8 +1031,9 @@ discard block |
||
988 | 1031 | |
989 | 1032 | call_integration_hook('integrate_modify_permission_settings', array(&$config_vars)); |
990 | 1033 | |
991 | - if ($return_config) |
|
992 | - return $config_vars; |
|
1034 | + if ($return_config) { |
|
1035 | + return $config_vars; |
|
1036 | + } |
|
993 | 1037 | |
994 | 1038 | $context['page_title'] = $txt['permission_settings_title']; |
995 | 1039 | $context['sub_template'] = 'show_settings'; |
@@ -1040,8 +1084,9 @@ discard block |
||
1040 | 1084 | 'min_posts' => -1, |
1041 | 1085 | ) |
1042 | 1086 | ); |
1043 | - while ($row = $smcFunc['db_fetch_assoc']($request)) |
|
1044 | - $post_groups[] = $row['id_group']; |
|
1087 | + while ($row = $smcFunc['db_fetch_assoc']($request)) { |
|
1088 | + $post_groups[] = $row['id_group']; |
|
1089 | + } |
|
1045 | 1090 | $smcFunc['db_free_result']($request); |
1046 | 1091 | |
1047 | 1092 | // Remove'em. |
@@ -1250,16 +1295,19 @@ discard block |
||
1250 | 1295 | // Make sure we're not granting someone too many permissions! |
1251 | 1296 | foreach ($groupLevels['global'][$level] as $k => $permission) |
1252 | 1297 | { |
1253 | - if (!empty($context['illegal_permissions']) && in_array($permission, $context['illegal_permissions'])) |
|
1254 | - unset($groupLevels['global'][$level][$k]); |
|
1298 | + if (!empty($context['illegal_permissions']) && in_array($permission, $context['illegal_permissions'])) { |
|
1299 | + unset($groupLevels['global'][$level][$k]); |
|
1300 | + } |
|
1255 | 1301 | |
1256 | - if ($group == -1 && in_array($permission, $context['non_guest_permissions'])) |
|
1257 | - unset($groupLevels['global'][$level][$k]); |
|
1302 | + if ($group == -1 && in_array($permission, $context['non_guest_permissions'])) { |
|
1303 | + unset($groupLevels['global'][$level][$k]); |
|
1304 | + } |
|
1258 | 1305 | } |
1259 | - if ($group == -1) |
|
1260 | - foreach ($groupLevels['board'][$level] as $k => $permission) |
|
1306 | + if ($group == -1) { |
|
1307 | + foreach ($groupLevels['board'][$level] as $k => $permission) |
|
1261 | 1308 | if (in_array($permission, $context['non_guest_permissions'])) |
1262 | 1309 | unset($groupLevels['board'][$level][$k]); |
1310 | + } |
|
1263 | 1311 | |
1264 | 1312 | // Reset all cached permissions. |
1265 | 1313 | updateSettings(array('settings_updated' => time())); |
@@ -1269,8 +1317,9 @@ discard block |
||
1269 | 1317 | { |
1270 | 1318 | $group = (int) $group; |
1271 | 1319 | |
1272 | - if (empty($groupLevels['global'][$level])) |
|
1273 | - return; |
|
1320 | + if (empty($groupLevels['global'][$level])) { |
|
1321 | + return; |
|
1322 | + } |
|
1274 | 1323 | |
1275 | 1324 | $smcFunc['db_query']('', ' |
1276 | 1325 | DELETE FROM {db_prefix}permissions |
@@ -1292,8 +1341,9 @@ discard block |
||
1292 | 1341 | ); |
1293 | 1342 | |
1294 | 1343 | $groupInserts = array(); |
1295 | - foreach ($groupLevels['global'][$level] as $permission) |
|
1296 | - $groupInserts[] = array($group, $permission); |
|
1344 | + foreach ($groupLevels['global'][$level] as $permission) { |
|
1345 | + $groupInserts[] = array($group, $permission); |
|
1346 | + } |
|
1297 | 1347 | |
1298 | 1348 | $smcFunc['db_insert']('insert', |
1299 | 1349 | '{db_prefix}permissions', |
@@ -1303,8 +1353,9 @@ discard block |
||
1303 | 1353 | ); |
1304 | 1354 | |
1305 | 1355 | $boardInserts = array(); |
1306 | - foreach ($groupLevels['board'][$level] as $permission) |
|
1307 | - $boardInserts[] = array(1, $group, $permission); |
|
1356 | + foreach ($groupLevels['board'][$level] as $permission) { |
|
1357 | + $boardInserts[] = array(1, $group, $permission); |
|
1358 | + } |
|
1308 | 1359 | |
1309 | 1360 | $smcFunc['db_insert']('insert', |
1310 | 1361 | '{db_prefix}board_permissions', |
@@ -1335,8 +1386,9 @@ discard block |
||
1335 | 1386 | if (!empty($groupLevels['board'][$level])) |
1336 | 1387 | { |
1337 | 1388 | $boardInserts = array(); |
1338 | - foreach ($groupLevels['board'][$level] as $permission) |
|
1339 | - $boardInserts[] = array($profile, $group, $permission); |
|
1389 | + foreach ($groupLevels['board'][$level] as $permission) { |
|
1390 | + $boardInserts[] = array($profile, $group, $permission); |
|
1391 | + } |
|
1340 | 1392 | |
1341 | 1393 | $smcFunc['db_insert']('insert', |
1342 | 1394 | '{db_prefix}board_permissions', |
@@ -1359,8 +1411,9 @@ discard block |
||
1359 | 1411 | ) |
1360 | 1412 | ); |
1361 | 1413 | |
1362 | - if (empty($boardLevels[$level])) |
|
1363 | - return; |
|
1414 | + if (empty($boardLevels[$level])) { |
|
1415 | + return; |
|
1416 | + } |
|
1364 | 1417 | |
1365 | 1418 | // Get all the groups... |
1366 | 1419 | $query = $smcFunc['db_query']('', ' |
@@ -1378,8 +1431,9 @@ discard block |
||
1378 | 1431 | $group = $row[0]; |
1379 | 1432 | |
1380 | 1433 | $boardInserts = array(); |
1381 | - foreach ($boardLevels[$level] as $permission) |
|
1382 | - $boardInserts[] = array($profile, $group, $permission); |
|
1434 | + foreach ($boardLevels[$level] as $permission) { |
|
1435 | + $boardInserts[] = array($profile, $group, $permission); |
|
1436 | + } |
|
1383 | 1437 | |
1384 | 1438 | $smcFunc['db_insert']('insert', |
1385 | 1439 | '{db_prefix}board_permissions', |
@@ -1392,8 +1446,9 @@ discard block |
||
1392 | 1446 | |
1393 | 1447 | // Add permissions for ungrouped members. |
1394 | 1448 | $boardInserts = array(); |
1395 | - foreach ($boardLevels[$level] as $permission) |
|
1396 | - $boardInserts[] = array($profile, 0, $permission); |
|
1449 | + foreach ($boardLevels[$level] as $permission) { |
|
1450 | + $boardInserts[] = array($profile, 0, $permission); |
|
1451 | + } |
|
1397 | 1452 | |
1398 | 1453 | $smcFunc['db_insert']('insert', |
1399 | 1454 | '{db_prefix}board_permissions', |
@@ -1403,9 +1458,10 @@ discard block |
||
1403 | 1458 | ); |
1404 | 1459 | } |
1405 | 1460 | // $profile and $group are both null! |
1406 | - else |
|
1407 | - fatal_lang_error('no_access', false); |
|
1408 | -} |
|
1461 | + else { |
|
1462 | + fatal_lang_error('no_access', false); |
|
1463 | + } |
|
1464 | + } |
|
1409 | 1465 | |
1410 | 1466 | /** |
1411 | 1467 | * Load permissions into $context['permissions']. |
@@ -1606,15 +1662,17 @@ discard block |
||
1606 | 1662 | foreach ($permissionList as $permission => $permissionArray) |
1607 | 1663 | { |
1608 | 1664 | // If this is a guest permission we don't do it if it's the guest group. |
1609 | - if (isset($context['group']['id']) && $context['group']['id'] == -1 && in_array($permission, $context['non_guest_permissions'])) |
|
1610 | - continue; |
|
1665 | + if (isset($context['group']['id']) && $context['group']['id'] == -1 && in_array($permission, $context['non_guest_permissions'])) { |
|
1666 | + continue; |
|
1667 | + } |
|
1611 | 1668 | |
1612 | 1669 | // What groups will this permission be in? |
1613 | 1670 | $own_group = $permissionArray[1]; |
1614 | 1671 | |
1615 | 1672 | // First, Do these groups actually exist - if not add them. |
1616 | - if (!isset($permissionGroups[$permissionType][$own_group])) |
|
1617 | - $permissionGroups[$permissionType][$own_group] = true; |
|
1673 | + if (!isset($permissionGroups[$permissionType][$own_group])) { |
|
1674 | + $permissionGroups[$permissionType][$own_group] = true; |
|
1675 | + } |
|
1618 | 1676 | |
1619 | 1677 | // What column should this be located into? |
1620 | 1678 | $position = !in_array($own_group, $leftPermissionGroups) ? 1 : 0; |
@@ -1622,8 +1680,8 @@ discard block |
||
1622 | 1680 | // If the groups have not yet been created be sure to create them. |
1623 | 1681 | $bothGroups = array('own' => $own_group); |
1624 | 1682 | |
1625 | - foreach ($bothGroups as $group) |
|
1626 | - if (!isset($context['permissions'][$permissionType]['columns'][$position][$group])) |
|
1683 | + foreach ($bothGroups as $group) { |
|
1684 | + if (!isset($context['permissions'][$permissionType]['columns'][$position][$group])) |
|
1627 | 1685 | $context['permissions'][$permissionType]['columns'][$position][$group] = array( |
1628 | 1686 | 'type' => $permissionType, |
1629 | 1687 | 'id' => $group, |
@@ -1633,6 +1691,7 @@ discard block |
||
1633 | 1691 | 'hidden' => false, |
1634 | 1692 | 'permissions' => array() |
1635 | 1693 | ); |
1694 | + } |
|
1636 | 1695 | |
1637 | 1696 | $context['permissions'][$permissionType]['columns'][$position][$own_group]['permissions'][$permission] = array( |
1638 | 1697 | 'id' => $permission, |
@@ -1657,27 +1716,30 @@ discard block |
||
1657 | 1716 | { |
1658 | 1717 | $context['hidden_permissions'][] = $permission . '_own'; |
1659 | 1718 | $context['hidden_permissions'][] = $permission . '_any'; |
1719 | + } else { |
|
1720 | + $context['hidden_permissions'][] = $permission; |
|
1660 | 1721 | } |
1661 | - else |
|
1662 | - $context['hidden_permissions'][] = $permission; |
|
1663 | 1722 | } |
1664 | 1723 | } |
1665 | 1724 | ksort($context['permissions'][$permissionType]['columns']); |
1666 | 1725 | |
1667 | 1726 | // Check we don't leave any empty groups - and mark hidden ones as such. |
1668 | - foreach ($context['permissions'][$permissionType]['columns'] as $column => $groups) |
|
1669 | - foreach ($groups as $id => $group) |
|
1727 | + foreach ($context['permissions'][$permissionType]['columns'] as $column => $groups) { |
|
1728 | + foreach ($groups as $id => $group) |
|
1670 | 1729 | { |
1671 | 1730 | if (empty($group['permissions'])) |
1672 | 1731 | unset($context['permissions'][$permissionType]['columns'][$column][$id]); |
1732 | + } |
|
1673 | 1733 | else |
1674 | 1734 | { |
1675 | 1735 | $foundNonHidden = false; |
1676 | - foreach ($group['permissions'] as $permission) |
|
1677 | - if (empty($permission['hidden'])) |
|
1736 | + foreach ($group['permissions'] as $permission) { |
|
1737 | + if (empty($permission['hidden'])) |
|
1678 | 1738 | $foundNonHidden = true; |
1679 | - if (!$foundNonHidden) |
|
1680 | - $context['permissions'][$permissionType]['columns'][$column][$id]['hidden'] = true; |
|
1739 | + } |
|
1740 | + if (!$foundNonHidden) { |
|
1741 | + $context['permissions'][$permissionType]['columns'][$column][$id]['hidden'] = true; |
|
1742 | + } |
|
1681 | 1743 | } |
1682 | 1744 | } |
1683 | 1745 | } |
@@ -1704,12 +1766,13 @@ discard block |
||
1704 | 1766 | $context['can_change_permissions'] = allowedTo('manage_permissions'); |
1705 | 1767 | |
1706 | 1768 | // Nothing to initialize here. |
1707 | - if (!$context['can_change_permissions']) |
|
1708 | - return; |
|
1769 | + if (!$context['can_change_permissions']) { |
|
1770 | + return; |
|
1771 | + } |
|
1709 | 1772 | |
1710 | 1773 | // Load the permission settings for guests |
1711 | - foreach ($permissions as $permission) |
|
1712 | - $context[$permission] = array( |
|
1774 | + foreach ($permissions as $permission) { |
|
1775 | + $context[$permission] = array( |
|
1713 | 1776 | -1 => array( |
1714 | 1777 | 'id' => -1, |
1715 | 1778 | 'name' => $txt['membergroups_guests'], |
@@ -1723,6 +1786,7 @@ discard block |
||
1723 | 1786 | 'status' => 'off', |
1724 | 1787 | ), |
1725 | 1788 | ); |
1789 | + } |
|
1726 | 1790 | |
1727 | 1791 | $request = $smcFunc['db_query']('', ' |
1728 | 1792 | SELECT id_group, CASE WHEN add_deny = {int:denied} THEN {string:deny} ELSE {string:on} END AS status, permission |
@@ -1736,8 +1800,9 @@ discard block |
||
1736 | 1800 | 'on' => 'on', |
1737 | 1801 | ) |
1738 | 1802 | ); |
1739 | - while ($row = $smcFunc['db_fetch_assoc']($request)) |
|
1740 | - $context[$row['permission']][$row['id_group']]['status'] = $row['status']; |
|
1803 | + while ($row = $smcFunc['db_fetch_assoc']($request)) { |
|
1804 | + $context[$row['permission']][$row['id_group']]['status'] = $row['status']; |
|
1805 | + } |
|
1741 | 1806 | $smcFunc['db_free_result']($request); |
1742 | 1807 | |
1743 | 1808 | $request = $smcFunc['db_query']('', ' |
@@ -1758,14 +1823,15 @@ discard block |
||
1758 | 1823 | while ($row = $smcFunc['db_fetch_assoc']($request)) |
1759 | 1824 | { |
1760 | 1825 | // Initialize each permission as being 'off' until proven otherwise. |
1761 | - foreach ($permissions as $permission) |
|
1762 | - if (!isset($context[$permission][$row['id_group']])) |
|
1826 | + foreach ($permissions as $permission) { |
|
1827 | + if (!isset($context[$permission][$row['id_group']])) |
|
1763 | 1828 | $context[$permission][$row['id_group']] = array( |
1764 | 1829 | 'id' => $row['id_group'], |
1765 | 1830 | 'name' => $row['group_name'], |
1766 | 1831 | 'is_postgroup' => $row['min_posts'] != -1, |
1767 | 1832 | 'status' => 'off', |
1768 | 1833 | ); |
1834 | + } |
|
1769 | 1835 | |
1770 | 1836 | $context[$row['permission']][$row['id_group']]['status'] = empty($row['status']) ? 'deny' : ($row['status'] == 1 ? 'on' : 'off'); |
1771 | 1837 | } |
@@ -1779,8 +1845,9 @@ discard block |
||
1779 | 1845 | { |
1780 | 1846 | foreach ($permissions as $permission) |
1781 | 1847 | { |
1782 | - if (isset($context[$permission][$group])) |
|
1783 | - unset($context[$permission][$group]); |
|
1848 | + if (isset($context[$permission][$group])) { |
|
1849 | + unset($context[$permission][$group]); |
|
1850 | + } |
|
1784 | 1851 | } |
1785 | 1852 | } |
1786 | 1853 | |
@@ -1788,8 +1855,9 @@ discard block |
||
1788 | 1855 | $non_guest_perms = array_intersect(str_replace(array('_any', '_own'), '', $permissions), $context['non_guest_permissions']); |
1789 | 1856 | foreach ($non_guest_perms as $permission) |
1790 | 1857 | { |
1791 | - if (isset($context[$permission][-1])) |
|
1792 | - unset($context[$permission][-1]); |
|
1858 | + if (isset($context[$permission][-1])) { |
|
1859 | + unset($context[$permission][-1]); |
|
1860 | + } |
|
1793 | 1861 | } |
1794 | 1862 | |
1795 | 1863 | // Create the token for the separate inline permission verification. |
@@ -1824,8 +1892,9 @@ discard block |
||
1824 | 1892 | global $context, $smcFunc; |
1825 | 1893 | |
1826 | 1894 | // No permissions? Not a great deal to do here. |
1827 | - if (!allowedTo('manage_permissions')) |
|
1828 | - return; |
|
1895 | + if (!allowedTo('manage_permissions')) { |
|
1896 | + return; |
|
1897 | + } |
|
1829 | 1898 | |
1830 | 1899 | // Almighty session check, verify our ways. |
1831 | 1900 | checkSession(); |
@@ -1837,13 +1906,15 @@ discard block |
||
1837 | 1906 | $insertRows = array(); |
1838 | 1907 | foreach ($permissions as $permission) |
1839 | 1908 | { |
1840 | - if (!isset($_POST[$permission])) |
|
1841 | - continue; |
|
1909 | + if (!isset($_POST[$permission])) { |
|
1910 | + continue; |
|
1911 | + } |
|
1842 | 1912 | |
1843 | 1913 | foreach ($_POST[$permission] as $id_group => $value) |
1844 | 1914 | { |
1845 | - if (in_array($value, array('on', 'deny')) && (empty($context['illegal_permissions']) || !in_array($permission, $context['illegal_permissions']))) |
|
1846 | - $insertRows[] = array((int) $id_group, $permission, $value == 'on' ? 1 : 0); |
|
1915 | + if (in_array($value, array('on', 'deny')) && (empty($context['illegal_permissions']) || !in_array($permission, $context['illegal_permissions']))) { |
|
1916 | + $insertRows[] = array((int) $id_group, $permission, $value == 'on' ? 1 : 0); |
|
1917 | + } |
|
1847 | 1918 | } |
1848 | 1919 | } |
1849 | 1920 | |
@@ -1859,13 +1930,14 @@ discard block |
||
1859 | 1930 | ); |
1860 | 1931 | |
1861 | 1932 | // ...and replace them with new ones. |
1862 | - if (!empty($insertRows)) |
|
1863 | - $smcFunc['db_insert']('insert', |
|
1933 | + if (!empty($insertRows)) { |
|
1934 | + $smcFunc['db_insert']('insert', |
|
1864 | 1935 | '{db_prefix}permissions', |
1865 | 1936 | array('id_group' => 'int', 'permission' => 'string', 'add_deny' => 'int'), |
1866 | 1937 | $insertRows, |
1867 | 1938 | array('id_group', 'permission') |
1868 | 1939 | ); |
1940 | + } |
|
1869 | 1941 | |
1870 | 1942 | // Do a full child update. |
1871 | 1943 | updateChildPermissions(array(), -1); |
@@ -1892,10 +1964,11 @@ discard block |
||
1892 | 1964 | while ($row = $smcFunc['db_fetch_assoc']($request)) |
1893 | 1965 | { |
1894 | 1966 | // Format the label nicely. |
1895 | - if (isset($txt['permissions_profile_' . $row['profile_name']])) |
|
1896 | - $name = $txt['permissions_profile_' . $row['profile_name']]; |
|
1897 | - else |
|
1898 | - $name = $row['profile_name']; |
|
1967 | + if (isset($txt['permissions_profile_' . $row['profile_name']])) { |
|
1968 | + $name = $txt['permissions_profile_' . $row['profile_name']]; |
|
1969 | + } else { |
|
1970 | + $name = $row['profile_name']; |
|
1971 | + } |
|
1899 | 1972 | |
1900 | 1973 | $context['profiles'][$row['id_profile']] = array( |
1901 | 1974 | 'id' => $row['id_profile'], |
@@ -1950,17 +2023,19 @@ discard block |
||
1950 | 2023 | ) |
1951 | 2024 | ); |
1952 | 2025 | $inserts = array(); |
1953 | - while ($row = $smcFunc['db_fetch_assoc']($request)) |
|
1954 | - $inserts[] = array($profile_id, $row['id_group'], $row['permission'], $row['add_deny']); |
|
2026 | + while ($row = $smcFunc['db_fetch_assoc']($request)) { |
|
2027 | + $inserts[] = array($profile_id, $row['id_group'], $row['permission'], $row['add_deny']); |
|
2028 | + } |
|
1955 | 2029 | $smcFunc['db_free_result']($request); |
1956 | 2030 | |
1957 | - if (!empty($inserts)) |
|
1958 | - $smcFunc['db_insert']('insert', |
|
2031 | + if (!empty($inserts)) { |
|
2032 | + $smcFunc['db_insert']('insert', |
|
1959 | 2033 | '{db_prefix}board_permissions', |
1960 | 2034 | array('id_profile' => 'int', 'id_group' => 'int', 'permission' => 'string', 'add_deny' => 'int'), |
1961 | 2035 | $inserts, |
1962 | 2036 | array('id_profile', 'id_group', 'permission') |
1963 | 2037 | ); |
2038 | + } |
|
1964 | 2039 | } |
1965 | 2040 | // Renaming? |
1966 | 2041 | elseif (isset($_POST['rename'])) |
@@ -1969,16 +2044,16 @@ discard block |
||
1969 | 2044 | validateToken('admin-mpp'); |
1970 | 2045 | |
1971 | 2046 | // Just showing the boxes? |
1972 | - if (!isset($_POST['rename_profile'])) |
|
1973 | - $context['show_rename_boxes'] = true; |
|
1974 | - else |
|
2047 | + if (!isset($_POST['rename_profile'])) { |
|
2048 | + $context['show_rename_boxes'] = true; |
|
2049 | + } else |
|
1975 | 2050 | { |
1976 | 2051 | foreach ($_POST['rename_profile'] as $id => $value) |
1977 | 2052 | { |
1978 | 2053 | $value = $smcFunc['htmlspecialchars']($value); |
1979 | 2054 | |
1980 | - if (trim($value) != '' && $id > 4) |
|
1981 | - $smcFunc['db_query']('', ' |
|
2055 | + if (trim($value) != '' && $id > 4) { |
|
2056 | + $smcFunc['db_query']('', ' |
|
1982 | 2057 | UPDATE {db_prefix}permission_profiles |
1983 | 2058 | SET profile_name = {string:profile_name} |
1984 | 2059 | WHERE id_profile = {int:current_profile}', |
@@ -1987,6 +2062,7 @@ discard block |
||
1987 | 2062 | 'profile_name' => $value, |
1988 | 2063 | ) |
1989 | 2064 | ); |
2065 | + } |
|
1990 | 2066 | } |
1991 | 2067 | } |
1992 | 2068 | } |
@@ -1997,9 +2073,10 @@ discard block |
||
1997 | 2073 | validateToken('admin-mpp'); |
1998 | 2074 | |
1999 | 2075 | $profiles = array(); |
2000 | - foreach ($_POST['delete_profile'] as $profile) |
|
2001 | - if ($profile > 4) |
|
2076 | + foreach ($_POST['delete_profile'] as $profile) { |
|
2077 | + if ($profile > 4) |
|
2002 | 2078 | $profiles[] = (int) $profile; |
2079 | + } |
|
2003 | 2080 | |
2004 | 2081 | // Verify it's not in use... |
2005 | 2082 | $request = $smcFunc['db_query']('', ' |
@@ -2011,8 +2088,9 @@ discard block |
||
2011 | 2088 | 'profile_list' => $profiles, |
2012 | 2089 | ) |
2013 | 2090 | ); |
2014 | - if ($smcFunc['db_num_rows']($request) != 0) |
|
2015 | - fatal_lang_error('no_access', false); |
|
2091 | + if ($smcFunc['db_num_rows']($request) != 0) { |
|
2092 | + fatal_lang_error('no_access', false); |
|
2093 | + } |
|
2016 | 2094 | $smcFunc['db_free_result']($request); |
2017 | 2095 | |
2018 | 2096 | // Oh well, delete. |
@@ -2036,10 +2114,11 @@ discard block |
||
2036 | 2114 | array( |
2037 | 2115 | ) |
2038 | 2116 | ); |
2039 | - while ($row = $smcFunc['db_fetch_assoc']($request)) |
|
2040 | - if (isset($context['profiles'][$row['id_profile']])) |
|
2117 | + while ($row = $smcFunc['db_fetch_assoc']($request)) { |
|
2118 | + if (isset($context['profiles'][$row['id_profile']])) |
|
2041 | 2119 | { |
2042 | 2120 | $context['profiles'][$row['id_profile']]['in_use'] = true; |
2121 | + } |
|
2043 | 2122 | $context['profiles'][$row['id_profile']]['boards'] = $row['board_count']; |
2044 | 2123 | $context['profiles'][$row['id_profile']]['boards_text'] = $row['board_count'] > 1 ? sprintf($txt['permissions_profile_used_by_many'], $row['board_count']) : $txt['permissions_profile_used_by_' . ($row['board_count'] ? 'one' : 'none')]; |
2045 | 2124 | } |
@@ -2051,8 +2130,9 @@ discard block |
||
2051 | 2130 | { |
2052 | 2131 | // Can't delete special ones. |
2053 | 2132 | $context['profiles'][$id]['can_edit'] = isset($txt['permissions_profile_' . $profile['unformatted_name']]) ? false : true; |
2054 | - if ($context['profiles'][$id]['can_edit']) |
|
2055 | - $context['can_edit_something'] = true; |
|
2133 | + if ($context['profiles'][$id]['can_edit']) { |
|
2134 | + $context['can_edit_something'] = true; |
|
2135 | + } |
|
2056 | 2136 | |
2057 | 2137 | // You can only delete it if you can edit it AND it's not in use. |
2058 | 2138 | $context['profiles'][$id]['can_delete'] = $context['profiles'][$id]['can_edit'] && empty($profile['in_use']) ? true : false; |
@@ -2073,8 +2153,9 @@ discard block |
||
2073 | 2153 | global $smcFunc; |
2074 | 2154 | |
2075 | 2155 | // All the parent groups to sort out. |
2076 | - if (!is_array($parents)) |
|
2077 | - $parents = array($parents); |
|
2156 | + if (!is_array($parents)) { |
|
2157 | + $parents = array($parents); |
|
2158 | + } |
|
2078 | 2159 | |
2079 | 2160 | // Find all the children of this group. |
2080 | 2161 | $request = $smcFunc['db_query']('', ' |
@@ -2101,8 +2182,9 @@ discard block |
||
2101 | 2182 | $parents = array_unique($parents); |
2102 | 2183 | |
2103 | 2184 | // Not a sausage, or a child? |
2104 | - if (empty($children)) |
|
2105 | - return false; |
|
2185 | + if (empty($children)) { |
|
2186 | + return false; |
|
2187 | + } |
|
2106 | 2188 | |
2107 | 2189 | // First off, are we doing general permissions? |
2108 | 2190 | if ($profile < 1 || $profile === null) |
@@ -2117,9 +2199,10 @@ discard block |
||
2117 | 2199 | ) |
2118 | 2200 | ); |
2119 | 2201 | $permissions = array(); |
2120 | - while ($row = $smcFunc['db_fetch_assoc']($request)) |
|
2121 | - foreach ($children[$row['id_group']] as $child) |
|
2202 | + while ($row = $smcFunc['db_fetch_assoc']($request)) { |
|
2203 | + foreach ($children[$row['id_group']] as $child) |
|
2122 | 2204 | $permissions[] = array($child, $row['permission'], $row['add_deny']); |
2205 | + } |
|
2123 | 2206 | $smcFunc['db_free_result']($request); |
2124 | 2207 | |
2125 | 2208 | $smcFunc['db_query']('', ' |
@@ -2159,9 +2242,10 @@ discard block |
||
2159 | 2242 | ) |
2160 | 2243 | ); |
2161 | 2244 | $permissions = array(); |
2162 | - while ($row = $smcFunc['db_fetch_assoc']($request)) |
|
2163 | - foreach ($children[$row['id_group']] as $child) |
|
2245 | + while ($row = $smcFunc['db_fetch_assoc']($request)) { |
|
2246 | + foreach ($children[$row['id_group']] as $child) |
|
2164 | 2247 | $permissions[] = array($child, $row['id_profile'], $row['permission'], $row['add_deny']); |
2248 | + } |
|
2165 | 2249 | $smcFunc['db_free_result']($request); |
2166 | 2250 | |
2167 | 2251 | $smcFunc['db_query']('', ' |
@@ -2195,12 +2279,15 @@ discard block |
||
2195 | 2279 | global $context; |
2196 | 2280 | |
2197 | 2281 | $context['illegal_permissions'] = array(); |
2198 | - if (!allowedTo('admin_forum')) |
|
2199 | - $context['illegal_permissions'][] = 'admin_forum'; |
|
2200 | - if (!allowedTo('manage_membergroups')) |
|
2201 | - $context['illegal_permissions'][] = 'manage_membergroups'; |
|
2202 | - if (!allowedTo('manage_permissions')) |
|
2203 | - $context['illegal_permissions'][] = 'manage_permissions'; |
|
2282 | + if (!allowedTo('admin_forum')) { |
|
2283 | + $context['illegal_permissions'][] = 'admin_forum'; |
|
2284 | + } |
|
2285 | + if (!allowedTo('manage_membergroups')) { |
|
2286 | + $context['illegal_permissions'][] = 'manage_membergroups'; |
|
2287 | + } |
|
2288 | + if (!allowedTo('manage_permissions')) { |
|
2289 | + $context['illegal_permissions'][] = 'manage_permissions'; |
|
2290 | + } |
|
2204 | 2291 | |
2205 | 2292 | call_integration_hook('integrate_load_illegal_permissions'); |
2206 | 2293 | } |
@@ -2349,16 +2436,17 @@ discard block |
||
2349 | 2436 | 'attachment' => 'disallow', |
2350 | 2437 | 'children' => array(), |
2351 | 2438 | ); |
2439 | + } elseif (isset($context['profile_groups'][$row['id_parent']])) { |
|
2440 | + $context['profile_groups'][$row['id_parent']]['children'][] = $row['group_name']; |
|
2352 | 2441 | } |
2353 | - elseif (isset($context['profile_groups'][$row['id_parent']])) |
|
2354 | - $context['profile_groups'][$row['id_parent']]['children'][] = $row['group_name']; |
|
2355 | 2442 | } |
2356 | 2443 | $smcFunc['db_free_result']($request); |
2357 | 2444 | |
2358 | 2445 | // What are the permissions we are querying? |
2359 | 2446 | $all_permissions = array(); |
2360 | - foreach ($mappings as $perm_set) |
|
2361 | - $all_permissions = array_merge($all_permissions, $perm_set); |
|
2447 | + foreach ($mappings as $perm_set) { |
|
2448 | + $all_permissions = array_merge($all_permissions, $perm_set); |
|
2449 | + } |
|
2362 | 2450 | |
2363 | 2451 | // If we're saving the changes then do just that - save them. |
2364 | 2452 | if (!empty($_POST['save_changes']) && ($context['current_profile'] == 1 || $context['current_profile'] > 4)) |
@@ -2373,8 +2461,7 @@ discard block |
||
2373 | 2461 | { |
2374 | 2462 | // Turning it on. This seems easy enough. |
2375 | 2463 | updateSettings(array('postmod_active' => 1)); |
2376 | - } |
|
2377 | - else |
|
2464 | + } else |
|
2378 | 2465 | { |
2379 | 2466 | // Turning it off. Not so straightforward. We have to turn off warnings to moderation level, and make everything approved. |
2380 | 2467 | updateSettings(array( |
@@ -2385,8 +2472,7 @@ discard block |
||
2385 | 2472 | require_once($sourcedir . '/PostModeration.php'); |
2386 | 2473 | approveAllData(); |
2387 | 2474 | } |
2388 | - } |
|
2389 | - elseif ($modSettings['postmod_active']) |
|
2475 | + } elseif ($modSettings['postmod_active']) |
|
2390 | 2476 | { |
2391 | 2477 | // We're not saving a new setting - and if it's still enabled we have more work to do. |
2392 | 2478 | |
@@ -2416,21 +2502,22 @@ discard block |
||
2416 | 2502 | // Give them both sets for fun. |
2417 | 2503 | $new_permissions[] = array($context['current_profile'], $group['id'], $data[0], 1); |
2418 | 2504 | $new_permissions[] = array($context['current_profile'], $group['id'], $data[1], 1); |
2505 | + } elseif ($_POST[$index][$group['id']] == 'moderate') { |
|
2506 | + $new_permissions[] = array($context['current_profile'], $group['id'], $data[1], 1); |
|
2419 | 2507 | } |
2420 | - elseif ($_POST[$index][$group['id']] == 'moderate') |
|
2421 | - $new_permissions[] = array($context['current_profile'], $group['id'], $data[1], 1); |
|
2422 | 2508 | } |
2423 | 2509 | } |
2424 | 2510 | } |
2425 | 2511 | |
2426 | 2512 | // Insert new permissions. |
2427 | - if (!empty($new_permissions)) |
|
2428 | - $smcFunc['db_insert']('', |
|
2513 | + if (!empty($new_permissions)) { |
|
2514 | + $smcFunc['db_insert']('', |
|
2429 | 2515 | '{db_prefix}board_permissions', |
2430 | 2516 | array('id_profile' => 'int', 'id_group' => 'int', 'permission' => 'string', 'add_deny' => 'int'), |
2431 | 2517 | $new_permissions, |
2432 | 2518 | array('id_profile', 'id_group', 'permission') |
2433 | 2519 | ); |
2520 | + } |
|
2434 | 2521 | } |
2435 | 2522 | } |
2436 | 2523 | |
@@ -2459,11 +2546,13 @@ discard block |
||
2459 | 2546 | if ($row['add_deny']) |
2460 | 2547 | { |
2461 | 2548 | // Full allowance? |
2462 | - if ($index == 0) |
|
2463 | - $context['profile_groups'][$row['id_group']][$key] = 'allow'; |
|
2549 | + if ($index == 0) { |
|
2550 | + $context['profile_groups'][$row['id_group']][$key] = 'allow'; |
|
2551 | + } |
|
2464 | 2552 | // Otherwise only bother with moderate if not on allow. |
2465 | - elseif ($context['profile_groups'][$row['id_group']][$key] != 'allow') |
|
2466 | - $context['profile_groups'][$row['id_group']][$key] = 'moderate'; |
|
2553 | + elseif ($context['profile_groups'][$row['id_group']][$key] != 'allow') { |
|
2554 | + $context['profile_groups'][$row['id_group']][$key] = 'moderate'; |
|
2555 | + } |
|
2467 | 2556 | } |
2468 | 2557 | } |
2469 | 2558 | } |
@@ -11,8 +11,9 @@ discard block |
||
11 | 11 | * @version 2.1 Beta 4 |
12 | 12 | */ |
13 | 13 | |
14 | -if (!defined('SMF')) |
|
14 | +if (!defined('SMF')) { |
|
15 | 15 | die('Hacking attempt...'); |
16 | +} |
|
16 | 17 | |
17 | 18 | /** |
18 | 19 | * Interface cache_api_interface |
@@ -183,8 +184,9 @@ discard block |
||
183 | 184 | { |
184 | 185 | global $cache_enable; |
185 | 186 | |
186 | - if ($test) |
|
187 | - return true; |
|
187 | + if ($test) { |
|
188 | + return true; |
|
189 | + } |
|
188 | 190 | return !empty($cache_enable); |
189 | 191 | } |
190 | 192 | |
@@ -203,10 +205,11 @@ discard block |
||
203 | 205 | global $boardurl, $cachedir; |
204 | 206 | |
205 | 207 | // Set the default if no prefix was specified. |
206 | - if (empty($prefix)) |
|
207 | - $this->prefix = md5($boardurl . filemtime($cachedir . '/' . 'index.php')) . '-SMF-'; |
|
208 | - else |
|
209 | - $this->prefix = $prefix; |
|
208 | + if (empty($prefix)) { |
|
209 | + $this->prefix = md5($boardurl . filemtime($cachedir . '/' . 'index.php')) . '-SMF-'; |
|
210 | + } else { |
|
211 | + $this->prefix = $prefix; |
|
212 | + } |
|
210 | 213 | |
211 | 214 | return true; |
212 | 215 | } |
@@ -269,8 +272,9 @@ discard block |
||
269 | 272 | |
270 | 273 | // Invalidate cache, to be sure! |
271 | 274 | // ... as long as index.php can be modified, anyway. |
272 | - if (is_writable($cachedir . '/' . 'index.php')) |
|
273 | - @touch($cachedir . '/' . 'index.php'); |
|
275 | + if (is_writable($cachedir . '/' . 'index.php')) { |
|
276 | + @touch($cachedir . '/' . 'index.php'); |
|
277 | + } |
|
274 | 278 | |
275 | 279 | return true; |
276 | 280 | } |