@@ -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 | * Ban center. The main entrance point for all ban center functions. |
@@ -120,10 +121,11 @@ discard block |
||
120 | 121 | } |
121 | 122 | |
122 | 123 | // Create a date string so we don't overload them with date info. |
123 | - if (preg_match('~%[AaBbCcDdeGghjmuYy](?:[^%]*%[AaBbCcDdeGghjmuYy])*~', $user_info['time_format'], $matches) == 0 || empty($matches[0])) |
|
124 | - $context['ban_time_format'] = $user_info['time_format']; |
|
125 | - else |
|
126 | - $context['ban_time_format'] = $matches[0]; |
|
124 | + if (preg_match('~%[AaBbCcDdeGghjmuYy](?:[^%]*%[AaBbCcDdeGghjmuYy])*~', $user_info['time_format'], $matches) == 0 || empty($matches[0])) { |
|
125 | + $context['ban_time_format'] = $user_info['time_format']; |
|
126 | + } else { |
|
127 | + $context['ban_time_format'] = $matches[0]; |
|
128 | + } |
|
127 | 129 | |
128 | 130 | $listOptions = array( |
129 | 131 | 'id' => 'ban_list', |
@@ -201,16 +203,19 @@ discard block |
||
201 | 203 | 'function' => function($rowData) use ($txt) |
202 | 204 | { |
203 | 205 | // This ban never expires...whahaha. |
204 | - if ($rowData['expire_time'] === null) |
|
205 | - return $txt['never']; |
|
206 | + if ($rowData['expire_time'] === null) { |
|
207 | + return $txt['never']; |
|
208 | + } |
|
206 | 209 | |
207 | 210 | // This ban has already expired. |
208 | - elseif ($rowData['expire_time'] < time()) |
|
209 | - return sprintf('<span class="red">%1$s</span>', $txt['ban_expired']); |
|
211 | + elseif ($rowData['expire_time'] < time()) { |
|
212 | + return sprintf('<span class="red">%1$s</span>', $txt['ban_expired']); |
|
213 | + } |
|
210 | 214 | |
211 | 215 | // Still need to wait a few days for this ban to expire. |
212 | - else |
|
213 | - return sprintf('%1$d %2$s', ceil(($rowData['expire_time'] - time()) / (60 * 60 * 24)), $txt['ban_days']); |
|
216 | + else { |
|
217 | + return sprintf('%1$d %2$s', ceil(($rowData['expire_time'] - time()) / (60 * 60 * 24)), $txt['ban_days']); |
|
218 | + } |
|
214 | 219 | }, |
215 | 220 | ), |
216 | 221 | 'sort' => array( |
@@ -309,8 +314,9 @@ discard block |
||
309 | 314 | ) |
310 | 315 | ); |
311 | 316 | $bans = array(); |
312 | - while ($row = $smcFunc['db_fetch_assoc']($request)) |
|
313 | - $bans[] = $row; |
|
317 | + while ($row = $smcFunc['db_fetch_assoc']($request)) { |
|
318 | + $bans[] = $row; |
|
319 | + } |
|
314 | 320 | |
315 | 321 | $smcFunc['db_free_result']($request); |
316 | 322 | |
@@ -352,8 +358,9 @@ discard block |
||
352 | 358 | { |
353 | 359 | global $txt, $modSettings, $context, $scripturl, $smcFunc, $sourcedir; |
354 | 360 | |
355 | - if ((isset($_POST['add_ban']) || isset($_POST['modify_ban']) || isset($_POST['remove_selection'])) && empty($context['ban_errors'])) |
|
356 | - BanEdit2(); |
|
361 | + if ((isset($_POST['add_ban']) || isset($_POST['modify_ban']) || isset($_POST['remove_selection'])) && empty($context['ban_errors'])) { |
|
362 | + BanEdit2(); |
|
363 | + } |
|
357 | 364 | |
358 | 365 | $ban_group_id = isset($context['ban']['id']) ? $context['ban']['id'] : (isset($_REQUEST['bg']) ? (int) $_REQUEST['bg'] : 0); |
359 | 366 | |
@@ -364,10 +371,10 @@ discard block |
||
364 | 371 | |
365 | 372 | if (!empty($context['ban_errors'])) |
366 | 373 | { |
367 | - foreach ($context['ban_errors'] as $error) |
|
368 | - $context['error_messages'][$error] = $txt[$error]; |
|
369 | - } |
|
370 | - else |
|
374 | + foreach ($context['ban_errors'] as $error) { |
|
375 | + $context['error_messages'][$error] = $txt[$error]; |
|
376 | + } |
|
377 | + } else |
|
371 | 378 | { |
372 | 379 | // If we're editing an existing ban, get it from the database. |
373 | 380 | if (!empty($ban_group_id)) |
@@ -403,12 +410,13 @@ discard block |
||
403 | 410 | 'data' => array( |
404 | 411 | 'function' => function($ban_item) use ($txt) |
405 | 412 | { |
406 | - if (in_array($ban_item['type'], array('ip', 'hostname', 'email'))) |
|
407 | - return '<strong>' . $txt[$ban_item['type']] . ':</strong> ' . $ban_item[$ban_item['type']]; |
|
408 | - elseif ($ban_item['type'] == 'user') |
|
409 | - return '<strong>' . $txt['username'] . ':</strong> ' . $ban_item['user']['link']; |
|
410 | - else |
|
411 | - return '<strong>' . $txt['unknown'] . ':</strong> ' . $ban_item['no_bantype_selected']; |
|
413 | + if (in_array($ban_item['type'], array('ip', 'hostname', 'email'))) { |
|
414 | + return '<strong>' . $txt[$ban_item['type']] . ':</strong> ' . $ban_item[$ban_item['type']]; |
|
415 | + } elseif ($ban_item['type'] == 'user') { |
|
416 | + return '<strong>' . $txt['username'] . ':</strong> ' . $ban_item['user']['link']; |
|
417 | + } else { |
|
418 | + return '<strong>' . $txt['unknown'] . ':</strong> ' . $ban_item['no_bantype_selected']; |
|
419 | + } |
|
412 | 420 | }, |
413 | 421 | 'style' => 'text-align: left;', |
414 | 422 | ), |
@@ -546,8 +554,9 @@ discard block |
||
546 | 554 | $context['ban']['from_user'] = true; |
547 | 555 | |
548 | 556 | // Would be nice if we could also ban the hostname. |
549 | - if ((preg_match('/^\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}$/', $context['ban_suggestions']['main_ip']) == 1 || isValidIPv6($context['ban_suggestions']['main_ip'])) && empty($modSettings['disableHostnameLookup'])) |
|
550 | - $context['ban_suggestions']['hostname'] = host_from_ip($context['ban_suggestions']['main_ip']); |
|
557 | + if ((preg_match('/^\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}$/', $context['ban_suggestions']['main_ip']) == 1 || isValidIPv6($context['ban_suggestions']['main_ip'])) && empty($modSettings['disableHostnameLookup'])) { |
|
558 | + $context['ban_suggestions']['hostname'] = host_from_ip($context['ban_suggestions']['main_ip']); |
|
559 | + } |
|
551 | 560 | |
552 | 561 | $context['ban_suggestions']['other_ips'] = banLoadAdditionalIPs($context['ban_suggestions']['member']['id']); |
553 | 562 | } |
@@ -615,8 +624,9 @@ discard block |
||
615 | 624 | 'items_per_page' => $items_per_page, |
616 | 625 | ) |
617 | 626 | ); |
618 | - if ($smcFunc['db_num_rows']($request) == 0) |
|
619 | - fatal_lang_error('ban_not_found', false); |
|
627 | + if ($smcFunc['db_num_rows']($request) == 0) { |
|
628 | + fatal_lang_error('ban_not_found', false); |
|
629 | + } |
|
620 | 630 | |
621 | 631 | while ($row = $smcFunc['db_fetch_assoc']($request)) |
622 | 632 | { |
@@ -653,18 +663,15 @@ discard block |
||
653 | 663 | { |
654 | 664 | $ban_items[$row['id_ban']]['type'] = 'ip'; |
655 | 665 | $ban_items[$row['id_ban']]['ip'] = range2ip($row['ip_low'], $row['ip_high']); |
656 | - } |
|
657 | - elseif (!empty($row['hostname'])) |
|
666 | + } elseif (!empty($row['hostname'])) |
|
658 | 667 | { |
659 | 668 | $ban_items[$row['id_ban']]['type'] = 'hostname'; |
660 | 669 | $ban_items[$row['id_ban']]['hostname'] = str_replace('%', '*', $row['hostname']); |
661 | - } |
|
662 | - elseif (!empty($row['email_address'])) |
|
670 | + } elseif (!empty($row['email_address'])) |
|
663 | 671 | { |
664 | 672 | $ban_items[$row['id_ban']]['type'] = 'email'; |
665 | 673 | $ban_items[$row['id_ban']]['email'] = str_replace('%', '*', $row['email_address']); |
666 | - } |
|
667 | - elseif (!empty($row['id_member'])) |
|
674 | + } elseif (!empty($row['id_member'])) |
|
668 | 675 | { |
669 | 676 | $ban_items[$row['id_ban']]['type'] = 'user'; |
670 | 677 | $ban_items[$row['id_ban']]['user'] = array( |
@@ -730,9 +737,10 @@ discard block |
||
730 | 737 | $search_list += array('ips_in_messages' => 'banLoadAdditionalIPsMember', 'ips_in_errors' => 'banLoadAdditionalIPsError'); |
731 | 738 | |
732 | 739 | $return = array(); |
733 | - foreach ($search_list as $key => $callable) |
|
734 | - if (is_callable($callable)) |
|
740 | + foreach ($search_list as $key => $callable) { |
|
741 | + if (is_callable($callable)) |
|
735 | 742 | $return[$key] = call_user_func($callable, $member_id); |
743 | + } |
|
736 | 744 | |
737 | 745 | return $return; |
738 | 746 | } |
@@ -757,8 +765,9 @@ discard block |
||
757 | 765 | 'current_user' => $member_id, |
758 | 766 | ) |
759 | 767 | ); |
760 | - while ($row = $smcFunc['db_fetch_assoc']($request)) |
|
761 | - $message_ips[] = inet_dtop($row['poster_ip']); |
|
768 | + while ($row = $smcFunc['db_fetch_assoc']($request)) { |
|
769 | + $message_ips[] = inet_dtop($row['poster_ip']); |
|
770 | + } |
|
762 | 771 | $smcFunc['db_free_result']($request); |
763 | 772 | |
764 | 773 | return $message_ips; |
@@ -783,8 +792,9 @@ discard block |
||
783 | 792 | 'current_user' => $member_id, |
784 | 793 | ) |
785 | 794 | ); |
786 | - while ($row = $smcFunc['db_fetch_assoc']($request)) |
|
787 | - $error_ips[] = inet_dtop($row['ip']); |
|
795 | + while ($row = $smcFunc['db_fetch_assoc']($request)) { |
|
796 | + $error_ips[] = inet_dtop($row['ip']); |
|
797 | + } |
|
788 | 798 | $smcFunc['db_free_result']($request); |
789 | 799 | |
790 | 800 | return $error_ips; |
@@ -825,11 +835,13 @@ discard block |
||
825 | 835 | $ban_info['cannot']['login'] = !empty($ban_info['full_ban']) || empty($_POST['cannot_login']) ? 0 : 1; |
826 | 836 | |
827 | 837 | // Adding a new ban group |
828 | - if (empty($_REQUEST['bg'])) |
|
829 | - $ban_group_id = insertBanGroup($ban_info); |
|
838 | + if (empty($_REQUEST['bg'])) { |
|
839 | + $ban_group_id = insertBanGroup($ban_info); |
|
840 | + } |
|
830 | 841 | // Editing an existing ban group |
831 | - else |
|
832 | - $ban_group_id = updateBanGroup($ban_info); |
|
842 | + else { |
|
843 | + $ban_group_id = updateBanGroup($ban_info); |
|
844 | + } |
|
833 | 845 | |
834 | 846 | if (is_numeric($ban_group_id)) |
835 | 847 | { |
@@ -840,9 +852,10 @@ discard block |
||
840 | 852 | $context['ban'] = $ban_info; |
841 | 853 | } |
842 | 854 | |
843 | - if (isset($_POST['ban_suggestions'])) |
|
844 | - // @TODO: is $_REQUEST['bi'] ever set? |
|
855 | + if (isset($_POST['ban_suggestions'])) { |
|
856 | + // @TODO: is $_REQUEST['bi'] ever set? |
|
845 | 857 | $saved_triggers = saveTriggers($_POST['ban_suggestions'], $ban_info['id'], isset($_REQUEST['u']) ? (int) $_REQUEST['u'] : 0, isset($_REQUEST['bi']) ? (int) $_REQUEST['bi'] : 0); |
858 | + } |
|
846 | 859 | |
847 | 860 | // Something went wrong somewhere... Oh well, let's go back. |
848 | 861 | if (!empty($context['ban_errors'])) |
@@ -852,8 +865,9 @@ discard block |
||
852 | 865 | $context['ban_suggestions'] = array_merge($context['ban_suggestions'], getMemberData((int) $_REQUEST['u'])); |
853 | 866 | |
854 | 867 | // Not strictly necessary, but it's nice |
855 | - if (!empty($context['ban_suggestions']['member']['id'])) |
|
856 | - $context['ban_suggestions']['other_ips'] = banLoadAdditionalIPs($context['ban_suggestions']['member']['id']); |
|
868 | + if (!empty($context['ban_suggestions']['member']['id'])) { |
|
869 | + $context['ban_suggestions']['other_ips'] = banLoadAdditionalIPs($context['ban_suggestions']['member']['id']); |
|
870 | + } |
|
857 | 871 | return BanEdit(); |
858 | 872 | } |
859 | 873 | $context['ban_suggestions']['saved_triggers'] = !empty($saved_triggers) ? $saved_triggers : array(); |
@@ -900,10 +914,11 @@ discard block |
||
900 | 914 | |
901 | 915 | foreach ($suggestions as $key => $value) |
902 | 916 | { |
903 | - if (is_array($value)) |
|
904 | - $triggers[$key] = $value; |
|
905 | - else |
|
906 | - $triggers[$value] = !empty($_POST[$value]) ? $_POST[$value] : ''; |
|
917 | + if (is_array($value)) { |
|
918 | + $triggers[$key] = $value; |
|
919 | + } else { |
|
920 | + $triggers[$value] = !empty($_POST[$value]) ? $_POST[$value] : ''; |
|
921 | + } |
|
907 | 922 | } |
908 | 923 | |
909 | 924 | $ban_triggers = validateTriggers($triggers); |
@@ -911,16 +926,18 @@ discard block |
||
911 | 926 | // Time to save! |
912 | 927 | if (!empty($ban_triggers['ban_triggers']) && empty($context['ban_errors'])) |
913 | 928 | { |
914 | - if (empty($ban_id)) |
|
915 | - addTriggers($ban_group, $ban_triggers['ban_triggers'], $ban_triggers['log_info']); |
|
916 | - else |
|
917 | - updateTriggers($ban_id, $ban_group, array_shift($ban_triggers['ban_triggers']), $ban_triggers['log_info']); |
|
929 | + if (empty($ban_id)) { |
|
930 | + addTriggers($ban_group, $ban_triggers['ban_triggers'], $ban_triggers['log_info']); |
|
931 | + } else { |
|
932 | + updateTriggers($ban_id, $ban_group, array_shift($ban_triggers['ban_triggers']), $ban_triggers['log_info']); |
|
933 | + } |
|
934 | + } |
|
935 | + if (!empty($context['ban_errors'])) { |
|
936 | + return $triggers; |
|
937 | + } else { |
|
938 | + return false; |
|
939 | + } |
|
918 | 940 | } |
919 | - if (!empty($context['ban_errors'])) |
|
920 | - return $triggers; |
|
921 | - else |
|
922 | - return false; |
|
923 | -} |
|
924 | 941 | |
925 | 942 | /** |
926 | 943 | * This function removes a bunch of triggers based on ids |
@@ -934,14 +951,17 @@ discard block |
||
934 | 951 | { |
935 | 952 | global $smcFunc, $scripturl; |
936 | 953 | |
937 | - if ($group_id !== false) |
|
938 | - $group_id = (int) $group_id; |
|
954 | + if ($group_id !== false) { |
|
955 | + $group_id = (int) $group_id; |
|
956 | + } |
|
939 | 957 | |
940 | - if (empty($group_id) && empty($items_ids)) |
|
941 | - return false; |
|
958 | + if (empty($group_id) && empty($items_ids)) { |
|
959 | + return false; |
|
960 | + } |
|
942 | 961 | |
943 | - if (!is_array($items_ids)) |
|
944 | - $items_ids = array($items_ids); |
|
962 | + if (!is_array($items_ids)) { |
|
963 | + $items_ids = array($items_ids); |
|
964 | + } |
|
945 | 965 | |
946 | 966 | $log_info = array(); |
947 | 967 | $ban_items = array(); |
@@ -979,8 +999,7 @@ discard block |
||
979 | 999 | 'bantype' => ($is_range ? 'ip_range' : 'main_ip'), |
980 | 1000 | 'value' => $ban_items[$row['id_ban']]['ip'], |
981 | 1001 | ); |
982 | - } |
|
983 | - elseif (!empty($row['hostname'])) |
|
1002 | + } elseif (!empty($row['hostname'])) |
|
984 | 1003 | { |
985 | 1004 | $ban_items[$row['id_ban']]['type'] = 'hostname'; |
986 | 1005 | $ban_items[$row['id_ban']]['hostname'] = str_replace('%', '*', $row['hostname']); |
@@ -988,8 +1007,7 @@ discard block |
||
988 | 1007 | 'bantype' => 'hostname', |
989 | 1008 | 'value' => $row['hostname'], |
990 | 1009 | ); |
991 | - } |
|
992 | - elseif (!empty($row['email_address'])) |
|
1010 | + } elseif (!empty($row['email_address'])) |
|
993 | 1011 | { |
994 | 1012 | $ban_items[$row['id_ban']]['type'] = 'email'; |
995 | 1013 | $ban_items[$row['id_ban']]['email'] = str_replace('%', '*', $row['email_address']); |
@@ -997,8 +1015,7 @@ discard block |
||
997 | 1015 | 'bantype' => 'email', |
998 | 1016 | 'value' => $ban_items[$row['id_ban']]['email'], |
999 | 1017 | ); |
1000 | - } |
|
1001 | - elseif (!empty($row['id_member'])) |
|
1018 | + } elseif (!empty($row['id_member'])) |
|
1002 | 1019 | { |
1003 | 1020 | $ban_items[$row['id_ban']]['type'] = 'user'; |
1004 | 1021 | $ban_items[$row['id_ban']]['user'] = array( |
@@ -1031,8 +1048,7 @@ discard block |
||
1031 | 1048 | 'ban_group' => $group_id, |
1032 | 1049 | ) |
1033 | 1050 | ); |
1034 | - } |
|
1035 | - elseif (!empty($items_ids)) |
|
1051 | + } elseif (!empty($items_ids)) |
|
1036 | 1052 | { |
1037 | 1053 | $smcFunc['db_query']('', ' |
1038 | 1054 | DELETE FROM {db_prefix}ban_items |
@@ -1057,13 +1073,15 @@ discard block |
||
1057 | 1073 | { |
1058 | 1074 | global $smcFunc; |
1059 | 1075 | |
1060 | - if (!is_array($group_ids)) |
|
1061 | - $group_ids = array($group_ids); |
|
1076 | + if (!is_array($group_ids)) { |
|
1077 | + $group_ids = array($group_ids); |
|
1078 | + } |
|
1062 | 1079 | |
1063 | 1080 | $group_ids = array_unique($group_ids); |
1064 | 1081 | |
1065 | - if (empty($group_ids)) |
|
1066 | - return false; |
|
1082 | + if (empty($group_ids)) { |
|
1083 | + return false; |
|
1084 | + } |
|
1067 | 1085 | |
1068 | 1086 | $smcFunc['db_query']('', ' |
1069 | 1087 | DELETE FROM {db_prefix}ban_groups |
@@ -1087,21 +1105,23 @@ discard block |
||
1087 | 1105 | { |
1088 | 1106 | global $smcFunc; |
1089 | 1107 | |
1090 | - if (empty($ids)) |
|
1091 | - $smcFunc['db_query']('truncate_table', ' |
|
1108 | + if (empty($ids)) { |
|
1109 | + $smcFunc['db_query']('truncate_table', ' |
|
1092 | 1110 | TRUNCATE {db_prefix}log_banned', |
1093 | 1111 | array( |
1094 | 1112 | ) |
1095 | 1113 | ); |
1096 | - else |
|
1114 | + } else |
|
1097 | 1115 | { |
1098 | - if (!is_array($ids)) |
|
1099 | - $ids = array($ids); |
|
1116 | + if (!is_array($ids)) { |
|
1117 | + $ids = array($ids); |
|
1118 | + } |
|
1100 | 1119 | |
1101 | 1120 | $ids = array_unique($ids); |
1102 | 1121 | |
1103 | - if (empty($ids)) |
|
1104 | - return false; |
|
1122 | + if (empty($ids)) { |
|
1123 | + return false; |
|
1124 | + } |
|
1105 | 1125 | |
1106 | 1126 | $smcFunc['db_query']('', ' |
1107 | 1127 | DELETE FROM {db_prefix}log_banned |
@@ -1127,8 +1147,9 @@ discard block |
||
1127 | 1147 | { |
1128 | 1148 | global $context, $smcFunc; |
1129 | 1149 | |
1130 | - if (empty($triggers)) |
|
1131 | - $context['ban_erros'][] = 'ban_empty_triggers'; |
|
1150 | + if (empty($triggers)) { |
|
1151 | + $context['ban_erros'][] = 'ban_empty_triggers'; |
|
1152 | + } |
|
1132 | 1153 | |
1133 | 1154 | $ban_triggers = array(); |
1134 | 1155 | $log_info = array(); |
@@ -1137,39 +1158,39 @@ discard block |
||
1137 | 1158 | { |
1138 | 1159 | if (!empty($value)) |
1139 | 1160 | { |
1140 | - if ($key == 'member') |
|
1141 | - continue; |
|
1161 | + if ($key == 'member') { |
|
1162 | + continue; |
|
1163 | + } |
|
1142 | 1164 | |
1143 | 1165 | if ($key == 'main_ip') |
1144 | 1166 | { |
1145 | 1167 | $value = trim($value); |
1146 | 1168 | $ip_parts = ip2range($value); |
1147 | - if (!checkExistingTriggerIP($ip_parts, $value)) |
|
1148 | - $context['ban_erros'][] = 'invalid_ip'; |
|
1149 | - else |
|
1169 | + if (!checkExistingTriggerIP($ip_parts, $value)) { |
|
1170 | + $context['ban_erros'][] = 'invalid_ip'; |
|
1171 | + } else |
|
1150 | 1172 | { |
1151 | 1173 | $ban_triggers['main_ip'] = array( |
1152 | 1174 | 'ip_low' => $ip_parts['low'], |
1153 | 1175 | 'ip_high' => $ip_parts['high'] |
1154 | 1176 | ); |
1155 | 1177 | } |
1156 | - } |
|
1157 | - elseif ($key == 'hostname') |
|
1178 | + } elseif ($key == 'hostname') |
|
1158 | 1179 | { |
1159 | - if (preg_match('/[^\w.\-*]/', $value) == 1) |
|
1160 | - $context['ban_erros'][] = 'invalid_hostname'; |
|
1161 | - else |
|
1180 | + if (preg_match('/[^\w.\-*]/', $value) == 1) { |
|
1181 | + $context['ban_erros'][] = 'invalid_hostname'; |
|
1182 | + } else |
|
1162 | 1183 | { |
1163 | 1184 | // Replace the * wildcard by a MySQL wildcard %. |
1164 | 1185 | $value = substr(str_replace('*', '%', $value), 0, 255); |
1165 | 1186 | |
1166 | 1187 | $ban_triggers['hostname']['hostname'] = $value; |
1167 | 1188 | } |
1168 | - } |
|
1169 | - elseif ($key == 'email') |
|
1189 | + } elseif ($key == 'email') |
|
1170 | 1190 | { |
1171 | - if (preg_match('/[^\w.\-\+*@]/', $value) == 1) |
|
1172 | - $context['ban_erros'][] = 'invalid_email'; |
|
1191 | + if (preg_match('/[^\w.\-\+*@]/', $value) == 1) { |
|
1192 | + $context['ban_erros'][] = 'invalid_email'; |
|
1193 | + } |
|
1173 | 1194 | |
1174 | 1195 | // Check the user is not banning an admin. |
1175 | 1196 | $request = $smcFunc['db_query']('', ' |
@@ -1183,15 +1204,15 @@ discard block |
||
1183 | 1204 | 'email' => $value, |
1184 | 1205 | ) |
1185 | 1206 | ); |
1186 | - if ($smcFunc['db_num_rows']($request) != 0) |
|
1187 | - $context['ban_erros'][] = 'no_ban_admin'; |
|
1207 | + if ($smcFunc['db_num_rows']($request) != 0) { |
|
1208 | + $context['ban_erros'][] = 'no_ban_admin'; |
|
1209 | + } |
|
1188 | 1210 | $smcFunc['db_free_result']($request); |
1189 | 1211 | |
1190 | 1212 | $value = substr(strtolower(str_replace('*', '%', $value)), 0, 255); |
1191 | 1213 | |
1192 | 1214 | $ban_triggers['email']['email_address'] = $value; |
1193 | - } |
|
1194 | - elseif ($key == 'user') |
|
1215 | + } elseif ($key == 'user') |
|
1195 | 1216 | { |
1196 | 1217 | $user = preg_replace('~&#(\d{4,5}|[2-9]\d{2,4}|1[2-9]\d);~', '&#$1;', $smcFunc['htmlspecialchars']($value, ENT_QUOTES)); |
1197 | 1218 | |
@@ -1205,8 +1226,9 @@ discard block |
||
1205 | 1226 | 'username' => $user, |
1206 | 1227 | ) |
1207 | 1228 | ); |
1208 | - if ($smcFunc['db_num_rows']($request) == 0) |
|
1209 | - $context['ban_erros'][] = 'invalid_username'; |
|
1229 | + if ($smcFunc['db_num_rows']($request) == 0) { |
|
1230 | + $context['ban_erros'][] = 'invalid_username'; |
|
1231 | + } |
|
1210 | 1232 | list ($value, $isAdmin) = $smcFunc['db_fetch_row']($request); |
1211 | 1233 | $smcFunc['db_free_result']($request); |
1212 | 1234 | |
@@ -1214,25 +1236,25 @@ discard block |
||
1214 | 1236 | { |
1215 | 1237 | unset($value); |
1216 | 1238 | $context['ban_erros'][] = 'no_ban_admin'; |
1239 | + } else { |
|
1240 | + $ban_triggers['user']['id_member'] = $value; |
|
1217 | 1241 | } |
1218 | - else |
|
1219 | - $ban_triggers['user']['id_member'] = $value; |
|
1220 | - } |
|
1221 | - elseif (in_array($key, array('ips_in_messages', 'ips_in_errors'))) |
|
1242 | + } elseif (in_array($key, array('ips_in_messages', 'ips_in_errors'))) |
|
1222 | 1243 | { |
1223 | 1244 | // Special case, those two are arrays themselves |
1224 | 1245 | $values = array_unique($value); |
1225 | 1246 | // Don't add the main IP again. |
1226 | - if (isset($triggers['main_ip'])) |
|
1227 | - $values = array_diff($values, array($triggers['main_ip'])); |
|
1247 | + if (isset($triggers['main_ip'])) { |
|
1248 | + $values = array_diff($values, array($triggers['main_ip'])); |
|
1249 | + } |
|
1228 | 1250 | unset($value); |
1229 | 1251 | foreach ($values as $val) |
1230 | 1252 | { |
1231 | 1253 | $val = trim($val); |
1232 | 1254 | $ip_parts = ip2range($val); |
1233 | - if (!checkExistingTriggerIP($ip_parts, $val)) |
|
1234 | - $context['ban_erros'][] = 'invalid_ip'; |
|
1235 | - else |
|
1255 | + if (!checkExistingTriggerIP($ip_parts, $val)) { |
|
1256 | + $context['ban_erros'][] = 'invalid_ip'; |
|
1257 | + } else |
|
1236 | 1258 | { |
1237 | 1259 | $ban_triggers[$key][] = array( |
1238 | 1260 | 'ip_low' => $ip_parts['low'], |
@@ -1245,15 +1267,16 @@ discard block |
||
1245 | 1267 | ); |
1246 | 1268 | } |
1247 | 1269 | } |
1270 | + } else { |
|
1271 | + $context['ban_erros'][] = 'no_bantype_selected'; |
|
1248 | 1272 | } |
1249 | - else |
|
1250 | - $context['ban_erros'][] = 'no_bantype_selected'; |
|
1251 | 1273 | |
1252 | - if (isset($value) && !is_array($value)) |
|
1253 | - $log_info[] = array( |
|
1274 | + if (isset($value) && !is_array($value)) { |
|
1275 | + $log_info[] = array( |
|
1254 | 1276 | 'value' => $value, |
1255 | 1277 | 'bantype' => $key, |
1256 | 1278 | ); |
1279 | + } |
|
1257 | 1280 | } |
1258 | 1281 | } |
1259 | 1282 | return array('ban_triggers' => $ban_triggers, 'log_info' => $log_info); |
@@ -1273,8 +1296,9 @@ discard block |
||
1273 | 1296 | { |
1274 | 1297 | global $smcFunc, $context; |
1275 | 1298 | |
1276 | - if (empty($group_id)) |
|
1277 | - $context['ban_errors'][] = 'ban_id_empty'; |
|
1299 | + if (empty($group_id)) { |
|
1300 | + $context['ban_errors'][] = 'ban_id_empty'; |
|
1301 | + } |
|
1278 | 1302 | |
1279 | 1303 | // Preset all values that are required. |
1280 | 1304 | $values = array( |
@@ -1299,18 +1323,21 @@ discard block |
||
1299 | 1323 | foreach ($triggers as $key => $trigger) |
1300 | 1324 | { |
1301 | 1325 | // Exceptions, exceptions, exceptions...always exceptions... :P |
1302 | - if (in_array($key, array('ips_in_messages', 'ips_in_errors'))) |
|
1303 | - foreach ($trigger as $real_trigger) |
|
1326 | + if (in_array($key, array('ips_in_messages', 'ips_in_errors'))) { |
|
1327 | + foreach ($trigger as $real_trigger) |
|
1304 | 1328 | $insertTriggers[] = array_merge($values, $real_trigger); |
1305 | - else |
|
1306 | - $insertTriggers[] = array_merge($values, $trigger); |
|
1329 | + } else { |
|
1330 | + $insertTriggers[] = array_merge($values, $trigger); |
|
1331 | + } |
|
1307 | 1332 | } |
1308 | 1333 | |
1309 | - if (empty($insertTriggers)) |
|
1310 | - $context['ban_errors'][] = 'ban_no_triggers'; |
|
1334 | + if (empty($insertTriggers)) { |
|
1335 | + $context['ban_errors'][] = 'ban_no_triggers'; |
|
1336 | + } |
|
1311 | 1337 | |
1312 | - if (!empty($context['ban_errors'])) |
|
1313 | - return false; |
|
1338 | + if (!empty($context['ban_errors'])) { |
|
1339 | + return false; |
|
1340 | + } |
|
1314 | 1341 | |
1315 | 1342 | $smcFunc['db_insert']('', |
1316 | 1343 | '{db_prefix}ban_items', |
@@ -1338,15 +1365,19 @@ discard block |
||
1338 | 1365 | { |
1339 | 1366 | global $smcFunc, $context; |
1340 | 1367 | |
1341 | - if (empty($ban_item)) |
|
1342 | - $context['ban_errors'][] = 'ban_ban_item_empty'; |
|
1343 | - if (empty($group_id)) |
|
1344 | - $context['ban_errors'][] = 'ban_id_empty'; |
|
1345 | - if (empty($trigger)) |
|
1346 | - $context['ban_errors'][] = 'ban_no_triggers'; |
|
1368 | + if (empty($ban_item)) { |
|
1369 | + $context['ban_errors'][] = 'ban_ban_item_empty'; |
|
1370 | + } |
|
1371 | + if (empty($group_id)) { |
|
1372 | + $context['ban_errors'][] = 'ban_id_empty'; |
|
1373 | + } |
|
1374 | + if (empty($trigger)) { |
|
1375 | + $context['ban_errors'][] = 'ban_no_triggers'; |
|
1376 | + } |
|
1347 | 1377 | |
1348 | - if (!empty($context['ban_errors'])) |
|
1349 | - return; |
|
1378 | + if (!empty($context['ban_errors'])) { |
|
1379 | + return; |
|
1380 | + } |
|
1350 | 1381 | |
1351 | 1382 | // Preset all values that are required. |
1352 | 1383 | $values = array( |
@@ -1387,8 +1418,9 @@ discard block |
||
1387 | 1418 | */ |
1388 | 1419 | function logTriggersUpdates($logs, $new = true, $removal = false) |
1389 | 1420 | { |
1390 | - if (empty($logs)) |
|
1391 | - return; |
|
1421 | + if (empty($logs)) { |
|
1422 | + return; |
|
1423 | + } |
|
1392 | 1424 | |
1393 | 1425 | $log_name_map = array( |
1394 | 1426 | 'main_ip' => 'ip_range', |
@@ -1399,14 +1431,15 @@ discard block |
||
1399 | 1431 | ); |
1400 | 1432 | |
1401 | 1433 | // Log the addion of the ban entries into the moderation log. |
1402 | - foreach ($logs as $log) |
|
1403 | - logAction('ban' . ($removal == true ? 'remove' : ''), array( |
|
1434 | + foreach ($logs as $log) { |
|
1435 | + logAction('ban' . ($removal == true ? 'remove' : ''), array( |
|
1404 | 1436 | $log_name_map[$log['bantype']] => $log['value'], |
1405 | 1437 | 'new' => empty($new) ? 0 : 1, |
1406 | 1438 | 'remove' => empty($removal) ? 0 : 1, |
1407 | 1439 | 'type' => $log['bantype'], |
1408 | 1440 | )); |
1409 | -} |
|
1441 | + } |
|
1442 | + } |
|
1410 | 1443 | |
1411 | 1444 | /** |
1412 | 1445 | * Updates an existing ban group |
@@ -1420,12 +1453,15 @@ discard block |
||
1420 | 1453 | { |
1421 | 1454 | global $smcFunc, $context; |
1422 | 1455 | |
1423 | - if (empty($ban_info['name'])) |
|
1424 | - $context['ban_errors'][] = 'ban_name_empty'; |
|
1425 | - if (empty($ban_info['id'])) |
|
1426 | - $context['ban_errors'][] = 'ban_id_empty'; |
|
1427 | - if (empty($ban_info['cannot']['access']) && empty($ban_info['cannot']['register']) && empty($ban_info['cannot']['post']) && empty($ban_info['cannot']['login'])) |
|
1428 | - $context['ban_errors'][] = 'ban_unknown_restriction_type'; |
|
1456 | + if (empty($ban_info['name'])) { |
|
1457 | + $context['ban_errors'][] = 'ban_name_empty'; |
|
1458 | + } |
|
1459 | + if (empty($ban_info['id'])) { |
|
1460 | + $context['ban_errors'][] = 'ban_id_empty'; |
|
1461 | + } |
|
1462 | + if (empty($ban_info['cannot']['access']) && empty($ban_info['cannot']['register']) && empty($ban_info['cannot']['post']) && empty($ban_info['cannot']['login'])) { |
|
1463 | + $context['ban_errors'][] = 'ban_unknown_restriction_type'; |
|
1464 | + } |
|
1429 | 1465 | |
1430 | 1466 | if (!empty($ban_info['id'])) |
1431 | 1467 | { |
@@ -1440,8 +1476,9 @@ discard block |
||
1440 | 1476 | ) |
1441 | 1477 | ); |
1442 | 1478 | |
1443 | - if ($smcFunc['db_num_rows']($request) == 0) |
|
1444 | - $context['ban_errors'][] = 'ban_not_found'; |
|
1479 | + if ($smcFunc['db_num_rows']($request) == 0) { |
|
1480 | + $context['ban_errors'][] = 'ban_not_found'; |
|
1481 | + } |
|
1445 | 1482 | $smcFunc['db_free_result']($request); |
1446 | 1483 | } |
1447 | 1484 | |
@@ -1459,13 +1496,15 @@ discard block |
||
1459 | 1496 | 'new_ban_name' => $ban_info['name'], |
1460 | 1497 | ) |
1461 | 1498 | ); |
1462 | - if ($smcFunc['db_num_rows']($request) != 0) |
|
1463 | - $context['ban_errors'][] = 'ban_name_exists'; |
|
1499 | + if ($smcFunc['db_num_rows']($request) != 0) { |
|
1500 | + $context['ban_errors'][] = 'ban_name_exists'; |
|
1501 | + } |
|
1464 | 1502 | $smcFunc['db_free_result']($request); |
1465 | 1503 | } |
1466 | 1504 | |
1467 | - if (!empty($context['ban_errors'])) |
|
1468 | - return $ban_info['id']; |
|
1505 | + if (!empty($context['ban_errors'])) { |
|
1506 | + return $ban_info['id']; |
|
1507 | + } |
|
1469 | 1508 | |
1470 | 1509 | $smcFunc['db_query']('', ' |
1471 | 1510 | UPDATE {db_prefix}ban_groups |
@@ -1509,10 +1548,12 @@ discard block |
||
1509 | 1548 | { |
1510 | 1549 | global $smcFunc, $context; |
1511 | 1550 | |
1512 | - if (empty($ban_info['name'])) |
|
1513 | - $context['ban_errors'][] = 'ban_name_empty'; |
|
1514 | - if (empty($ban_info['cannot']['access']) && empty($ban_info['cannot']['register']) && empty($ban_info['cannot']['post']) && empty($ban_info['cannot']['login'])) |
|
1515 | - $context['ban_errors'][] = 'ban_unknown_restriction_type'; |
|
1551 | + if (empty($ban_info['name'])) { |
|
1552 | + $context['ban_errors'][] = 'ban_name_empty'; |
|
1553 | + } |
|
1554 | + if (empty($ban_info['cannot']['access']) && empty($ban_info['cannot']['register']) && empty($ban_info['cannot']['post']) && empty($ban_info['cannot']['login'])) { |
|
1555 | + $context['ban_errors'][] = 'ban_unknown_restriction_type'; |
|
1556 | + } |
|
1516 | 1557 | |
1517 | 1558 | if (!empty($ban_info['name'])) |
1518 | 1559 | { |
@@ -1527,13 +1568,15 @@ discard block |
||
1527 | 1568 | ) |
1528 | 1569 | ); |
1529 | 1570 | |
1530 | - if ($smcFunc['db_num_rows']($request) == 1) |
|
1531 | - $context['ban_errors'][] = 'ban_name_exists'; |
|
1571 | + if ($smcFunc['db_num_rows']($request) == 1) { |
|
1572 | + $context['ban_errors'][] = 'ban_name_exists'; |
|
1573 | + } |
|
1532 | 1574 | $smcFunc['db_free_result']($request); |
1533 | 1575 | } |
1534 | 1576 | |
1535 | - if (!empty($context['ban_errors'])) |
|
1536 | - return; |
|
1577 | + if (!empty($context['ban_errors'])) { |
|
1578 | + return; |
|
1579 | + } |
|
1537 | 1580 | |
1538 | 1581 | // Yes yes, we're ready to add now. |
1539 | 1582 | $ban_info['id'] = $smcFunc['db_insert']('', |
@@ -1550,8 +1593,9 @@ discard block |
||
1550 | 1593 | 1 |
1551 | 1594 | ); |
1552 | 1595 | |
1553 | - if (empty($ban_info['id'])) |
|
1554 | - $context['ban_errors'][] = 'impossible_insert_new_bangroup'; |
|
1596 | + if (empty($ban_info['id'])) { |
|
1597 | + $context['ban_errors'][] = 'impossible_insert_new_bangroup'; |
|
1598 | + } |
|
1555 | 1599 | |
1556 | 1600 | return $ban_info['id']; |
1557 | 1601 | } |
@@ -1576,24 +1620,24 @@ discard block |
||
1576 | 1620 | $ban_group = isset($_REQUEST['bg']) ? (int) $_REQUEST['bg'] : 0; |
1577 | 1621 | $ban_id = isset($_REQUEST['bi']) ? (int) $_REQUEST['bi'] : 0; |
1578 | 1622 | |
1579 | - if (empty($ban_group)) |
|
1580 | - fatal_lang_error('ban_not_found', false); |
|
1623 | + if (empty($ban_group)) { |
|
1624 | + fatal_lang_error('ban_not_found', false); |
|
1625 | + } |
|
1581 | 1626 | |
1582 | 1627 | if (isset($_POST['add_new_trigger']) && !empty($_POST['ban_suggestions'])) |
1583 | 1628 | { |
1584 | 1629 | saveTriggers($_POST['ban_suggestions'], $ban_group, 0, $ban_id); |
1585 | 1630 | redirectexit('action=admin;area=ban;sa=edit' . (!empty($ban_group) ? ';bg=' . $ban_group : '')); |
1586 | - } |
|
1587 | - elseif (isset($_POST['edit_trigger']) && !empty($_POST['ban_suggestions'])) |
|
1631 | + } elseif (isset($_POST['edit_trigger']) && !empty($_POST['ban_suggestions'])) |
|
1588 | 1632 | { |
1589 | 1633 | // The first replaces the old one, the others are added new (simplification, otherwise it would require another query and some work...) |
1590 | 1634 | saveTriggers(array_shift($_POST['ban_suggestions']), $ban_group, 0, $ban_id); |
1591 | - if (!empty($_POST['ban_suggestions'])) |
|
1592 | - saveTriggers($_POST['ban_suggestions'], $ban_group); |
|
1635 | + if (!empty($_POST['ban_suggestions'])) { |
|
1636 | + saveTriggers($_POST['ban_suggestions'], $ban_group); |
|
1637 | + } |
|
1593 | 1638 | |
1594 | 1639 | redirectexit('action=admin;area=ban;sa=edit' . (!empty($ban_group) ? ';bg=' . $ban_group : '')); |
1595 | - } |
|
1596 | - elseif (isset($_POST['edit_trigger'])) |
|
1640 | + } elseif (isset($_POST['edit_trigger'])) |
|
1597 | 1641 | { |
1598 | 1642 | removeBanTriggers($ban_id); |
1599 | 1643 | redirectexit('action=admin;area=ban;sa=edit' . (!empty($ban_group) ? ';bg=' . $ban_group : '')); |
@@ -1624,8 +1668,7 @@ discard block |
||
1624 | 1668 | ), |
1625 | 1669 | 'is_new' => true, |
1626 | 1670 | ); |
1627 | - } |
|
1628 | - else |
|
1671 | + } else |
|
1629 | 1672 | { |
1630 | 1673 | $request = $smcFunc['db_query']('', ' |
1631 | 1674 | SELECT |
@@ -1642,8 +1685,9 @@ discard block |
||
1642 | 1685 | 'ban_group' => $ban_group, |
1643 | 1686 | ) |
1644 | 1687 | ); |
1645 | - if ($smcFunc['db_num_rows']($request) == 0) |
|
1646 | - fatal_lang_error('ban_not_found', false); |
|
1688 | + if ($smcFunc['db_num_rows']($request) == 0) { |
|
1689 | + fatal_lang_error('ban_not_found', false); |
|
1690 | + } |
|
1647 | 1691 | $row = $smcFunc['db_fetch_assoc']($request); |
1648 | 1692 | $smcFunc['db_free_result']($request); |
1649 | 1693 | |
@@ -1692,8 +1736,9 @@ discard block |
||
1692 | 1736 | removeBanTriggers($_POST['remove']); |
1693 | 1737 | |
1694 | 1738 | // Rehabilitate some members. |
1695 | - if ($_REQUEST['entity'] == 'member') |
|
1696 | - updateBanMembers(); |
|
1739 | + if ($_REQUEST['entity'] == 'member') { |
|
1740 | + updateBanMembers(); |
|
1741 | + } |
|
1697 | 1742 | |
1698 | 1743 | // Make sure the ban cache is refreshed. |
1699 | 1744 | updateSettings(array('banLastUpdated' => time())); |
@@ -1806,8 +1851,7 @@ discard block |
||
1806 | 1851 | 'default' => 'bi.ip_low, bi.ip_high, bi.ip_low', |
1807 | 1852 | 'reverse' => 'bi.ip_low DESC, bi.ip_high DESC', |
1808 | 1853 | ); |
1809 | - } |
|
1810 | - elseif ($context['selected_entity'] === 'hostname') |
|
1854 | + } elseif ($context['selected_entity'] === 'hostname') |
|
1811 | 1855 | { |
1812 | 1856 | $listOptions['columns']['banned_entity']['data'] = array( |
1813 | 1857 | 'function' => function($rowData) use ($smcFunc) |
@@ -1819,8 +1863,7 @@ discard block |
||
1819 | 1863 | 'default' => 'bi.hostname', |
1820 | 1864 | 'reverse' => 'bi.hostname DESC', |
1821 | 1865 | ); |
1822 | - } |
|
1823 | - elseif ($context['selected_entity'] === 'email') |
|
1866 | + } elseif ($context['selected_entity'] === 'email') |
|
1824 | 1867 | { |
1825 | 1868 | $listOptions['columns']['banned_entity']['data'] = array( |
1826 | 1869 | 'function' => function($rowData) use ($smcFunc) |
@@ -1832,8 +1875,7 @@ discard block |
||
1832 | 1875 | 'default' => 'bi.email_address', |
1833 | 1876 | 'reverse' => 'bi.email_address DESC', |
1834 | 1877 | ); |
1835 | - } |
|
1836 | - elseif ($context['selected_entity'] === 'member') |
|
1878 | + } elseif ($context['selected_entity'] === 'member') |
|
1837 | 1879 | { |
1838 | 1880 | $listOptions['columns']['banned_entity']['data'] = array( |
1839 | 1881 | 'sprintf' => array( |
@@ -1897,8 +1939,9 @@ discard block |
||
1897 | 1939 | ) |
1898 | 1940 | ); |
1899 | 1941 | $ban_triggers = array(); |
1900 | - while ($row = $smcFunc['db_fetch_assoc']($request)) |
|
1901 | - $ban_triggers[] = $row; |
|
1942 | + while ($row = $smcFunc['db_fetch_assoc']($request)) { |
|
1943 | + $ban_triggers[] = $row; |
|
1944 | + } |
|
1902 | 1945 | $smcFunc['db_free_result']($request); |
1903 | 1946 | |
1904 | 1947 | return $ban_triggers; |
@@ -1954,8 +1997,9 @@ discard block |
||
1954 | 1997 | validateToken('admin-bl'); |
1955 | 1998 | |
1956 | 1999 | // 'Delete all entries' button was pressed. |
1957 | - if (!empty($_POST['removeAll'])) |
|
1958 | - removeBanLogs(); |
|
2000 | + if (!empty($_POST['removeAll'])) { |
|
2001 | + removeBanLogs(); |
|
2002 | + } |
|
1959 | 2003 | // 'Delete selection' button was pressed. |
1960 | 2004 | else |
1961 | 2005 | { |
@@ -2164,12 +2208,15 @@ discard block |
||
2164 | 2208 | $low = inet_dtop($low); |
2165 | 2209 | $high = inet_dtop($high); |
2166 | 2210 | |
2167 | - if ($low == '255.255.255.255') return 'unknown'; |
|
2168 | - if ($low == $high) |
|
2169 | - return $low; |
|
2170 | - else |
|
2171 | - return $low . '-' . $high; |
|
2172 | -} |
|
2211 | + if ($low == '255.255.255.255') { |
|
2212 | + return 'unknown'; |
|
2213 | + } |
|
2214 | + if ($low == $high) { |
|
2215 | + return $low; |
|
2216 | + } else { |
|
2217 | + return $low . '-' . $high; |
|
2218 | + } |
|
2219 | + } |
|
2173 | 2220 | |
2174 | 2221 | /** |
2175 | 2222 | * Checks whether a given IP range already exists in the trigger list. |
@@ -2245,15 +2292,17 @@ discard block |
||
2245 | 2292 | $memberEmailWild = array(); |
2246 | 2293 | while ($row = $smcFunc['db_fetch_assoc']($request)) |
2247 | 2294 | { |
2248 | - if ($row['id_member']) |
|
2249 | - $memberIDs[$row['id_member']] = $row['id_member']; |
|
2295 | + if ($row['id_member']) { |
|
2296 | + $memberIDs[$row['id_member']] = $row['id_member']; |
|
2297 | + } |
|
2250 | 2298 | if ($row['email_address']) |
2251 | 2299 | { |
2252 | 2300 | // Does it have a wildcard - if so we can't do a IN on it. |
2253 | - if (strpos($row['email_address'], '%') !== false) |
|
2254 | - $memberEmailWild[$row['email_address']] = $row['email_address']; |
|
2255 | - else |
|
2256 | - $memberEmails[$row['email_address']] = $row['email_address']; |
|
2301 | + if (strpos($row['email_address'], '%') !== false) { |
|
2302 | + $memberEmailWild[$row['email_address']] = $row['email_address']; |
|
2303 | + } else { |
|
2304 | + $memberEmails[$row['email_address']] = $row['email_address']; |
|
2305 | + } |
|
2257 | 2306 | } |
2258 | 2307 | } |
2259 | 2308 | $smcFunc['db_free_result']($request); |
@@ -2304,14 +2353,15 @@ discard block |
||
2304 | 2353 | } |
2305 | 2354 | |
2306 | 2355 | // We welcome our new members in the realm of the banned. |
2307 | - if (!empty($newMembers)) |
|
2308 | - $smcFunc['db_query']('', ' |
|
2356 | + if (!empty($newMembers)) { |
|
2357 | + $smcFunc['db_query']('', ' |
|
2309 | 2358 | DELETE FROM {db_prefix}log_online |
2310 | 2359 | WHERE id_member IN ({array_int:new_banned_members})', |
2311 | 2360 | array( |
2312 | 2361 | 'new_banned_members' => $newMembers, |
2313 | 2362 | ) |
2314 | 2363 | ); |
2364 | + } |
|
2315 | 2365 | |
2316 | 2366 | // Find members that are wrongfully marked as banned. |
2317 | 2367 | $request = $smcFunc['db_query']('', ' |
@@ -2338,9 +2388,10 @@ discard block |
||
2338 | 2388 | } |
2339 | 2389 | $smcFunc['db_free_result']($request); |
2340 | 2390 | |
2341 | - if (!empty($updates)) |
|
2342 | - foreach ($updates as $newStatus => $members) |
|
2391 | + if (!empty($updates)) { |
|
2392 | + foreach ($updates as $newStatus => $members) |
|
2343 | 2393 | updateMemberData($members, array('is_activated' => $newStatus)); |
2394 | + } |
|
2344 | 2395 | |
2345 | 2396 | // Update the latest member and our total members as banning may change them. |
2346 | 2397 | updateStats('member'); |
@@ -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 | * This is the main function for the languages area. |
@@ -153,11 +154,11 @@ discard block |
||
153 | 154 | $language_list = new xmlArray(fetch_web_data($url), true); |
154 | 155 | |
155 | 156 | // Check that the site responded and that the language exists. |
156 | - if (!$language_list->exists('languages')) |
|
157 | - $context['smf_error'] = 'no_response'; |
|
158 | - elseif (!$language_list->exists('languages/language')) |
|
159 | - $context['smf_error'] = 'no_files'; |
|
160 | - else |
|
157 | + if (!$language_list->exists('languages')) { |
|
158 | + $context['smf_error'] = 'no_response'; |
|
159 | + } elseif (!$language_list->exists('languages/language')) { |
|
160 | + $context['smf_error'] = 'no_files'; |
|
161 | + } else |
|
161 | 162 | { |
162 | 163 | $language_list = $language_list->path('languages[0]'); |
163 | 164 | $lang_files = $language_list->set('language'); |
@@ -165,8 +166,9 @@ discard block |
||
165 | 166 | foreach ($lang_files as $file) |
166 | 167 | { |
167 | 168 | // Were we searching? |
168 | - if (!empty($context['smf_search_term']) && strpos($file->fetch('name'), $smcFunc['strtolower']($context['smf_search_term'])) === false) |
|
169 | - continue; |
|
169 | + if (!empty($context['smf_search_term']) && strpos($file->fetch('name'), $smcFunc['strtolower']($context['smf_search_term'])) === false) { |
|
170 | + continue; |
|
171 | + } |
|
170 | 172 | |
171 | 173 | $smf_languages[] = array( |
172 | 174 | 'id' => $file->fetch('id'), |
@@ -177,10 +179,11 @@ discard block |
||
177 | 179 | 'install_link' => '<a href="' . $scripturl . '?action=admin;area=languages;sa=downloadlang;did=' . $file->fetch('id') . ';' . $context['session_var'] . '=' . $context['session_id'] . '">' . $txt['add_language_smf_install'] . '</a>', |
178 | 180 | ); |
179 | 181 | } |
180 | - if (empty($smf_languages)) |
|
181 | - $context['smf_error'] = 'no_files'; |
|
182 | - else |
|
183 | - return $smf_languages; |
|
182 | + if (empty($smf_languages)) { |
|
183 | + $context['smf_error'] = 'no_files'; |
|
184 | + } else { |
|
185 | + return $smf_languages; |
|
186 | + } |
|
184 | 187 | } |
185 | 188 | } |
186 | 189 | |
@@ -202,8 +205,9 @@ discard block |
||
202 | 205 | require_once($sourcedir . '/Subs-Package.php'); |
203 | 206 | |
204 | 207 | // Clearly we need to know what to request. |
205 | - if (!isset($_GET['did'])) |
|
206 | - fatal_lang_error('no_access', false); |
|
208 | + if (!isset($_GET['did'])) { |
|
209 | + fatal_lang_error('no_access', false); |
|
210 | + } |
|
207 | 211 | |
208 | 212 | // Some lovely context. |
209 | 213 | $context['download_id'] = $_GET['did']; |
@@ -223,8 +227,9 @@ discard block |
||
223 | 227 | foreach ($_POST['copy_file'] as $file) |
224 | 228 | { |
225 | 229 | // Check it's not very bad. |
226 | - if (strpos($file, '..') !== false || (strpos($file, 'Themes') !== 0 && !preg_match('~agreement\.[A-Za-z-_0-9]+\.txt$~', $file))) |
|
227 | - fatal_error($txt['languages_download_illegal_paths']); |
|
230 | + if (strpos($file, '..') !== false || (strpos($file, 'Themes') !== 0 && !preg_match('~agreement\.[A-Za-z-_0-9]+\.txt$~', $file))) { |
|
231 | + fatal_error($txt['languages_download_illegal_paths']); |
|
232 | + } |
|
228 | 233 | |
229 | 234 | $chmod_files[] = $boarddir . '/' . $file; |
230 | 235 | $install_files[] = $file; |
@@ -235,8 +240,9 @@ discard block |
||
235 | 240 | $files_left = $file_status['files']['notwritable']; |
236 | 241 | |
237 | 242 | // Something not writable? |
238 | - if (!empty($files_left)) |
|
239 | - $context['error_message'] = $txt['languages_download_not_chmod']; |
|
243 | + if (!empty($files_left)) { |
|
244 | + $context['error_message'] = $txt['languages_download_not_chmod']; |
|
245 | + } |
|
240 | 246 | // Otherwise, go go go! |
241 | 247 | elseif (!empty($install_files)) |
242 | 248 | { |
@@ -251,11 +257,13 @@ discard block |
||
251 | 257 | } |
252 | 258 | |
253 | 259 | // Open up the old china. |
254 | - if (!isset($archive_content)) |
|
255 | - $archive_content = read_tgz_file('https://download.simplemachines.org/fetch_language.php?version=' . urlencode(strtr($forum_version, array('SMF ' => ''))) . ';fetch=' . urlencode($_GET['did']), null); |
|
260 | + if (!isset($archive_content)) { |
|
261 | + $archive_content = read_tgz_file('https://download.simplemachines.org/fetch_language.php?version=' . urlencode(strtr($forum_version, array('SMF ' => ''))) . ';fetch=' . urlencode($_GET['did']), null); |
|
262 | + } |
|
256 | 263 | |
257 | - if (empty($archive_content)) |
|
258 | - fatal_error($txt['add_language_error_no_response']); |
|
264 | + if (empty($archive_content)) { |
|
265 | + fatal_error($txt['add_language_error_no_response']); |
|
266 | + } |
|
259 | 267 | |
260 | 268 | // Now for each of the files, let's do some *stuff* |
261 | 269 | $context['files'] = array( |
@@ -270,8 +278,9 @@ discard block |
||
270 | 278 | $extension = substr($filename, strrpos($filename, '.') + 1); |
271 | 279 | |
272 | 280 | // Don't do anything with files we don't understand. |
273 | - if (!in_array($extension, array('php', 'jpg', 'gif', 'jpeg', 'png', 'txt'))) |
|
274 | - continue; |
|
281 | + if (!in_array($extension, array('php', 'jpg', 'gif', 'jpeg', 'png', 'txt'))) { |
|
282 | + continue; |
|
283 | + } |
|
275 | 284 | |
276 | 285 | // Basic data. |
277 | 286 | $context_data = array( |
@@ -290,8 +299,9 @@ discard block |
||
290 | 299 | // Does the file exist, is it different and can we overwrite? |
291 | 300 | if (file_exists($boarddir . '/' . $file['filename'])) |
292 | 301 | { |
293 | - if (is_writable($boarddir . '/' . $file['filename'])) |
|
294 | - $context_data['writable'] = true; |
|
302 | + if (is_writable($boarddir . '/' . $file['filename'])) { |
|
303 | + $context_data['writable'] = true; |
|
304 | + } |
|
295 | 305 | |
296 | 306 | // Finally, do we actually think the content has changed? |
297 | 307 | if ($file['size'] == filesize($boarddir . '/' . $file['filename']) && $file['md5'] == md5_file($boarddir . '/' . $file['filename'])) |
@@ -304,16 +314,17 @@ discard block |
||
304 | 314 | { |
305 | 315 | $context_data['exists'] = 'same'; |
306 | 316 | $context_data['default_copy'] = false; |
317 | + } else { |
|
318 | + $context_data['exists'] = 'different'; |
|
307 | 319 | } |
308 | - else |
|
309 | - $context_data['exists'] = 'different'; |
|
310 | 320 | } |
311 | 321 | // No overwrite? |
312 | 322 | else |
313 | 323 | { |
314 | 324 | // Can we at least stick it in the directory... |
315 | - if (is_writable($boarddir . '/' . $dirname)) |
|
316 | - $context_data['writable'] = true; |
|
325 | + if (is_writable($boarddir . '/' . $dirname)) { |
|
326 | + $context_data['writable'] = true; |
|
327 | + } |
|
317 | 328 | } |
318 | 329 | |
319 | 330 | // I love PHP files, that's why I'm a developer and not an artistic type spending my time drinking absinth and living a life of sin... |
@@ -328,8 +339,9 @@ discard block |
||
328 | 339 | list ($name, $language) = explode('.', $filename); |
329 | 340 | |
330 | 341 | // Let's get the new version, I like versions, they tell me that I'm up to date. |
331 | - if (preg_match('~\s*Version:\s+(.+?);\s*' . preg_quote($name, '~') . '~i', $file['preview'], $match) == 1) |
|
332 | - $context_data['version'] = $match[1]; |
|
342 | + if (preg_match('~\s*Version:\s+(.+?);\s*' . preg_quote($name, '~') . '~i', $file['preview'], $match) == 1) { |
|
343 | + $context_data['version'] = $match[1]; |
|
344 | + } |
|
333 | 345 | |
334 | 346 | // Now does the old file exist - if so what is it's version? |
335 | 347 | if (file_exists($boarddir . '/' . $file['filename'])) |
@@ -345,34 +357,35 @@ discard block |
||
345 | 357 | $context_data['cur_version'] = $match[1]; |
346 | 358 | |
347 | 359 | // How does this compare? |
348 | - if ($context_data['cur_version'] == $context_data['version']) |
|
349 | - $context_data['version_compare'] = 'same'; |
|
350 | - elseif ($context_data['cur_version'] > $context_data['version']) |
|
351 | - $context_data['version_compare'] = 'older'; |
|
360 | + if ($context_data['cur_version'] == $context_data['version']) { |
|
361 | + $context_data['version_compare'] = 'same'; |
|
362 | + } elseif ($context_data['cur_version'] > $context_data['version']) { |
|
363 | + $context_data['version_compare'] = 'older'; |
|
364 | + } |
|
352 | 365 | |
353 | 366 | // Don't recommend copying if the version is the same. |
354 | - if ($context_data['version_compare'] != 'newer') |
|
355 | - $context_data['default_copy'] = false; |
|
367 | + if ($context_data['version_compare'] != 'newer') { |
|
368 | + $context_data['default_copy'] = false; |
|
369 | + } |
|
356 | 370 | } |
357 | 371 | } |
358 | 372 | |
359 | 373 | // Add the context data to the main set. |
360 | 374 | $context['files']['lang'][] = $context_data; |
361 | - } |
|
362 | - elseif ($extension == '.txt' && stripos($filename, 'agreement') !== false) |
|
375 | + } elseif ($extension == '.txt' && stripos($filename, 'agreement') !== false) |
|
363 | 376 | { |
364 | 377 | // Registration agreement is a primary file |
365 | 378 | $context['files']['lang'][] = $context_data; |
366 | - } |
|
367 | - else |
|
379 | + } else |
|
368 | 380 | { |
369 | 381 | // There shouldn't be anything else, but load this into "other" in case we decide to handle it in the future |
370 | 382 | $context['files']['other'][] = $context_data; |
371 | 383 | } |
372 | 384 | |
373 | 385 | // Collect together all non-writable areas. |
374 | - if (!$context_data['writable']) |
|
375 | - $context['make_writable'][] = $context_data['destination']; |
|
386 | + if (!$context_data['writable']) { |
|
387 | + $context['make_writable'][] = $context_data['destination']; |
|
388 | + } |
|
376 | 389 | } |
377 | 390 | |
378 | 391 | // Before we go to far can we make anything writable, eh, eh? |
@@ -387,22 +400,24 @@ discard block |
||
387 | 400 | { |
388 | 401 | if ($type == 'lang') |
389 | 402 | { |
390 | - foreach ($data as $k => $file) |
|
391 | - if (!$file['writable'] && !in_array($file['destination'], $context['still_not_writable'])) |
|
403 | + foreach ($data as $k => $file) { |
|
404 | + if (!$file['writable'] && !in_array($file['destination'], $context['still_not_writable'])) |
|
392 | 405 | $context['files'][$type][$k]['writable'] = true; |
393 | - } |
|
394 | - else |
|
406 | + } |
|
407 | + } else |
|
395 | 408 | { |
396 | - foreach ($data as $theme => $files) |
|
397 | - foreach ($files as $k => $file) |
|
409 | + foreach ($data as $theme => $files) { |
|
410 | + foreach ($files as $k => $file) |
|
398 | 411 | if (!$file['writable'] && !in_array($file['destination'], $context['still_not_writable'])) |
399 | 412 | $context['files'][$type][$theme][$k]['writable'] = true; |
413 | + } |
|
400 | 414 | } |
401 | 415 | } |
402 | 416 | |
403 | 417 | // Are we going to need more language stuff? |
404 | - if (!empty($context['still_not_writable'])) |
|
405 | - loadLanguage('Packages'); |
|
418 | + if (!empty($context['still_not_writable'])) { |
|
419 | + loadLanguage('Packages'); |
|
420 | + } |
|
406 | 421 | } |
407 | 422 | |
408 | 423 | // This is the list for the main files. |
@@ -615,12 +630,13 @@ discard block |
||
615 | 630 | highlightSelected("list_language_list_' . ($language == '' ? 'english' : $language) . '");', true); |
616 | 631 | |
617 | 632 | // Display a warning if we cannot edit the default setting. |
618 | - if (!is_writable($boarddir . '/Settings.php')) |
|
619 | - $listOptions['additional_rows'][] = array( |
|
633 | + if (!is_writable($boarddir . '/Settings.php')) { |
|
634 | + $listOptions['additional_rows'][] = array( |
|
620 | 635 | 'position' => 'after_title', |
621 | 636 | 'value' => $txt['language_settings_writable'], |
622 | 637 | 'class' => 'smalltext alert', |
623 | 638 | ); |
639 | + } |
|
624 | 640 | |
625 | 641 | require_once($sourcedir . '/Subs-List.php'); |
626 | 642 | createList($listOptions); |
@@ -662,10 +678,11 @@ discard block |
||
662 | 678 | |
663 | 679 | // Put them back. |
664 | 680 | $settings['actual_theme_dir'] = $backup_actual_theme_dir; |
665 | - if (!empty($backup_base_theme_dir)) |
|
666 | - $settings['base_theme_dir'] = $backup_base_theme_dir; |
|
667 | - else |
|
668 | - unset($settings['base_theme_dir']); |
|
681 | + if (!empty($backup_base_theme_dir)) { |
|
682 | + $settings['base_theme_dir'] = $backup_base_theme_dir; |
|
683 | + } else { |
|
684 | + unset($settings['base_theme_dir']); |
|
685 | + } |
|
669 | 686 | |
670 | 687 | // Get the language files and data... |
671 | 688 | foreach ($context['languages'] as $lang) |
@@ -694,13 +711,15 @@ discard block |
||
694 | 711 | while ($row = $smcFunc['db_fetch_assoc']($request)) |
695 | 712 | { |
696 | 713 | // Default? |
697 | - if (empty($row['lngfile']) || !isset($languages[$row['lngfile']])) |
|
698 | - $row['lngfile'] = $language; |
|
714 | + if (empty($row['lngfile']) || !isset($languages[$row['lngfile']])) { |
|
715 | + $row['lngfile'] = $language; |
|
716 | + } |
|
699 | 717 | |
700 | - if (!isset($languages[$row['lngfile']]) && isset($languages['english'])) |
|
701 | - $languages['english']['count'] += $row['num_users']; |
|
702 | - elseif (isset($languages[$row['lngfile']])) |
|
703 | - $languages[$row['lngfile']]['count'] += $row['num_users']; |
|
718 | + if (!isset($languages[$row['lngfile']]) && isset($languages['english'])) { |
|
719 | + $languages['english']['count'] += $row['num_users']; |
|
720 | + } elseif (isset($languages[$row['lngfile']])) { |
|
721 | + $languages[$row['lngfile']]['count'] += $row['num_users']; |
|
722 | + } |
|
704 | 723 | } |
705 | 724 | $smcFunc['db_free_result']($request); |
706 | 725 | |
@@ -740,13 +759,15 @@ discard block |
||
740 | 759 | |
741 | 760 | call_integration_hook('integrate_language_settings', array(&$config_vars)); |
742 | 761 | |
743 | - if ($return_config) |
|
744 | - return $config_vars; |
|
762 | + if ($return_config) { |
|
763 | + return $config_vars; |
|
764 | + } |
|
745 | 765 | |
746 | 766 | // Get our languages. No cache |
747 | 767 | getLanguages(false); |
748 | - foreach ($context['languages'] as $lang) |
|
749 | - $config_vars['language'][4][$lang['filename']] = array($lang['filename'], $lang['name']); |
|
768 | + foreach ($context['languages'] as $lang) { |
|
769 | + $config_vars['language'][4][$lang['filename']] = array($lang['filename'], $lang['name']); |
|
770 | + } |
|
750 | 771 | |
751 | 772 | // Saving settings? |
752 | 773 | if (isset($_REQUEST['save'])) |
@@ -756,8 +777,9 @@ discard block |
||
756 | 777 | call_integration_hook('integrate_save_language_settings', array(&$config_vars)); |
757 | 778 | |
758 | 779 | saveSettings($config_vars); |
759 | - if (!$settings_not_writable && !$settings_backup_fail) |
|
760 | - $_SESSION['adm-save'] = true; |
|
780 | + if (!$settings_not_writable && !$settings_backup_fail) { |
|
781 | + $_SESSION['adm-save'] = true; |
|
782 | + } |
|
761 | 783 | redirectexit('action=admin;area=languages;sa=settings'); |
762 | 784 | } |
763 | 785 | |
@@ -766,10 +788,11 @@ discard block |
||
766 | 788 | $context['settings_title'] = $txt['language_settings']; |
767 | 789 | $context['save_disabled'] = $settings_not_writable; |
768 | 790 | |
769 | - if ($settings_not_writable) |
|
770 | - $context['settings_message'] = '<div class="centertext"><strong>' . $txt['settings_not_writable'] . '</strong></div><br>'; |
|
771 | - elseif ($settings_backup_fail) |
|
772 | - $context['settings_message'] = '<div class="centertext"><strong>' . $txt['admin_backup_fail'] . '</strong></div><br>'; |
|
791 | + if ($settings_not_writable) { |
|
792 | + $context['settings_message'] = '<div class="centertext"><strong>' . $txt['settings_not_writable'] . '</strong></div><br>'; |
|
793 | + } elseif ($settings_backup_fail) { |
|
794 | + $context['settings_message'] = '<div class="centertext"><strong>' . $txt['admin_backup_fail'] . '</strong></div><br>'; |
|
795 | + } |
|
773 | 796 | |
774 | 797 | // Fill the config array. |
775 | 798 | prepareServerSettingsContext($config_vars); |
@@ -816,8 +839,9 @@ discard block |
||
816 | 839 | 'theme_dir' => $settings['default_theme_dir'], |
817 | 840 | ), |
818 | 841 | ); |
819 | - while ($row = $smcFunc['db_fetch_assoc']($request)) |
|
820 | - $themes[$row['id_theme']][$row['variable']] = $row['value']; |
|
842 | + while ($row = $smcFunc['db_fetch_assoc']($request)) { |
|
843 | + $themes[$row['id_theme']][$row['variable']] = $row['value']; |
|
844 | + } |
|
821 | 845 | $smcFunc['db_free_result']($request); |
822 | 846 | |
823 | 847 | // This will be where we look |
@@ -829,14 +853,16 @@ discard block |
||
829 | 853 | // Check we have themes with a path and a name - just in case - and add the path. |
830 | 854 | foreach ($themes as $id => $data) |
831 | 855 | { |
832 | - if (count($data) != 2) |
|
833 | - unset($themes[$id]); |
|
834 | - elseif (is_dir($data['theme_dir'] . '/languages')) |
|
835 | - $lang_dirs[$id] = $data['theme_dir'] . '/languages'; |
|
856 | + if (count($data) != 2) { |
|
857 | + unset($themes[$id]); |
|
858 | + } elseif (is_dir($data['theme_dir'] . '/languages')) { |
|
859 | + $lang_dirs[$id] = $data['theme_dir'] . '/languages'; |
|
860 | + } |
|
836 | 861 | |
837 | 862 | // How about image directories? |
838 | - if (is_dir($data['theme_dir'] . '/images/' . $context['lang_id'])) |
|
839 | - $images_dirs[$id] = $data['theme_dir'] . '/images/' . $context['lang_id']; |
|
863 | + if (is_dir($data['theme_dir'] . '/images/' . $context['lang_id'])) { |
|
864 | + $images_dirs[$id] = $data['theme_dir'] . '/images/' . $context['lang_id']; |
|
865 | + } |
|
840 | 866 | } |
841 | 867 | |
842 | 868 | $current_file = $file_id ? $lang_dirs[$theme_id] . '/' . $file_id . '.' . $context['lang_id'] . '.php' : ''; |
@@ -850,15 +876,17 @@ discard block |
||
850 | 876 | while ($entry = $dir->read()) |
851 | 877 | { |
852 | 878 | // We're only after the files for this language. |
853 | - if (preg_match('~^([A-Za-z]+)\.' . $context['lang_id'] . '\.php$~', $entry, $matches) == 0) |
|
854 | - continue; |
|
879 | + if (preg_match('~^([A-Za-z]+)\.' . $context['lang_id'] . '\.php$~', $entry, $matches) == 0) { |
|
880 | + continue; |
|
881 | + } |
|
855 | 882 | |
856 | - if (!isset($context['possible_files'][$theme])) |
|
857 | - $context['possible_files'][$theme] = array( |
|
883 | + if (!isset($context['possible_files'][$theme])) { |
|
884 | + $context['possible_files'][$theme] = array( |
|
858 | 885 | 'id' => $theme, |
859 | 886 | 'name' => $themes[$theme]['name'], |
860 | 887 | 'files' => array(), |
861 | 888 | ); |
889 | + } |
|
862 | 890 | |
863 | 891 | $context['possible_files'][$theme]['files'][] = array( |
864 | 892 | 'id' => $matches[1], |
@@ -887,31 +915,36 @@ discard block |
||
887 | 915 | { |
888 | 916 | $_SESSION['last_backup_for'] = $context['lang_id'] . '$$$'; |
889 | 917 | $result = package_create_backup('backup_lang_' . $context['lang_id']); |
890 | - if (!$result) |
|
891 | - fatal_lang_error('could_not_language_backup', false); |
|
918 | + if (!$result) { |
|
919 | + fatal_lang_error('could_not_language_backup', false); |
|
920 | + } |
|
892 | 921 | } |
893 | 922 | |
894 | 923 | // Second, loop through the array to remove the files. |
895 | 924 | foreach ($lang_dirs as $curPath) |
896 | 925 | { |
897 | - foreach ($context['possible_files'][1]['files'] as $lang) |
|
898 | - if (file_exists($curPath . '/' . $lang['id'] . '.' . $context['lang_id'] . '.php')) |
|
926 | + foreach ($context['possible_files'][1]['files'] as $lang) { |
|
927 | + if (file_exists($curPath . '/' . $lang['id'] . '.' . $context['lang_id'] . '.php')) |
|
899 | 928 | unlink($curPath . '/' . $lang['id'] . '.' . $context['lang_id'] . '.php'); |
929 | + } |
|
900 | 930 | |
901 | 931 | // Check for the email template. |
902 | - if (file_exists($curPath . '/EmailTemplates.' . $context['lang_id'] . '.php')) |
|
903 | - unlink($curPath . '/EmailTemplates.' . $context['lang_id'] . '.php'); |
|
932 | + if (file_exists($curPath . '/EmailTemplates.' . $context['lang_id'] . '.php')) { |
|
933 | + unlink($curPath . '/EmailTemplates.' . $context['lang_id'] . '.php'); |
|
934 | + } |
|
904 | 935 | } |
905 | 936 | |
906 | 937 | // Third, the agreement file. |
907 | - if (file_exists($boarddir . '/agreement.' . $context['lang_id'] . '.txt')) |
|
908 | - unlink($boarddir . '/agreement.' . $context['lang_id'] . '.txt'); |
|
938 | + if (file_exists($boarddir . '/agreement.' . $context['lang_id'] . '.txt')) { |
|
939 | + unlink($boarddir . '/agreement.' . $context['lang_id'] . '.txt'); |
|
940 | + } |
|
909 | 941 | |
910 | 942 | // Fourth, a related images folder, if it exists... |
911 | - if (!empty($images_dirs)) |
|
912 | - foreach ($images_dirs as $curPath) |
|
943 | + if (!empty($images_dirs)) { |
|
944 | + foreach ($images_dirs as $curPath) |
|
913 | 945 | if (is_dir($curPath)) |
914 | 946 | deltree($curPath); |
947 | + } |
|
915 | 948 | |
916 | 949 | // Members can no longer use this language. |
917 | 950 | $smcFunc['db_query']('', ' |
@@ -995,8 +1028,9 @@ discard block |
||
995 | 1028 | foreach ($_POST['entry'] as $k => $v) |
996 | 1029 | { |
997 | 1030 | // Only try to save if it's changed! |
998 | - if ($_POST['entry'][$k] != $_POST['comp'][$k]) |
|
999 | - $save_strings[$k] = cleanLangString($v, false); |
|
1031 | + if ($_POST['entry'][$k] != $_POST['comp'][$k]) { |
|
1032 | + $save_strings[$k] = cleanLangString($v, false); |
|
1033 | + } |
|
1000 | 1034 | } |
1001 | 1035 | } |
1002 | 1036 | |
@@ -1030,12 +1064,13 @@ discard block |
||
1030 | 1064 | if ($multiline_cache) |
1031 | 1065 | { |
1032 | 1066 | preg_match('~\$(helptxt|txt|editortxt)\[\'(.+)\'\]\s?=\s?(.+);~ms', strtr($multiline_cache, array("\r" => '')), $matches); |
1033 | - if (!empty($matches[3])) |
|
1034 | - $entries[$matches[2]] = array( |
|
1067 | + if (!empty($matches[3])) { |
|
1068 | + $entries[$matches[2]] = array( |
|
1035 | 1069 | 'type' => $matches[1], |
1036 | 1070 | 'full' => $matches[0], |
1037 | 1071 | 'entry' => $matches[3], |
1038 | 1072 | ); |
1073 | + } |
|
1039 | 1074 | } |
1040 | 1075 | |
1041 | 1076 | // These are the entries we can definitely save. |
@@ -1046,8 +1081,9 @@ discard block |
||
1046 | 1081 | { |
1047 | 1082 | // Ignore some things we set separately. |
1048 | 1083 | $ignore_files = array('lang_character_set', 'lang_locale', 'lang_dictionary', 'lang_spelling', 'lang_rtl'); |
1049 | - if (in_array($entryKey, $ignore_files)) |
|
1050 | - continue; |
|
1084 | + if (in_array($entryKey, $ignore_files)) { |
|
1085 | + continue; |
|
1086 | + } |
|
1051 | 1087 | |
1052 | 1088 | // These are arrays that need breaking out. |
1053 | 1089 | $arrays = array('days', 'days_short', 'months', 'months_titles', 'months_short', 'happy_birthday_author', 'karlbenson1_author', 'nite0859_author', 'zwaldowski_author', 'geezmo_author', 'karlbenson2_author'); |
@@ -1080,9 +1116,9 @@ discard block |
||
1080 | 1116 | { |
1081 | 1117 | $save_cache['entries'][$cur_index] = strtr($save_strings[$entryKey . '-+- ' . $cur_index], array('\'' => '')); |
1082 | 1118 | $save_cache['enabled'] = true; |
1119 | + } else { |
|
1120 | + $save_cache['entries'][$cur_index] = $subValue; |
|
1083 | 1121 | } |
1084 | - else |
|
1085 | - $save_cache['entries'][$cur_index] = $subValue; |
|
1086 | 1122 | |
1087 | 1123 | $context['file_entries'][] = array( |
1088 | 1124 | 'key' => $entryKey . '-+- ' . $cur_index, |
@@ -1105,9 +1141,9 @@ discard block |
||
1105 | 1141 | { |
1106 | 1142 | $items[] = $k2 . ' => \'' . $v2 . '\''; |
1107 | 1143 | $cur_index = $k2; |
1144 | + } else { |
|
1145 | + $items[] = '\'' . $v2 . '\''; |
|
1108 | 1146 | } |
1109 | - else |
|
1110 | - $items[] = '\'' . $v2 . '\''; |
|
1111 | 1147 | |
1112 | 1148 | $cur_index++; |
1113 | 1149 | } |
@@ -1117,15 +1153,15 @@ discard block |
||
1117 | 1153 | 'replace' => '$' . $entryValue['type'] . '[\'' . $entryKey . '\'] = array(' . implode(', ', $items) . ');', |
1118 | 1154 | ); |
1119 | 1155 | } |
1120 | - } |
|
1121 | - else |
|
1156 | + } else |
|
1122 | 1157 | { |
1123 | 1158 | // Saving? |
1124 | 1159 | if (isset($save_strings[$entryKey]) && $save_strings[$entryKey] != $entryValue['entry']) |
1125 | 1160 | { |
1126 | 1161 | // @todo Fix this properly. |
1127 | - if ($save_strings[$entryKey] == '') |
|
1128 | - $save_strings[$entryKey] = '\'\''; |
|
1162 | + if ($save_strings[$entryKey] == '') { |
|
1163 | + $save_strings[$entryKey] = '\'\''; |
|
1164 | + } |
|
1129 | 1165 | |
1130 | 1166 | // Set the new value. |
1131 | 1167 | $entryValue['entry'] = $save_strings[$entryKey]; |
@@ -1151,8 +1187,9 @@ discard block |
||
1151 | 1187 | checkSession(); |
1152 | 1188 | |
1153 | 1189 | $file_contents = implode('', file($current_file)); |
1154 | - foreach ($final_saves as $save) |
|
1155 | - $file_contents = strtr($file_contents, array($save['find'] => $save['replace'])); |
|
1190 | + foreach ($final_saves as $save) { |
|
1191 | + $file_contents = strtr($file_contents, array($save['find'] => $save['replace'])); |
|
1192 | + } |
|
1156 | 1193 | |
1157 | 1194 | // Save the actual changes. |
1158 | 1195 | $fp = fopen($current_file, 'w+'); |
@@ -1167,8 +1204,9 @@ discard block |
||
1167 | 1204 | } |
1168 | 1205 | |
1169 | 1206 | // If we saved, redirect. |
1170 | - if ($madeSave) |
|
1171 | - redirectexit('action=admin;area=languages;sa=editlang;lid=' . $context['lang_id']); |
|
1207 | + if ($madeSave) { |
|
1208 | + redirectexit('action=admin;area=languages;sa=editlang;lid=' . $context['lang_id']); |
|
1209 | + } |
|
1172 | 1210 | |
1173 | 1211 | createToken('admin-mlang'); |
1174 | 1212 | } |
@@ -1200,8 +1238,9 @@ discard block |
||
1200 | 1238 | // Toggle the escape. |
1201 | 1239 | $is_escape = !$is_escape; |
1202 | 1240 | // If we're now escaped don't add this string. |
1203 | - if ($is_escape) |
|
1204 | - continue; |
|
1241 | + if ($is_escape) { |
|
1242 | + continue; |
|
1243 | + } |
|
1205 | 1244 | } |
1206 | 1245 | // Special case - parsed string with line break etc? |
1207 | 1246 | elseif (($string{$i} == 'n' || $string{$i} == 't') && $in_string == 2 && $is_escape) |
@@ -1218,11 +1257,13 @@ discard block |
||
1218 | 1257 | if ($in_string != 2 && ($in_string != 1 || !$is_escape)) |
1219 | 1258 | { |
1220 | 1259 | // Is it the end of a single quote string? |
1221 | - if ($in_string == 1) |
|
1222 | - $in_string = 0; |
|
1260 | + if ($in_string == 1) { |
|
1261 | + $in_string = 0; |
|
1262 | + } |
|
1223 | 1263 | // Otherwise it's the start! |
1224 | - else |
|
1225 | - $in_string = 1; |
|
1264 | + else { |
|
1265 | + $in_string = 1; |
|
1266 | + } |
|
1226 | 1267 | |
1227 | 1268 | // Don't actually include this character! |
1228 | 1269 | continue; |
@@ -1235,19 +1276,22 @@ discard block |
||
1235 | 1276 | if ($in_string != 1 && ($in_string != 2 || !$is_escape)) |
1236 | 1277 | { |
1237 | 1278 | // Is it the end of a double quote string? |
1238 | - if ($in_string == 2) |
|
1239 | - $in_string = 0; |
|
1279 | + if ($in_string == 2) { |
|
1280 | + $in_string = 0; |
|
1281 | + } |
|
1240 | 1282 | // Otherwise it's the start! |
1241 | - else |
|
1242 | - $in_string = 2; |
|
1283 | + else { |
|
1284 | + $in_string = 2; |
|
1285 | + } |
|
1243 | 1286 | |
1244 | 1287 | // Don't actually include this character! |
1245 | 1288 | continue; |
1246 | 1289 | } |
1247 | 1290 | } |
1248 | 1291 | // A join/space outside of a string is simply removed. |
1249 | - elseif ($in_string == 0 && (empty($string{$i}) || $string{$i} == '.')) |
|
1250 | - continue; |
|
1292 | + elseif ($in_string == 0 && (empty($string{$i}) || $string{$i} == '.')) { |
|
1293 | + continue; |
|
1294 | + } |
|
1251 | 1295 | // Start of a variable? |
1252 | 1296 | elseif ($in_string == 0 && $string{$i} == '$') |
1253 | 1297 | { |
@@ -1281,8 +1325,7 @@ discard block |
||
1281 | 1325 | |
1282 | 1326 | // Unhtml then rehtml the whole thing! |
1283 | 1327 | $new_string = $smcFunc['htmlspecialchars'](un_htmlspecialchars($new_string)); |
1284 | - } |
|
1285 | - else |
|
1328 | + } else |
|
1286 | 1329 | { |
1287 | 1330 | // Keep track of what we're doing... |
1288 | 1331 | $in_string = 0; |
@@ -1311,10 +1354,11 @@ discard block |
||
1311 | 1354 | preg_match('~\{%([\$A-Za-z0-9\'\[\]_-]+)%\}~', substr($string, $i), $matches); |
1312 | 1355 | if (!empty($matches[1])) |
1313 | 1356 | { |
1314 | - if ($in_string == 1) |
|
1315 | - $new_string .= '\' . '; |
|
1316 | - elseif ($new_string) |
|
1317 | - $new_string .= ' . '; |
|
1357 | + if ($in_string == 1) { |
|
1358 | + $new_string .= '\' . '; |
|
1359 | + } elseif ($new_string) { |
|
1360 | + $new_string .= ' . '; |
|
1361 | + } |
|
1318 | 1362 | |
1319 | 1363 | $new_string .= $matches[1]; |
1320 | 1364 | $i += strlen($matches[1]) + 3; |
@@ -1327,8 +1371,9 @@ discard block |
||
1327 | 1371 | elseif ($string{$i} == '<') |
1328 | 1372 | { |
1329 | 1373 | // Probably HTML? |
1330 | - if ($string{$i + 1} != ' ') |
|
1331 | - $in_html = true; |
|
1374 | + if ($string{$i + 1} != ' ') { |
|
1375 | + $in_html = true; |
|
1376 | + } |
|
1332 | 1377 | // Assume we need an entity... |
1333 | 1378 | else |
1334 | 1379 | { |
@@ -1340,8 +1385,9 @@ discard block |
||
1340 | 1385 | elseif ($string{$i} == '>') |
1341 | 1386 | { |
1342 | 1387 | // Will it be HTML? |
1343 | - if ($in_html) |
|
1344 | - $in_html = false; |
|
1388 | + if ($in_html) { |
|
1389 | + $in_html = false; |
|
1390 | + } |
|
1345 | 1391 | // Otherwise we need an entity... |
1346 | 1392 | else |
1347 | 1393 | { |
@@ -1350,8 +1396,9 @@ discard block |
||
1350 | 1396 | } |
1351 | 1397 | } |
1352 | 1398 | // Is it a slash? If so escape it... |
1353 | - if ($string{$i} == '\\') |
|
1354 | - $new_string .= '\\'; |
|
1399 | + if ($string{$i} == '\\') { |
|
1400 | + $new_string .= '\\'; |
|
1401 | + } |
|
1355 | 1402 | // The infamous double quote? |
1356 | 1403 | elseif ($string{$i} == '"') |
1357 | 1404 | { |
@@ -1374,10 +1421,11 @@ discard block |
||
1374 | 1421 | } |
1375 | 1422 | |
1376 | 1423 | // If we ended as a string then close it off. |
1377 | - if ($in_string == 1) |
|
1378 | - $new_string .= '\''; |
|
1379 | - elseif ($in_string == 2) |
|
1380 | - $new_string .= '"'; |
|
1424 | + if ($in_string == 1) { |
|
1425 | + $new_string .= '\''; |
|
1426 | + } elseif ($in_string == 2) { |
|
1427 | + $new_string .= '"'; |
|
1428 | + } |
|
1381 | 1429 | } |
1382 | 1430 | |
1383 | 1431 | return $new_string; |
@@ -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 | * Our Cache API class |
@@ -43,8 +44,9 @@ discard block |
||
43 | 44 | { |
44 | 45 | $supported = is_writable($this->cachedir); |
45 | 46 | |
46 | - if ($test) |
|
47 | - return $supported; |
|
47 | + if ($test) { |
|
48 | + return $supported; |
|
49 | + } |
|
48 | 50 | return parent::isSupported() && $supported; |
49 | 51 | } |
50 | 52 | |
@@ -61,11 +63,13 @@ discard block |
||
61 | 63 | { |
62 | 64 | // Work around Zend's opcode caching (PHP 5.5+), they would cache older files for a couple of seconds |
63 | 65 | // causing newer files to take effect a while later. |
64 | - if (function_exists('opcache_invalidate')) |
|
65 | - opcache_invalidate($cachedir . '/data_' . $key . '.php', true); |
|
66 | + if (function_exists('opcache_invalidate')) { |
|
67 | + opcache_invalidate($cachedir . '/data_' . $key . '.php', true); |
|
68 | + } |
|
66 | 69 | |
67 | - if (function_exists('apc_delete_file')) |
|
68 | - @apc_delete_file($cachedir . '/data_' . $key . '.php'); |
|
70 | + if (function_exists('apc_delete_file')) { |
|
71 | + @apc_delete_file($cachedir . '/data_' . $key . '.php'); |
|
72 | + } |
|
69 | 73 | |
70 | 74 | // php will cache file_exists et all, we can't 100% depend on its results so proceed with caution |
71 | 75 | @include($cachedir . '/data_' . $key . '.php'); |
@@ -89,16 +93,18 @@ discard block |
||
89 | 93 | |
90 | 94 | // Work around Zend's opcode caching (PHP 5.5+), they would cache older files for a couple of seconds |
91 | 95 | // causing newer files to take effect a while later. |
92 | - if (function_exists('opcache_invalidate')) |
|
93 | - opcache_invalidate($cachedir . '/data_' . $key . '.php', true); |
|
96 | + if (function_exists('opcache_invalidate')) { |
|
97 | + opcache_invalidate($cachedir . '/data_' . $key . '.php', true); |
|
98 | + } |
|
94 | 99 | |
95 | - if (function_exists('apc_delete_file')) |
|
96 | - @apc_delete_file($cachedir . '/data_' . $key . '.php'); |
|
100 | + if (function_exists('apc_delete_file')) { |
|
101 | + @apc_delete_file($cachedir . '/data_' . $key . '.php'); |
|
102 | + } |
|
97 | 103 | |
98 | 104 | // Otherwise custom cache? |
99 | - if ($value === null) |
|
100 | - @unlink($cachedir . '/data_' . $key . '.php'); |
|
101 | - else |
|
105 | + if ($value === null) { |
|
106 | + @unlink($cachedir . '/data_' . $key . '.php'); |
|
107 | + } else |
|
102 | 108 | { |
103 | 109 | $cache_data = '<' . '?' . 'php if (!defined(\'SMF\')) die; if (' . (time() + $ttl) . ' < time()) $expired = true; else{$expired = false; $value = \'' . addcslashes($value, '\\\'') . '\';}' . '?' . '>'; |
104 | 110 | |
@@ -109,9 +115,9 @@ discard block |
||
109 | 115 | { |
110 | 116 | @unlink($cachedir . '/data_' . $key . '.php'); |
111 | 117 | return false; |
118 | + } else { |
|
119 | + return true; |
|
112 | 120 | } |
113 | - else |
|
114 | - return true; |
|
115 | 121 | } |
116 | 122 | } |
117 | 123 | |
@@ -123,15 +129,17 @@ discard block |
||
123 | 129 | $cachedir = $this->cachedir; |
124 | 130 | |
125 | 131 | // No directory = no game. |
126 | - if (!is_dir($cachedir)) |
|
127 | - return; |
|
132 | + if (!is_dir($cachedir)) { |
|
133 | + return; |
|
134 | + } |
|
128 | 135 | |
129 | 136 | // Remove the files in SMF's own disk cache, if any |
130 | 137 | $dh = opendir($cachedir); |
131 | 138 | while ($file = readdir($dh)) |
132 | 139 | { |
133 | - if ($file != '.' && $file != '..' && $file != 'index.php' && $file != '.htaccess' && (!$type || substr($file, 0, strlen($type)) == $type)) |
|
134 | - @unlink($cachedir . '/' . $file); |
|
140 | + if ($file != '.' && $file != '..' && $file != 'index.php' && $file != '.htaccess' && (!$type || substr($file, 0, strlen($type)) == $type)) { |
|
141 | + @unlink($cachedir . '/' . $file); |
|
142 | + } |
|
135 | 143 | } |
136 | 144 | closedir($dh); |
137 | 145 | |
@@ -165,8 +173,9 @@ discard block |
||
165 | 173 | $config_vars[] = $txt['cache_smf_settings']; |
166 | 174 | $config_vars[] = array('cachedir', $txt['cachedir'], 'file', 'text', 36, 'cache_cachedir'); |
167 | 175 | |
168 | - if (!isset($context['settings_post_javascript'])) |
|
169 | - $context['settings_post_javascript'] = ''; |
|
176 | + if (!isset($context['settings_post_javascript'])) { |
|
177 | + $context['settings_post_javascript'] = ''; |
|
178 | + } |
|
170 | 179 | |
171 | 180 | $context['settings_post_javascript'] .= ' |
172 | 181 | $("#cache_accelerator").change(function (e) { |
@@ -187,10 +196,11 @@ discard block |
||
187 | 196 | global $cachedir; |
188 | 197 | |
189 | 198 | // If its invalid, use SMF's. |
190 | - if (is_null($dir) || !is_writable($dir)) |
|
191 | - $this->cachedir = $cachedir; |
|
192 | - else |
|
193 | - $this->cachedir = $dir; |
|
199 | + if (is_null($dir) || !is_writable($dir)) { |
|
200 | + $this->cachedir = $cachedir; |
|
201 | + } else { |
|
202 | + $this->cachedir = $dir; |
|
203 | + } |
|
194 | 204 | } |
195 | 205 | |
196 | 206 | /** |
@@ -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 | * Turn off/on notification for a particular board. |
@@ -34,8 +35,9 @@ discard block |
||
34 | 35 | is_not_guest(); |
35 | 36 | |
36 | 37 | // You have to specify a board to turn notifications on! |
37 | - if (empty($board)) |
|
38 | - fatal_lang_error('no_board', false); |
|
38 | + if (empty($board)) { |
|
39 | + fatal_lang_error('no_board', false); |
|
40 | + } |
|
39 | 41 | |
40 | 42 | // No subaction: find out what to do. |
41 | 43 | if (isset($_GET['mode'])) |
@@ -48,16 +50,16 @@ discard block |
||
48 | 50 | require_once($sourcedir . '/Subs-Notify.php'); |
49 | 51 | setNotifyPrefs($user_info['id'], array('board_notify_' . $board => $alertPref)); |
50 | 52 | |
51 | - if ($mode > 1) |
|
52 | - // Turn notification on. (note this just blows smoke if it's already on.) |
|
53 | + if ($mode > 1) { |
|
54 | + // Turn notification on. (note this just blows smoke if it's already on.) |
|
53 | 55 | $smcFunc['db_insert']('ignore', |
54 | 56 | '{db_prefix}log_notify', |
55 | 57 | array('id_member' => 'int', 'id_board' => 'int'), |
56 | 58 | array($user_info['id'], $board), |
57 | 59 | array('id_member', 'id_board') |
58 | 60 | ); |
59 | - else |
|
60 | - $smcFunc['db_query']('', ' |
|
61 | + } else { |
|
62 | + $smcFunc['db_query']('', ' |
|
61 | 63 | DELETE FROM {db_prefix}log_notify |
62 | 64 | WHERE id_member = {int:current_member} |
63 | 65 | AND id_board = {int:current_board}', |
@@ -66,6 +68,7 @@ discard block |
||
66 | 68 | 'current_member' => $user_info['id'], |
67 | 69 | ) |
68 | 70 | ); |
71 | + } |
|
69 | 72 | |
70 | 73 | } |
71 | 74 | |
@@ -81,10 +84,10 @@ discard block |
||
81 | 84 | ), |
82 | 85 | ); |
83 | 86 | $context['sub_template'] = 'generic_xml'; |
87 | + } else { |
|
88 | + redirectexit('board=' . $board . '.' . $_REQUEST['start']); |
|
89 | + } |
|
84 | 90 | } |
85 | - else |
|
86 | - redirectexit('board=' . $board . '.' . $_REQUEST['start']); |
|
87 | -} |
|
88 | 91 | |
89 | 92 | /** |
90 | 93 | * Turn off/on unread replies subscription for a topic as well as sets individual topic's alert preferences |
@@ -108,8 +111,9 @@ discard block |
||
108 | 111 | $mode = (int) $_GET['mode']; |
109 | 112 | $alertPref = $mode <= 1 ? 0 : ($mode == 2 ? 1 : 3); |
110 | 113 | |
111 | - if (empty($mode)) |
|
112 | - $mode = 1; |
|
114 | + if (empty($mode)) { |
|
115 | + $mode = 1; |
|
116 | + } |
|
113 | 117 | |
114 | 118 | $request = $smcFunc['db_query']('', ' |
115 | 119 | SELECT id_member, id_topic, id_msg, unwatched |
@@ -132,8 +136,7 @@ discard block |
||
132 | 136 | 'id_msg' => 0, |
133 | 137 | 'unwatched' => empty($mode) ? 1 : 0, |
134 | 138 | ); |
135 | - } |
|
136 | - else |
|
139 | + } else |
|
137 | 140 | { |
138 | 141 | $insert = false; |
139 | 142 | $log['unwatched'] = empty($mode) ? 1 : 0; |
@@ -160,9 +163,8 @@ discard block |
||
160 | 163 | array($user_info['id'], $log['id_topic']), |
161 | 164 | array('id_member', 'id_board') |
162 | 165 | ); |
163 | - } |
|
164 | - else |
|
165 | - $smcFunc['db_query']('', ' |
|
166 | + } else { |
|
167 | + $smcFunc['db_query']('', ' |
|
166 | 168 | DELETE FROM {db_prefix}log_notify |
167 | 169 | WHERE id_topic = {int:topic} |
168 | 170 | AND id_member = {int:member}', |
@@ -170,6 +172,7 @@ discard block |
||
170 | 172 | 'topic' => $log['id_topic'], |
171 | 173 | 'member' => $user_info['id'], |
172 | 174 | )); |
175 | + } |
|
173 | 176 | |
174 | 177 | } |
175 | 178 | } |
@@ -186,9 +189,9 @@ discard block |
||
186 | 189 | ), |
187 | 190 | ); |
188 | 191 | $context['sub_template'] = 'generic_xml'; |
192 | + } else { |
|
193 | + redirectexit('topic=' . $topic . '.' . $_REQUEST['start']); |
|
194 | + } |
|
189 | 195 | } |
190 | - else |
|
191 | - redirectexit('topic=' . $topic . '.' . $_REQUEST['start']); |
|
192 | -} |
|
193 | 196 | |
194 | 197 | ?> |
195 | 198 | \ No newline at end of file |
@@ -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 | * Generates the query to determine the list of available boards for a user |
@@ -25,8 +26,9 @@ discard block |
||
25 | 26 | { |
26 | 27 | global $smcFunc, $sourcedir; |
27 | 28 | |
28 | - if (isset($boardListOptions['excluded_boards']) && isset($boardListOptions['included_boards'])) |
|
29 | - trigger_error('getBoardList(): Setting both excluded_boards and included_boards is not allowed.', E_USER_ERROR); |
|
29 | + if (isset($boardListOptions['excluded_boards']) && isset($boardListOptions['included_boards'])) { |
|
30 | + trigger_error('getBoardList(): Setting both excluded_boards and included_boards is not allowed.', E_USER_ERROR); |
|
31 | + } |
|
30 | 32 | |
31 | 33 | $where = array(); |
32 | 34 | $where_parameters = array(); |
@@ -42,11 +44,11 @@ discard block |
||
42 | 44 | $where_parameters['included_boards'] = $boardListOptions['included_boards']; |
43 | 45 | } |
44 | 46 | |
45 | - if (!empty($boardListOptions['ignore_boards'])) |
|
46 | - $where[] = '{query_wanna_see_board}'; |
|
47 | - |
|
48 | - elseif (!empty($boardListOptions['use_permissions'])) |
|
49 | - $where[] = '{query_see_board}'; |
|
47 | + if (!empty($boardListOptions['ignore_boards'])) { |
|
48 | + $where[] = '{query_wanna_see_board}'; |
|
49 | + } elseif (!empty($boardListOptions['use_permissions'])) { |
|
50 | + $where[] = '{query_see_board}'; |
|
51 | + } |
|
50 | 52 | |
51 | 53 | if (!empty($boardListOptions['not_redirection'])) |
52 | 54 | { |
@@ -68,12 +70,13 @@ discard block |
||
68 | 70 | { |
69 | 71 | while ($row = $smcFunc['db_fetch_assoc']($request)) |
70 | 72 | { |
71 | - if (!isset($return_value[$row['id_cat']])) |
|
72 | - $return_value[$row['id_cat']] = array( |
|
73 | + if (!isset($return_value[$row['id_cat']])) { |
|
74 | + $return_value[$row['id_cat']] = array( |
|
73 | 75 | 'id' => $row['id_cat'], |
74 | 76 | 'name' => $row['cat_name'], |
75 | 77 | 'boards' => array(), |
76 | 78 | ); |
79 | + } |
|
77 | 80 | |
78 | 81 | $return_value[$row['id_cat']]['boards'][$row['id_board']] = array( |
79 | 82 | 'id' => $row['id_board'], |
@@ -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 | * Scheduled tasks management dispatcher. This function checks permissions and delegates |
@@ -40,10 +41,11 @@ discard block |
||
40 | 41 | ); |
41 | 42 | |
42 | 43 | // We need to find what's the action. |
43 | - if (isset($_REQUEST['sa']) && isset($subActions[$_REQUEST['sa']])) |
|
44 | - $context['sub_action'] = $_REQUEST['sa']; |
|
45 | - else |
|
46 | - $context['sub_action'] = 'tasks'; |
|
44 | + if (isset($_REQUEST['sa']) && isset($subActions[$_REQUEST['sa']])) { |
|
45 | + $context['sub_action'] = $_REQUEST['sa']; |
|
46 | + } else { |
|
47 | + $context['sub_action'] = 'tasks'; |
|
48 | + } |
|
47 | 49 | |
48 | 50 | // Now for the lovely tabs. That we all love. |
49 | 51 | $context[$context['admin_menu_name']]['tab_data'] = array( |
@@ -90,9 +92,10 @@ discard block |
||
90 | 92 | |
91 | 93 | // Enable and disable as required. |
92 | 94 | $enablers = array(0); |
93 | - foreach ($_POST['enable_task'] as $id => $enabled) |
|
94 | - if ($enabled) |
|
95 | + foreach ($_POST['enable_task'] as $id => $enabled) { |
|
96 | + if ($enabled) |
|
95 | 97 | $enablers[] = (int) $id; |
98 | + } |
|
96 | 99 | |
97 | 100 | // Do the update! |
98 | 101 | $smcFunc['db_query']('', ' |
@@ -130,8 +133,9 @@ discard block |
||
130 | 133 | |
131 | 134 | // Lets figure out which ones they want to run. |
132 | 135 | $tasks = array(); |
133 | - foreach ($_POST['run_task'] as $task => $dummy) |
|
134 | - $tasks[] = (int) $task; |
|
136 | + foreach ($_POST['run_task'] as $task => $dummy) { |
|
137 | + $tasks[] = (int) $task; |
|
138 | + } |
|
135 | 139 | |
136 | 140 | // Load up the tasks. |
137 | 141 | $request = $smcFunc['db_query']('', ' |
@@ -151,36 +155,41 @@ discard block |
||
151 | 155 | while ($row = $smcFunc['db_fetch_assoc']($request)) |
152 | 156 | { |
153 | 157 | // What kind of task are we handling? |
154 | - if (!empty($row['callable'])) |
|
155 | - $task_string = $row['callable']; |
|
158 | + if (!empty($row['callable'])) { |
|
159 | + $task_string = $row['callable']; |
|
160 | + } |
|
156 | 161 | |
157 | 162 | // Default SMF task or old mods? |
158 | - elseif (function_exists('scheduled_' . $row['task'])) |
|
159 | - $task_string = 'scheduled_' . $row['task']; |
|
163 | + elseif (function_exists('scheduled_' . $row['task'])) { |
|
164 | + $task_string = 'scheduled_' . $row['task']; |
|
165 | + } |
|
160 | 166 | |
161 | 167 | // One last resource, the task name. |
162 | - elseif (!empty($row['task'])) |
|
163 | - $task_string = $row['task']; |
|
168 | + elseif (!empty($row['task'])) { |
|
169 | + $task_string = $row['task']; |
|
170 | + } |
|
164 | 171 | |
165 | 172 | $start_time = microtime(); |
166 | 173 | // The functions got to exist for us to use it. |
167 | - if (empty($task_string)) |
|
168 | - continue; |
|
174 | + if (empty($task_string)) { |
|
175 | + continue; |
|
176 | + } |
|
169 | 177 | |
170 | 178 | // Try to stop a timeout, this would be bad... |
171 | 179 | @set_time_limit(300); |
172 | - if (function_exists('apache_reset_timeout')) |
|
173 | - @apache_reset_timeout(); |
|
180 | + if (function_exists('apache_reset_timeout')) { |
|
181 | + @apache_reset_timeout(); |
|
182 | + } |
|
174 | 183 | |
175 | 184 | // Get the callable. |
176 | 185 | $callable_task = call_helper($task_string, true); |
177 | 186 | |
178 | 187 | // Perform the task. |
179 | - if (!empty($callable_task)) |
|
180 | - $completed = call_user_func($callable_task); |
|
181 | - |
|
182 | - else |
|
183 | - $completed = false; |
|
188 | + if (!empty($callable_task)) { |
|
189 | + $completed = call_user_func($callable_task); |
|
190 | + } else { |
|
191 | + $completed = false; |
|
192 | + } |
|
184 | 193 | |
185 | 194 | // Log that we did it ;) |
186 | 195 | if ($completed) |
@@ -197,8 +206,9 @@ discard block |
||
197 | 206 | $smcFunc['db_free_result']($request); |
198 | 207 | |
199 | 208 | // If we had any errors, push them to session so we can pick them up next time to tell the user. |
200 | - if (!empty($context['scheduled_errors'])) |
|
201 | - $_SESSION['st_error'] = $context['scheduled_errors']; |
|
209 | + if (!empty($context['scheduled_errors'])) { |
|
210 | + $_SESSION['st_error'] = $context['scheduled_errors']; |
|
211 | + } |
|
202 | 212 | |
203 | 213 | redirectexit('action=admin;area=scheduledtasks;done'); |
204 | 214 | } |
@@ -370,8 +380,9 @@ discard block |
||
370 | 380 | $context['server_time'] = timeformat(time(), false, 'server'); |
371 | 381 | |
372 | 382 | // Cleaning... |
373 | - if (!isset($_GET['tid'])) |
|
374 | - fatal_lang_error('no_access', false); |
|
383 | + if (!isset($_GET['tid'])) { |
|
384 | + fatal_lang_error('no_access', false); |
|
385 | + } |
|
375 | 386 | $_GET['tid'] = (int) $_GET['tid']; |
376 | 387 | |
377 | 388 | // Saving? |
@@ -387,10 +398,12 @@ discard block |
||
387 | 398 | preg_match('~(\d{1,2}):(\d{1,2})~', $_POST['offset'], $matches); |
388 | 399 | |
389 | 400 | // If a half is empty then assume zero offset! |
390 | - if (!isset($matches[2]) || $matches[2] > 59) |
|
391 | - $matches[2] = 0; |
|
392 | - if (!isset($matches[1]) || $matches[1] > 23) |
|
393 | - $matches[1] = 0; |
|
401 | + if (!isset($matches[2]) || $matches[2] > 59) { |
|
402 | + $matches[2] = 0; |
|
403 | + } |
|
404 | + if (!isset($matches[1]) || $matches[1] > 23) { |
|
405 | + $matches[1] = 0; |
|
406 | + } |
|
394 | 407 | |
395 | 408 | // Now the offset is easy; easy peasy - except we need to offset by a few hours... |
396 | 409 | $offset = $matches[1] * 3600 + $matches[2] * 60 - date('Z'); |
@@ -400,8 +413,9 @@ discard block |
||
400 | 413 | $unit = in_array(substr($_POST['unit'], 0, 1), array('m', 'h', 'd', 'w')) ? substr($_POST['unit'], 0, 1) : 'd'; |
401 | 414 | |
402 | 415 | // Don't allow one minute intervals. |
403 | - if ($interval == 1 && $unit == 'm') |
|
404 | - $interval = 2; |
|
416 | + if ($interval == 1 && $unit == 'm') { |
|
417 | + $interval = 2; |
|
418 | + } |
|
405 | 419 | |
406 | 420 | // Is it disabled? |
407 | 421 | $disabled = !isset($_POST['enabled']) ? 1 : 0; |
@@ -439,8 +453,9 @@ discard block |
||
439 | 453 | ); |
440 | 454 | |
441 | 455 | // Should never, ever, happen! |
442 | - if ($smcFunc['db_num_rows']($request) == 0) |
|
443 | - fatal_lang_error('no_access', false); |
|
456 | + if ($smcFunc['db_num_rows']($request) == 0) { |
|
457 | + fatal_lang_error('no_access', false); |
|
458 | + } |
|
444 | 459 | |
445 | 460 | while ($row = $smcFunc['db_fetch_assoc']($request)) |
446 | 461 | { |
@@ -598,13 +613,14 @@ discard block |
||
598 | 613 | ) |
599 | 614 | ); |
600 | 615 | $log_entries = array(); |
601 | - while ($row = $smcFunc['db_fetch_assoc']($request)) |
|
602 | - $log_entries[] = array( |
|
616 | + while ($row = $smcFunc['db_fetch_assoc']($request)) { |
|
617 | + $log_entries[] = array( |
|
603 | 618 | 'id' => $row['id_log'], |
604 | 619 | 'name' => isset($txt['scheduled_task_' . $row['task']]) ? $txt['scheduled_task_' . $row['task']] : $row['task'], |
605 | 620 | 'time_run' => $row['time_run'], |
606 | 621 | 'time_taken' => $row['time_taken'], |
607 | 622 | ); |
623 | + } |
|
608 | 624 | $smcFunc['db_free_result']($request); |
609 | 625 | |
610 | 626 | return $log_entries; |
@@ -12,8 +12,9 @@ discard block |
||
12 | 12 | * @version 2.1 Beta 4 |
13 | 13 | */ |
14 | 14 | |
15 | -if (!defined('SMF')) |
|
15 | +if (!defined('SMF')) { |
|
16 | 16 | die('No direct access...'); |
17 | +} |
|
17 | 18 | |
18 | 19 | /** |
19 | 20 | * Create a new list |
@@ -41,21 +42,21 @@ discard block |
||
41 | 42 | { |
42 | 43 | $list_context['sort'] = array(); |
43 | 44 | $sort = '1=1'; |
44 | - } |
|
45 | - else |
|
45 | + } else |
|
46 | 46 | { |
47 | 47 | $request_var_sort = isset($listOptions['request_vars']['sort']) ? $listOptions['request_vars']['sort'] : 'sort'; |
48 | 48 | $request_var_desc = isset($listOptions['request_vars']['desc']) ? $listOptions['request_vars']['desc'] : 'desc'; |
49 | - if (isset($_REQUEST[$request_var_sort], $listOptions['columns'][$_REQUEST[$request_var_sort]], $listOptions['columns'][$_REQUEST[$request_var_sort]]['sort'])) |
|
50 | - $list_context['sort'] = array( |
|
49 | + if (isset($_REQUEST[$request_var_sort], $listOptions['columns'][$_REQUEST[$request_var_sort]], $listOptions['columns'][$_REQUEST[$request_var_sort]]['sort'])) { |
|
50 | + $list_context['sort'] = array( |
|
51 | 51 | 'id' => $_REQUEST[$request_var_sort], |
52 | 52 | 'desc' => isset($_REQUEST[$request_var_desc]) && isset($listOptions['columns'][$_REQUEST[$request_var_sort]]['sort']['reverse']), |
53 | 53 | ); |
54 | - else |
|
55 | - $list_context['sort'] = array( |
|
54 | + } else { |
|
55 | + $list_context['sort'] = array( |
|
56 | 56 | 'id' => $listOptions['default_sort_col'], |
57 | 57 | 'desc' => (!empty($listOptions['default_sort_dir']) && $listOptions['default_sort_dir'] == 'desc') || (!empty($listOptions['columns'][$listOptions['default_sort_col']]['sort']['default']) && substr($listOptions['columns'][$listOptions['default_sort_col']]['sort']['default'], -4, 4) == 'desc') ? true : false, |
58 | 58 | ); |
59 | + } |
|
59 | 60 | |
60 | 61 | // Set the database column sort. |
61 | 62 | $sort = $listOptions['columns'][$list_context['sort']['id']]['sort'][$list_context['sort']['desc'] ? 'reverse' : 'default']; |
@@ -72,8 +73,9 @@ discard block |
||
72 | 73 | else |
73 | 74 | { |
74 | 75 | // First get an impression of how many items to expect. |
75 | - if (isset($listOptions['get_count']['file'])) |
|
76 | - require_once($listOptions['get_count']['file']); |
|
76 | + if (isset($listOptions['get_count']['file'])) { |
|
77 | + require_once($listOptions['get_count']['file']); |
|
78 | + } |
|
77 | 79 | |
78 | 80 | $call = call_helper($listOptions['get_count']['function'], true); |
79 | 81 | $list_context['total_num_items'] = call_user_func_array($call, empty($listOptions['get_count']['params']) ? array() : $listOptions['get_count']['params']); |
@@ -83,14 +85,15 @@ discard block |
||
83 | 85 | $list_context['items_per_page'] = $listOptions['items_per_page']; |
84 | 86 | |
85 | 87 | // Then create a page index. |
86 | - if ($list_context['total_num_items'] > $list_context['items_per_page']) |
|
87 | - $list_context['page_index'] = constructPageIndex($listOptions['base_href'] . (empty($list_context['sort']) ? '' : ';' . $request_var_sort . '=' . $list_context['sort']['id'] . ($list_context['sort']['desc'] ? ';' . $request_var_desc : '')) . ($list_context['start_var_name'] != 'start' ? ';' . $list_context['start_var_name'] . '=%1$d' : ''), $list_context['start'], $list_context['total_num_items'], $list_context['items_per_page'], $list_context['start_var_name'] != 'start'); |
|
88 | + if ($list_context['total_num_items'] > $list_context['items_per_page']) { |
|
89 | + $list_context['page_index'] = constructPageIndex($listOptions['base_href'] . (empty($list_context['sort']) ? '' : ';' . $request_var_sort . '=' . $list_context['sort']['id'] . ($list_context['sort']['desc'] ? ';' . $request_var_desc : '')) . ($list_context['start_var_name'] != 'start' ? ';' . $list_context['start_var_name'] . '=%1$d' : ''), $list_context['start'], $list_context['total_num_items'], $list_context['items_per_page'], $list_context['start_var_name'] != 'start'); |
|
90 | + } |
|
88 | 91 | } |
89 | 92 | |
90 | 93 | // Prepare the headers of the table. |
91 | 94 | $list_context['headers'] = array(); |
92 | - foreach ($listOptions['columns'] as $column_id => $column) |
|
93 | - $list_context['headers'][] = array( |
|
95 | + foreach ($listOptions['columns'] as $column_id => $column) { |
|
96 | + $list_context['headers'][] = array( |
|
94 | 97 | 'id' => $column_id, |
95 | 98 | 'label' => isset($column['header']['eval']) ? eval($column['header']['eval']) : (isset($column['header']['value']) ? $column['header']['value'] : ''), |
96 | 99 | 'href' => empty($listOptions['default_sort_col']) || empty($column['sort']) ? '' : $listOptions['base_href'] . ';' . $request_var_sort . '=' . $column_id . ($column_id === $list_context['sort']['id'] && !$list_context['sort']['desc'] && isset($column['sort']['reverse']) ? ';' . $request_var_desc : '') . (empty($list_context['start']) ? '' : ';' . $list_context['start_var_name'] . '=' . $list_context['start']), |
@@ -99,14 +102,16 @@ discard block |
||
99 | 102 | 'style' => isset($column['header']['style']) ? $column['header']['style'] : '', |
100 | 103 | 'colspan' => isset($column['header']['colspan']) ? $column['header']['colspan'] : '', |
101 | 104 | ); |
105 | + } |
|
102 | 106 | |
103 | 107 | // We know the amount of columns, might be useful for the template. |
104 | 108 | $list_context['num_columns'] = count($listOptions['columns']); |
105 | 109 | $list_context['width'] = isset($listOptions['width']) ? $listOptions['width'] : '0'; |
106 | 110 | |
107 | 111 | // Get the file with the function for the item list. |
108 | - if (isset($listOptions['get_items']['file'])) |
|
109 | - require_once($listOptions['get_items']['file']); |
|
112 | + if (isset($listOptions['get_items']['file'])) { |
|
113 | + require_once($listOptions['get_items']['file']); |
|
114 | + } |
|
110 | 115 | |
111 | 116 | // Call the function and include which items we want and in what order. |
112 | 117 | $call = call_helper($listOptions['get_items']['function'], true); |
@@ -123,51 +128,61 @@ discard block |
||
123 | 128 | $cur_data = array(); |
124 | 129 | |
125 | 130 | // A value straight from the database? |
126 | - if (isset($column['data']['db'])) |
|
127 | - $cur_data['value'] = $list_item[$column['data']['db']]; |
|
131 | + if (isset($column['data']['db'])) { |
|
132 | + $cur_data['value'] = $list_item[$column['data']['db']]; |
|
133 | + } |
|
128 | 134 | |
129 | 135 | // Take the value from the database and make it HTML safe. |
130 | - elseif (isset($column['data']['db_htmlsafe'])) |
|
131 | - $cur_data['value'] = $smcFunc['htmlspecialchars']($list_item[$column['data']['db_htmlsafe']]); |
|
136 | + elseif (isset($column['data']['db_htmlsafe'])) { |
|
137 | + $cur_data['value'] = $smcFunc['htmlspecialchars']($list_item[$column['data']['db_htmlsafe']]); |
|
138 | + } |
|
132 | 139 | |
133 | 140 | // Using sprintf is probably the most readable way of injecting data. |
134 | 141 | elseif (isset($column['data']['sprintf'])) |
135 | 142 | { |
136 | 143 | $params = array(); |
137 | - foreach ($column['data']['sprintf']['params'] as $sprintf_param => $htmlsafe) |
|
138 | - $params[] = $htmlsafe ? $smcFunc['htmlspecialchars']($list_item[$sprintf_param]) : $list_item[$sprintf_param]; |
|
144 | + foreach ($column['data']['sprintf']['params'] as $sprintf_param => $htmlsafe) { |
|
145 | + $params[] = $htmlsafe ? $smcFunc['htmlspecialchars']($list_item[$sprintf_param]) : $list_item[$sprintf_param]; |
|
146 | + } |
|
139 | 147 | $cur_data['value'] = vsprintf($column['data']['sprintf']['format'], $params); |
140 | 148 | } |
141 | 149 | |
142 | 150 | // The most flexible way probably is applying a custom function. |
143 | - elseif (isset($column['data']['function'])) |
|
144 | - $cur_data['value'] = call_user_func_array($column['data']['function'], array($list_item)); |
|
151 | + elseif (isset($column['data']['function'])) { |
|
152 | + $cur_data['value'] = call_user_func_array($column['data']['function'], array($list_item)); |
|
153 | + } |
|
145 | 154 | |
146 | 155 | // A modified value (inject the database values). |
147 | - elseif (isset($column['data']['eval'])) |
|
148 | - $cur_data['value'] = eval(preg_replace('~%([a-zA-Z0-9\-_]+)%~', '$list_item[\'$1\']', $column['data']['eval'])); |
|
156 | + elseif (isset($column['data']['eval'])) { |
|
157 | + $cur_data['value'] = eval(preg_replace('~%([a-zA-Z0-9\-_]+)%~', '$list_item[\'$1\']', $column['data']['eval'])); |
|
158 | + } |
|
149 | 159 | |
150 | 160 | // A literal value. |
151 | - elseif (isset($column['data']['value'])) |
|
152 | - $cur_data['value'] = $column['data']['value']; |
|
161 | + elseif (isset($column['data']['value'])) { |
|
162 | + $cur_data['value'] = $column['data']['value']; |
|
163 | + } |
|
153 | 164 | |
154 | 165 | // Empty value. |
155 | - else |
|
156 | - $cur_data['value'] = ''; |
|
166 | + else { |
|
167 | + $cur_data['value'] = ''; |
|
168 | + } |
|
157 | 169 | |
158 | 170 | // Allow for basic formatting. |
159 | - if (!empty($column['data']['comma_format'])) |
|
160 | - $cur_data['value'] = comma_format($cur_data['value']); |
|
161 | - elseif (!empty($column['data']['timeformat'])) |
|
162 | - $cur_data['value'] = timeformat($cur_data['value']); |
|
171 | + if (!empty($column['data']['comma_format'])) { |
|
172 | + $cur_data['value'] = comma_format($cur_data['value']); |
|
173 | + } elseif (!empty($column['data']['timeformat'])) { |
|
174 | + $cur_data['value'] = timeformat($cur_data['value']); |
|
175 | + } |
|
163 | 176 | |
164 | 177 | // Set a style class for this column? |
165 | - if (isset($column['data']['class'])) |
|
166 | - $cur_data['class'] = $column['data']['class']; |
|
178 | + if (isset($column['data']['class'])) { |
|
179 | + $cur_data['class'] = $column['data']['class']; |
|
180 | + } |
|
167 | 181 | |
168 | 182 | // Fully customized styling for the cells in this column only. |
169 | - if (isset($column['data']['style'])) |
|
170 | - $cur_data['style'] = $column['data']['style']; |
|
183 | + if (isset($column['data']['style'])) { |
|
184 | + $cur_data['style'] = $column['data']['style']; |
|
185 | + } |
|
171 | 186 | |
172 | 187 | // Add the data cell properties to the current row. |
173 | 188 | $cur_row[$column_id] = $cur_data; |
@@ -176,10 +191,12 @@ discard block |
||
176 | 191 | // Maybe we wat set a custom class for the row based on the data in the row itself |
177 | 192 | if (isset($listOptions['data_check'])) |
178 | 193 | { |
179 | - if (isset($listOptions['data_check']['class'])) |
|
180 | - $list_context['rows'][$item_id]['class'] = $listOptions['data_check']['class']($list_item); |
|
181 | - if (isset($listOptions['data_check']['style'])) |
|
182 | - $list_context['rows'][$item_id]['style'] = $listOptions['data_check']['style']($list_item); |
|
194 | + if (isset($listOptions['data_check']['class'])) { |
|
195 | + $list_context['rows'][$item_id]['class'] = $listOptions['data_check']['class']($list_item); |
|
196 | + } |
|
197 | + if (isset($listOptions['data_check']['style'])) { |
|
198 | + $list_context['rows'][$item_id]['style'] = $listOptions['data_check']['style']($list_item); |
|
199 | + } |
|
183 | 200 | } |
184 | 201 | |
185 | 202 | // Insert the row into the list. |
@@ -187,34 +204,39 @@ discard block |
||
187 | 204 | } |
188 | 205 | |
189 | 206 | // The title is currently optional. |
190 | - if (isset($listOptions['title'])) |
|
191 | - $list_context['title'] = $listOptions['title']; |
|
207 | + if (isset($listOptions['title'])) { |
|
208 | + $list_context['title'] = $listOptions['title']; |
|
209 | + } |
|
192 | 210 | |
193 | 211 | // In case there's a form, share it with the template context. |
194 | 212 | if (isset($listOptions['form'])) |
195 | 213 | { |
196 | 214 | $list_context['form'] = $listOptions['form']; |
197 | 215 | |
198 | - if (!isset($list_context['form']['hidden_fields'])) |
|
199 | - $list_context['form']['hidden_fields'] = array(); |
|
216 | + if (!isset($list_context['form']['hidden_fields'])) { |
|
217 | + $list_context['form']['hidden_fields'] = array(); |
|
218 | + } |
|
200 | 219 | |
201 | 220 | // Always add a session check field. |
202 | 221 | $list_context['form']['hidden_fields'][$context['session_var']] = $context['session_id']; |
203 | 222 | |
204 | 223 | // Will this do a token check? |
205 | - if (isset($listOptions['form']['token'])) |
|
206 | - $list_context['form']['hidden_fields'][$context[$listOptions['form']['token'] . '_token_var']] = $context[$listOptions['form']['token'] . '_token']; |
|
224 | + if (isset($listOptions['form']['token'])) { |
|
225 | + $list_context['form']['hidden_fields'][$context[$listOptions['form']['token'] . '_token_var']] = $context[$listOptions['form']['token'] . '_token']; |
|
226 | + } |
|
207 | 227 | |
208 | 228 | // Include the starting page as hidden field? |
209 | - if (!empty($list_context['form']['include_start']) && !empty($list_context['start'])) |
|
210 | - $list_context['form']['hidden_fields'][$list_context['start_var_name']] = $list_context['start']; |
|
229 | + if (!empty($list_context['form']['include_start']) && !empty($list_context['start'])) { |
|
230 | + $list_context['form']['hidden_fields'][$list_context['start_var_name']] = $list_context['start']; |
|
231 | + } |
|
211 | 232 | |
212 | 233 | // If sorting needs to be the same after submitting, add the parameter. |
213 | 234 | if (!empty($list_context['form']['include_sort']) && !empty($list_context['sort'])) |
214 | 235 | { |
215 | 236 | $list_context['form']['hidden_fields']['sort'] = $list_context['sort']['id']; |
216 | - if ($list_context['sort']['desc']) |
|
217 | - $list_context['form']['hidden_fields']['desc'] = 1; |
|
237 | + if ($list_context['sort']['desc']) { |
|
238 | + $list_context['form']['hidden_fields']['desc'] = 1; |
|
239 | + } |
|
218 | 240 | } |
219 | 241 | } |
220 | 242 | |
@@ -231,24 +253,28 @@ discard block |
||
231 | 253 | $list_context['additional_rows'] = array(); |
232 | 254 | foreach ($listOptions['additional_rows'] as $row) |
233 | 255 | { |
234 | - if (empty($row)) |
|
235 | - continue; |
|
256 | + if (empty($row)) { |
|
257 | + continue; |
|
258 | + } |
|
236 | 259 | |
237 | 260 | // Supported row positions: top_of_list, after_title, |
238 | 261 | // above_column_headers, below_table_data, bottom_of_list. |
239 | - if (!isset($list_context['additional_rows'][$row['position']])) |
|
240 | - $list_context['additional_rows'][$row['position']] = array(); |
|
262 | + if (!isset($list_context['additional_rows'][$row['position']])) { |
|
263 | + $list_context['additional_rows'][$row['position']] = array(); |
|
264 | + } |
|
241 | 265 | $list_context['additional_rows'][$row['position']][] = $row; |
242 | 266 | } |
243 | 267 | } |
244 | 268 | |
245 | 269 | // Add an option for inline JavaScript. |
246 | - if (isset($listOptions['javascript'])) |
|
247 | - $list_context['javascript'] = $listOptions['javascript']; |
|
270 | + if (isset($listOptions['javascript'])) { |
|
271 | + $list_context['javascript'] = $listOptions['javascript']; |
|
272 | + } |
|
248 | 273 | |
249 | 274 | // We want a menu. |
250 | - if (isset($listOptions['list_menu'])) |
|
251 | - $list_context['list_menu'] = $listOptions['list_menu']; |
|
275 | + if (isset($listOptions['list_menu'])) { |
|
276 | + $list_context['list_menu'] = $listOptions['list_menu']; |
|
277 | + } |
|
252 | 278 | |
253 | 279 | // Make sure the template is loaded. |
254 | 280 | loadTemplate('GenericList'); |
@@ -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 | * Delete one or more members. |
@@ -43,30 +44,32 @@ discard block |
||
43 | 44 | setMemoryLimit('128M'); |
44 | 45 | |
45 | 46 | // If it's not an array, make it so! |
46 | - if (!is_array($users)) |
|
47 | - $users = array($users); |
|
48 | - else |
|
49 | - $users = array_unique($users); |
|
47 | + if (!is_array($users)) { |
|
48 | + $users = array($users); |
|
49 | + } else { |
|
50 | + $users = array_unique($users); |
|
51 | + } |
|
50 | 52 | |
51 | 53 | // Make sure there's no void user in here. |
52 | 54 | $users = array_diff($users, array(0)); |
53 | 55 | |
54 | 56 | // How many are they deleting? |
55 | - if (empty($users)) |
|
56 | - return; |
|
57 | - elseif (count($users) == 1) |
|
57 | + if (empty($users)) { |
|
58 | + return; |
|
59 | + } elseif (count($users) == 1) |
|
58 | 60 | { |
59 | 61 | list ($user) = $users; |
60 | 62 | |
61 | - if ($user == $user_info['id']) |
|
62 | - isAllowedTo('profile_remove_own'); |
|
63 | - else |
|
64 | - isAllowedTo('profile_remove_any'); |
|
65 | - } |
|
66 | - else |
|
63 | + if ($user == $user_info['id']) { |
|
64 | + isAllowedTo('profile_remove_own'); |
|
65 | + } else { |
|
66 | + isAllowedTo('profile_remove_any'); |
|
67 | + } |
|
68 | + } else |
|
67 | 69 | { |
68 | - foreach ($users as $k => $v) |
|
69 | - $users[$k] = (int) $v; |
|
70 | + foreach ($users as $k => $v) { |
|
71 | + $users[$k] = (int) $v; |
|
72 | + } |
|
70 | 73 | |
71 | 74 | // Deleting more than one? You can't have more than one account... |
72 | 75 | isAllowedTo('profile_remove_any'); |
@@ -88,26 +91,30 @@ discard block |
||
88 | 91 | $user_log_details = array(); |
89 | 92 | while ($row = $smcFunc['db_fetch_assoc']($request)) |
90 | 93 | { |
91 | - if ($row['is_admin']) |
|
92 | - $admins[] = $row['id_member']; |
|
94 | + if ($row['is_admin']) { |
|
95 | + $admins[] = $row['id_member']; |
|
96 | + } |
|
93 | 97 | $user_log_details[$row['id_member']] = array($row['id_member'], $row['member_name']); |
94 | 98 | } |
95 | 99 | $smcFunc['db_free_result']($request); |
96 | 100 | |
97 | - if (empty($user_log_details)) |
|
98 | - return; |
|
101 | + if (empty($user_log_details)) { |
|
102 | + return; |
|
103 | + } |
|
99 | 104 | |
100 | 105 | // Make sure they aren't trying to delete administrators if they aren't one. But don't bother checking if it's just themself. |
101 | 106 | if (!empty($admins) && ($check_not_admin || (!allowedTo('admin_forum') && (count($users) != 1 || $users[0] != $user_info['id'])))) |
102 | 107 | { |
103 | 108 | $users = array_diff($users, $admins); |
104 | - foreach ($admins as $id) |
|
105 | - unset($user_log_details[$id]); |
|
109 | + foreach ($admins as $id) { |
|
110 | + unset($user_log_details[$id]); |
|
111 | + } |
|
106 | 112 | } |
107 | 113 | |
108 | 114 | // No one left? |
109 | - if (empty($users)) |
|
110 | - return; |
|
115 | + if (empty($users)) { |
|
116 | + return; |
|
117 | + } |
|
111 | 118 | |
112 | 119 | // Log the action - regardless of who is deleting it. |
113 | 120 | $log_changes = array(); |
@@ -124,8 +131,9 @@ discard block |
||
124 | 131 | ); |
125 | 132 | |
126 | 133 | // Remove any cached data if enabled. |
127 | - if (!empty($modSettings['cache_enable']) && $modSettings['cache_enable'] >= 2) |
|
128 | - cache_put_data('user_settings-' . $user[0], null, 60); |
|
134 | + if (!empty($modSettings['cache_enable']) && $modSettings['cache_enable'] >= 2) { |
|
135 | + cache_put_data('user_settings-' . $user[0], null, 60); |
|
136 | + } |
|
129 | 137 | } |
130 | 138 | |
131 | 139 | // Make these peoples' posts guest posts. |
@@ -388,8 +396,8 @@ discard block |
||
388 | 396 | 'buddy_list' => implode(', buddy_list) != 0 OR FIND_IN_SET(', $users), |
389 | 397 | ) |
390 | 398 | ); |
391 | - while ($row = $smcFunc['db_fetch_assoc']($request)) |
|
392 | - $smcFunc['db_query']('', ' |
|
399 | + while ($row = $smcFunc['db_fetch_assoc']($request)) { |
|
400 | + $smcFunc['db_query']('', ' |
|
393 | 401 | UPDATE {db_prefix}members |
394 | 402 | SET |
395 | 403 | pm_ignore_list = {string:pm_ignore_list}, |
@@ -401,6 +409,7 @@ discard block |
||
401 | 409 | 'buddy_list' => implode(',', array_diff(explode(',', $row['buddy_list']), $users)), |
402 | 410 | ) |
403 | 411 | ); |
412 | + } |
|
404 | 413 | $smcFunc['db_free_result']($request); |
405 | 414 | |
406 | 415 | // Make sure no member's birthday is still sticking in the calendar... |
@@ -455,29 +464,34 @@ discard block |
||
455 | 464 | elseif ($regOptions['interface'] == 'guest') |
456 | 465 | { |
457 | 466 | // You cannot register twice... |
458 | - if (empty($user_info['is_guest'])) |
|
459 | - redirectexit(); |
|
467 | + if (empty($user_info['is_guest'])) { |
|
468 | + redirectexit(); |
|
469 | + } |
|
460 | 470 | |
461 | 471 | // Make sure they didn't just register with this session. |
462 | - if (!empty($_SESSION['just_registered']) && empty($modSettings['disableRegisterCheck'])) |
|
463 | - fatal_lang_error('register_only_once', false); |
|
472 | + if (!empty($_SESSION['just_registered']) && empty($modSettings['disableRegisterCheck'])) { |
|
473 | + fatal_lang_error('register_only_once', false); |
|
474 | + } |
|
464 | 475 | } |
465 | 476 | |
466 | 477 | // Spaces and other odd characters are evil... |
467 | 478 | $regOptions['username'] = trim(preg_replace('~[\t\n\r \x0B\0' . ($context['utf8'] ? '\x{A0}\x{AD}\x{2000}-\x{200F}\x{201F}\x{202F}\x{3000}\x{FEFF}' : '\x00-\x08\x0B\x0C\x0E-\x19\xA0') . ']+~' . ($context['utf8'] ? 'u' : ''), ' ', $regOptions['username'])); |
468 | 479 | |
469 | 480 | // @todo Separate the sprintf? |
470 | - if (empty($regOptions['email']) || !filter_var($regOptions['email'], FILTER_VALIDATE_EMAIL) || strlen($regOptions['email']) > 255) |
|
471 | - $reg_errors[] = array('lang', 'profile_error_bad_email'); |
|
481 | + if (empty($regOptions['email']) || !filter_var($regOptions['email'], FILTER_VALIDATE_EMAIL) || strlen($regOptions['email']) > 255) { |
|
482 | + $reg_errors[] = array('lang', 'profile_error_bad_email'); |
|
483 | + } |
|
472 | 484 | |
473 | 485 | $username_validation_errors = validateUsername(0, $regOptions['username'], true, !empty($regOptions['check_reserved_name'])); |
474 | - if (!empty($username_validation_errors)) |
|
475 | - $reg_errors = array_merge($reg_errors, $username_validation_errors); |
|
486 | + if (!empty($username_validation_errors)) { |
|
487 | + $reg_errors = array_merge($reg_errors, $username_validation_errors); |
|
488 | + } |
|
476 | 489 | |
477 | 490 | // Generate a validation code if it's supposed to be emailed. |
478 | 491 | $validation_code = ''; |
479 | - if ($regOptions['require'] == 'activation') |
|
480 | - $validation_code = generateValidationCode(); |
|
492 | + if ($regOptions['require'] == 'activation') { |
|
493 | + $validation_code = generateValidationCode(); |
|
494 | + } |
|
481 | 495 | |
482 | 496 | // If you haven't put in a password generate one. |
483 | 497 | if ($regOptions['interface'] == 'admin' && $regOptions['password'] == '') |
@@ -487,8 +501,9 @@ discard block |
||
487 | 501 | $regOptions['password_check'] = $regOptions['password']; |
488 | 502 | } |
489 | 503 | // Does the first password match the second? |
490 | - elseif ($regOptions['password'] != $regOptions['password_check']) |
|
491 | - $reg_errors[] = array('lang', 'passwords_dont_match'); |
|
504 | + elseif ($regOptions['password'] != $regOptions['password_check']) { |
|
505 | + $reg_errors[] = array('lang', 'passwords_dont_match'); |
|
506 | + } |
|
492 | 507 | |
493 | 508 | // That's kind of easy to guess... |
494 | 509 | if ($regOptions['password'] == '') |
@@ -502,13 +517,15 @@ discard block |
||
502 | 517 | $passwordError = validatePassword($regOptions['password'], $regOptions['username'], array($regOptions['email'])); |
503 | 518 | |
504 | 519 | // Password isn't legal? |
505 | - if ($passwordError != null) |
|
506 | - $reg_errors[] = array('lang', 'profile_error_password_' . $passwordError); |
|
520 | + if ($passwordError != null) { |
|
521 | + $reg_errors[] = array('lang', 'profile_error_password_' . $passwordError); |
|
522 | + } |
|
507 | 523 | } |
508 | 524 | |
509 | 525 | // You may not be allowed to register this email. |
510 | - if (!empty($regOptions['check_email_ban'])) |
|
511 | - isBannedEmail($regOptions['email'], 'cannot_register', $txt['ban_register_prohibited']); |
|
526 | + if (!empty($regOptions['check_email_ban'])) { |
|
527 | + isBannedEmail($regOptions['email'], 'cannot_register', $txt['ban_register_prohibited']); |
|
528 | + } |
|
512 | 529 | |
513 | 530 | // Check if the email address is in use. |
514 | 531 | $request = $smcFunc['db_query']('', ' |
@@ -523,8 +540,9 @@ discard block |
||
523 | 540 | ) |
524 | 541 | ); |
525 | 542 | // @todo Separate the sprintf? |
526 | - if ($smcFunc['db_num_rows']($request) != 0) |
|
527 | - $reg_errors[] = array('lang', 'email_in_use', false, array($smcFunc['htmlspecialchars']($regOptions['email']))); |
|
543 | + if ($smcFunc['db_num_rows']($request) != 0) { |
|
544 | + $reg_errors[] = array('lang', 'email_in_use', false, array($smcFunc['htmlspecialchars']($regOptions['email']))); |
|
545 | + } |
|
528 | 546 | |
529 | 547 | $smcFunc['db_free_result']($request); |
530 | 548 | |
@@ -539,24 +557,27 @@ discard block |
||
539 | 557 | 1 = The text/index. |
540 | 558 | 2 = Whether to log. |
541 | 559 | 3 = sprintf data if necessary. */ |
542 | - if ($error[0] == 'lang') |
|
543 | - loadLanguage('Errors'); |
|
560 | + if ($error[0] == 'lang') { |
|
561 | + loadLanguage('Errors'); |
|
562 | + } |
|
544 | 563 | $message = $error[0] == 'lang' ? (empty($error[3]) ? $txt[$error[1]] : vsprintf($txt[$error[1]], $error[3])) : $error[1]; |
545 | 564 | |
546 | 565 | // What to do, what to do, what to do. |
547 | 566 | if ($return_errors) |
548 | 567 | { |
549 | - if (!empty($error[2])) |
|
550 | - log_error($message, $error[2]); |
|
568 | + if (!empty($error[2])) { |
|
569 | + log_error($message, $error[2]); |
|
570 | + } |
|
551 | 571 | $reg_errors[$key] = $message; |
572 | + } else { |
|
573 | + fatal_error($message, empty($error[2]) ? false : $error[2]); |
|
552 | 574 | } |
553 | - else |
|
554 | - fatal_error($message, empty($error[2]) ? false : $error[2]); |
|
555 | 575 | } |
556 | 576 | |
557 | 577 | // If there's any errors left return them at once! |
558 | - if (!empty($reg_errors)) |
|
559 | - return $reg_errors; |
|
578 | + if (!empty($reg_errors)) { |
|
579 | + return $reg_errors; |
|
580 | + } |
|
560 | 581 | |
561 | 582 | $reservedVars = array( |
562 | 583 | 'actual_theme_url', |
@@ -578,8 +599,9 @@ discard block |
||
578 | 599 | ); |
579 | 600 | |
580 | 601 | // Can't change reserved vars. |
581 | - if (isset($regOptions['theme_vars']) && count(array_intersect(array_keys($regOptions['theme_vars']), $reservedVars)) != 0) |
|
582 | - fatal_lang_error('no_theme'); |
|
602 | + if (isset($regOptions['theme_vars']) && count(array_intersect(array_keys($regOptions['theme_vars']), $reservedVars)) != 0) { |
|
603 | + fatal_lang_error('no_theme'); |
|
604 | + } |
|
583 | 605 | |
584 | 606 | // Some of these might be overwritten. (the lower ones that are in the arrays below.) |
585 | 607 | $regOptions['register_vars'] = array( |
@@ -621,14 +643,17 @@ discard block |
||
621 | 643 | $regOptions['register_vars']['validation_code'] = ''; |
622 | 644 | } |
623 | 645 | // Maybe it can be activated right away? |
624 | - elseif ($regOptions['require'] == 'nothing') |
|
625 | - $regOptions['register_vars']['is_activated'] = 1; |
|
646 | + elseif ($regOptions['require'] == 'nothing') { |
|
647 | + $regOptions['register_vars']['is_activated'] = 1; |
|
648 | + } |
|
626 | 649 | // Maybe it must be activated by email? |
627 | - elseif ($regOptions['require'] == 'activation') |
|
628 | - $regOptions['register_vars']['is_activated'] = 0; |
|
650 | + elseif ($regOptions['require'] == 'activation') { |
|
651 | + $regOptions['register_vars']['is_activated'] = 0; |
|
652 | + } |
|
629 | 653 | // Otherwise it must be awaiting approval! |
630 | - else |
|
631 | - $regOptions['register_vars']['is_activated'] = 3; |
|
654 | + else { |
|
655 | + $regOptions['register_vars']['is_activated'] = 3; |
|
656 | + } |
|
632 | 657 | |
633 | 658 | if (isset($regOptions['memberGroup'])) |
634 | 659 | { |
@@ -647,24 +672,28 @@ discard block |
||
647 | 672 | 'is_protected' => 1, |
648 | 673 | ) |
649 | 674 | ); |
650 | - while ($row = $smcFunc['db_fetch_assoc']($request)) |
|
651 | - $unassignableGroups[] = $row['id_group']; |
|
675 | + while ($row = $smcFunc['db_fetch_assoc']($request)) { |
|
676 | + $unassignableGroups[] = $row['id_group']; |
|
677 | + } |
|
652 | 678 | $smcFunc['db_free_result']($request); |
653 | 679 | |
654 | - if (in_array($regOptions['register_vars']['id_group'], $unassignableGroups)) |
|
655 | - $regOptions['register_vars']['id_group'] = 0; |
|
680 | + if (in_array($regOptions['register_vars']['id_group'], $unassignableGroups)) { |
|
681 | + $regOptions['register_vars']['id_group'] = 0; |
|
682 | + } |
|
656 | 683 | } |
657 | 684 | |
658 | 685 | // Integrate optional member settings to be set. |
659 | - if (!empty($regOptions['extra_register_vars'])) |
|
660 | - foreach ($regOptions['extra_register_vars'] as $var => $value) |
|
686 | + if (!empty($regOptions['extra_register_vars'])) { |
|
687 | + foreach ($regOptions['extra_register_vars'] as $var => $value) |
|
661 | 688 | $regOptions['register_vars'][$var] = $value; |
689 | + } |
|
662 | 690 | |
663 | 691 | // Integrate optional user theme options to be set. |
664 | 692 | $theme_vars = array(); |
665 | - if (!empty($regOptions['theme_vars'])) |
|
666 | - foreach ($regOptions['theme_vars'] as $var => $value) |
|
693 | + if (!empty($regOptions['theme_vars'])) { |
|
694 | + foreach ($regOptions['theme_vars'] as $var => $value) |
|
667 | 695 | $theme_vars[$var] = $value; |
696 | + } |
|
668 | 697 | |
669 | 698 | // Right, now let's prepare for insertion. |
670 | 699 | $knownInts = array( |
@@ -687,14 +716,15 @@ discard block |
||
687 | 716 | foreach ($regOptions['register_vars'] as $var => $val) |
688 | 717 | { |
689 | 718 | $type = 'string'; |
690 | - if (in_array($var, $knownInts)) |
|
691 | - $type = 'int'; |
|
692 | - elseif (in_array($var, $knownFloats)) |
|
693 | - $type = 'float'; |
|
694 | - elseif (in_array($var, $knownInets)) |
|
695 | - $type = 'inet'; |
|
696 | - elseif ($var == 'birthdate') |
|
697 | - $type = 'date'; |
|
719 | + if (in_array($var, $knownInts)) { |
|
720 | + $type = 'int'; |
|
721 | + } elseif (in_array($var, $knownFloats)) { |
|
722 | + $type = 'float'; |
|
723 | + } elseif (in_array($var, $knownInets)) { |
|
724 | + $type = 'inet'; |
|
725 | + } elseif ($var == 'birthdate') { |
|
726 | + $type = 'date'; |
|
727 | + } |
|
698 | 728 | |
699 | 729 | $column_names[$var] = $type; |
700 | 730 | $values[$var] = $val; |
@@ -713,17 +743,19 @@ discard block |
||
713 | 743 | call_integration_hook('integrate_post_register', array(&$regOptions, &$theme_vars, &$memberID)); |
714 | 744 | |
715 | 745 | // Update the number of members and latest member's info - and pass the name, but remove the 's. |
716 | - if ($regOptions['register_vars']['is_activated'] == 1) |
|
717 | - updateStats('member', $memberID, $regOptions['register_vars']['real_name']); |
|
718 | - else |
|
719 | - updateStats('member'); |
|
746 | + if ($regOptions['register_vars']['is_activated'] == 1) { |
|
747 | + updateStats('member', $memberID, $regOptions['register_vars']['real_name']); |
|
748 | + } else { |
|
749 | + updateStats('member'); |
|
750 | + } |
|
720 | 751 | |
721 | 752 | // Theme variables too? |
722 | 753 | if (!empty($theme_vars)) |
723 | 754 | { |
724 | 755 | $inserts = array(); |
725 | - foreach ($theme_vars as $var => $val) |
|
726 | - $inserts[] = array($memberID, $var, $val); |
|
756 | + foreach ($theme_vars as $var => $val) { |
|
757 | + $inserts[] = array($memberID, $var, $val); |
|
758 | + } |
|
727 | 759 | $smcFunc['db_insert']('insert', |
728 | 760 | '{db_prefix}themes', |
729 | 761 | array('id_member' => 'int', 'variable' => 'string-255', 'value' => 'string-65534'), |
@@ -738,10 +770,11 @@ discard block |
||
738 | 770 | // Administrative registrations are a bit different... |
739 | 771 | if ($regOptions['interface'] == 'admin') |
740 | 772 | { |
741 | - if ($regOptions['require'] == 'activation') |
|
742 | - $email_message = 'admin_register_activate'; |
|
743 | - elseif (!empty($regOptions['send_welcome_email'])) |
|
744 | - $email_message = 'admin_register_immediate'; |
|
773 | + if ($regOptions['require'] == 'activation') { |
|
774 | + $email_message = 'admin_register_activate'; |
|
775 | + } elseif (!empty($regOptions['send_welcome_email'])) { |
|
776 | + $email_message = 'admin_register_immediate'; |
|
777 | + } |
|
745 | 778 | |
746 | 779 | if (isset($email_message)) |
747 | 780 | { |
@@ -792,16 +825,17 @@ discard block |
||
792 | 825 | 'FORGOTPASSWORDLINK' => $scripturl . '?action=reminder', |
793 | 826 | ); |
794 | 827 | |
795 | - if ($regOptions['require'] == 'activation') |
|
796 | - $replacements += array( |
|
828 | + if ($regOptions['require'] == 'activation') { |
|
829 | + $replacements += array( |
|
797 | 830 | 'ACTIVATIONLINK' => $scripturl . '?action=activate;u=' . $memberID . ';code=' . $validation_code, |
798 | 831 | 'ACTIVATIONLINKWITHOUTCODE' => $scripturl . '?action=activate;u=' . $memberID, |
799 | 832 | 'ACTIVATIONCODE' => $validation_code, |
800 | 833 | ); |
801 | - else |
|
802 | - $replacements += array( |
|
834 | + } else { |
|
835 | + $replacements += array( |
|
803 | 836 | 'COPPALINK' => $scripturl . '?action=coppa;u=' . $memberID, |
804 | 837 | ); |
838 | + } |
|
805 | 839 | |
806 | 840 | $emaildata = loadEmailTemplate('register_' . ($regOptions['require'] == 'activation' ? 'activate' : 'coppa'), $replacements); |
807 | 841 | |
@@ -866,39 +900,45 @@ discard block |
||
866 | 900 | // Check each name in the list... |
867 | 901 | foreach ($reservedNames as $reserved) |
868 | 902 | { |
869 | - if ($reserved == '') |
|
870 | - continue; |
|
903 | + if ($reserved == '') { |
|
904 | + continue; |
|
905 | + } |
|
871 | 906 | |
872 | 907 | // The admin might've used entities too, level the playing field. |
873 | 908 | $reservedCheck = preg_replace('~(&#(\d{1,7}|x[0-9a-fA-F]{1,6});)~', 'replaceEntities__callback', $reserved); |
874 | 909 | |
875 | 910 | // Case sensitive name? |
876 | - if (empty($modSettings['reserveCase'])) |
|
877 | - $reservedCheck = $smcFunc['strtolower']($reservedCheck); |
|
911 | + if (empty($modSettings['reserveCase'])) { |
|
912 | + $reservedCheck = $smcFunc['strtolower']($reservedCheck); |
|
913 | + } |
|
878 | 914 | |
879 | 915 | // If it's not just entire word, check for it in there somewhere... |
880 | - if ($checkMe == $reservedCheck || ($smcFunc['strpos']($checkMe, $reservedCheck) !== false && empty($modSettings['reserveWord']))) |
|
881 | - if ($fatal) |
|
916 | + if ($checkMe == $reservedCheck || ($smcFunc['strpos']($checkMe, $reservedCheck) !== false && empty($modSettings['reserveWord']))) { |
|
917 | + if ($fatal) |
|
882 | 918 | fatal_lang_error('username_reserved', 'password', array($reserved)); |
883 | - else |
|
884 | - return true; |
|
919 | + } else { |
|
920 | + return true; |
|
921 | + } |
|
885 | 922 | } |
886 | 923 | |
887 | 924 | $censor_name = $name; |
888 | - if (censorText($censor_name) != $name) |
|
889 | - if ($fatal) |
|
925 | + if (censorText($censor_name) != $name) { |
|
926 | + if ($fatal) |
|
890 | 927 | fatal_lang_error('name_censored', 'password', array($name)); |
891 | - else |
|
892 | - return true; |
|
928 | + } else { |
|
929 | + return true; |
|
930 | + } |
|
893 | 931 | } |
894 | 932 | |
895 | 933 | // Characters we just shouldn't allow, regardless. |
896 | - foreach (array('*') as $char) |
|
897 | - if (strpos($checkName, $char) !== false) |
|
934 | + foreach (array('*') as $char) { |
|
935 | + if (strpos($checkName, $char) !== false) |
|
898 | 936 | if ($fatal) |
899 | 937 | fatal_lang_error('username_reserved', 'password', array($char)); |
900 | - else |
|
901 | - return true; |
|
938 | + } |
|
939 | + else { |
|
940 | + return true; |
|
941 | + } |
|
902 | 942 | |
903 | 943 | // Get rid of any SQL parts of the reserved name... |
904 | 944 | $checkName = strtr($name, array('_' => '\\_', '%' => '\\%')); |
@@ -980,8 +1020,9 @@ discard block |
||
980 | 1020 | 'permission' => $permission, |
981 | 1021 | ) |
982 | 1022 | ); |
983 | - while ($row = $smcFunc['db_fetch_assoc']($request)) |
|
984 | - $member_groups[$row['add_deny'] === '1' ? 'allowed' : 'denied'][] = $row['id_group']; |
|
1023 | + while ($row = $smcFunc['db_fetch_assoc']($request)) { |
|
1024 | + $member_groups[$row['add_deny'] === '1' ? 'allowed' : 'denied'][] = $row['id_group']; |
|
1025 | + } |
|
985 | 1026 | $smcFunc['db_free_result']($request); |
986 | 1027 | } |
987 | 1028 | |
@@ -989,9 +1030,9 @@ discard block |
||
989 | 1030 | else |
990 | 1031 | { |
991 | 1032 | // First get the profile of the given board. |
992 | - if (isset($board_info['id']) && $board_info['id'] == $board_id) |
|
993 | - $profile_id = $board_info['profile']; |
|
994 | - elseif ($board_id !== 0) |
|
1033 | + if (isset($board_info['id']) && $board_info['id'] == $board_id) { |
|
1034 | + $profile_id = $board_info['profile']; |
|
1035 | + } elseif ($board_id !== 0) |
|
995 | 1036 | { |
996 | 1037 | $request = $smcFunc['db_query']('', ' |
997 | 1038 | SELECT id_profile |
@@ -1002,13 +1043,14 @@ discard block |
||
1002 | 1043 | 'id_board' => $board_id, |
1003 | 1044 | ) |
1004 | 1045 | ); |
1005 | - if ($smcFunc['db_num_rows']($request) == 0) |
|
1006 | - fatal_lang_error('no_board'); |
|
1046 | + if ($smcFunc['db_num_rows']($request) == 0) { |
|
1047 | + fatal_lang_error('no_board'); |
|
1048 | + } |
|
1007 | 1049 | list ($profile_id) = $smcFunc['db_fetch_row']($request); |
1008 | 1050 | $smcFunc['db_free_result']($request); |
1051 | + } else { |
|
1052 | + $profile_id = 1; |
|
1009 | 1053 | } |
1010 | - else |
|
1011 | - $profile_id = 1; |
|
1012 | 1054 | |
1013 | 1055 | $request = $smcFunc['db_query']('', ' |
1014 | 1056 | SELECT bp.id_group, bp.add_deny |
@@ -1020,8 +1062,9 @@ discard block |
||
1020 | 1062 | 'permission' => $permission, |
1021 | 1063 | ) |
1022 | 1064 | ); |
1023 | - while ($row = $smcFunc['db_fetch_assoc']($request)) |
|
1024 | - $member_groups[$row['add_deny'] === '1' ? 'allowed' : 'denied'][] = $row['id_group']; |
|
1065 | + while ($row = $smcFunc['db_fetch_assoc']($request)) { |
|
1066 | + $member_groups[$row['add_deny'] === '1' ? 'allowed' : 'denied'][] = $row['id_group']; |
|
1067 | + } |
|
1025 | 1068 | $smcFunc['db_free_result']($request); |
1026 | 1069 | |
1027 | 1070 | $moderator_groups = array(); |
@@ -1030,8 +1073,7 @@ discard block |
||
1030 | 1073 | if (isset($board_info['moderator_groups'])) |
1031 | 1074 | { |
1032 | 1075 | $moderator_groups = array_keys($board_info['moderator_groups']); |
1033 | - } |
|
1034 | - elseif ($board_id !== 0) |
|
1076 | + } elseif ($board_id !== 0) |
|
1035 | 1077 | { |
1036 | 1078 | // Get the groups that can moderate this board |
1037 | 1079 | $request = $smcFunc['db_query']('', ' |
@@ -1116,8 +1158,9 @@ discard block |
||
1116 | 1158 | ) |
1117 | 1159 | ); |
1118 | 1160 | $members = array(); |
1119 | - while ($row = $smcFunc['db_fetch_assoc']($request)) |
|
1120 | - $members[] = $row['id_member']; |
|
1161 | + while ($row = $smcFunc['db_fetch_assoc']($request)) { |
|
1162 | + $members[] = $row['id_member']; |
|
1163 | + } |
|
1121 | 1164 | $smcFunc['db_free_result']($request); |
1122 | 1165 | |
1123 | 1166 | return $members; |
@@ -1190,10 +1233,12 @@ discard block |
||
1190 | 1233 | } |
1191 | 1234 | |
1192 | 1235 | $query_parts = array(); |
1193 | - if (!empty($email)) |
|
1194 | - $query_parts[] = 'poster_email = {string:email_address}'; |
|
1195 | - if (!empty($membername)) |
|
1196 | - $query_parts[] = 'poster_name = {string:member_name}'; |
|
1236 | + if (!empty($email)) { |
|
1237 | + $query_parts[] = 'poster_email = {string:email_address}'; |
|
1238 | + } |
|
1239 | + if (!empty($membername)) { |
|
1240 | + $query_parts[] = 'poster_name = {string:member_name}'; |
|
1241 | + } |
|
1197 | 1242 | $query = implode(' AND ', $query_parts); |
1198 | 1243 | |
1199 | 1244 | // Finally, update the posts themselves! |
@@ -1260,12 +1305,14 @@ discard block |
||
1260 | 1305 | |
1261 | 1306 | $userReceiver = (int) !empty($_REQUEST['u']) ? $_REQUEST['u'] : 0; |
1262 | 1307 | |
1263 | - if (empty($userReceiver)) |
|
1264 | - fatal_lang_error('no_access', false); |
|
1308 | + if (empty($userReceiver)) { |
|
1309 | + fatal_lang_error('no_access', false); |
|
1310 | + } |
|
1265 | 1311 | |
1266 | 1312 | // Remove if it's already there... |
1267 | - if (in_array($userReceiver, $user_info['buddies'])) |
|
1268 | - $user_info['buddies'] = array_diff($user_info['buddies'], array($userReceiver)); |
|
1313 | + if (in_array($userReceiver, $user_info['buddies'])) { |
|
1314 | + $user_info['buddies'] = array_diff($user_info['buddies'], array($userReceiver)); |
|
1315 | + } |
|
1269 | 1316 | |
1270 | 1317 | // ...or add if it's not and if it's not you. |
1271 | 1318 | elseif ($user_info['id'] != $userReceiver) |
@@ -1340,8 +1387,9 @@ discard block |
||
1340 | 1387 | $smcFunc['db_free_result']($request); |
1341 | 1388 | |
1342 | 1389 | // If we want duplicates pass the members array off. |
1343 | - if ($get_duplicates) |
|
1344 | - populateDuplicateMembers($members); |
|
1390 | + if ($get_duplicates) { |
|
1391 | + populateDuplicateMembers($members); |
|
1392 | + } |
|
1345 | 1393 | |
1346 | 1394 | return $members; |
1347 | 1395 | } |
@@ -1358,8 +1406,9 @@ discard block |
||
1358 | 1406 | global $smcFunc, $modSettings; |
1359 | 1407 | |
1360 | 1408 | // We know how many members there are in total. |
1361 | - if (empty($where) || $where == '1=1') |
|
1362 | - $num_members = $modSettings['totalMembers']; |
|
1409 | + if (empty($where) || $where == '1=1') { |
|
1410 | + $num_members = $modSettings['totalMembers']; |
|
1411 | + } |
|
1363 | 1412 | |
1364 | 1413 | // The database knows the amount when there are extra conditions. |
1365 | 1414 | else |
@@ -1395,16 +1444,19 @@ discard block |
||
1395 | 1444 | $members[$key]['duplicate_members'] = array(); |
1396 | 1445 | |
1397 | 1446 | // Store the IPs. |
1398 | - if (!empty($member['member_ip'])) |
|
1399 | - $ips[] = $member['member_ip']; |
|
1400 | - if (!empty($member['member_ip2'])) |
|
1401 | - $ips[] = $member['member_ip2']; |
|
1447 | + if (!empty($member['member_ip'])) { |
|
1448 | + $ips[] = $member['member_ip']; |
|
1449 | + } |
|
1450 | + if (!empty($member['member_ip2'])) { |
|
1451 | + $ips[] = $member['member_ip2']; |
|
1452 | + } |
|
1402 | 1453 | } |
1403 | 1454 | |
1404 | 1455 | $ips = array_unique($ips); |
1405 | 1456 | |
1406 | - if (empty($ips)) |
|
1407 | - return false; |
|
1457 | + if (empty($ips)) { |
|
1458 | + return false; |
|
1459 | + } |
|
1408 | 1460 | |
1409 | 1461 | // Fetch all members with this IP address, we'll filter out the current ones in a sec. |
1410 | 1462 | $request = $smcFunc['db_query']('', ' |
@@ -1434,10 +1486,12 @@ discard block |
||
1434 | 1486 | 'ip2' => $row['member_ip2'], |
1435 | 1487 | ); |
1436 | 1488 | |
1437 | - if (in_array($row['member_ip'], $ips)) |
|
1438 | - $duplicate_members[$row['member_ip']][] = $member_context; |
|
1439 | - if ($row['member_ip'] != $row['member_ip2'] && in_array($row['member_ip2'], $ips)) |
|
1440 | - $duplicate_members[$row['member_ip2']][] = $member_context; |
|
1489 | + if (in_array($row['member_ip'], $ips)) { |
|
1490 | + $duplicate_members[$row['member_ip']][] = $member_context; |
|
1491 | + } |
|
1492 | + if ($row['member_ip'] != $row['member_ip2'] && in_array($row['member_ip2'], $ips)) { |
|
1493 | + $duplicate_members[$row['member_ip2']][] = $member_context; |
|
1494 | + } |
|
1441 | 1495 | } |
1442 | 1496 | $smcFunc['db_free_result']($request); |
1443 | 1497 | |
@@ -1462,8 +1516,9 @@ discard block |
||
1462 | 1516 | $row['poster_ip'] = inet_dtop($row['poster_ip']); |
1463 | 1517 | |
1464 | 1518 | // Don't collect lots of the same. |
1465 | - if (isset($had_ips[$row['poster_ip']]) && in_array($row['id_member'], $had_ips[$row['poster_ip']])) |
|
1466 | - continue; |
|
1519 | + if (isset($had_ips[$row['poster_ip']]) && in_array($row['id_member'], $had_ips[$row['poster_ip']])) { |
|
1520 | + continue; |
|
1521 | + } |
|
1467 | 1522 | $had_ips[$row['poster_ip']][] = $row['id_member']; |
1468 | 1523 | |
1469 | 1524 | $duplicate_members[$row['poster_ip']][] = array( |
@@ -1478,13 +1533,15 @@ discard block |
||
1478 | 1533 | $smcFunc['db_free_result']($request); |
1479 | 1534 | |
1480 | 1535 | // Now we have all the duplicate members, stick them with their respective member in the list. |
1481 | - if (!empty($duplicate_members)) |
|
1482 | - foreach ($members as $key => $member) |
|
1536 | + if (!empty($duplicate_members)) { |
|
1537 | + foreach ($members as $key => $member) |
|
1483 | 1538 | { |
1484 | 1539 | if (isset($duplicate_members[$member['member_ip']])) |
1485 | 1540 | $members[$key]['duplicate_members'] = $duplicate_members[$member['member_ip']]; |
1486 | - if ($member['member_ip'] != $member['member_ip2'] && isset($duplicate_members[$member['member_ip2']])) |
|
1487 | - $members[$key]['duplicate_members'] = array_merge($member['duplicate_members'], $duplicate_members[$member['member_ip2']]); |
|
1541 | + } |
|
1542 | + if ($member['member_ip'] != $member['member_ip2'] && isset($duplicate_members[$member['member_ip2']])) { |
|
1543 | + $members[$key]['duplicate_members'] = array_merge($member['duplicate_members'], $duplicate_members[$member['member_ip2']]); |
|
1544 | + } |
|
1488 | 1545 | |
1489 | 1546 | // Check we don't have lots of the same member. |
1490 | 1547 | $member_track = array($member['id_member']); |
@@ -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 | * Format a topic to be printer friendly. |
@@ -32,8 +33,9 @@ discard block |
||
32 | 33 | global $board_info, $smcFunc, $modSettings; |
33 | 34 | |
34 | 35 | // Redirect to the boardindex if no valid topic id is provided. |
35 | - if (empty($topic)) |
|
36 | - redirectexit(); |
|
36 | + if (empty($topic)) { |
|
37 | + redirectexit(); |
|
38 | + } |
|
37 | 39 | |
38 | 40 | if (!empty($modSettings['disable_print_topic'])) |
39 | 41 | { |
@@ -59,8 +61,9 @@ discard block |
||
59 | 61 | ) |
60 | 62 | ); |
61 | 63 | // Redirect to the boardindex if no valid topic id is provided. |
62 | - if ($smcFunc['db_num_rows']($request) == 0) |
|
63 | - redirectexit(); |
|
64 | + if ($smcFunc['db_num_rows']($request) == 0) { |
|
65 | + redirectexit(); |
|
66 | + } |
|
64 | 67 | $row = $smcFunc['db_fetch_assoc']($request); |
65 | 68 | $smcFunc['db_free_result']($request); |
66 | 69 | |
@@ -134,20 +137,21 @@ discard block |
||
134 | 137 | foreach ($guestinfo as $i => $guestvoted) |
135 | 138 | { |
136 | 139 | $guestvoted = explode(',', $guestvoted); |
137 | - if ($guestvoted[0] == $row['id_poll']) |
|
138 | - break; |
|
140 | + if ($guestvoted[0] == $row['id_poll']) { |
|
141 | + break; |
|
142 | + } |
|
139 | 143 | } |
140 | 144 | // Has the poll been reset since guest voted? |
141 | 145 | if ($pollinfo['reset_poll'] > $guestvoted[1]) |
142 | 146 | { |
143 | 147 | // Remove the poll info from the cookie to allow guest to vote again |
144 | 148 | unset($guestinfo[$i]); |
145 | - if (!empty($guestinfo)) |
|
146 | - $_COOKIE['guest_poll_vote'] = ';' . implode(';', $guestinfo); |
|
147 | - else |
|
148 | - unset($_COOKIE['guest_poll_vote']); |
|
149 | - } |
|
150 | - else |
|
149 | + if (!empty($guestinfo)) { |
|
150 | + $_COOKIE['guest_poll_vote'] = ';' . implode(';', $guestinfo); |
|
151 | + } else { |
|
152 | + unset($_COOKIE['guest_poll_vote']); |
|
153 | + } |
|
154 | + } else |
|
151 | 155 | { |
152 | 156 | // What did they vote for? |
153 | 157 | unset($guestvoted[0], $guestvoted[1]); |
@@ -233,8 +237,9 @@ discard block |
||
233 | 237 | $context['poster_name'] = $row['poster_name']; |
234 | 238 | $context['post_time'] = timeformat($row['poster_time'], false); |
235 | 239 | $context['parent_boards'] = array(); |
236 | - foreach ($board_info['parent_boards'] as $parent) |
|
237 | - $context['parent_boards'][] = $parent['name']; |
|
240 | + foreach ($board_info['parent_boards'] as $parent) { |
|
241 | + $context['parent_boards'][] = $parent['name']; |
|
242 | + } |
|
238 | 243 | |
239 | 244 | // Split the topics up so we can print them. |
240 | 245 | $request = $smcFunc['db_query']('', ' |
@@ -266,8 +271,9 @@ discard block |
||
266 | 271 | 'id_msg' => $row['id_msg'], |
267 | 272 | ); |
268 | 273 | |
269 | - if (!isset($context['topic_subject'])) |
|
270 | - $context['topic_subject'] = $row['subject']; |
|
274 | + if (!isset($context['topic_subject'])) { |
|
275 | + $context['topic_subject'] = $row['subject']; |
|
276 | + } |
|
271 | 277 | } |
272 | 278 | $smcFunc['db_free_result']($request); |
273 | 279 | |
@@ -275,8 +281,9 @@ discard block |
||
275 | 281 | if (isset($_REQUEST['images']) && !empty($modSettings['attachmentEnable']) && allowedTo('view_attachments')) |
276 | 282 | { |
277 | 283 | $messages = array(); |
278 | - foreach ($context['posts'] as $temp) |
|
279 | - $messages[] = $temp['id_msg']; |
|
284 | + foreach ($context['posts'] as $temp) { |
|
285 | + $messages[] = $temp['id_msg']; |
|
286 | + } |
|
280 | 287 | |
281 | 288 | // build the request |
282 | 289 | $request = $smcFunc['db_query']('', ' |
@@ -295,8 +302,9 @@ discard block |
||
295 | 302 | while ($row = $smcFunc['db_fetch_assoc']($request)) |
296 | 303 | { |
297 | 304 | $temp[$row['id_attach']] = $row; |
298 | - if (!isset($context['printattach'][$row['id_msg']])) |
|
299 | - $context['printattach'][$row['id_msg']] = array(); |
|
305 | + if (!isset($context['printattach'][$row['id_msg']])) { |
|
306 | + $context['printattach'][$row['id_msg']] = array(); |
|
307 | + } |
|
300 | 308 | } |
301 | 309 | $smcFunc['db_free_result']($request); |
302 | 310 | ksort($temp); |
@@ -313,8 +321,7 @@ discard block |
||
313 | 321 | $row['height'] = floor($row['height'] * ($modSettings['max_image_width'] / $row['width'])); |
314 | 322 | $row['width'] = $modSettings['max_image_width']; |
315 | 323 | } |
316 | - } |
|
317 | - elseif (!empty($modSettings['max_image_width'])) |
|
324 | + } elseif (!empty($modSettings['max_image_width'])) |
|
318 | 325 | { |
319 | 326 | if ($row['height'] > $modSettings['max_image_height']) |
320 | 327 | { |