fluxbb-1.5.0 to fluxbb-1.5.2 | Legend | |
---|---|---|
Lines removed | ||
Lines changed | ||
Lines added |
a/admin_bans.php | b/admin_bans.php |
---|---|
127: <tr> | 127: <tr> |
128: <th scope="row"><?php echo $lang_admin_bans['IP label'] ?></th> | 128: <th scope="row"><?php echo $lang_admin_bans['IP label'] ?></th> |
129: <td> | 129: <td> |
130: <input type="text" name="ban_ip" size="45" maxlength="255" value="<?php if (isset($ban_ip)) echo $ban_ip; ?>" tabindex="2" /> | 130: <input type="text" name="ban_ip" size="45" maxlength="255" value="<?php if (isset($ban_ip)) echo pun_htmlspecialchars($ban_ip); ?>" tabindex="2" /> |
131: <span><?php echo $lang_admin_bans['IP help'] ?><?php if ($ban_user != '' && isset($user_id)) printf(' '.$lang_admin_bans['IP help link'], '<a href="admin_users.php?ip_stats='.$user_id.'">'.$lang_admin_common['here'].'</a>') ?></span> | 131: <span><?php echo $lang_admin_bans['IP help'] ?><?php if ($ban_user != '' && isset($user_id)) printf(' '.$lang_admin_bans['IP help link'], '<a href="admin_users.php?ip_stats='.$user_id.'">'.$lang_admin_common['here'].'</a>') ?></span> |
132: </td> | 132: </td> |
133: </tr> | 133: </tr> |
435: <tr> | 435: <tr> |
436: <td class="tcl"><?php echo ($ban_data['username'] != '') ? pun_htmlspecialchars($ban_data['username']) : ' ' ?></td> | 436: <td class="tcl"><?php echo ($ban_data['username'] != '') ? pun_htmlspecialchars($ban_data['username']) : ' ' ?></td> |
437: <td class="tc2"><?php echo ($ban_data['email'] != '') ? $ban_data['email'] : ' ' ?></td> | 437: <td class="tc2"><?php echo ($ban_data['email'] != '') ? $ban_data['email'] : ' ' ?></td> |
438: <td class="tc3"><?php echo ($ban_data['ip'] != '') ? $ban_data['ip'] : ' ' ?></td> | 438: <td class="tc3"><?php echo ($ban_data['ip'] != '') ? pun_htmlspecialchars($ban_data['ip']) : ' ' ?></td> |
439: <td class="tc4"><?php echo $expire ?></td> | 439: <td class="tc4"><?php echo $expire ?></td> |
440: <td class="tc5"><?php echo ($ban_data['message'] != '') ? pun_htmlspecialchars($ban_data['message']) : ' ' ?></td> | 440: <td class="tc5"><?php echo ($ban_data['message'] != '') ? pun_htmlspecialchars($ban_data['message']) : ' ' ?></td> |
441: <td class="tc6"><?php echo ($ban_data['ban_creator_username'] != '') ? '<a href="profile.php?id='.$ban_data['ban_creator'].'">'.pun_htmlspecialchars($ban_data['ban_creator_username']).'</a>' : $lang_admin_bans['Unknown'] ?></td> | 441: <td class="tc6"><?php echo ($ban_data['ban_creator_username'] != '') ? '<a href="profile.php?id='.$ban_data['ban_creator'].'">'.pun_htmlspecialchars($ban_data['ban_creator_username']).'</a>' : $lang_admin_bans['Unknown'] ?></td> |
506: | 506: |
507: <h2 class="block2"><span><?php echo $lang_admin_bans['Ban search head'] ?></span></h2> | 507: <h2 class="block2"><span><?php echo $lang_admin_bans['Ban search head'] ?></span></h2> |
508: <div class="box"> | 508: <div class="box"> |
509: <form id="find_band" method="get" action="admin_bans.php"> | 509: <form id="find_bans" method="get" action="admin_bans.php"> |
510: <p class="submittop"><input type="submit" name="find_ban" value="<?php echo $lang_admin_bans['Submit search'] ?>" tabindex="3" /></p> | 510: <p class="submittop"><input type="submit" name="find_ban" value="<?php echo $lang_admin_bans['Submit search'] ?>" tabindex="3" /></p> |
511: <div class="inform"> | 511: <div class="inform"> |
512: <fieldset> | 512: <fieldset> |
a/admin_categories.php | b/admin_categories.php |
---|---|
84: | 84: |
85: redirect('admin_categories.php', $lang_admin_categories['Category deleted redirect']); | 85: redirect('admin_categories.php', $lang_admin_categories['Category deleted redirect']); |
86: } | 86: } |
87: else // If the user hasn't comfirmed the delete | 87: else // If the user hasn't confirmed the delete |
88: { | 88: { |
89: $result = $db->query('SELECT cat_name FROM '.$db->prefix.'categories WHERE id='.$cat_to_delete) or error('Unable to fetch category info', __FILE__, __LINE__, $db->error()); | 89: $result = $db->query('SELECT cat_name FROM '.$db->prefix.'categories WHERE id='.$cat_to_delete) or error('Unable to fetch category info', __FILE__, __LINE__, $db->error()); |
90: $cat_name = $db->result($result); | 90: $cat_name = $db->result($result); |
a/admin_forums.php | b/admin_forums.php |
---|---|
185: // Check if the new settings differ from the old | 185: // Check if the new settings differ from the old |
186: if ($read_forum_new != $_POST['read_forum_old'][$cur_group['g_id']] || $post_replies_new != $_POST['post_replies_old'][$cur_group['g_id']] || $post_topics_new != $_POST['post_topics_old'][$cur_group['g_id']]) | 186: if ($read_forum_new != $_POST['read_forum_old'][$cur_group['g_id']] || $post_replies_new != $_POST['post_replies_old'][$cur_group['g_id']] || $post_topics_new != $_POST['post_topics_old'][$cur_group['g_id']]) |
187: { | 187: { |
188: // If the new settings are identical to the default settings for this group, delete it's row in forum_perms | 188: // If the new settings are identical to the default settings for this group, delete its row in forum_perms |
189: if ($read_forum_new == '1' && $post_replies_new == $cur_group['g_post_replies'] && $post_topics_new == $cur_group['g_post_topics']) | 189: if ($read_forum_new == '1' && $post_replies_new == $cur_group['g_post_replies'] && $post_topics_new == $cur_group['g_post_topics']) |
190: $db->query('DELETE FROM '.$db->prefix.'forum_perms WHERE group_id='.$cur_group['g_id'].' AND forum_id='.$forum_id) or error('Unable to delete group forum permissions', __FILE__, __LINE__, $db->error()); | 190: $db->query('DELETE FROM '.$db->prefix.'forum_perms WHERE group_id='.$cur_group['g_id'].' AND forum_id='.$forum_id) or error('Unable to delete group forum permissions', __FILE__, __LINE__, $db->error()); |
191: else | 191: else |
a/admin_groups.php | b/admin_groups.php |
---|---|
82: <th scope="row"><?php echo $lang_admin_groups['User title label'] ?></th> | 82: <th scope="row"><?php echo $lang_admin_groups['User title label'] ?></th> |
83: <td> | 83: <td> |
84: <input type="text" name="user_title" size="25" maxlength="50" value="<?php echo pun_htmlspecialchars($group['g_user_title']) ?>" tabindex="2" /> | 84: <input type="text" name="user_title" size="25" maxlength="50" value="<?php echo pun_htmlspecialchars($group['g_user_title']) ?>" tabindex="2" /> |
85: <span><?php printf($lang_admin_groups['User title help'], $lang_common['Member']) ?></span> | 85: <span><?php printf($lang_admin_groups['User title help'], ($group['g_id'] != PUN_GUEST ? $lang_common['Member'] : $lang_common['Guest'])) ?></span> |
86: </td> | 86: </td> |
87: </tr> | 87: </tr> |
88: <?php if ($group['g_id'] != PUN_ADMIN): if ($group['g_id'] != PUN_GUEST): ?> <tr> | 88: <?php if ($group['g_id'] != PUN_ADMIN): if ($group['g_id'] != PUN_GUEST): ?> <tr> |
112: <?php if ($mode != 'edit' || $pun_config['o_default_user_group'] != $group['g_id']): ?> <tr> | 112: <?php if ($mode != 'edit' || $pun_config['o_default_user_group'] != $group['g_id']): ?> <tr> |
113: <th scope="row"> <?php echo $lang_admin_groups['Mod privileges label'] ?></th> | 113: <th scope="row"> <?php echo $lang_admin_groups['Mod privileges label'] ?></th> |
114: <td> | 114: <td> |
115: <input type="radio" name="moderator" value="1"<?php if ($group['g_moderator'] == '1') echo ' checked="checked"' ?> tabindex="5" /> <strong><?php echo $lang_admin_common['Yes'] ?></strong>   <input type="radio" name="moderator" value="0"<?php if ($group['g_moderator'] == '0') echo ' checked="checked"' ?> tabindex="6" /> <strong><?php echo $lang_admin_common['No'] ?></strong> | 115: <label class="conl"><input type="radio" name="moderator" value="1"<?php if ($group['g_moderator'] == '1') echo ' checked="checked"' ?> tabindex="5" /> <strong><?php echo $lang_admin_common['Yes'] ?></strong></label> |
116: <span><?php echo $lang_admin_groups['Mod privileges help'] ?></span> | 116: <label class="conl"><input type="radio" name="moderator" value="0"<?php if ($group['g_moderator'] == '0') echo ' checked="checked"' ?> tabindex="6" /> <strong><?php echo $lang_admin_common['No'] ?></strong></label> |
117: <span class="clearb"><?php echo $lang_admin_groups['Mod privileges help'] ?></span> | |
117: </td> | 118: </td> |
118: </tr> | 119: </tr> |
119: <tr> | 120: <tr> |
120: <th scope="row"><?php echo $lang_admin_groups['Edit profile label'] ?></th> | 121: <th scope="row"><?php echo $lang_admin_groups['Edit profile label'] ?></th> |
121: <td> | 122: <td> |
122: <input type="radio" name="mod_edit_users" value="1"<?php if ($group['g_mod_edit_users'] == '1') echo ' checked="checked"' ?> tabindex="7" /> <strong><?php echo $lang_admin_common['Yes'] ?></strong>   <input type="radio" name="mod_edit_users" value="0"<?php if ($group['g_mod_edit_users'] == '0') echo ' checked="checked"' ?> tabindex="8" /> <strong><?php echo $lang_admin_common['No'] ?></strong> | 123: <label class="conl"><input type="radio" name="mod_edit_users" value="1"<?php if ($group['g_mod_edit_users'] == '1') echo ' checked="checked"' ?> tabindex="7" /> <strong><?php echo $lang_admin_common['Yes'] ?></strong></label> |
123: <span><?php echo $lang_admin_groups['Edit profile help'] ?></span> | 124: <label class="conl"><input type="radio" name="mod_edit_users" value="0"<?php if ($group['g_mod_edit_users'] == '0') echo ' checked="checked"' ?> tabindex="8" /> <strong><?php echo $lang_admin_common['No'] ?></strong></label> |
125: <span class="clearb"><?php echo $lang_admin_groups['Edit profile help'] ?></span> | |
124: </td> | 126: </td> |
125: </tr> | 127: </tr> |
126: <tr> | 128: <tr> |
127: <th scope="row"><?php echo $lang_admin_groups['Rename users label'] ?></th> | 129: <th scope="row"><?php echo $lang_admin_groups['Rename users label'] ?></th> |
128: <td> | 130: <td> |
129: <input type="radio" name="mod_rename_users" value="1"<?php if ($group['g_mod_rename_users'] == '1') echo ' checked="checked"' ?> tabindex="9" /> <strong><?php echo $lang_admin_common['Yes'] ?></strong>   <input type="radio" name="mod_rename_users" value="0"<?php if ($group['g_mod_rename_users'] == '0') echo ' checked="checked"' ?> tabindex="10" /> <strong><?php echo $lang_admin_common['No'] ?></strong> | 131: <label class="conl"><input type="radio" name="mod_rename_users" value="1"<?php if ($group['g_mod_rename_users'] == '1') echo ' checked="checked"' ?> tabindex="9" /> <strong><?php echo $lang_admin_common['Yes'] ?></strong></label> |
130: <span><?php echo $lang_admin_groups['Rename users help'] ?></span> | 132: <label class="conl"><input type="radio" name="mod_rename_users" value="0"<?php if ($group['g_mod_rename_users'] == '0') echo ' checked="checked"' ?> tabindex="10" /> <strong><?php echo $lang_admin_common['No'] ?></strong></label> |
133: <span class="clearb"><?php echo $lang_admin_groups['Rename users help'] ?></span> | |
131: </td> | 134: </td> |
132: </tr> | 135: </tr> |
133: <tr> | 136: <tr> |
134: <th scope="row"><?php echo $lang_admin_groups['Change passwords label'] ?></th> | 137: <th scope="row"><?php echo $lang_admin_groups['Change passwords label'] ?></th> |
135: <td> | 138: <td> |
136: <input type="radio" name="mod_change_passwords" value="1"<?php if ($group['g_mod_change_passwords'] == '1') echo ' checked="checked"' ?> tabindex="11" /> <strong><?php echo $lang_admin_common['Yes'] ?></strong>   <input type="radio" name="mod_change_passwords" value="0"<?php if ($group['g_mod_change_passwords'] == '0') echo ' checked="checked"' ?> tabindex="12" /> <strong><?php echo $lang_admin_common['No'] ?></strong> | 139: <label class="conl"><input type="radio" name="mod_change_passwords" value="1"<?php if ($group['g_mod_change_passwords'] == '1') echo ' checked="checked"' ?> tabindex="11" /> <strong><?php echo $lang_admin_common['Yes'] ?></strong></label> |
137: <span><?php echo $lang_admin_groups['Change passwords help'] ?></span> | 140: <label class="conl"><input type="radio" name="mod_change_passwords" value="0"<?php if ($group['g_mod_change_passwords'] == '0') echo ' checked="checked"' ?> tabindex="12" /> <strong><?php echo $lang_admin_common['No'] ?></strong></label> |
141: <span class="clearb"><?php echo $lang_admin_groups['Change passwords help'] ?></span> | |
138: </td> | 142: </td> |
139: </tr> | 143: </tr> |
140: <tr> | 144: <tr> |
141: <th scope="row"><?php echo $lang_admin_groups['Ban users label'] ?></th> | 145: <th scope="row"><?php echo $lang_admin_groups['Ban users label'] ?></th> |
142: <td> | 146: <td> |
143: <input type="radio" name="mod_ban_users" value="1"<?php if ($group['g_mod_ban_users'] == '1') echo ' checked="checked"' ?> tabindex="13" /> <strong><?php echo $lang_admin_common['Yes'] ?></strong>   <input type="radio" name="mod_ban_users" value="0"<?php if ($group['g_mod_ban_users'] == '0') echo ' checked="checked"' ?> tabindex="14" /> <strong><?php echo $lang_admin_common['No'] ?></strong> | 147: <label class="conl"><input type="radio" name="mod_ban_users" value="1"<?php if ($group['g_mod_ban_users'] == '1') echo ' checked="checked"' ?> tabindex="13" /> <strong><?php echo $lang_admin_common['Yes'] ?></strong></label> |
144: <span><?php echo $lang_admin_groups['Ban users help'] ?></span> | 148: <label class="conl"><input type="radio" name="mod_ban_users" value="0"<?php if ($group['g_mod_ban_users'] == '0') echo ' checked="checked"' ?> tabindex="14" /> <strong><?php echo $lang_admin_common['No'] ?></strong></label> |
149: <span class="clearb"><?php echo $lang_admin_groups['Ban users help'] ?></span> | |
145: </td> | 150: </td> |
146: </tr> | 151: </tr> |
147: <?php endif; endif; ?> <tr> | 152: <?php endif; endif; ?> <tr> |
148: <th scope="row"><?php echo $lang_admin_groups['Read board label'] ?></th> | 153: <th scope="row"><?php echo $lang_admin_groups['Read board label'] ?></th> |
149: <td> | 154: <td> |
150: <input type="radio" name="read_board" value="1"<?php if ($group['g_read_board'] == '1') echo ' checked="checked"' ?> tabindex="15" /> <strong><?php echo $lang_admin_common['Yes'] ?></strong>   <input type="radio" name="read_board" value="0"<?php if ($group['g_read_board'] == '0') echo ' checked="checked"' ?> tabindex="16" /> <strong><?php echo $lang_admin_common['No'] ?></strong> | 155: <label class="conl"><input type="radio" name="read_board" value="1"<?php if ($group['g_read_board'] == '1') echo ' checked="checked"' ?> tabindex="15" /> <strong><?php echo $lang_admin_common['Yes'] ?></strong></label> |
151: <span><?php echo $lang_admin_groups['Read board help'] ?></span> | 156: <label class="conl"><input type="radio" name="read_board" value="0"<?php if ($group['g_read_board'] == '0') echo ' checked="checked"' ?> tabindex="16" /> <strong><?php echo $lang_admin_common['No'] ?></strong></label> |
157: <span class="clearb"><?php echo $lang_admin_groups['Read board help'] ?></span> | |
152: </td> | 158: </td> |
153: </tr> | 159: </tr> |
154: <tr> | 160: <tr> |
155: <th scope="row"><?php echo $lang_admin_groups['View user info label'] ?></th> | 161: <th scope="row"><?php echo $lang_admin_groups['View user info label'] ?></th> |
156: <td> | 162: <td> |
157: <input type="radio" name="view_users" value="1"<?php if ($group['g_view_users'] == '1') echo ' checked="checked"' ?> tabindex="17" /> <strong><?php echo $lang_admin_common['Yes'] ?></strong>   <input type="radio" name="view_users" value="0"<?php if ($group['g_view_users'] == '0') echo ' checked="checked"' ?> tabindex="18" /> <strong><?php echo $lang_admin_common['No'] ?></strong> | 163: <label class="conl"><input type="radio" name="view_users" value="1"<?php if ($group['g_view_users'] == '1') echo ' checked="checked"' ?> tabindex="17" /> <strong><?php echo $lang_admin_common['Yes'] ?></strong></label> |
158: <span><?php echo $lang_admin_groups['View user info help'] ?></span> | 164: <label class="conl"><input type="radio" name="view_users" value="0"<?php if ($group['g_view_users'] == '0') echo ' checked="checked"' ?> tabindex="18" /> <strong><?php echo $lang_admin_common['No'] ?></strong></label> |
165: <span class="clearb"><?php echo $lang_admin_groups['View user info help'] ?></span> | |
159: </td> | 166: </td> |
160: </tr> | 167: </tr> |
161: <tr> | 168: <tr> |
162: <th scope="row"><?php echo $lang_admin_groups['Post replies label'] ?></th> | 169: <th scope="row"><?php echo $lang_admin_groups['Post replies label'] ?></th> |
163: <td> | 170: <td> |
164: <input type="radio" name="post_replies" value="1"<?php if ($group['g_post_replies'] == '1') echo ' checked="checked"' ?> tabindex="19" /> <strong><?php echo $lang_admin_common['Yes'] ?></strong>   <input type="radio" name="post_replies" value="0"<?php if ($group['g_post_replies'] == '0') echo ' checked="checked"' ?> tabindex="20" /> <strong><?php echo $lang_admin_common['No'] ?></strong> | 171: <label class="conl"><input type="radio" name="post_replies" value="1"<?php if ($group['g_post_replies'] == '1') echo ' checked="checked"' ?> tabindex="19" /> <strong><?php echo $lang_admin_common['Yes'] ?></strong></label> |
165: <span><?php echo $lang_admin_groups['Post replies help'] ?></span> | 172: <label class="conl"><input type="radio" name="post_replies" value="0"<?php if ($group['g_post_replies'] == '0') echo ' checked="checked"' ?> tabindex="20" /> <strong><?php echo $lang_admin_common['No'] ?></strong></label> |
173: <span class="clearb"><?php echo $lang_admin_groups['Post replies help'] ?></span> | |
166: </td> | 174: </td> |
167: </tr> | 175: </tr> |
168: <tr> | 176: <tr> |
169: <th scope="row"><?php echo $lang_admin_groups['Post topics label'] ?></th> | 177: <th scope="row"><?php echo $lang_admin_groups['Post topics label'] ?></th> |
170: <td> | 178: <td> |
171: <input type="radio" name="post_topics" value="1"<?php if ($group['g_post_topics'] == '1') echo ' checked="checked"' ?> tabindex="21" /> <strong><?php echo $lang_admin_common['Yes'] ?></strong>   <input type="radio" name="post_topics" value="0"<?php if ($group['g_post_topics'] == '0') echo ' checked="checked"' ?> tabindex="22" /> <strong><?php echo $lang_admin_common['No'] ?></strong> | 179: <label class="conl"><input type="radio" name="post_topics" value="1"<?php if ($group['g_post_topics'] == '1') echo ' checked="checked"' ?> tabindex="21" /> <strong><?php echo $lang_admin_common['Yes'] ?></strong></label> |
172: <span><?php echo $lang_admin_groups['Post topics help'] ?></span> | 180: <label class="conl"><input type="radio" name="post_topics" value="0"<?php if ($group['g_post_topics'] == '0') echo ' checked="checked"' ?> tabindex="22" /> <strong><?php echo $lang_admin_common['No'] ?></strong></label> |
181: <span class="clearb"><?php echo $lang_admin_groups['Post topics help'] ?></span> | |
173: </td> | 182: </td> |
174: </tr> | 183: </tr> |
175: <?php if ($group['g_id'] != PUN_GUEST): ?> <tr> | 184: <?php if ($group['g_id'] != PUN_GUEST): ?> <tr> |
176: <th scope="row"><?php echo $lang_admin_groups['Edit posts label'] ?></th> | 185: <th scope="row"><?php echo $lang_admin_groups['Edit posts label'] ?></th> |
177: <td> | 186: <td> |
178: <input type="radio" name="edit_posts" value="1"<?php if ($group['g_edit_posts'] == '1') echo ' checked="checked"' ?> tabindex="23" /> <strong><?php echo $lang_admin_common['Yes'] ?></strong>   <input type="radio" name="edit_posts" value="0"<?php if ($group['g_edit_posts'] == '0') echo ' checked="checked"' ?> tabindex="24" /> <strong><?php echo $lang_admin_common['No'] ?></strong> | 187: <label class="conl"><input type="radio" name="edit_posts" value="1"<?php if ($group['g_edit_posts'] == '1') echo ' checked="checked"' ?> tabindex="23" /> <strong><?php echo $lang_admin_common['Yes'] ?></strong></label> |
179: <span><?php echo $lang_admin_groups['Edit posts help'] ?></span> | 188: <label class="conl"><input type="radio" name="edit_posts" value="0"<?php if ($group['g_edit_posts'] == '0') echo ' checked="checked"' ?> tabindex="24" /> <strong><?php echo $lang_admin_common['No'] ?></strong></label> |
189: <span class="clearb"><?php echo $lang_admin_groups['Edit posts help'] ?></span> | |
180: </td> | 190: </td> |
181: </tr> | 191: </tr> |
182: <tr> | 192: <tr> |
183: <th scope="row"><?php echo $lang_admin_groups['Delete posts label'] ?></th> | 193: <th scope="row"><?php echo $lang_admin_groups['Delete posts label'] ?></th> |
184: <td> | 194: <td> |
185: <input type="radio" name="delete_posts" value="1"<?php if ($group['g_delete_posts'] == '1') echo ' checked="checked"' ?> tabindex="25" /> <strong><?php echo $lang_admin_common['Yes'] ?></strong>   <input type="radio" name="delete_posts" value="0"<?php if ($group['g_delete_posts'] == '0') echo ' checked="checked"' ?> tabindex="26" /> <strong><?php echo $lang_admin_common['No'] ?></strong> | 195: <label class="conl"><input type="radio" name="delete_posts" value="1"<?php if ($group['g_delete_posts'] == '1') echo ' checked="checked"' ?> tabindex="25" /> <strong><?php echo $lang_admin_common['Yes'] ?></strong></label> |
186: <span><?php echo $lang_admin_groups['Delete posts help'] ?></span> | 196: <label class="conl"><input type="radio" name="delete_posts" value="0"<?php if ($group['g_delete_posts'] == '0') echo ' checked="checked"' ?> tabindex="26" /> <strong><?php echo $lang_admin_common['No'] ?></strong></label> |
197: <span class="clearb"><?php echo $lang_admin_groups['Delete posts help'] ?></span> | |
187: </td> | 198: </td> |
188: </tr> | 199: </tr> |
189: <tr> | 200: <tr> |
190: <th scope="row"><?php echo $lang_admin_groups['Delete topics label'] ?></th> | 201: <th scope="row"><?php echo $lang_admin_groups['Delete topics label'] ?></th> |
191: <td> | 202: <td> |
192: <input type="radio" name="delete_topics" value="1"<?php if ($group['g_delete_topics'] == '1') echo ' checked="checked"' ?> tabindex="27" /> <strong><?php echo $lang_admin_common['Yes'] ?></strong>   <input type="radio" name="delete_topics" value="0"<?php if ($group['g_delete_topics'] == '0') echo ' checked="checked"' ?> tabindex="28" /> <strong><?php echo $lang_admin_common['No'] ?></strong> | 203: <label class="conl"><input type="radio" name="delete_topics" value="1"<?php if ($group['g_delete_topics'] == '1') echo ' checked="checked"' ?> tabindex="27" /> <strong><?php echo $lang_admin_common['Yes'] ?></strong></label> |
193: <span><?php echo $lang_admin_groups['Delete topics help'] ?></span> | 204: <label class="conl"><input type="radio" name="delete_topics" value="0"<?php if ($group['g_delete_topics'] == '0') echo ' checked="checked"' ?> tabindex="28" /> <strong><?php echo $lang_admin_common['No'] ?></strong></label> |
205: <span class="clearb"><?php echo $lang_admin_groups['Delete topics help'] ?></span> | |
194: </td> | 206: </td> |
195: </tr> | 207: </tr> |
196: <?php endif; ?> <tr> | 208: <?php endif; ?> <tr> |
197: <th scope="row"><?php echo $lang_admin_groups['Post links label'] ?></th> | 209: <th scope="row"><?php echo $lang_admin_groups['Post links label'] ?></th> |
198: <td> | 210: <td> |
199: <input type="radio" name="post_links" value="1"<?php if ($group['g_post_links'] == '1') echo ' checked="checked"' ?> tabindex="29" /> <strong><?php echo $lang_admin_common['Yes'] ?></strong>   <input type="radio" name="post_links" value="0"<?php if ($group['g_post_links'] == '0') echo ' checked="checked"' ?> tabindex="30" /> <strong><?php echo $lang_admin_common['No'] ?></strong> | 211: <label class="conl"><input type="radio" name="post_links" value="1"<?php if ($group['g_post_links'] == '1') echo ' checked="checked"' ?> tabindex="29" /> <strong><?php echo $lang_admin_common['Yes'] ?></strong></label> |
200: <span><?php echo $lang_admin_groups['Post links help'] ?></span> | 212: <label class="conl"><input type="radio" name="post_links" value="0"<?php if ($group['g_post_links'] == '0') echo ' checked="checked"' ?> tabindex="30" /> <strong><?php echo $lang_admin_common['No'] ?></strong></label> |
213: <span class="clearb"><?php echo $lang_admin_groups['Post links help'] ?></span> | |
201: </td> | 214: </td> |
202: </tr> | 215: </tr> |
203: <?php if ($group['g_id'] != PUN_GUEST): ?> <tr> | 216: <?php if ($group['g_id'] != PUN_GUEST): ?> <tr> |
204: <th scope="row"><?php echo $lang_admin_groups['Set own title label'] ?></th> | 217: <th scope="row"><?php echo $lang_admin_groups['Set own title label'] ?></th> |
205: <td> | 218: <td> |
206: <input type="radio" name="set_title" value="1"<?php if ($group['g_set_title'] == '1') echo ' checked="checked"' ?> tabindex="31" /> <strong><?php echo $lang_admin_common['Yes'] ?></strong>   <input type="radio" name="set_title" value="0"<?php if ($group['g_set_title'] == '0') echo ' checked="checked"' ?> tabindex="32" /> <strong><?php echo $lang_admin_common['No'] ?></strong> | 219: <label class="conl"><input type="radio" name="set_title" value="1"<?php if ($group['g_set_title'] == '1') echo ' checked="checked"' ?> tabindex="31" /> <strong><?php echo $lang_admin_common['Yes'] ?></strong></label> |
207: <span><?php echo $lang_admin_groups['Set own title help'] ?></span> | 220: <label class="conl"><input type="radio" name="set_title" value="0"<?php if ($group['g_set_title'] == '0') echo ' checked="checked"' ?> tabindex="32" /> <strong><?php echo $lang_admin_common['No'] ?></strong></label> |
221: <span class="clearb"><?php echo $lang_admin_groups['Set own title help'] ?></span> | |
208: </td> | 222: </td> |
209: </tr> | 223: </tr> |
210: <?php endif; ?> <tr> | 224: <?php endif; ?> <tr> |
211: <th scope="row"><?php echo $lang_admin_groups['User search label'] ?></th> | 225: <th scope="row"><?php echo $lang_admin_groups['User search label'] ?></th> |
212: <td> | 226: <td> |
213: <input type="radio" name="search" value="1"<?php if ($group['g_search'] == '1') echo ' checked="checked"' ?> tabindex="33" /> <strong><?php echo $lang_admin_common['Yes'] ?></strong>   <input type="radio" name="search" value="0"<?php if ($group['g_search'] == '0') echo ' checked="checked"' ?> tabindex="34" /> <strong><?php echo $lang_admin_common['No'] ?></strong> | 227: <label class="conl"><input type="radio" name="search" value="1"<?php if ($group['g_search'] == '1') echo ' checked="checked"' ?> tabindex="33" /> <strong><?php echo $lang_admin_common['Yes'] ?></strong></label> |
214: <span><?php echo $lang_admin_groups['User search help'] ?></span> | 228: <label class="conl"><input type="radio" name="search" value="0"<?php if ($group['g_search'] == '0') echo ' checked="checked"' ?> tabindex="34" /> <strong><?php echo $lang_admin_common['No'] ?></strong></label> |
229: <span class="clearb"><?php echo $lang_admin_groups['User search help'] ?></span> | |
215: </td> | 230: </td> |
216: </tr> | 231: </tr> |
217: <tr> | 232: <tr> |
218: <th scope="row"><?php echo $lang_admin_groups['User list search label'] ?></th> | 233: <th scope="row"><?php echo $lang_admin_groups['User list search label'] ?></th> |
219: <td> | 234: <td> |
220: <input type="radio" name="search_users" value="1"<?php if ($group['g_search_users'] == '1') echo ' checked="checked"' ?> tabindex="35" /> <strong><?php echo $lang_admin_common['Yes'] ?></strong>   <input type="radio" name="search_users" value="0"<?php if ($group['g_search_users'] == '0') echo ' checked="checked"' ?> tabindex="36" /> <strong><?php echo $lang_admin_common['No'] ?></strong> | 235: <label class="conl"><input type="radio" name="search_users" value="1"<?php if ($group['g_search_users'] == '1') echo ' checked="checked"' ?> tabindex="35" /> <strong><?php echo $lang_admin_common['Yes'] ?></strong></label> |
221: <span><?php echo $lang_admin_groups['User list search help'] ?></span> | 236: <label class="conl"><input type="radio" name="search_users" value="0"<?php if ($group['g_search_users'] == '0') echo ' checked="checked"' ?> tabindex="36" /> <strong><?php echo $lang_admin_common['No'] ?></strong></label> |
237: <span class="clearb"><?php echo $lang_admin_groups['User list search help'] ?></span> | |
222: </td> | 238: </td> |
223: </tr> | 239: </tr> |
224: <?php if ($group['g_id'] != PUN_GUEST): ?> <tr> | 240: <?php if ($group['g_id'] != PUN_GUEST): ?> <tr> |
225: <th scope="row"><?php echo $lang_admin_groups['Send e-mails label'] ?></th> | 241: <th scope="row"><?php echo $lang_admin_groups['Send e-mails label'] ?></th> |
226: <td> | 242: <td> |
227: <input type="radio" name="send_email" value="1"<?php if ($group['g_send_email'] == '1') echo ' checked="checked"' ?> tabindex="37" /> <strong><?php echo $lang_admin_common['Yes'] ?></strong>   <input type="radio" name="send_email" value="0"<?php if ($group['g_send_email'] == '0') echo ' checked="checked"' ?> tabindex="38" /> <strong><?php echo $lang_admin_common['No'] ?></strong> | 243: <label class="conl"><input type="radio" name="send_email" value="1"<?php if ($group['g_send_email'] == '1') echo ' checked="checked"' ?> tabindex="37" /> <strong><?php echo $lang_admin_common['Yes'] ?></strong></label> |
228: <span><?php echo $lang_admin_groups['Send e-mails help'] ?></span> | 244: <label class="conl"><input type="radio" name="send_email" value="0"<?php if ($group['g_send_email'] == '0') echo ' checked="checked"' ?> tabindex="38" /> <strong><?php echo $lang_admin_common['No'] ?></strong></label> |
245: <span class="clearb"><?php echo $lang_admin_groups['Send e-mails help'] ?></span> | |
229: </td> | 246: </td> |
230: </tr> | 247: </tr> |
231: <?php endif; ?> <tr> | 248: <?php endif; ?> <tr> |
a/admin_index.php | b/admin_index.php |
---|---|
38: message(sprintf($lang_admin_index['New version available message'], '<a href="http://fluxbb.org/">FluxBB.org</a>')); | 38: message(sprintf($lang_admin_index['New version available message'], '<a href="http://fluxbb.org/">FluxBB.org</a>')); |
39: } | 39: } |
40: | 40: |
41: | |
42: // Show phpinfo() output | |
43: else if ($action == 'phpinfo' && $pun_user['g_id'] == PUN_ADMIN) | |
44: { | |
45: // Is phpinfo() a disabled function? | |
46: if (strpos(strtolower((string) ini_get('disable_functions')), 'phpinfo') !== false) | |
47: message($lang_admin_index['PHPinfo disabled message']); | |
48: | |
49: phpinfo(); | |
50: exit; | |
51: } | |
52: | |
53: | |
54: // Get the server load averages (if possible) | |
55: if (@file_exists('/proc/loadavg') && is_readable('/proc/loadavg')) | |
56: { | |
57: // We use @ just in case | |
58: $fh = @fopen('/proc/loadavg', 'r'); | |
59: $load_averages = @fread($fh, 64); | |
60: @fclose($fh); | |
61: | |
62: if (($fh = @fopen('/proc/loadavg', 'r'))) | |
63: { | |
64: $load_averages = fread($fh, 64); | |
65: fclose($fh); | |
66: } | |
67: else | |
68: $load_averages = ''; | |
69: | |
70: $load_averages = @explode(' ', $load_averages); | |
71: $server_load = isset($load_averages[2]) ? $load_averages[0].' '.$load_averages[1].' '.$load_averages[2] : $lang_admin_index['Not available']; | |
72: } | |
73: else if (!in_array(PHP_OS, array('WINNT', 'WIN32')) && preg_match('%averages?: ([0-9\.]+),?\s+([0-9\.]+),?\s+([0-9\.]+)%i', @exec('uptime'), $load_averages)) | |
74: $server_load = $load_averages[1].' '.$load_averages[2].' '.$load_averages[3]; | |
75: else | |
76: $server_load = $lang_admin_index['Not available']; | |
77: | |
78: | |
79: // Get number of current visitors | |
80: $result = $db->query('SELECT COUNT(user_id) FROM '.$db->prefix.'online WHERE idle=0') or error('Unable to fetch online count', __FILE__, __LINE__, $db->error()); | |
81: $num_online = $db->result($result); | |
82: | |
83: | |
84: // Collect some additional info about MySQL | |
85: if ($db_type == 'mysql' || $db_type == 'mysqli' || $db_type == 'mysql_innodb' || $db_type == 'mysqli_innodb') | |
86: { | |
87: // Calculate total db size/row count | |
88: $result = $db->query('SHOW TABLE STATUS LIKE \''.$db->prefix.'%\'') or error('Unable to fetch table status', __FILE__, __LINE__, $db->error()); | |
89: | |
90: $total_records = $total_size = 0; | |
91: while ($status = $db->fetch_assoc($result)) | |
92: { | |
93: $total_records += $status['Rows']; | |
94: $total_size += $status['Data_length'] + $status['Index_length']; | |
95: } | |
96: | |
97: $total_size = file_size($total_size); | |
98: } | |
99: | |
100: | |
101: // Check for the existence of various PHP opcode caches/optimizers | |
102: if (function_exists('mmcache')) | |
103: $php_accelerator = '<a href="http://'.$lang_admin_index['Turck MMCache link'].'">'.$lang_admin_index['Turck MMCache'].'</a>'; | |
104: else if (isset($_PHPA)) | |
105: $php_accelerator = '<a href="http://'.$lang_admin_index['ionCube PHP Accelerator link'].'">'.$lang_admin_index['ionCube PHP Accelerator'].'</a>'; | |
106: else if (ini_get('apc.enabled')) | |
107: $php_accelerator ='<a href="http://'.$lang_admin_index['Alternative PHP Cache (APC) link'].'">'.$lang_admin_index['Alternative PHP Cache (APC)'].'</a>'; | |
108: else if (ini_get('zend_optimizer.optimization_level')) | |
109: $php_accelerator = '<a href="http://'.$lang_admin_index['Zend Optimizer link'].'">'.$lang_admin_index['Zend Optimizer'].'</a>'; | |
110: else if (ini_get('eaccelerator.enable')) | |
111: $php_accelerator = '<a href="http://'.$lang_admin_index['eAccelerator link'].'">'.$lang_admin_index['eAccelerator'].'</a>'; | |
112: else if (ini_get('xcache.cacher')) | |
113: $php_accelerator = '<a href="http://'.$lang_admin_index['XCache link'].'">'.$lang_admin_index['XCache'].'</a>'; | |
114: else | |
115: $php_accelerator = $lang_admin_index['NA']; | |
116: | |
117: | |
118: $page_title = array(pun_htmlspecialchars($pun_config['o_board_title']), $lang_admin_common['Admin'], $lang_admin_common['Index']); | 41: $page_title = array(pun_htmlspecialchars($pun_config['o_board_title']), $lang_admin_common['Admin'], $lang_admin_common['Index']); |
119: define('PUN_ACTIVE_PAGE', 'admin'); | 42: define('PUN_ACTIVE_PAGE', 'admin'); |
120: require PUN_ROOT.'header.php'; | 43: require PUN_ROOT.'header.php'; |
141: </div> | 64: </div> |
142: </div> | 65: </div> |
143: | 66: |
144: <h2 class="block2"><span><?php echo $lang_admin_index['Statistics head'] ?></span></h2> | 67: <h2 class="block2"><span><?php echo $lang_admin_index['About head'] ?></span></h2> |
145: <div id="adstats" class="box"> | 68: <div id="adstats" class="box"> |
146: <div class="inbox"> | 69: <div class="inbox"> |
147: <dl> | 70: <dl> |
149: <dd> | 72: <dd> |
150: <?php printf($lang_admin_index['FluxBB version data']."\n", $pun_config['o_cur_version'], '<a href="admin_index.php?action=check_upgrade">'.$lang_admin_index['Check for upgrade'].'</a>') ?> | 73: <?php printf($lang_admin_index['FluxBB version data']."\n", $pun_config['o_cur_version'], '<a href="admin_index.php?action=check_upgrade">'.$lang_admin_index['Check for upgrade'].'</a>') ?> |
151: </dd> | 74: </dd> |
152: <dt><?php echo $lang_admin_index['Server load label'] ?></dt> | 75: <dt><?php echo $lang_admin_index['Server statistics label'] ?></dt> |
153: <dd> | 76: <dd> |
154: <?php printf($lang_admin_index['Server load data']."\n", $server_load, $num_online) ?> | 77: <a href="admin_statistics.php"><?php echo $lang_admin_index['View server statistics'] ?></a> |
155: </dd> | 78: </dd> |
156: <?php if ($pun_user['g_id'] == PUN_ADMIN): ?> <dt><?php echo $lang_admin_index['Environment label'] ?></dt> | 79: <dt><?php echo $lang_admin_index['Support label'] ?></dt> |
157: <dd> | 80: <dd> |
158: <?php printf($lang_admin_index['Environment data OS'], PHP_OS) ?><br /> | 81: <a href="http://fluxbb.org/forums/index.php"><?php echo $lang_admin_index['Forum label'] ?></a> - <a href="http://fluxbb.org/community/irc.html"><?php echo $lang_admin_index['IRC label'] ?></a> |
159: <?php printf($lang_admin_index['Environment data version'], phpversion(), '<a href="admin_index.php?action=phpinfo">'.$lang_admin_index['Show info'].'</a>') ?><br /> | |
160: <?php printf($lang_admin_index['Environment data acc']."\n", $php_accelerator) ?> | |
161: </dd> | 82: </dd> |
162: <dt><?php echo $lang_admin_index['Database label'] ?></dt> | |
163: <dd> | |
164: <?php echo implode(' ', $db->get_version())."\n" ?> | |
165: <?php if (isset($total_records) && isset($total_size)): ?> <br /><?php printf($lang_admin_index['Database data rows']."\n", forum_number_format($total_records)) ?> | |
166: <br /><?php printf($lang_admin_index['Database data size']."\n", $total_size) ?> | |
167: <?php endif; ?> </dd> | |
168: <?php endif; ?> | |
169: </dl> | 83: </dl> |
170: </div> | 84: </div> |
171: </div> | 85: </div> |
a/admin_loader.php | b/admin_loader.php |
---|---|
39: define('PUN_ACTIVE_PAGE', 'admin'); | 39: define('PUN_ACTIVE_PAGE', 'admin'); |
40: require PUN_ROOT.'header.php'; | 40: require PUN_ROOT.'header.php'; |
41: | 41: |
42: // Attempt to load the plugin. We don't use @ here to supress error messages, | 42: // Attempt to load the plugin. We don't use @ here to suppress error messages, |
43: // because if we did and a parse error occurred in the plugin, we would only | 43: // because if we did and a parse error occurred in the plugin, we would only |
44: // get the "blank page of death" | 44: // get the "blank page of death" |
45: include PUN_ROOT.'plugins/'.$plugin; | 45: include PUN_ROOT.'plugins/'.$plugin; |
a/admin_maintenance.php | b/admin_maintenance.php |
---|---|
280: <tr> | 280: <tr> |
281: <th scope="row"><?php echo $lang_admin_maintenance['Empty index label'] ?></th> | 281: <th scope="row"><?php echo $lang_admin_maintenance['Empty index label'] ?></th> |
282: <td class="inputadmin"> | 282: <td class="inputadmin"> |
283: <span><input type="checkbox" name="i_empty_index" value="1" tabindex="3" checked="checked" />  <?php echo $lang_admin_maintenance['Empty index help'] ?></span> | 283: <label><input type="checkbox" name="i_empty_index" value="1" tabindex="3" checked="checked" />  <?php echo $lang_admin_maintenance['Empty index help'] ?></label> |
284: </td> | 284: </td> |
285: </tr> | 285: </tr> |
286: </table> | 286: </table> |
308: <tr> | 308: <tr> |
309: <th scope="row"><?php echo $lang_admin_maintenance['Prune sticky label'] ?></th> | 309: <th scope="row"><?php echo $lang_admin_maintenance['Prune sticky label'] ?></th> |
310: <td> | 310: <td> |
311: <input type="radio" name="prune_sticky" value="1" tabindex="6" checked="checked" /> <strong><?php echo $lang_admin_common['Yes'] ?></strong>   <input type="radio" name="prune_sticky" value="0" /> <strong><?php echo $lang_admin_common['No'] ?></strong> | 311: <label class="conl"><input type="radio" name="prune_sticky" value="1" tabindex="6" checked="checked" /> <strong><?php echo $lang_admin_common['Yes'] ?></strong></label> |
312: <span><?php echo $lang_admin_maintenance['Prune sticky help'] ?></span> | 312: <label class="conl"><input type="radio" name="prune_sticky" value="0" /> <strong><?php echo $lang_admin_common['No'] ?></strong></label> |
313: <span class="clearb"><?php echo $lang_admin_maintenance['Prune sticky help'] ?></span> | |
313: </td> | 314: </td> |
314: </tr> | 315: </tr> |
315: <tr> | 316: <tr> |
a/admin_options.php | b/admin_options.php |
---|---|
302: <tr> | 302: <tr> |
303: <th scope="row"><?php echo $lang_admin_options['DST label'] ?></th> | 303: <th scope="row"><?php echo $lang_admin_options['DST label'] ?></th> |
304: <td> | 304: <td> |
305: <input type="radio" name="form[default_dst]" id="form_default_dst_1" value="1"<?php if ($pun_config['o_default_dst'] == '1') echo ' checked="checked"' ?> /> <label class="conl" for="form_default_dst_1"><strong><?php echo $lang_admin_common['Yes'] ?></strong></label>   <input type="radio" name="form[default_dst]" id="form_default_dst_0" value="0"<?php if ($pun_config['o_default_dst'] == '0') echo ' checked="checked"' ?> /> <label class="conl" for="form_default_dst_0"><strong><?php echo $lang_admin_common['No'] ?></strong></label> | 305: <label class="conl"><input type="radio" name="form[default_dst]" value="1"<?php if ($pun_config['o_default_dst'] == '1') echo ' checked="checked"' ?> /> <strong><?php echo $lang_admin_common['Yes'] ?></strong></label> |
306: <span><?php echo $lang_admin_options['DST help'] ?></span> | 306: <label class="conl"><input type="radio" name="form[default_dst]" value="0"<?php if ($pun_config['o_default_dst'] == '0') echo ' checked="checked"' ?> /> <strong><?php echo $lang_admin_common['No'] ?></strong></label> |
307: <span class="clearb"><?php echo $lang_admin_options['DST help'] ?></span> | |
307: </td> | 308: </td> |
308: </tr> | 309: </tr> |
309: <tr> | 310: <tr> |
410: <tr> | 411: <tr> |
411: <th scope="row"><?php echo $lang_admin_options['Version number label'] ?></th> | 412: <th scope="row"><?php echo $lang_admin_options['Version number label'] ?></th> |
412: <td> | 413: <td> |
413: <input type="radio" name="form[show_version]" id="form_show_version_1" value="1"<?php if ($pun_config['o_show_version'] == '1') echo ' checked="checked"' ?> /> <label class="conl" for="form_show_version_1"><strong><?php echo $lang_admin_common['Yes'] ?></strong></label>   <input type="radio" name="form[show_version]" id="form_show_version_0" value="0"<?php if ($pun_config['o_show_version'] == '0') echo ' checked="checked"' ?> /> <label class="conl" for="form_show_version_0"><strong><?php echo $lang_admin_common['No'] ?></strong></label> | 414: <label class="conl"><input type="radio" name="form[show_version]" value="1"<?php if ($pun_config['o_show_version'] == '1') echo ' checked="checked"' ?> /> <strong><?php echo $lang_admin_common['Yes'] ?></strong></label> |
414: <span><?php echo $lang_admin_options['Version number help'] ?></span> | 415: <label class="conl"><input type="radio" name="form[show_version]" value="0"<?php if ($pun_config['o_show_version'] == '0') echo ' checked="checked"' ?> /> <strong><?php echo $lang_admin_common['No'] ?></strong></label> |
416: <span class="clearb"><?php echo $lang_admin_options['Version number help'] ?></span> | |
415: </td> | 417: </td> |
416: </tr> | 418: </tr> |
417: <tr> | 419: <tr> |
418: <th scope="row"><?php echo $lang_admin_options['Info in posts label'] ?></th> | 420: <th scope="row"><?php echo $lang_admin_options['Info in posts label'] ?></th> |
419: <td> | 421: <td> |
420: <input type="radio" name="form[show_user_info]" id="form_show_user_info_1" value="1"<?php if ($pun_config['o_show_user_info'] == '1') echo ' checked="checked"' ?> /> <label class="conl" for="form_show_user_info_1"><strong><?php echo $lang_admin_common['Yes'] ?></strong></label>   <input type="radio" name="form[show_user_info]" id="form_show_user_info_0" value="0"<?php if ($pun_config['o_show_user_info'] == '0') echo ' checked="checked"' ?> /> <label class="conl" for="form_show_user_info_0"><strong><?php echo $lang_admin_common['No'] ?></strong></label> | 422: <label class="conl"><input type="radio" name="form[show_user_info]" value="1"<?php if ($pun_config['o_show_user_info'] == '1') echo ' checked="checked"' ?> /> <strong><?php echo $lang_admin_common['Yes'] ?></strong></label> |
421: <span><?php echo $lang_admin_options['Info in posts help'] ?></span> | 423: <label class="conl"><input type="radio" name="form[show_user_info]" value="0"<?php if ($pun_config['o_show_user_info'] == '0') echo ' checked="checked"' ?> /> <strong><?php echo $lang_admin_common['No'] ?></strong></label> |
424: <span class="clearb"><?php echo $lang_admin_options['Info in posts help'] ?></span> | |
422: </td> | 425: </td> |
423: </tr> | 426: </tr> |
424: <tr> | 427: <tr> |
425: <th scope="row"><?php echo $lang_admin_options['Post count label'] ?></th> | 428: <th scope="row"><?php echo $lang_admin_options['Post count label'] ?></th> |
426: <td> | 429: <td> |
427: <input type="radio" name="form[show_post_count]" id="form_show_post_count_1" value="1"<?php if ($pun_config['o_show_post_count'] == '1') echo ' checked="checked"' ?> /> <label class="conl" for="form_show_post_count_1"><strong><?php echo $lang_admin_common['Yes'] ?></strong></label>   <input type="radio" name="form[show_post_count]" id="form_show_post_count_0" value="0"<?php if ($pun_config['o_show_post_count'] == '0') echo ' checked="checked"' ?> /> <label class="conl" for="form_show_post_count_0"><strong><?php echo $lang_admin_common['No'] ?></strong></label> | 430: <label class="conl"><input type="radio" name="form[show_post_count]" value="1"<?php if ($pun_config['o_show_post_count'] == '1') echo ' checked="checked"' ?> /> <strong><?php echo $lang_admin_common['Yes'] ?></strong></label> |
428: <span><?php echo $lang_admin_options['Post count help'] ?></span> | 431: <label class="conl"><input type="radio" name="form[show_post_count]" value="0"<?php if ($pun_config['o_show_post_count'] == '0') echo ' checked="checked"' ?> /> <strong><?php echo $lang_admin_common['No'] ?></strong></label> |
432: <span class="clearb"><?php echo $lang_admin_options['Post count help'] ?></span> | |
429: </td> | 433: </td> |
430: </tr> | 434: </tr> |
431: <tr> | 435: <tr> |
432: <th scope="row"><?php echo $lang_admin_options['Smilies label'] ?></th> | 436: <th scope="row"><?php echo $lang_admin_options['Smilies label'] ?></th> |
433: <td> | 437: <td> |
434: <input type="radio" name="form[smilies]" id="form_smilies_1" value="1"<?php if ($pun_config['o_smilies'] == '1') echo ' checked="checked"' ?> /> <label class="conl" for="form_smilies_1"><strong><?php echo $lang_admin_common['Yes'] ?></strong></label>   <input type="radio" name="form[smilies]" id="form_smilies_0" value="0"<?php if ($pun_config['o_smilies'] == '0') echo ' checked="checked"' ?> /> <label class="conl" for="form_smilies_0"><strong><?php echo $lang_admin_common['No'] ?></strong></label> | 438: <label class="conl"><input type="radio" name="form[smilies]" value="1"<?php if ($pun_config['o_smilies'] == '1') echo ' checked="checked"' ?> /> <strong><?php echo $lang_admin_common['Yes'] ?></strong></label> |
435: <span><?php echo $lang_admin_options['Smilies help'] ?></span> | 439: <label class="conl"><input type="radio" name="form[smilies]" value="0"<?php if ($pun_config['o_smilies'] == '0') echo ' checked="checked"' ?> /> <strong><?php echo $lang_admin_common['No'] ?></strong></label> |
440: <span class="clearb"><?php echo $lang_admin_options['Smilies help'] ?></span> | |
436: </td> | 441: </td> |
437: </tr> | 442: </tr> |
438: <tr> | 443: <tr> |
439: <th scope="row"><?php echo $lang_admin_options['Smilies sigs label'] ?></th> | 444: <th scope="row"><?php echo $lang_admin_options['Smilies sigs label'] ?></th> |
440: <td> | 445: <td> |
441: <input type="radio" name="form[smilies_sig]" id="form_smilies_sig_1" value="1"<?php if ($pun_config['o_smilies_sig'] == '1') echo ' checked="checked"' ?> /> <label class="conl" for="form_smilies_sig_1"><strong><?php echo $lang_admin_common['Yes'] ?></strong></label>   <input type="radio" name="form[smilies_sig]" id="form_smilies_sig_0" value="0"<?php if ($pun_config['o_smilies_sig'] == '0') echo ' checked="checked"' ?> /> <label class="conl" for="form_smilies_sig_0"><strong><?php echo $lang_admin_common['No'] ?></strong></label> | 446: <label class="conl"><input type="radio" name="form[smilies_sig]" value="1"<?php if ($pun_config['o_smilies_sig'] == '1') echo ' checked="checked"' ?> /> <strong><?php echo $lang_admin_common['Yes'] ?></strong></label> |
442: <span><?php echo $lang_admin_options['Smilies sigs help'] ?></span> | 447: <label class="conl"><input type="radio" name="form[smilies_sig]" value="0"<?php if ($pun_config['o_smilies_sig'] == '0') echo ' checked="checked"' ?> /> <strong><?php echo $lang_admin_common['No'] ?></strong></label> |
448: <span class="clearb"><?php echo $lang_admin_options['Smilies sigs help'] ?></span> | |
443: </td> | 449: </td> |
444: </tr> | 450: </tr> |
445: <tr> | 451: <tr> |
446: <th scope="row"><?php echo $lang_admin_options['Clickable links label'] ?></th> | 452: <th scope="row"><?php echo $lang_admin_options['Clickable links label'] ?></th> |
447: <td> | 453: <td> |
448: <input type="radio" name="form[make_links]" id="form_make_links_1" value="1"<?php if ($pun_config['o_make_links'] == '1') echo ' checked="checked"' ?> /> <label class="conl" for="form_make_links_1"><strong><?php echo $lang_admin_common['Yes'] ?></strong></label>   <input type="radio" name="form[make_links]" id="form_make_links_0" value="0"<?php if ($pun_config['o_make_links'] == '0') echo ' checked="checked"' ?> /> <label class="conl" for="form_make_links_0"><strong><?php echo $lang_admin_common['No'] ?></strong></label> | 454: <label class="conl"><input type="radio" name="form[make_links]" value="1"<?php if ($pun_config['o_make_links'] == '1') echo ' checked="checked"' ?> /> <strong><?php echo $lang_admin_common['Yes'] ?></strong></label> |
449: <span><?php echo $lang_admin_options['Clickable links help'] ?></span> | 455: <label class="conl"><input type="radio" name="form[make_links]" value="0"<?php if ($pun_config['o_make_links'] == '0') echo ' checked="checked"' ?> /> <strong><?php echo $lang_admin_common['No'] ?></strong></label> |
456: <span class="clearb"><?php echo $lang_admin_options['Clickable links help'] ?></span> | |
450: </td> | 457: </td> |
451: </tr> | 458: </tr> |
452: <tr> | 459: <tr> |
459: <tr> | 466: <tr> |
460: <th scope="row"><?php echo $lang_admin_options['Topics per page label'] ?></th> | 467: <th scope="row"><?php echo $lang_admin_options['Topics per page label'] ?></th> |
461: <td> | 468: <td> |
462: <input type="text" name="form[disp_topics_default]" size="3" maxlength="3" value="<?php echo $pun_config['o_disp_topics_default'] ?>" /> | 469: <input type="text" name="form[disp_topics_default]" size="3" maxlength="2" value="<?php echo $pun_config['o_disp_topics_default'] ?>" /> |
463: <span><?php echo $lang_admin_options['Topics per page help'] ?></span> | 470: <span><?php echo $lang_admin_options['Topics per page help'] ?></span> |
464: </td> | 471: </td> |
465: </tr> | 472: </tr> |
466: <tr> | 473: <tr> |
467: <th scope="row"><?php echo $lang_admin_options['Posts per page label'] ?></th> | 474: <th scope="row"><?php echo $lang_admin_options['Posts per page label'] ?></th> |
468: <td> | 475: <td> |
469: <input type="text" name="form[disp_posts_default]" size="3" maxlength="3" value="<?php echo $pun_config['o_disp_posts_default'] ?>" /> | 476: <input type="text" name="form[disp_posts_default]" size="3" maxlength="2" value="<?php echo $pun_config['o_disp_posts_default'] ?>" /> |
470: <span><?php echo $lang_admin_options['Posts per page help'] ?></span> | 477: <span><?php echo $lang_admin_options['Posts per page help'] ?></span> |
471: </td> | 478: </td> |
472: </tr> | 479: </tr> |
496: <tr> | 503: <tr> |
497: <th scope="row"><?php echo $lang_admin_options['Quick post label'] ?></th> | 504: <th scope="row"><?php echo $lang_admin_options['Quick post label'] ?></th> |
498: <td> | 505: <td> |
499: <input type="radio" name="form[quickpost]" id="form_quickpost_1" value="1"<?php if ($pun_config['o_quickpost'] == '1') echo ' checked="checked"' ?> /> <label class="conl" for="form_quickpost_1"><strong><?php echo $lang_admin_common['Yes'] ?></strong></label>   <input type="radio" name="form[quickpost]" id="form_quickpost_0" value="0"<?php if ($pun_config['o_quickpost'] == '0') echo ' checked="checked"' ?> /> <label class="conl" for="form_quickpost_0"><strong><?php echo $lang_admin_common['No'] ?></strong></label> | 506: <label class="conl"><input type="radio" name="form[quickpost]" value="1"<?php if ($pun_config['o_quickpost'] == '1') echo ' checked="checked"' ?> /> <strong><?php echo $lang_admin_common['Yes'] ?></strong></label> |
500: <span><?php echo $lang_admin_options['Quick post help'] ?></span> | 507: <label class="conl"><input type="radio" name="form[quickpost]" value="0"<?php if ($pun_config['o_quickpost'] == '0') echo ' checked="checked"' ?> /> <strong><?php echo $lang_admin_common['No'] ?></strong></label> |
508: <span class="clearb"><?php echo $lang_admin_options['Quick post help'] ?></span> | |
501: </td> | 509: </td> |
502: </tr> | 510: </tr> |
503: <tr> | 511: <tr> |
504: <th scope="row"><?php echo $lang_admin_options['Users online label'] ?></th> | 512: <th scope="row"><?php echo $lang_admin_options['Users online label'] ?></th> |
505: <td> | 513: <td> |
506: <input type="radio" name="form[users_online]" id="form_users_online_1" value="1"<?php if ($pun_config['o_users_online'] == '1') echo ' checked="checked"' ?> /> <label class="conl" for="form_users_online_1"><strong><?php echo $lang_admin_common['Yes'] ?></strong></label>   <input type="radio" name="form[users_online]" id="form_users_online_0" value="0"<?php if ($pun_config['o_users_online'] == '0') echo ' checked="checked"' ?> /> <label class="conl" for="form_users_online_0"><strong><?php echo $lang_admin_common['No'] ?></strong></label> | 514: <label class="conl"><input type="radio" name="form[users_online]" value="1"<?php if ($pun_config['o_users_online'] == '1') echo ' checked="checked"' ?> /> <strong><?php echo $lang_admin_common['Yes'] ?></strong></label> |
507: <span><?php echo $lang_admin_options['Users online help'] ?></span> | 515: <label class="conl"><input type="radio" name="form[users_online]" value="0"<?php if ($pun_config['o_users_online'] == '0') echo ' checked="checked"' ?> /> <strong><?php echo $lang_admin_common['No'] ?></strong></label> |
516: <span class="clearb"><?php echo $lang_admin_options['Users online help'] ?></span> | |
508: </td> | 517: </td> |
509: </tr> | 518: </tr> |
510: <tr> | 519: <tr> |
511: <th scope="row"><a name="censoring"></a><?php echo $lang_admin_options['Censor words label'] ?></th> | 520: <th scope="row"><a name="censoring"></a><?php echo $lang_admin_options['Censor words label'] ?></th> |
512: <td> | 521: <td> |
513: <input type="radio" name="form[censoring]" id="form_censoring_1" value="1"<?php if ($pun_config['o_censoring'] == '1') echo ' checked="checked"' ?> /> <label class="conl" for="form_censoring_1"><strong><?php echo $lang_admin_common['Yes'] ?></strong></label>   <input type="radio" name="form[censoring]" id="form_censoring_0" value="0"<?php if ($pun_config['o_censoring'] == '0') echo ' checked="checked"' ?> /> <label class="conl" for="form_censoring_0"><strong><?php echo $lang_admin_common['No'] ?></strong></label> | 522: <label class="conl"><input type="radio" name="form[censoring]" value="1"<?php if ($pun_config['o_censoring'] == '1') echo ' checked="checked"' ?> /> <strong><?php echo $lang_admin_common['Yes'] ?></strong></label> |
514: <span><?php printf($lang_admin_options['Censor words help'], '<a href="admin_censoring.php">'.$lang_admin_common['Censoring'].'</a>') ?></span> | 523: <label class="conl"><input type="radio" name="form[censoring]" value="0"<?php if ($pun_config['o_censoring'] == '0') echo ' checked="checked"' ?> /> <strong><?php echo $lang_admin_common['No'] ?></strong></label> |
524: <span class="clearb"><?php printf($lang_admin_options['Censor words help'], '<a href="admin_censoring.php">'.$lang_admin_common['Censoring'].'</a>') ?></span> | |
515: </td> | 525: </td> |
516: </tr> | 526: </tr> |
517: <tr> | 527: <tr> |
518: <th scope="row"><a name="signatures"></a><?php echo $lang_admin_options['Signatures label'] ?></th> | 528: <th scope="row"><a name="signatures"></a><?php echo $lang_admin_options['Signatures label'] ?></th> |
519: <td> | 529: <td> |
520: <input type="radio" name="form[signatures]" id="form_signatures_1" value="1"<?php if ($pun_config['o_signatures'] == '1') echo ' checked="checked"' ?> /> <label class="conl" for="form_signatures_1"><strong><?php echo $lang_admin_common['Yes'] ?></strong></label>   <input type="radio" name="form[signatures]" id="form_signatures_0" value="0"<?php if ($pun_config['o_signatures'] == '0') echo ' checked="checked"' ?> /> <label class="conl" for="form_signatures_0"><strong><?php echo $lang_admin_common['No'] ?></strong></label> | 530: <label class="conl"><input type="radio" name="form[signatures]" value="1"<?php if ($pun_config['o_signatures'] == '1') echo ' checked="checked"' ?> /> <strong><?php echo $lang_admin_common['Yes'] ?></strong></label> |
521: <span><?php echo $lang_admin_options['Signatures help'] ?></span> | 531: <label class="conl"><input type="radio" name="form[signatures]" value="0"<?php if ($pun_config['o_signatures'] == '0') echo ' checked="checked"' ?> /> <strong><?php echo $lang_admin_common['No'] ?></strong></label> |
532: <span class="clearb"><?php echo $lang_admin_options['Signatures help'] ?></span> | |
522: </td> | 533: </td> |
523: </tr> | 534: </tr> |
524: <tr> | 535: <tr> |
525: <th scope="row"><?php echo $lang_admin_options['User has posted label'] ?></th> | 536: <th scope="row"><?php echo $lang_admin_options['User has posted label'] ?></th> |
526: <td> | 537: <td> |
527: <input type="radio" name="form[show_dot]" id="form_show_dot_1" value="1"<?php if ($pun_config['o_show_dot'] == '1') echo ' checked="checked"' ?> /> <label class="conl" for="form_show_dot_1"><strong><?php echo $lang_admin_common['Yes'] ?></strong></label>   <input type="radio" name="form[show_dot]" id="form_show_dot_0" value="0"<?php if ($pun_config['o_show_dot'] == '0') echo ' checked="checked"' ?> /> <label class="conl" for="form_show_dot_0"><strong><?php echo $lang_admin_common['No'] ?></strong></label> | 538: <label class="conl"><input type="radio" name="form[show_dot]" value="1"<?php if ($pun_config['o_show_dot'] == '1') echo ' checked="checked"' ?> /> <strong><?php echo $lang_admin_common['Yes'] ?></strong></label> |
528: <span><?php echo $lang_admin_options['User has posted help'] ?></span> | 539: <label class="conl"><input type="radio" name="form[show_dot]" value="0"<?php if ($pun_config['o_show_dot'] == '0') echo ' checked="checked"' ?> /> <strong><?php echo $lang_admin_common['No'] ?></strong></label> |
540: <span class="clearb"><?php echo $lang_admin_options['User has posted help'] ?></span> | |
529: </td> | 541: </td> |
530: </tr> | 542: </tr> |
531: <tr> | 543: <tr> |
532: <th scope="row"><?php echo $lang_admin_options['Topic views label'] ?></th> | 544: <th scope="row"><?php echo $lang_admin_options['Topic views label'] ?></th> |
533: <td> | 545: <td> |
534: <input type="radio" name="form[topic_views]" id="form_topic_views_1" value="1"<?php if ($pun_config['o_topic_views'] == '1') echo ' checked="checked"' ?> /> <label class="conl" for="form_topic_views_1"><strong><?php echo $lang_admin_common['Yes'] ?></strong></label>   <input type="radio" name="form[topic_views]" id="form_topic_views_0" value="0"<?php if ($pun_config['o_topic_views'] == '0') echo ' checked="checked"' ?> /> <label class="conl" for="form_topic_views_0"><strong><?php echo $lang_admin_common['No'] ?></strong></label> | 546: <label class="conl"><input type="radio" name="form[topic_views]" value="1"<?php if ($pun_config['o_topic_views'] == '1') echo ' checked="checked"' ?> /> <strong><?php echo $lang_admin_common['Yes'] ?></strong></label> |
535: <span><?php echo $lang_admin_options['Topic views help'] ?></span> | 547: <label class="conl"><input type="radio" name="form[topic_views]" value="0"<?php if ($pun_config['o_topic_views'] == '0') echo ' checked="checked"' ?> /> <strong><?php echo $lang_admin_common['No'] ?></strong></label> |
548: <span class="clearb"><?php echo $lang_admin_options['Topic views help'] ?></span> | |
536: </td> | 549: </td> |
537: </tr> | 550: </tr> |
538: <tr> | 551: <tr> |
539: <th scope="row"><?php echo $lang_admin_options['Quick jump label'] ?></th> | 552: <th scope="row"><?php echo $lang_admin_options['Quick jump label'] ?></th> |
540: <td> | 553: <td> |
541: <input type="radio" name="form[quickjump]" id="form_quickjump_1" value="1"<?php if ($pun_config['o_quickjump'] == '1') echo ' checked="checked"' ?> /> <label class="conl" for="form_quickjump_1"><strong><?php echo $lang_admin_common['Yes'] ?></strong></label>   <input type="radio" name="form[quickjump]" id="form_quickjump_0" value="0"<?php if ($pun_config['o_quickjump'] == '0') echo ' checked="checked"' ?> /> <label class="conl" for="form_quickjump_0"><strong><?php echo $lang_admin_common['No'] ?></strong></label> | 554: <label class="conl"><input type="radio" name="form[quickjump]" value="1"<?php if ($pun_config['o_quickjump'] == '1') echo ' checked="checked"' ?> /> <strong><?php echo $lang_admin_common['Yes'] ?></strong></label> |
542: <span><?php echo $lang_admin_options['Quick jump help'] ?></span> | 555: <label class="conl"><input type="radio" name="form[quickjump]" value="0"<?php if ($pun_config['o_quickjump'] == '0') echo ' checked="checked"' ?> /> <strong><?php echo $lang_admin_common['No'] ?></strong></label> |
556: <span class="clearb"><?php echo $lang_admin_options['Quick jump help'] ?></span> | |
543: </td> | 557: </td> |
544: </tr> | 558: </tr> |
545: <tr> | 559: <tr> |
546: <th scope="row"><?php echo $lang_admin_options['GZip label'] ?></th> | 560: <th scope="row"><?php echo $lang_admin_options['GZip label'] ?></th> |
547: <td> | 561: <td> |
548: <input type="radio" name="form[gzip]" id="form_gzip_1" value="1"<?php if ($pun_config['o_gzip'] == '1') echo ' checked="checked"' ?> /> <label class="conl" for="form_gzip_1"><strong><?php echo $lang_admin_common['Yes'] ?></strong></label>   <input type="radio" name="form[gzip]" id="form_gzip_0" value="0"<?php if ($pun_config['o_gzip'] == '0') echo ' checked="checked"' ?> /> <label class="conl" for="form_gzip_0"><strong><?php echo $lang_admin_common['No'] ?></strong></label> | 562: <label class="conl"><input type="radio" name="form[gzip]" value="1"<?php if ($pun_config['o_gzip'] == '1') echo ' checked="checked"' ?> /> <strong><?php echo $lang_admin_common['Yes'] ?></strong></label> |
549: <span><?php echo $lang_admin_options['GZip help'] ?></span> | 563: <label class="conl"><input type="radio" name="form[gzip]" value="0"<?php if ($pun_config['o_gzip'] == '0') echo ' checked="checked"' ?> /> <strong><?php echo $lang_admin_common['No'] ?></strong></label> |
564: <span class="clearb"><?php echo $lang_admin_options['GZip help'] ?></span> | |
550: </td> | 565: </td> |
551: </tr> | 566: </tr> |
552: <tr> | 567: <tr> |
553: <th scope="row"><?php echo $lang_admin_options['Search all label'] ?></th> | 568: <th scope="row"><?php echo $lang_admin_options['Search all label'] ?></th> |
554: <td> | 569: <td> |
555: <input type="radio" name="form[search_all_forums]" id="form_search_all_forums_1" value="1"<?php if ($pun_config['o_search_all_forums'] == '1') echo ' checked="checked"' ?> /> <label class="conl" for="form_search_all_forums_1"><strong><?php echo $lang_admin_common['Yes'] ?></strong></label>   <input type="radio" name="form[search_all_forums]" id="form_search_all_forums_0" value="0"<?php if ($pun_config['o_search_all_forums'] == '0') echo ' checked="checked"' ?> /> <label class="conl" for="form_search_all_forums_0"><strong><?php echo $lang_admin_common['No'] ?></strong></label> | 570: <label class="conl"><input type="radio" name="form[search_all_forums]" value="1"<?php if ($pun_config['o_search_all_forums'] == '1') echo ' checked="checked"' ?> /> <strong><?php echo $lang_admin_common['Yes'] ?></strong></label> |
556: <span><?php echo $lang_admin_options['Search all help'] ?></span> | 571: <label class="conl"><input type="radio" name="form[search_all_forums]" value="0"<?php if ($pun_config['o_search_all_forums'] == '0') echo ' checked="checked"' ?> /> <strong><?php echo $lang_admin_common['No'] ?></strong></label> |
572: <span class="clearb"><?php echo $lang_admin_options['Search all help'] ?></span> | |
557: </td> | 573: </td> |
558: </tr> | 574: </tr> |
559: <tr> | 575: <tr> |
575: <tr> | 591: <tr> |
576: <th scope="row"><?php echo $lang_admin_options['Default feed label'] ?></th> | 592: <th scope="row"><?php echo $lang_admin_options['Default feed label'] ?></th> |
577: <td> | 593: <td> |
578: <input type="radio" name="form[feed_type]" id="form_feed_type_0" value="0"<?php if ($pun_config['o_feed_type'] == '0') echo ' checked="checked"' ?> /> <strong><?php echo $lang_admin_options['None'] ?></strong>   <input type="radio" name="form[feed_type]" id="form_feed_type_1" value="1"<?php if ($pun_config['o_feed_type'] == '1') echo ' checked="checked"' ?> /> <label class="conl" for="form_feed_type_0"><strong><?php echo $lang_admin_options['RSS'] ?></strong></label>   <input type="radio" name="form[feed_type]" id="form_feed_type_2" value="2"<?php if ($pun_config['o_feed_type'] == '2') echo ' checked="checked"' ?> /> <label class="conl" for="form_feed_type_1"><strong><?php echo $lang_admin_options['Atom'] ?></strong></label> | 594: <label class="conl"><input type="radio" name="form[feed_type]" value="0"<?php if ($pun_config['o_feed_type'] == '0') echo ' checked="checked"' ?> /> <strong><?php echo $lang_admin_options['None'] ?></strong></label> |
579: <span><?php echo $lang_admin_options['Default feed help'] ?></span> | 595: <label class="conl"><input type="radio" name="form[feed_type]" value="1"<?php if ($pun_config['o_feed_type'] == '1') echo ' checked="checked"' ?> /> <strong><?php echo $lang_admin_options['RSS'] ?></strong></label> |
596: <label class="conl"><input type="radio" name="form[feed_type]" value="2"<?php if ($pun_config['o_feed_type'] == '2') echo ' checked="checked"' ?> /> <strong><?php echo $lang_admin_options['Atom'] ?></strong></label> | |
597: <span class="clearb"><?php echo $lang_admin_options['Default feed help'] ?></span> | |
580: </td> | 598: </td> |
581: </tr> | 599: </tr> |
582: <tr> | 600: <tr> |
608: <tr> | 626: <tr> |
609: <th scope="row"><?php echo $lang_admin_options['Reporting method label'] ?></th> | 627: <th scope="row"><?php echo $lang_admin_options['Reporting method label'] ?></th> |
610: <td> | 628: <td> |
611: <input type="radio" name="form[report_method]" id="form_report_method_0" value="0"<?php if ($pun_config['o_report_method'] == '0') echo ' checked="checked"' ?> /> <strong><?php echo $lang_admin_options['Internal'] ?></strong>   <input type="radio" name="form[report_method]" id="form_report_method_1" value="1"<?php if ($pun_config['o_report_method'] == '1') echo ' checked="checked"' ?> /> <label class="conl" for="form_report_method_0"><strong><?php echo $lang_admin_options['By e-mail'] ?></strong></label>   <input type="radio" name="form[report_method]" id="form_report_method_2" value="2"<?php if ($pun_config['o_report_method'] == '2') echo ' checked="checked"' ?> /> <label class="conl" for="form_report_method_1"><strong><?php echo $lang_admin_options['Both'] ?></strong></label> | 629: <label class="conl"><input type="radio" name="form[report_method]" value="0"<?php if ($pun_config['o_report_method'] == '0') echo ' checked="checked"' ?> /> <strong><?php echo $lang_admin_options['Internal'] ?></strong></label> |
612: <span><?php echo $lang_admin_options['Reporting method help'] ?></span> | 630: <label class="conl"><input type="radio" name="form[report_method]" value="1"<?php if ($pun_config['o_report_method'] == '1') echo ' checked="checked"' ?> /> <strong><?php echo $lang_admin_options['By e-mail'] ?></strong></label> |
631: <label class="conl"><input type="radio" name="form[report_method]" value="2"<?php if ($pun_config['o_report_method'] == '2') echo ' checked="checked"' ?> /> <strong><?php echo $lang_admin_options['Both'] ?></strong></label> | |
632: <span class="clearb"><?php echo $lang_admin_options['Reporting method help'] ?></span> | |
613: </td> | 633: </td> |
614: </tr> | 634: </tr> |
615: <tr> | 635: <tr> |
631: <tr> | 651: <tr> |
632: <th scope="row"><?php echo $lang_admin_options['Use avatars label'] ?></th> | 652: <th scope="row"><?php echo $lang_admin_options['Use avatars label'] ?></th> |
633: <td> | 653: <td> |
634: <input type="radio" name="form[avatars]" id="form_avatars_1" value="1"<?php if ($pun_config['o_avatars'] == '1') echo ' checked="checked"' ?> /> <label class="conl" for="form_avatars_1"><strong><?php echo $lang_admin_common['Yes'] ?></strong></label>   <input type="radio" name="form[avatars]" id="form_avatars_0" value="0"<?php if ($pun_config['o_avatars'] == '0') echo ' checked="checked"' ?> /> <label class="conl" for="form_avatars_0"><strong><?php echo $lang_admin_common['No'] ?></strong></label> | 654: <label class="conl"><input type="radio" name="form[avatars]" value="1"<?php if ($pun_config['o_avatars'] == '1') echo ' checked="checked"' ?> /> <strong><?php echo $lang_admin_common['Yes'] ?></strong></label> |
635: <span><?php echo $lang_admin_options['Use avatars help'] ?></span> | 655: <label class="conl"><input type="radio" name="form[avatars]" value="0"<?php if ($pun_config['o_avatars'] == '0') echo ' checked="checked"' ?> /> <strong><?php echo $lang_admin_common['No'] ?></strong></label> |
656: <span class="clearb"><?php echo $lang_admin_options['Use avatars help'] ?></span> | |
636: </td> | 657: </td> |
637: </tr> | 658: </tr> |
638: <tr> | 659: <tr> |
689: <tr> | 710: <tr> |
690: <th scope="row"><?php echo $lang_admin_options['Forum subscriptions label'] ?></th> | 711: <th scope="row"><?php echo $lang_admin_options['Forum subscriptions label'] ?></th> |
691: <td> | 712: <td> |
692: <input type="radio" name="form[forum_subscriptions]" id="form_forum_subscriptions_1" value="1"<?php if ($pun_config['o_forum_subscriptions'] == '1') echo ' checked="checked"' ?> /> <label class="conl" for="form_forum_subscriptions_1"><strong><?php echo $lang_admin_common['Yes'] ?></strong></label>   <input type="radio" name="form[forum_subscriptions]" id="form_forum_subscriptions_0" value="0"<?php if ($pun_config['o_forum_subscriptions'] == '0') echo ' checked="checked"' ?> /> <label class="conl" for="form_forum_subscriptions_0"><strong><?php echo $lang_admin_common['No'] ?></strong></label> | 713: <label class="conl"><input type="radio" name="form[forum_subscriptions]" value="1"<?php if ($pun_config['o_forum_subscriptions'] == '1') echo ' checked="checked"' ?> /> <strong><?php echo $lang_admin_common['Yes'] ?></strong></label> |
693: <span><?php echo $lang_admin_options['Forum subscriptions help'] ?></span> | 714: <label class="conl"><input type="radio" name="form[forum_subscriptions]" value="0"<?php if ($pun_config['o_forum_subscriptions'] == '0') echo ' checked="checked"' ?> /> <strong><?php echo $lang_admin_common['No'] ?></strong></label> |
715: <span class="clearb"><?php echo $lang_admin_options['Forum subscriptions help'] ?></span> | |
694: </td> | 716: </td> |
695: </tr> | 717: </tr> |
696: <tr> | 718: <tr> |
697: <th scope="row"><?php echo $lang_admin_options['Topic subscriptions label'] ?></th> | 719: <th scope="row"><?php echo $lang_admin_options['Topic subscriptions label'] ?></th> |
698: <td> | 720: <td> |
699: <input type="radio" name="form[topic_subscriptions]" id="form_topic_subscriptions_1" value="1"<?php if ($pun_config['o_topic_subscriptions'] == '1') echo ' checked="checked"' ?> /> <label class="conl" for="form_topic_subscriptions_1"><strong><?php echo $lang_admin_common['Yes'] ?></strong></label>   <input type="radio" name="form[topic_subscriptions]" id="form_topic_subscriptions_0" value="0"<?php if ($pun_config['o_topic_subscriptions'] == '0') echo ' checked="checked"' ?> /> <label class="conl" for="form_topic_subscriptions_0"><strong><?php echo $lang_admin_common['No'] ?></strong></label> | 721: <label class="conl"><input type="radio" name="form[topic_subscriptions]" value="1"<?php if ($pun_config['o_topic_subscriptions'] == '1') echo ' checked="checked"' ?> /> <strong><?php echo $lang_admin_common['Yes'] ?></strong></label> |
700: <span><?php echo $lang_admin_options['Topic subscriptions help'] ?></span> | 722: <label class="conl"><input type="radio" name="form[topic_subscriptions]" value="0"<?php if ($pun_config['o_topic_subscriptions'] == '0') echo ' checked="checked"' ?> /> <strong><?php echo $lang_admin_common['No'] ?></strong></label> |
723: <span class="clearb"><?php echo $lang_admin_options['Topic subscriptions help'] ?></span> | |
701: </td> | 724: </td> |
702: </tr> | 725: </tr> |
703: <tr> | 726: <tr> |
717: <tr> | 740: <tr> |
718: <th scope="row"><?php echo $lang_admin_options['SMTP password label'] ?></th> | 741: <th scope="row"><?php echo $lang_admin_options['SMTP password label'] ?></th> |
719: <td> | 742: <td> |
720: <span><input type="checkbox" name="form[smtp_change_pass]" id="form_smtp_change_pass" value="1" />  <label class="conl" for="form_smtp_change_pass"><?php echo $lang_admin_options['SMTP change password help'] ?></label></span> | 743: <label><input type="checkbox" name="form[smtp_change_pass]" value="1" /> <?php echo $lang_admin_options['SMTP change password help'] ?></label> |
721: <?php $smtp_pass = !empty($pun_config['o_smtp_pass']) ? random_key(pun_strlen($pun_config['o_smtp_pass']), true) : ''; ?> | 744: <?php $smtp_pass = !empty($pun_config['o_smtp_pass']) ? random_key(pun_strlen($pun_config['o_smtp_pass']), true) : ''; ?> |
722: <input type="password" name="form[smtp_pass1]" size="25" maxlength="50" value="<?php echo $smtp_pass ?>" /> | 745: <input type="password" name="form[smtp_pass1]" size="25" maxlength="50" value="<?php echo $smtp_pass ?>" /> |
723: <input type="password" name="form[smtp_pass2]" size="25" maxlength="50" value="<?php echo $smtp_pass ?>" /> | 746: <input type="password" name="form[smtp_pass2]" size="25" maxlength="50" value="<?php echo $smtp_pass ?>" /> |
727: <tr> | 750: <tr> |
728: <th scope="row"><?php echo $lang_admin_options['SMTP SSL label'] ?></th> | 751: <th scope="row"><?php echo $lang_admin_options['SMTP SSL label'] ?></th> |
729: <td> | 752: <td> |
730: <input type="radio" name="form[smtp_ssl]" id="form_smtp_ssl_1" value="1"<?php if ($pun_config['o_smtp_ssl'] == '1') echo ' checked="checked"' ?> /> <label class="conl" for="form_smtp_ssl_1"><strong><?php echo $lang_admin_common['Yes'] ?></strong></label>   <input type="radio" name="form[smtp_ssl]" id="form_smtp_ssl_0" value="0"<?php if ($pun_config['o_smtp_ssl'] == '0') echo ' checked="checked"' ?> /> <label class="conl" for="form_smtp_ssl_0"><strong><?php echo $lang_admin_common['No'] ?></strong></label> | 753: <label class="conl"><input type="radio" name="form[smtp_ssl]" value="1"<?php if ($pun_config['o_smtp_ssl'] == '1') echo ' checked="checked"' ?> /> <strong><?php echo $lang_admin_common['Yes'] ?></strong></label> |
731: <span><?php echo $lang_admin_options['SMTP SSL help'] ?></span> | 754: <label class="conl"><input type="radio" name="form[smtp_ssl]" value="0"<?php if ($pun_config['o_smtp_ssl'] == '0') echo ' checked="checked"' ?> /> <strong><?php echo $lang_admin_common['No'] ?></strong></label> |
755: <span class="clearb"><?php echo $lang_admin_options['SMTP SSL help'] ?></span> | |
732: </td> | 756: </td> |
733: </tr> | 757: </tr> |
734: </table> | 758: </table> |
743: <tr> | 767: <tr> |
744: <th scope="row"><?php echo $lang_admin_options['Allow new label'] ?></th> | 768: <th scope="row"><?php echo $lang_admin_options['Allow new label'] ?></th> |
745: <td> | 769: <td> |
746: <input type="radio" name="form[regs_allow]" id="form_regs_allow_1" value="1"<?php if ($pun_config['o_regs_allow'] == '1') echo ' checked="checked"' ?> /> <label class="conl" for="form_regs_allow_1"><strong><?php echo $lang_admin_common['Yes'] ?></strong></label>   <input type="radio" name="form[regs_allow]" id="form_regs_allow_0" value="0"<?php if ($pun_config['o_regs_allow'] == '0') echo ' checked="checked"' ?> /> <label class="conl" for="form_regs_allow_0"><strong><?php echo $lang_admin_common['No'] ?></strong></label> | 770: <label class="conl"><input type="radio" name="form[regs_allow]" value="1"<?php if ($pun_config['o_regs_allow'] == '1') echo ' checked="checked"' ?> /> <strong><?php echo $lang_admin_common['Yes'] ?></strong></label> |
747: <span><?php echo $lang_admin_options['Allow new help'] ?></span> | 771: <label class="conl"><input type="radio" name="form[regs_allow]" value="0"<?php if ($pun_config['o_regs_allow'] == '0') echo ' checked="checked"' ?> /> <strong><?php echo $lang_admin_common['No'] ?></strong></label> |
748: </td> | 772: <span class="clearb"><?php echo $lang_admin_options['Allow new help'] ?></span> |
773: </td> | |
749: </tr> | 774: </tr> |
750: <tr> | 775: <tr> |
751: <th scope="row"><?php echo $lang_admin_options['Verify label'] ?></th> | 776: <th scope="row"><?php echo $lang_admin_options['Verify label'] ?></th> |
752: <td> | 777: <td> |
753: <input type="radio" name="form[regs_verify]" id="form_regs_verify_1" value="1"<?php if ($pun_config['o_regs_verify'] == '1') echo ' checked="checked"' ?> /> <label class="conl" for="form_regs_verify_1"><strong><?php echo $lang_admin_common['Yes'] ?></strong></label>   <input type="radio" name="form[regs_verify]" id="form_regs_verify_0" value="0"<?php if ($pun_config['o_regs_verify'] == '0') echo ' checked="checked"' ?> /> <label class="conl" for="form_regs_verify_0"><strong><?php echo $lang_admin_common['No'] ?></strong></label> | 778: <label class="conl"><input type="radio" name="form[regs_verify]" value="1"<?php if ($pun_config['o_regs_verify'] == '1') echo ' checked="checked"' ?> /> <strong><?php echo $lang_admin_common['Yes'] ?></strong></label> |
754: <span><?php echo $lang_admin_options['Verify help'] ?></span> | 779: <label class="conl"><input type="radio" name="form[regs_verify]" value="0"<?php if ($pun_config['o_regs_verify'] == '0') echo ' checked="checked"' ?> /> <strong><?php echo $lang_admin_common['No'] ?></strong></label> |
780: <span class="clearb"><?php echo $lang_admin_options['Verify help'] ?></span> | |
755: </td> | 781: </td> |
756: </tr> | 782: </tr> |
757: <tr> | 783: <tr> |
758: <th scope="row"><?php echo $lang_admin_options['Report new label'] ?></th> | 784: <th scope="row"><?php echo $lang_admin_options['Report new label'] ?></th> |
759: <td> | 785: <td> |
760: <input type="radio" name="form[regs_report]" id="form_regs_report_1" value="1"<?php if ($pun_config['o_regs_report'] == '1') echo ' checked="checked"' ?> /> <label class="conl" for="form_regs_report_1"><strong><?php echo $lang_admin_common['Yes'] ?></strong></label>   <input type="radio" name="form[regs_report]" id="form_regs_report_0" value="0"<?php if ($pun_config['o_regs_report'] == '0') echo ' checked="checked"' ?> /> <label class="conl" for="form_regs_report_0"><strong><?php echo $lang_admin_common['No'] ?></strong></label> | 786: <label class="conl"><input type="radio" name="form[regs_report]" value="1"<?php if ($pun_config['o_regs_report'] == '1') echo ' checked="checked"' ?> /> <strong><?php echo $lang_admin_common['Yes'] ?></strong></label> |
761: <span><?php echo $lang_admin_options['Report new help'] ?></span> | 787: <label class="conl"><input type="radio" name="form[regs_report]" value="0"<?php if ($pun_config['o_regs_report'] == '0') echo ' checked="checked"' ?> /> <strong><?php echo $lang_admin_common['No'] ?></strong></label> |
788: <span class="clearb"><?php echo $lang_admin_options['Report new help'] ?></span> | |
762: </td> | 789: </td> |
763: </tr> | 790: </tr> |
764: <tr> | 791: <tr> |
765: <th scope="row"><?php echo $lang_admin_options['Use rules label'] ?></th> | 792: <th scope="row"><?php echo $lang_admin_options['Use rules label'] ?></th> |
766: <td> | 793: <td> |
767: <input type="radio" name="form[rules]" id="form_rules_1" value="1"<?php if ($pun_config['o_rules'] == '1') echo ' checked="checked"' ?> /> <label class="conl" for="form_rules_1"><strong><?php echo $lang_admin_common['Yes'] ?></strong></label>   <input type="radio" name="form[rules]" id="form_rules_0" value="0"<?php if ($pun_config['o_rules'] == '0') echo ' checked="checked"' ?> /> <label class="conl" for="form_rules_0"><strong><?php echo $lang_admin_common['No'] ?></strong></label> | 794: <label class="conl"><input type="radio" name="form[rules]" value="1"<?php if ($pun_config['o_rules'] == '1') echo ' checked="checked"' ?> /> <strong><?php echo $lang_admin_common['Yes'] ?></strong></label> |
768: <span><?php echo $lang_admin_options['Use rules help'] ?></span> | 795: <label class="conl"><input type="radio" name="form[rules]" value="0"<?php if ($pun_config['o_rules'] == '0') echo ' checked="checked"' ?> /> <strong><?php echo $lang_admin_common['No'] ?></strong></label> |
796: <span class="clearb"><?php echo $lang_admin_options['Use rules help'] ?></span> | |
769: </td> | 797: </td> |
770: </tr> | 798: </tr> |
771: <tr> | 799: <tr> |
779: <th scope="row"><?php echo $lang_admin_options['E-mail default label'] ?></th> | 807: <th scope="row"><?php echo $lang_admin_options['E-mail default label'] ?></th> |
780: <td> | 808: <td> |
781: <span><?php echo $lang_admin_options['E-mail default help'] ?></span> | 809: <span><?php echo $lang_admin_options['E-mail default help'] ?></span> |
782: <input type="radio" name="form[default_email_setting]" id="form_default_email_setting_0" value="0"<?php if ($pun_config['o_default_email_setting'] == '0') echo ' checked="checked"' ?> /> <?php echo $lang_admin_options['Display e-mail label'] ?><br /> | 810: <label><input type="radio" name="form[default_email_setting]" id="form_default_email_setting_0" value="0"<?php if ($pun_config['o_default_email_setting'] == '0') echo ' checked="checked"' ?> /> <?php echo $lang_admin_options['Display e-mail label'] ?></label> |
783: <input type="radio" name="form[default_email_setting]" id="form_default_email_setting_1" value="1"<?php if ($pun_config['o_default_email_setting'] == '1') echo ' checked="checked"' ?> /> <?php echo $lang_admin_options['Hide allow form label'] ?><br /> | 811: <label><input type="radio" name="form[default_email_setting]" id="form_default_email_setting_1" value="1"<?php if ($pun_config['o_default_email_setting'] == '1') echo ' checked="checked"' ?> /> <?php echo $lang_admin_options['Hide allow form label'] ?></label> |
784: <input type="radio" name="form[default_email_setting]" id="form_default_email_setting_2" value="2"<?php if ($pun_config['o_default_email_setting'] == '2') echo ' checked="checked"' ?> /> <?php echo $lang_admin_options['Hide both label'] ?><br /> | 812: <label><input type="radio" name="form[default_email_setting]" id="form_default_email_setting_2" value="2"<?php if ($pun_config['o_default_email_setting'] == '2') echo ' checked="checked"' ?> /> <?php echo $lang_admin_options['Hide both label'] ?></label> |
785: </td> | 813: </td> |
786: </tr> | 814: </tr> |
787: </table> | 815: </table> |
796: <tr> | 824: <tr> |
797: <th scope="row"><?php echo $lang_admin_options['Display announcement label'] ?></th> | 825: <th scope="row"><?php echo $lang_admin_options['Display announcement label'] ?></th> |
798: <td> | 826: <td> |
799: <input type="radio" name="form[announcement]" id="form_announcement_1" value="1"<?php if ($pun_config['o_announcement'] == '1') echo ' checked="checked"' ?> /> <label class="conl" for="form_announcement_1"><strong><?php echo $lang_admin_common['Yes'] ?></strong></label>   <input type="radio" name="form[announcement]" id="form_announcement_0" value="0"<?php if ($pun_config['o_announcement'] == '0') echo ' checked="checked"' ?> /> <label class="conl" for="form_announcement_0"><strong><?php echo $lang_admin_common['No'] ?></strong></label> | 827: <label class="conl"><input type="radio" name="form[announcement]" value="1"<?php if ($pun_config['o_announcement'] == '1') echo ' checked="checked"' ?> /> <strong><?php echo $lang_admin_common['Yes'] ?></strong></label> |
800: <span><?php echo $lang_admin_options['Display announcement help'] ?></span> | 828: <label class="conl"><input type="radio" name="form[announcement]" value="0"<?php if ($pun_config['o_announcement'] == '0') echo ' checked="checked"' ?> /> <strong><?php echo $lang_admin_common['No'] ?></strong></label> |
829: <span class="clearb"><?php echo $lang_admin_options['Display announcement help'] ?></span> | |
801: </td> | 830: </td> |
802: </tr> | 831: </tr> |
803: <tr> | 832: <tr> |
819: <tr> | 848: <tr> |
820: <th scope="row"><a name="maintenance"></a><?php echo $lang_admin_options['Maintenance mode label'] ?></th> | 849: <th scope="row"><a name="maintenance"></a><?php echo $lang_admin_options['Maintenance mode label'] ?></th> |
821: <td> | 850: <td> |
822: <input type="radio" name="form[maintenance]" id="form_maintenance_1" value="1"<?php if ($pun_config['o_maintenance'] == '1') echo ' checked="checked"' ?> /> <label class="conl" for="form_maintenance_1"><strong><?php echo $lang_admin_common['Yes'] ?></strong></label>   <input type="radio" name="form[maintenance]" id="form_maintenance_0" value="0"<?php if ($pun_config['o_maintenance'] == '0') echo ' checked="checked"' ?> /> <label class="conl" for="form_maintenance_0"><strong><?php echo $lang_admin_common['No'] ?></strong></label> | 851: <label class="conl"><input type="radio" name="form[maintenance]" value="1"<?php if ($pun_config['o_maintenance'] == '1') echo ' checked="checked"' ?> /> <strong><?php echo $lang_admin_common['Yes'] ?></strong></label> |
823: <span><?php echo $lang_admin_options['Maintenance mode help'] ?></span> | 852: <label class="conl"><input type="radio" name="form[maintenance]" value="0"<?php if ($pun_config['o_maintenance'] == '0') echo ' checked="checked"' ?> /> <strong><?php echo $lang_admin_common['No'] ?></strong></label> |
853: <span class="clearb"><?php echo $lang_admin_options['Maintenance mode help'] ?></span> | |
824: </td> | 854: </td> |
825: </tr> | 855: </tr> |
826: <tr> | 856: <tr> |
a/admin_permissions.php | b/admin_permissions.php |
---|---|
67: <tr> | 67: <tr> |
68: <th scope="row"><?php echo $lang_admin_permissions['BBCode label'] ?></th> | 68: <th scope="row"><?php echo $lang_admin_permissions['BBCode label'] ?></th> |
69: <td> | 69: <td> |
70: <input type="radio" name="form[message_bbcode]" value="1"<?php if ($pun_config['p_message_bbcode'] == '1') echo ' checked="checked"' ?> /> <strong><?php echo $lang_admin_common['Yes'] ?></strong>   <input type="radio" name="form[message_bbcode]" value="0"<?php if ($pun_config['p_message_bbcode'] == '0') echo ' checked="checked"' ?> /> <strong><?php echo $lang_admin_common['No'] ?></strong> | 70: <label class="conl"><input type="radio" name="form[message_bbcode]" value="1"<?php if ($pun_config['p_message_bbcode'] == '1') echo ' checked="checked"' ?> /> <strong><?php echo $lang_admin_common['Yes'] ?></strong></label> |
71: <span><?php echo $lang_admin_permissions['BBCode help'] ?></span> | 71: <label class="conl"><input type="radio" name="form[message_bbcode]" value="0"<?php if ($pun_config['p_message_bbcode'] == '0') echo ' checked="checked"' ?> /> <strong><?php echo $lang_admin_common['No'] ?></strong></label> |
72: <span class="clearb"><?php echo $lang_admin_permissions['BBCode help'] ?></span> | |
72: </td> | 73: </td> |
73: </tr> | 74: </tr> |
74: <tr> | 75: <tr> |
75: <th scope="row"><?php echo $lang_admin_permissions['Image tag label'] ?></th> | 76: <th scope="row"><?php echo $lang_admin_permissions['Image tag label'] ?></th> |
76: <td> | 77: <td> |
77: <input type="radio" name="form[message_img_tag]" value="1"<?php if ($pun_config['p_message_img_tag'] == '1') echo ' checked="checked"' ?> /> <strong><?php echo $lang_admin_common['Yes'] ?></strong>   <input type="radio" name="form[message_img_tag]" value="0"<?php if ($pun_config['p_message_img_tag'] == '0') echo ' checked="checked"' ?> /> <strong><?php echo $lang_admin_common['No'] ?></strong> | 78: <label class="conl"><input type="radio" name="form[message_img_tag]" value="1"<?php if ($pun_config['p_message_img_tag'] == '1') echo ' checked="checked"' ?> /> <strong><?php echo $lang_admin_common['Yes'] ?></strong></label> |
78: <span><?php echo $lang_admin_permissions['Image tag help'] ?></span> | 79: <label class="conl"><input type="radio" name="form[message_img_tag]" value="0"<?php if ($pun_config['p_message_img_tag'] == '0') echo ' checked="checked"' ?> /> <strong><?php echo $lang_admin_common['No'] ?></strong></label> |
80: <span class="clearb"><?php echo $lang_admin_permissions['Image tag help'] ?></span> | |
79: </td> | 81: </td> |
80: </tr> | 82: </tr> |
81: <tr> | 83: <tr> |
82: <th scope="row"><?php echo $lang_admin_permissions['All caps message label'] ?></th> | 84: <th scope="row"><?php echo $lang_admin_permissions['All caps message label'] ?></th> |
83: <td> | 85: <td> |
84: <input type="radio" name="form[message_all_caps]" value="1"<?php if ($pun_config['p_message_all_caps'] == '1') echo ' checked="checked"' ?> /> <strong><?php echo $lang_admin_common['Yes'] ?></strong>   <input type="radio" name="form[message_all_caps]" value="0"<?php if ($pun_config['p_message_all_caps'] == '0') echo ' checked="checked"' ?> /> <strong><?php echo $lang_admin_common['No'] ?></strong> | 86: <label class="conl"><input type="radio" name="form[message_all_caps]" value="1"<?php if ($pun_config['p_message_all_caps'] == '1') echo ' checked="checked"' ?> /> <strong><?php echo $lang_admin_common['Yes'] ?></strong></label> |
85: <span><?php echo $lang_admin_permissions['All caps message help'] ?></span> | 87: <label class="conl"><input type="radio" name="form[message_all_caps]" value="0"<?php if ($pun_config['p_message_all_caps'] == '0') echo ' checked="checked"' ?> /> <strong><?php echo $lang_admin_common['No'] ?></strong></label> |
88: <span class="clearb"><?php echo $lang_admin_permissions['All caps message help'] ?></span> | |
86: </td> | 89: </td> |
87: </tr> | 90: </tr> |
88: <tr> | 91: <tr> |
89: <th scope="row"><?php echo $lang_admin_permissions['All caps subject label'] ?></th> | 92: <th scope="row"><?php echo $lang_admin_permissions['All caps subject label'] ?></th> |
90: <td> | 93: <td> |
91: <input type="radio" name="form[subject_all_caps]" value="1"<?php if ($pun_config['p_subject_all_caps'] == '1') echo ' checked="checked"' ?> /> <strong><?php echo $lang_admin_common['Yes'] ?></strong>   <input type="radio" name="form[subject_all_caps]" value="0"<?php if ($pun_config['p_subject_all_caps'] == '0') echo ' checked="checked"' ?> /> <strong><?php echo $lang_admin_common['No'] ?></strong> | 94: <label class="conl"><input type="radio" name="form[subject_all_caps]" value="1"<?php if ($pun_config['p_subject_all_caps'] == '1') echo ' checked="checked"' ?> /> <strong><?php echo $lang_admin_common['Yes'] ?></strong></label> |
92: <span><?php echo $lang_admin_permissions['All caps subject help'] ?></span> | 95: <label class="conl"><input type="radio" name="form[subject_all_caps]" value="0"<?php if ($pun_config['p_subject_all_caps'] == '0') echo ' checked="checked"' ?> /> <strong><?php echo $lang_admin_common['No'] ?></strong></label> |
96: <span class="clearb"><?php echo $lang_admin_permissions['All caps subject help'] ?></span> | |
93: </td> | 97: </td> |
94: </tr> | 98: </tr> |
95: <tr> | 99: <tr> |
96: <th scope="row"><?php echo $lang_admin_permissions['Require e-mail label'] ?></th> | 100: <th scope="row"><?php echo $lang_admin_permissions['Require e-mail label'] ?></th> |
97: <td> | 101: <td> |
98: <input type="radio" name="form[force_guest_email]" value="1"<?php if ($pun_config['p_force_guest_email'] == '1') echo ' checked="checked"' ?> /> <strong><?php echo $lang_admin_common['Yes'] ?></strong>   <input type="radio" name="form[force_guest_email]" value="0"<?php if ($pun_config['p_force_guest_email'] == '0') echo ' checked="checked"' ?> /> <strong><?php echo $lang_admin_common['No'] ?></strong> | 102: <label class="conl"><input type="radio" name="form[force_guest_email]" value="1"<?php if ($pun_config['p_force_guest_email'] == '1') echo ' checked="checked"' ?> /> <strong><?php echo $lang_admin_common['Yes'] ?></strong></label> |
99: <span><?php echo $lang_admin_permissions['Require e-mail help'] ?></span> | 103: <label class="conl"><input type="radio" name="form[force_guest_email]" value="0"<?php if ($pun_config['p_force_guest_email'] == '0') echo ' checked="checked"' ?> /> <strong><?php echo $lang_admin_common['No'] ?></strong></label> |
104: <span class="clearb"><?php echo $lang_admin_permissions['Require e-mail help'] ?></span> | |
100: </td> | 105: </td> |
101: </tr> | 106: </tr> |
102: </table> | 107: </table> |
111: <tr> | 116: <tr> |
112: <th scope="row"><?php echo $lang_admin_permissions['BBCode sigs label'] ?></th> | 117: <th scope="row"><?php echo $lang_admin_permissions['BBCode sigs label'] ?></th> |
113: <td> | 118: <td> |
114: <input type="radio" name="form[sig_bbcode]" value="1"<?php if ($pun_config['p_sig_bbcode'] == '1') echo ' checked="checked"' ?> /> <strong><?php echo $lang_admin_common['Yes'] ?></strong>   <input type="radio" name="form[sig_bbcode]" value="0"<?php if ($pun_config['p_sig_bbcode'] == '0') echo ' checked="checked"' ?> /> <strong><?php echo $lang_admin_common['No'] ?></strong> | 119: <label class="conl"><input type="radio" name="form[sig_bbcode]" value="1"<?php if ($pun_config['p_sig_bbcode'] == '1') echo ' checked="checked"' ?> /> <strong><?php echo $lang_admin_common['Yes'] ?></strong></label> |
115: <span><?php echo $lang_admin_permissions['BBCode sigs help'] ?></span> | 120: <label class="conl"><input type="radio" name="form[sig_bbcode]" value="0"<?php if ($pun_config['p_sig_bbcode'] == '0') echo ' checked="checked"' ?> /> <strong><?php echo $lang_admin_common['No'] ?></strong></label> |
121: <span class="clearb"><?php echo $lang_admin_permissions['BBCode sigs help'] ?></span> | |
116: </td> | 122: </td> |
117: </tr> | 123: </tr> |
118: <tr> | 124: <tr> |
119: <th scope="row"><?php echo $lang_admin_permissions['Image tag sigs label'] ?></th> | 125: <th scope="row"><?php echo $lang_admin_permissions['Image tag sigs label'] ?></th> |
120: <td> | 126: <td> |
121: <input type="radio" name="form[sig_img_tag]" value="1"<?php if ($pun_config['p_sig_img_tag'] == '1') echo ' checked="checked"' ?> /> <strong><?php echo $lang_admin_common['Yes'] ?></strong>   <input type="radio" name="form[sig_img_tag]" value="0"<?php if ($pun_config['p_sig_img_tag'] == '0') echo ' checked="checked"' ?> /> <strong><?php echo $lang_admin_common['No'] ?></strong> | 127: <label class="conl"><input type="radio" name="form[sig_img_tag]" value="1"<?php if ($pun_config['p_sig_img_tag'] == '1') echo ' checked="checked"' ?> /> <strong><?php echo $lang_admin_common['Yes'] ?></strong></label> |
122: <span><?php echo $lang_admin_permissions['Image tag sigs help'] ?></span> | 128: <label class="conl"><input type="radio" name="form[sig_img_tag]" value="0"<?php if ($pun_config['p_sig_img_tag'] == '0') echo ' checked="checked"' ?> /> <strong><?php echo $lang_admin_common['No'] ?></strong></label> |
129: <span class="clearb"><?php echo $lang_admin_permissions['Image tag sigs help'] ?></span> | |
123: </td> | 130: </td> |
124: </tr> | 131: </tr> |
125: <tr> | 132: <tr> |
126: <th scope="row"><?php echo $lang_admin_permissions['All caps sigs label'] ?></th> | 133: <th scope="row"><?php echo $lang_admin_permissions['All caps sigs label'] ?></th> |
127: <td> | 134: <td> |
128: <input type="radio" name="form[sig_all_caps]" value="1"<?php if ($pun_config['p_sig_all_caps'] == '1') echo ' checked="checked"' ?> /> <strong><?php echo $lang_admin_common['Yes'] ?></strong>   <input type="radio" name="form[sig_all_caps]" value="0"<?php if ($pun_config['p_sig_all_caps'] == '0') echo ' checked="checked"' ?> /> <strong><?php echo $lang_admin_common['No'] ?></strong> | 135: <label class="conl"><input type="radio" name="form[sig_all_caps]" value="1"<?php if ($pun_config['p_sig_all_caps'] == '1') echo ' checked="checked"' ?> /> <strong><?php echo $lang_admin_common['Yes'] ?></strong></label> |
129: <span><?php echo $lang_admin_permissions['All caps sigs help'] ?></span> | 136: <label class="conl"><input type="radio" name="form[sig_all_caps]" value="0"<?php if ($pun_config['p_sig_all_caps'] == '0') echo ' checked="checked"' ?> /> <strong><?php echo $lang_admin_common['No'] ?></strong></label> |
137: <span class="clearb"><?php echo $lang_admin_permissions['All caps sigs help'] ?></span> | |
130: </td> | 138: </td> |
131: </tr> | 139: </tr> |
132: <tr> | 140: <tr> |
133: <th scope="row"><?php echo $lang_admin_permissions['Max sig length label'] ?></th> | 141: <th scope="row"><?php echo $lang_admin_permissions['Max sig length label'] ?></th> |
134: <td> | 142: <td> |
135: <input type="text" name="form[sig_length]" size="5" maxlength="5" value="<?php echo $pun_config['p_sig_length'] ?>" /> | 143: <input type="text" name="form[sig_length]" size="5" maxlength="5" value="<?php echo $pun_config['p_sig_length'] ?>" /> |
136: <span><?php echo $lang_admin_permissions['Max sig length help'] ?></span> | 144: <span class="clearb"><?php echo $lang_admin_permissions['Max sig length help'] ?></span> |
137: </td> | 145: </td> |
138: </tr> | 146: </tr> |
139: <tr> | 147: <tr> |
140: <th scope="row"><?php echo $lang_admin_permissions['Max sig lines label'] ?></th> | 148: <th scope="row"><?php echo $lang_admin_permissions['Max sig lines label'] ?></th> |
141: <td> | 149: <td> |
142: <input type="text" name="form[sig_lines]" size="3" maxlength="3" value="<?php echo $pun_config['p_sig_lines'] ?>" /> | 150: <input type="text" name="form[sig_lines]" size="3" maxlength="3" value="<?php echo $pun_config['p_sig_lines'] ?>" /> |
143: <span><?php echo $lang_admin_permissions['Max sig lines help'] ?></span> | 151: <span class="clearb"><?php echo $lang_admin_permissions['Max sig lines help'] ?></span> |
144: </td> | 152: </td> |
145: </tr> | 153: </tr> |
146: </table> | 154: </table> |
155: <tr> | 163: <tr> |
156: <th scope="row"><?php echo $lang_admin_permissions['Banned e-mail label'] ?></th> | 164: <th scope="row"><?php echo $lang_admin_permissions['Banned e-mail label'] ?></th> |
157: <td> | 165: <td> |
158: <input type="radio" name="form[allow_banned_email]" value="1"<?php if ($pun_config['p_allow_banned_email'] == '1') echo ' checked="checked"' ?> /> <strong><?php echo $lang_admin_common['Yes'] ?></strong>   <input type="radio" name="form[allow_banned_email]" value="0"<?php if ($pun_config['p_allow_banned_email'] == '0') echo ' checked="checked"' ?> /> <strong><?php echo $lang_admin_common['No'] ?></strong> | 166: <label class="conl"><input type="radio" name="form[allow_banned_email]" value="1"<?php if ($pun_config['p_allow_banned_email'] == '1') echo ' checked="checked"' ?> /> <strong><?php echo $lang_admin_common['Yes'] ?></strong></label> |
159: <span><?php echo $lang_admin_permissions['Banned e-mail help'] ?></span> | 167: <label class="conl"><input type="radio" name="form[allow_banned_email]" value="0"<?php if ($pun_config['p_allow_banned_email'] == '0') echo ' checked="checked"' ?> /> <strong><?php echo $lang_admin_common['No'] ?></strong></label> |
168: <span class="clearb"><?php echo $lang_admin_permissions['Banned e-mail help'] ?></span> | |
160: </td> | 169: </td> |
161: </tr> | 170: </tr> |
162: <tr> | 171: <tr> |
163: <th scope="row"><?php echo $lang_admin_permissions['Duplicate e-mail label'] ?></th> | 172: <th scope="row"><?php echo $lang_admin_permissions['Duplicate e-mail label'] ?></th> |
164: <td> | 173: <td> |
165: <input type="radio" name="form[allow_dupe_email]" value="1"<?php if ($pun_config['p_allow_dupe_email'] == '1') echo ' checked="checked"' ?> /> <strong><?php echo $lang_admin_common['Yes'] ?></strong>   <input type="radio" name="form[allow_dupe_email]" value="0"<?php if ($pun_config['p_allow_dupe_email'] == '0') echo ' checked="checked"' ?> /> <strong><?php echo $lang_admin_common['No'] ?></strong> | 174: <label class="conl"><input type="radio" name="form[allow_dupe_email]" value="1"<?php if ($pun_config['p_allow_dupe_email'] == '1') echo ' checked="checked"' ?> /> <strong><?php echo $lang_admin_common['Yes'] ?></strong></label> |
166: <span><?php echo $lang_admin_permissions['Duplicate e-mail help'] ?></span> | 175: <label class="conl"><input type="radio" name="form[allow_dupe_email]" value="0"<?php if ($pun_config['p_allow_dupe_email'] == '0') echo ' checked="checked"' ?> /> <strong><?php echo $lang_admin_common['No'] ?></strong></label> |
176: <span class="clearb"><?php echo $lang_admin_permissions['Duplicate e-mail help'] ?></span> | |
167: </td> | 177: </td> |
168: </tr> | 178: </tr> |
169: </table> | 179: </table> |
/dev/null | b/admin_statistics.php |
---|---|
1: <?php | |
2: | |
3: /** | |
4: * Copyright (C) 2008-2012 FluxBB | |
5: * based on code by Rickard Andersson copyright (C) 2002-2008 PunBB | |
6: * License: http://www.gnu.org/licenses/gpl.html GPL version 2 or higher | |
7: */ | |
8: | |
9: // Tell header.php to use the admin template | |
10: define('PUN_ADMIN_CONSOLE', 1); | |
11: | |
12: define('PUN_ROOT', dirname(__FILE__).'/'); | |
13: require PUN_ROOT.'include/common.php'; | |
14: require PUN_ROOT.'include/common_admin.php'; | |
15: | |
16: | |
17: if (!$pun_user['is_admmod']) | |
18: message($lang_common['No permission'], false, '403 Forbidden'); | |
19: | |
20: // Load the admin_index.php language file | |
21: require PUN_ROOT.'lang/'.$admin_language.'/admin_index.php'; | |
22: | |
23: $action = isset($_GET['action']) ? $_GET['action'] : null; | |
24: | |
25: | |
26: // Show phpinfo() output | |
27: if ($action == 'phpinfo' && $pun_user['g_id'] == PUN_ADMIN) | |
28: { | |
29: // Is phpinfo() a disabled function? | |
30: if (strpos(strtolower((string) ini_get('disable_functions')), 'phpinfo') !== false) | |
31: message($lang_admin_index['PHPinfo disabled message']); | |
32: | |
33: phpinfo(); | |
34: exit; | |
35: } | |
36: | |
37: | |
38: // Get the server load averages (if possible) | |
39: if (@file_exists('/proc/loadavg') && is_readable('/proc/loadavg')) | |
40: { | |
41: // We use @ just in case | |
42: $fh = @fopen('/proc/loadavg', 'r'); | |
43: $load_averages = @fread($fh, 64); | |
44: @fclose($fh); | |
45: | |
46: if (($fh = @fopen('/proc/loadavg', 'r'))) | |
47: { | |
48: $load_averages = fread($fh, 64); | |
49: fclose($fh); | |
50: } | |
51: else | |
52: $load_averages = ''; | |
53: | |
54: $load_averages = @explode(' ', $load_averages); | |
55: $server_load = isset($load_averages[2]) ? $load_averages[0].' '.$load_averages[1].' '.$load_averages[2] : $lang_admin_index['Not available']; | |
56: } | |
57: else if (!in_array(PHP_OS, array('WINNT', 'WIN32')) && preg_match('%averages?: ([0-9\.]+),?\s+([0-9\.]+),?\s+([0-9\.]+)%i', @exec('uptime'), $load_averages)) | |
58: $server_load = $load_averages[1].' '.$load_averages[2].' '.$load_averages[3]; | |
59: else | |
60: $server_load = $lang_admin_index['Not available']; | |
61: | |
62: | |
63: // Get number of current visitors | |
64: $result = $db->query('SELECT COUNT(user_id) FROM '.$db->prefix.'online WHERE idle=0') or error('Unable to fetch online count', __FILE__, __LINE__, $db->error()); | |
65: $num_online = $db->result($result); | |
66: | |
67: | |
68: // Collect some additional info about MySQL | |
69: if ($db_type == 'mysql' || $db_type == 'mysqli' || $db_type == 'mysql_innodb' || $db_type == 'mysqli_innodb') | |
70: { | |
71: // Calculate total db size/row count | |
72: $result = $db->query('SHOW TABLE STATUS LIKE \''.$db->prefix.'%\'') or error('Unable to fetch table status', __FILE__, __LINE__, $db->error()); | |
73: | |
74: $total_records = $total_size = 0; | |
75: while ($status = $db->fetch_assoc($result)) | |
76: { | |
77: $total_records += $status['Rows']; | |
78: $total_size += $status['Data_length'] + $status['Index_length']; | |
79: } | |
80: | |
81: $total_size = file_size($total_size); | |
82: } | |
83: | |
84: | |
85: // Check for the existence of various PHP opcode caches/optimizers | |
86: if (function_exists('mmcache')) | |
87: $php_accelerator = '<a href="http://'.$lang_admin_index['Turck MMCache link'].'">'.$lang_admin_index['Turck MMCache'].'</a>'; | |
88: else if (isset($_PHPA)) | |
89: $php_accelerator = '<a href="http://'.$lang_admin_index['ionCube PHP Accelerator link'].'">'.$lang_admin_index['ionCube PHP Accelerator'].'</a>'; | |
90: else if (ini_get('apc.enabled')) | |
91: $php_accelerator ='<a href="http://'.$lang_admin_index['Alternative PHP Cache (APC) link'].'">'.$lang_admin_index['Alternative PHP Cache (APC)'].'</a>'; | |
92: else if (ini_get('zend_optimizer.optimization_level')) | |
93: $php_accelerator = '<a href="http://'.$lang_admin_index['Zend Optimizer link'].'">'.$lang_admin_index['Zend Optimizer'].'</a>'; | |
94: else if (ini_get('eaccelerator.enable')) | |
95: $php_accelerator = '<a href="http://'.$lang_admin_index['eAccelerator link'].'">'.$lang_admin_index['eAccelerator'].'</a>'; | |
96: else if (ini_get('xcache.cacher')) | |
97: $php_accelerator = '<a href="http://'.$lang_admin_index['XCache link'].'">'.$lang_admin_index['XCache'].'</a>'; | |
98: else | |
99: $php_accelerator = $lang_admin_index['NA']; | |
100: | |
101: | |
102: $page_title = array(pun_htmlspecialchars($pun_config['o_board_title']), $lang_admin_common['Admin'], $lang_admin_common['Server statistics']); | |
103: define('PUN_ACTIVE_PAGE', 'admin'); | |
104: require PUN_ROOT.'header.php'; | |
105: | |
106: generate_admin_menu('index'); | |
107: | |
108: ?> | |
109: <div class="block"> | |
110: <h2><span><?php echo $lang_admin_index['Server statistics head'] ?></span></h2> | |
111: <div id="adstats" class="box"> | |
112: <div class="inbox"> | |
113: <dl> | |
114: <dt><?php echo $lang_admin_index['Server load label'] ?></dt> | |
115: <dd> | |
116: <?php printf($lang_admin_index['Server load data']."\n", $server_load, $num_online) ?> | |
117: </dd> | |
118: <?php if ($pun_user['g_id'] == PUN_ADMIN): ?> <dt><?php echo $lang_admin_index['Environment label'] ?></dt> | |
119: <dd> | |
120: <?php printf($lang_admin_index['Environment data OS'], PHP_OS) ?><br /> | |
121: <?php printf($lang_admin_index['Environment data version'], phpversion(), '<a href="admin_statistics.php?action=phpinfo">'.$lang_admin_index['Show info'].'</a>') ?><br /> | |
122: <?php printf($lang_admin_index['Environment data acc']."\n", $php_accelerator) ?> | |
123: </dd> | |
124: <dt><?php echo $lang_admin_index['Database label'] ?></dt> | |
125: <dd> | |
126: <?php echo implode(' ', $db->get_version())."\n" ?> | |
127: <?php if (isset($total_records) && isset($total_size)): ?> <br /><?php printf($lang_admin_index['Database data rows']."\n", forum_number_format($total_records)) ?> | |
128: <br /><?php printf($lang_admin_index['Database data size']."\n", $total_size) ?> | |
129: <?php endif; ?> </dd> | |
130: <?php endif; ?> | |
131: </dl> | |
132: </div> | |
133: </div> | |
134: </div> | |
135: <div class="clearer"></div> | |
136: </div> | |
137: <?php | |
138: | |
139: require PUN_ROOT.'footer.php'; |
a/admin_users.php | b/admin_users.php |
---|---|
83: | 83: |
84: ?> | 84: ?> |
85: <tr> | 85: <tr> |
86: <td class="tcl"><a href="moderate.php?get_host=<?php echo $cur_ip['poster_ip'] ?>"><?php echo $cur_ip['poster_ip'] ?></a></td> | 86: <td class="tcl"><a href="moderate.php?get_host=<?php echo pun_htmlspecialchars($cur_ip['poster_ip']) ?>"><?php echo pun_htmlspecialchars($cur_ip['poster_ip']) ?></a></td> |
87: <td class="tc2"><?php echo format_time($cur_ip['last_used']) ?></td> | 87: <td class="tc2"><?php echo format_time($cur_ip['last_used']) ?></td> |
88: <td class="tc3"><?php echo $cur_ip['used_times'] ?></td> | 88: <td class="tc3"><?php echo $cur_ip['used_times'] ?></td> |
89: <td class="tcr"><a href="admin_users.php?show_users=<?php echo $cur_ip['poster_ip'] ?>"><?php echo $lang_admin_users['Results find more link'] ?></a></td> | 89: <td class="tcr"><a href="admin_users.php?show_users=<?php echo pun_htmlspecialchars($cur_ip['poster_ip']) ?>"><?php echo $lang_admin_users['Results find more link'] ?></a></td> |
90: </tr> | 90: </tr> |
91: <?php | 91: <?php |
92: | 92: |
178: <tbody> | 178: <tbody> |
179: <?php | 179: <?php |
180: | 180: |
181: $result = $db->query('SELECT DISTINCT poster_id, poster FROM '.$db->prefix.'posts WHERE poster_ip=\''.$db->escape($ip).'\' ORDER BY poster DESC') or error('Unable to fetch post info', __FILE__, __LINE__, $db->error()); | 181: $result = $db->query('SELECT DISTINCT poster_id, poster FROM '.$db->prefix.'posts WHERE poster_ip=\''.$db->escape($ip).'\' ORDER BY poster ASC LIMIT '.$start_from.', 50') or error('Unable to fetch post info', __FILE__, __LINE__, $db->error()); |
182: $num_posts = $db->num_rows($result); | 182: $num_posts = $db->num_rows($result); |
183: | 183: |
184: if ($num_posts) | 184: if ($num_posts) |
185: { | 185: { |
186: // Loop through users and print out some info | 186: $posters = $poster_ids = array(); |
187: for ($i = 0; $i < $num_posts; ++$i) | 187: while ($cur_poster = $db->fetch_assoc($result)) |
188: { | 188: { |
189: list($poster_id, $poster) = $db->fetch_row($result); | 189: $posters[] = $cur_poster; |
190: $poster_ids[] = $cur_poster['poster_id']; | |
191: } | |
190: | 192: |
191: $result2 = $db->query('SELECT u.id, u.username, u.email, u.title, u.num_posts, u.admin_note, g.g_id, g.g_user_title FROM '.$db->prefix.'users AS u INNER JOIN '.$db->prefix.'groups AS g ON g.g_id=u.group_id WHERE u.id>1 AND u.id='.$poster_id) or error('Unable to fetch user info', __FILE__, __LINE__, $db->error()); | 193: $result = $db->query('SELECT u.id, u.username, u.email, u.title, u.num_posts, u.admin_note, g.g_id, g.g_user_title FROM '.$db->prefix.'users AS u INNER JOIN '.$db->prefix.'groups AS g ON g.g_id=u.group_id WHERE u.id>1 AND u.id IN('.implode(',', $poster_ids).')') or error('Unable to fetch user info', __FILE__, __LINE__, $db->error()); |
192: | 194: |
193: if (($user_data = $db->fetch_assoc($result2))) | 195: $user_data = array(); |
196: while ($cur_user = $db->fetch_assoc($result)) | |
197: $user_data[$cur_user['id']] = $cur_user; | |
198: | |
199: // Loop through users and print out some info | |
200: foreach ($posters as $cur_poster) | |
201: { | |
202: if (isset($user_data[$cur_poster['poster_id']])) | |
194: { | 203: { |
195: $user_title = get_title($user_data); | 204: $user_title = get_title($user_data[$cur_poster['poster_id']]); |
196: | 205: |
197: $actions = '<a href="admin_users.php?ip_stats='.$user_data['id'].'">'.$lang_admin_users['Results view IP link'].'</a> | <a href="search.php?action=show_user_posts&user_id='.$user_data['id'].'">'.$lang_admin_users['Results show posts link'].'</a>'; | 206: $actions = '<a href="admin_users.php?ip_stats='.$user_data[$cur_poster['poster_id']]['id'].'">'.$lang_admin_users['Results view IP link'].'</a> | <a href="search.php?action=show_user_posts&user_id='.$user_data[$cur_poster['poster_id']]['id'].'">'.$lang_admin_users['Results show posts link'].'</a>'; |
198: | 207: |
199: ?> | 208: ?> |
200: <tr> | 209: <tr> |
201: <td class="tcl"><?php echo '<a href="profile.php?id='.$user_data['id'].'">'.pun_htmlspecialchars($user_data['username']).'</a>' ?></td> | 210: <td class="tcl"><?php echo '<a href="profile.php?id='.$user_data[$cur_poster['poster_id']]['id'].'">'.pun_htmlspecialchars($user_data[$cur_poster['poster_id']]['username']).'</a>' ?></td> |
202: <td class="tc2"><a href="mailto:<?php echo $user_data['email'] ?>"><?php echo $user_data['email'] ?></a></td> | 211: <td class="tc2"><a href="mailto:<?php echo $user_data[$cur_poster['poster_id']]['email'] ?>"><?php echo $user_data[$cur_poster['poster_id']]['email'] ?></a></td> |
203: <td class="tc3"><?php echo $user_title ?></td> | 212: <td class="tc3"><?php echo $user_title ?></td> |
204: <td class="tc4"><?php echo forum_number_format($user_data['num_posts']) ?></td> | 213: <td class="tc4"><?php echo forum_number_format($user_data[$cur_poster['poster_id']]['num_posts']) ?></td> |
205: <td class="tc5"><?php echo ($user_data['admin_note'] != '') ? pun_htmlspecialchars($user_data['admin_note']) : ' ' ?></td> | 214: <td class="tc5"><?php echo ($user_data[$cur_poster['poster_id']]['admin_note'] != '') ? pun_htmlspecialchars($user_data[$cur_poster['poster_id']]['admin_note']) : ' ' ?></td> |
206: <td class="tcr"><?php echo $actions ?></td> | 215: <td class="tcr"><?php echo $actions ?></td> |
207: </tr> | 216: </tr> |
208: <?php | 217: <?php |
213: | 222: |
214: ?> | 223: ?> |
215: <tr> | 224: <tr> |
216: <td class="tcl"><?php echo pun_htmlspecialchars($poster) ?></td> | 225: <td class="tcl"><?php echo pun_htmlspecialchars($cur_poster['poster']) ?></td> |
217: <td class="tc2"> </td> | 226: <td class="tc2"> </td> |
218: <td class="tc3"><?php echo $lang_admin_users['Results guest'] ?></td> | 227: <td class="tc3"><?php echo $lang_admin_users['Results guest'] ?></td> |
219: <td class="tc4"> </td> | 228: <td class="tc4"> </td> |
652: <tr> | 661: <tr> |
653: <th scope="row"><?php echo $lang_admin_users['Ban IP label'] ?></th> | 662: <th scope="row"><?php echo $lang_admin_users['Ban IP label'] ?></th> |
654: <td> | 663: <td> |
655: <input type="radio" name="ban_the_ip" tabindex="3" value="1" checked="checked" /> <strong><?php echo $lang_admin_common['Yes'] ?></strong>   <input type="radio" name="ban_the_ip" tabindex="4" value="0" checked="checked" /> <strong><?php echo $lang_admin_common['No'] ?></strong> | 664: <label class="conl"><input type="radio" name="ban_the_ip" tabindex="3" value="1" checked="checked" /> <strong><?php echo $lang_admin_common['Yes'] ?></strong></label> |
656: <span><?php echo $lang_admin_users['Ban IP help'] ?></span> | 665: <label class="conl"><input type="radio" name="ban_the_ip" tabindex="4" value="0" checked="checked" /> <strong><?php echo $lang_admin_common['No'] ?></strong></label> |
666: <span class="clearb"><?php echo $lang_admin_users['Ban IP help'] ?></span> | |
657: </td> | 667: </td> |
658: </tr> | 668: </tr> |
659: </table> | 669: </table> |
a/db_update.php | b/db_update.php |
---|---|
7: */ | 7: */ |
8: | 8: |
9: // The FluxBB version this script updates to | 9: // The FluxBB version this script updates to |
10: define('UPDATE_TO', '1.5.0'); | 10: define('UPDATE_TO', '1.5.2'); |
11: | 11: |
12: define('UPDATE_TO_DB_REVISION', 18); | 12: define('UPDATE_TO_DB_REVISION', 18); |
13: define('UPDATE_TO_SI_REVISION', 2); | 13: define('UPDATE_TO_SI_REVISION', 2); |
358: $end_at = 0; | 358: $end_at = 0; |
359: if ($mysql) | 359: if ($mysql) |
360: { | 360: { |
361: // Only set up the tables if we are doing this in 1 go, or its the first go | 361: // Only set up the tables if we are doing this in 1 go, or it's the first go |
362: if (is_null($start_at) || $start_at == 0) | 362: if (is_null($start_at) || $start_at == 0) |
363: { | 363: { |
364: // Drop any temp table that exists, in-case it's left over from a failed update | 364: // Drop any temp table that exists, in-case it's left over from a failed update |
400: $finished = $db->num_rows($result) == 0; | 400: $finished = $db->num_rows($result) == 0; |
401: } | 401: } |
402: | 402: |
403: // Only swap the tables if we are doing this in 1 go, or its the last go | 403: // Only swap the tables if we are doing this in 1 go, or it's the last go |
404: if ($finished) | 404: if ($finished) |
405: { | 405: { |
406: // Delete old table | 406: // Delete old table |
713: // Add the DST option to the users table | 713: // Add the DST option to the users table |
714: $db->add_field('users', 'dst', 'TINYINT(1)', false, 0, 'timezone') or error('Unable to add dst field', __FILE__, __LINE__, $db->error()); | 714: $db->add_field('users', 'dst', 'TINYINT(1)', false, 0, 'timezone') or error('Unable to add dst field', __FILE__, __LINE__, $db->error()); |
715: | 715: |
716: // Add the last_post field to the online table | 716: // Add the last_post column to the online table |
717: $db->add_field('online', 'last_post', 'INT(10) UNSIGNED', true, null, null) or error('Unable to add last_post field', __FILE__, __LINE__, $db->error()); | 717: $db->add_field('online', 'last_post', 'INT(10) UNSIGNED', true, null, null) or error('Unable to add last_post field', __FILE__, __LINE__, $db->error()); |
718: | 718: |
719: // Add the last_search field to the online table | 719: // Add the last_search column to the online table |
720: $db->add_field('online', 'last_search', 'INT(10) UNSIGNED', true, null, null) or error('Unable to add last_search field', __FILE__, __LINE__, $db->error()); | 720: $db->add_field('online', 'last_search', 'INT(10) UNSIGNED', true, null, null) or error('Unable to add last_search field', __FILE__, __LINE__, $db->error()); |
721: | 721: |
722: // Add the last_search column to the users table | 722: // Add the last_search column to the users table |
975: if (!$db->add_index('users', 'username_idx', array($field), true)) | 975: if (!$db->add_index('users', 'username_idx', array($field), true)) |
976: $db->add_index('users', 'username_idx', array($field)) or error('Unable to add username_idx field', __FILE__, __LINE__, $db->error()); | 976: $db->add_index('users', 'username_idx', array($field)) or error('Unable to add username_idx field', __FILE__, __LINE__, $db->error()); |
977: | 977: |
978: // Add g_view_users field to groups table | 978: // Add g_view_users column to groups table |
979: $db->add_field('groups', 'g_view_users', 'TINYINT(1)', false, 1, 'g_read_board') or error('Unable to add g_view_users field', __FILE__, __LINE__, $db->error()); | 979: $db->add_field('groups', 'g_view_users', 'TINYINT(1)', false, 1, 'g_read_board') or error('Unable to add g_view_users field', __FILE__, __LINE__, $db->error()); |
980: | 980: |
981: // Add the last_email_sent column to the users table and the g_send_email and | 981: // Add the last_email_sent column to the users table and the g_send_email and |
1019: $db->add_field('users', 'time_format', 'TINYINT(1)', false, 0, 'dst') or error('Unable to add time_format field', __FILE__, __LINE__, $db->error()); | 1019: $db->add_field('users', 'time_format', 'TINYINT(1)', false, 0, 'dst') or error('Unable to add time_format field', __FILE__, __LINE__, $db->error()); |
1020: $db->add_field('users', 'date_format', 'TINYINT(1)', false, 0, 'dst') or error('Unable to add date_format field', __FILE__, __LINE__, $db->error()); | 1020: $db->add_field('users', 'date_format', 'TINYINT(1)', false, 0, 'dst') or error('Unable to add date_format field', __FILE__, __LINE__, $db->error()); |
1021: | 1021: |
1022: // Change the search_data field to mediumtext | 1022: // Change the search_data column to mediumtext |
1023: $db->alter_field('search_cache', 'search_data', 'MEDIUMTEXT', true) or error('Unable to alter search_data field', __FILE__, __LINE__, $db->error()); | 1023: $db->alter_field('search_cache', 'search_data', 'MEDIUMTEXT', true) or error('Unable to alter search_data field', __FILE__, __LINE__, $db->error()); |
1024: | 1024: |
1025: // Add the group promotion fields to the groups table | 1025: // Add the group promotion columns to the groups table |
1026: $db->add_field('groups', 'g_promote_min_posts', 'INT(10) UNSIGNED', false, 0, 'g_user_title') or error('Unable to add g_promote_min_posts field', __FILE__, __LINE__, $db->error()); | 1026: $db->add_field('groups', 'g_promote_min_posts', 'INT(10) UNSIGNED', false, 0, 'g_user_title') or error('Unable to add g_promote_min_posts field', __FILE__, __LINE__, $db->error()); |
1027: $db->add_field('groups', 'g_promote_next_group', 'INT(10) UNSIGNED', false, 0, 'g_promote_min_posts') or error('Unable to add g_promote_next_group field', __FILE__, __LINE__, $db->error()); | 1027: $db->add_field('groups', 'g_promote_next_group', 'INT(10) UNSIGNED', false, 0, 'g_promote_min_posts') or error('Unable to add g_promote_next_group field', __FILE__, __LINE__, $db->error()); |
1028: | 1028: |
1029: // Add a field for the per-group permission to post links | 1029: // Add a field for the per-group permission to post links |
1030: $db->add_field('groups', 'g_post_links', 'TINYINT(1)', false, 1, 'g_delete_topics') or error('Unable to add per-group permission to post links', __FILE__, __LINE__, $db->error()); | 1030: $db->add_field('groups', 'g_post_links', 'TINYINT(1)', false, 1, 'g_delete_topics') or error('Unable to add per-group permission to post links', __FILE__, __LINE__, $db->error()); |
1031: | 1031: |
1032: // Incase we had the fulltext search extension installed (1.3-legacy), remove it | 1032: // In case we had the fulltext search extension installed (1.3-legacy), remove it |
1033: $db->drop_index('topics', 'subject_idx') or error('Unable to drop subject_idx index', __FILE__, __LINE__, $db->error()); | 1033: $db->drop_index('topics', 'subject_idx') or error('Unable to drop subject_idx index', __FILE__, __LINE__, $db->error()); |
1034: $db->drop_index('posts', 'message_idx') or error('Unable to drop message_idx index', __FILE__, __LINE__, $db->error()); | 1034: $db->drop_index('posts', 'message_idx') or error('Unable to drop message_idx index', __FILE__, __LINE__, $db->error()); |
1035: // Incase we had the fulltext search mod installed (1.2), remove it | 1035: // In case we had the fulltext search mod installed (1.2), remove it |
1036: $db->drop_index('topics', 'subject_fulltext_search') or error('Unable to drop subject_fulltext_search index', __FILE__, __LINE__, $db->error()); | 1036: $db->drop_index('topics', 'subject_fulltext_search') or error('Unable to drop subject_fulltext_search index', __FILE__, __LINE__, $db->error()); |
1037: $db->drop_index('posts', 'message_fulltext_search') or error('Unable to drop message_fulltext_search index', __FILE__, __LINE__, $db->error()); | 1037: $db->drop_index('posts', 'message_fulltext_search') or error('Unable to drop message_fulltext_search index', __FILE__, __LINE__, $db->error()); |
1038: | 1038: |
a/delete.php | b/delete.php |
---|---|
55: | 55: |
56: if ($is_topic_post) | 56: if ($is_topic_post) |
57: { | 57: { |
58: // Delete the topic and all of it's posts | 58: // Delete the topic and all of its posts |
59: delete_topic($cur_post['tid']); | 59: delete_topic($cur_post['tid']); |
60: update_forum($cur_post['fid']); | 60: update_forum($cur_post['fid']); |
61: | 61: |
a/edit.php | b/edit.php |
---|---|
44: !$is_admmod) | 44: !$is_admmod) |
45: message($lang_common['No permission'], false, '403 Forbidden'); | 45: message($lang_common['No permission'], false, '403 Forbidden'); |
46: | 46: |
47: // Load the post.php/edit.php language file | 47: // Load the post.php language file |
48: require PUN_ROOT.'lang/'.$pun_user['language'].'/post.php'; | 48: require PUN_ROOT.'lang/'.$pun_user['language'].'/post.php'; |
49: | 49: |
50: // Start with a clean slate | 50: // Start with a clean slate |
226: <textarea name="req_message" rows="20" cols="95" tabindex="<?php echo $cur_index++ ?>"><?php echo pun_htmlspecialchars(isset($_POST['req_message']) ? $message : $cur_post['message']) ?></textarea><br /></label> | 226: <textarea name="req_message" rows="20" cols="95" tabindex="<?php echo $cur_index++ ?>"><?php echo pun_htmlspecialchars(isset($_POST['req_message']) ? $message : $cur_post['message']) ?></textarea><br /></label> |
227: <ul class="bblinks"> | 227: <ul class="bblinks"> |
228: <li><span><a href="help.php#bbcode" onclick="window.open(this.href); return false;"><?php echo $lang_common['BBCode'] ?></a> <?php echo ($pun_config['p_message_bbcode'] == '1') ? $lang_common['on'] : $lang_common['off']; ?></span></li> | 228: <li><span><a href="help.php#bbcode" onclick="window.open(this.href); return false;"><?php echo $lang_common['BBCode'] ?></a> <?php echo ($pun_config['p_message_bbcode'] == '1') ? $lang_common['on'] : $lang_common['off']; ?></span></li> |
229: <li><span><a href="help.php#url" onclick="window.open(this.href); return false;"><?php echo $lang_common['url tag'] ?></a> <?php echo ($pun_config['p_message_bbcode'] == '1' && $pun_user['g_post_links'] == '1') ? $lang_common['on'] : $lang_common['off']; ?></span> | 229: <li><span><a href="help.php#url" onclick="window.open(this.href); return false;"><?php echo $lang_common['url tag'] ?></a> <?php echo ($pun_config['p_message_bbcode'] == '1' && $pun_user['g_post_links'] == '1') ? $lang_common['on'] : $lang_common['off']; ?></span></li> |
230: <li><span><a href="help.php#img" onclick="window.open(this.href); return false;"><?php echo $lang_common['img tag'] ?></a> <?php echo ($pun_config['p_message_bbcode'] == '1' && $pun_config['p_message_img_tag'] == '1') ? $lang_common['on'] : $lang_common['off']; ?></span></li> | 230: <li><span><a href="help.php#img" onclick="window.open(this.href); return false;"><?php echo $lang_common['img tag'] ?></a> <?php echo ($pun_config['p_message_bbcode'] == '1' && $pun_config['p_message_img_tag'] == '1') ? $lang_common['on'] : $lang_common['off']; ?></span></li> |
231: <li><span><a href="help.php#smilies" onclick="window.open(this.href); return false;"><?php echo $lang_common['Smilies'] ?></a> <?php echo ($pun_config['o_smilies'] == '1') ? $lang_common['on'] : $lang_common['off']; ?></span></li> | 231: <li><span><a href="help.php#smilies" onclick="window.open(this.href); return false;"><?php echo $lang_common['Smilies'] ?></a> <?php echo ($pun_config['o_smilies'] == '1') ? $lang_common['on'] : $lang_common['off']; ?></span></li> |
232: </ul> | 232: </ul> |
a/header.php | b/header.php |
---|---|
41: $tpl_main = file_get_contents($tpl_file); | 41: $tpl_main = file_get_contents($tpl_file); |
42: | 42: |
43: // START SUBST - <pun_include "*"> | 43: // START SUBST - <pun_include "*"> |
44: preg_match_all('%<pun_include "([^/\\\\]*?)\.(php[45]?|inc|html?|txt)">%i', $tpl_main, $pun_includes, PREG_SET_ORDER); | 44: preg_match_all('%<pun_include "([^"]+)">%i', $tpl_main, $pun_includes, PREG_SET_ORDER); |
45: | 45: |
46: foreach ($pun_includes as $cur_include) | 46: foreach ($pun_includes as $cur_include) |
47: { | 47: { |
48: ob_start(); | 48: ob_start(); |
49: | 49: |
50: $file_info = pathinfo($cur_include[1]); | |
51: | |
52: if (!in_array($file_info['extension'], array('php', 'php4', 'php5', 'inc', 'html', 'txt'))) // Allow some extensions | |
53: error(sprintf($lang_common['Pun include extension'], pun_htmlspecialchars($cur_include[0]), basename($tpl_file), pun_htmlspecialchars($file_info['extension']))); | |
54: | |
55: if (strpos($file_info['dirname'], '..') !== false) // Don't allow directory traversal | |
56: error(sprintf($lang_common['Pun include directory'], pun_htmlspecialchars($cur_include[0]), basename($tpl_file))); | |
57: | |
50: // Allow for overriding user includes, too. | 58: // Allow for overriding user includes, too. |
51: if (file_exists($tpl_inc_dir.$cur_include[1].'.'.$cur_include[2])) | 59: if (file_exists($tpl_inc_dir.$cur_include[1])) |
52: require $tpl_inc_dir.$cur_include[1].'.'.$cur_include[2]; | 60: require $tpl_inc_dir.$cur_include[1]; |
53: else if (file_exists(PUN_ROOT.'include/user/'.$cur_include[1].'.'.$cur_include[2])) | 61: else if (file_exists(PUN_ROOT.'include/user/'.$cur_include[1])) |
54: require PUN_ROOT.'include/user/'.$cur_include[1].'.'.$cur_include[2]; | 62: require PUN_ROOT.'include/user/'.$cur_include[1]; |
55: else | 63: else |
56: error(sprintf($lang_common['Pun include error'], htmlspecialchars($cur_include[0]), basename($tpl_file))); | 64: error(sprintf($lang_common['Pun include error'], pun_htmlspecialchars($cur_include[0]), basename($tpl_file))); |
57: | 65: |
58: $tpl_temp = ob_get_contents(); | 66: $tpl_temp = ob_get_contents(); |
59: $tpl_main = str_replace($cur_include[0], $tpl_temp, $tpl_main); | 67: $tpl_main = str_replace($cur_include[0], $tpl_temp, $tpl_main); |
75: // START SUBST - <pun_head> | 83: // START SUBST - <pun_head> |
76: ob_start(); | 84: ob_start(); |
77: | 85: |
78: // Define $p if its not set to avoid a PHP notice | 86: // Define $p if it's not set to avoid a PHP notice |
79: $p = isset($p) ? $p : null; | 87: $p = isset($p) ? $p : null; |
80: | 88: |
81: // Is this a page that we want search index spiders to index? | 89: // Is this a page that we want search index spiders to index? |
a/help.php | b/help.php |
---|---|
56: <p><a name="url"></a><code>[url=<?php echo pun_htmlspecialchars(get_base_url(true).'/') ?>]<?php echo pun_htmlspecialchars($pun_config['o_board_title']) ?>[/url]</code> <?php echo $lang_help['produces'] ?> <samp><a href="<?php echo pun_htmlspecialchars(get_base_url(true).'/') ?>"><?php echo pun_htmlspecialchars($pun_config['o_board_title']) ?></a></samp></p> | 56: <p><a name="url"></a><code>[url=<?php echo pun_htmlspecialchars(get_base_url(true).'/') ?>]<?php echo pun_htmlspecialchars($pun_config['o_board_title']) ?>[/url]</code> <?php echo $lang_help['produces'] ?> <samp><a href="<?php echo pun_htmlspecialchars(get_base_url(true).'/') ?>"><?php echo pun_htmlspecialchars($pun_config['o_board_title']) ?></a></samp></p> |
57: <p><code>[url]<?php echo pun_htmlspecialchars(get_base_url(true).'/') ?>[/url]</code> <?php echo $lang_help['produces'] ?> <samp><a href="<?php echo pun_htmlspecialchars(get_base_url(true).'/') ?>"><?php echo pun_htmlspecialchars(get_base_url(true).'/') ?></a></samp></p> | 57: <p><code>[url]<?php echo pun_htmlspecialchars(get_base_url(true).'/') ?>[/url]</code> <?php echo $lang_help['produces'] ?> <samp><a href="<?php echo pun_htmlspecialchars(get_base_url(true).'/') ?>"><?php echo pun_htmlspecialchars(get_base_url(true).'/') ?></a></samp></p> |
58: <p><code>[url=/help.php]<?php echo $lang_help['This help page'] ?>[/url]</code> <?php echo $lang_help['produces'] ?> <samp><a href="<?php echo pun_htmlspecialchars(get_base_url(true).'/help.php') ?>"><?php echo $lang_help['This help page'] ?></a></samp></p> | 58: <p><code>[url=/help.php]<?php echo $lang_help['This help page'] ?>[/url]</code> <?php echo $lang_help['produces'] ?> <samp><a href="<?php echo pun_htmlspecialchars(get_base_url(true).'/help.php') ?>"><?php echo $lang_help['This help page'] ?></a></samp></p> |
59: <p><code>[email]myname@mydomain.com[/email]</code> <?php echo $lang_help['produces'] ?> <samp><a href="mailto:myname@mydomain.com">myname@mydomain.com</a></samp></p> | 59: <p><code>[email]myname@example.com[/email]</code> <?php echo $lang_help['produces'] ?> <samp><a href="mailto:myname@example.com">myname@example.com</a></samp></p> |
60: <p><code>[email=myname@mydomain.com]<?php echo $lang_help['My email address'] ?>[/email]</code> <?php echo $lang_help['produces'] ?> <samp><a href="mailto:myname@mydomain.com"><?php echo $lang_help['My email address'] ?></a></samp></p> | 60: <p><code>[email=myname@example.com]<?php echo $lang_help['My email address'] ?>[/email]</code> <?php echo $lang_help['produces'] ?> <samp><a href="mailto:myname@example.com"><?php echo $lang_help['My email address'] ?></a></samp></p> |
61: <p><code>[topic=1]<?php echo $lang_help['Test topic'] ?>[/topic]</code> <?php echo $lang_help['produces'] ?> <samp><a href="<?php echo pun_htmlspecialchars(get_base_url(true).'/viewtopic.php?id=1') ?>"><?php echo $lang_help['Test topic'] ?></a></samp></p> | 61: <p><code>[topic=1]<?php echo $lang_help['Test topic'] ?>[/topic]</code> <?php echo $lang_help['produces'] ?> <samp><a href="<?php echo pun_htmlspecialchars(get_base_url(true).'/viewtopic.php?id=1') ?>"><?php echo $lang_help['Test topic'] ?></a></samp></p> |
62: <p><code>[topic]1[/topic]</code> <?php echo $lang_help['produces'] ?> <samp><a href="<?php echo pun_htmlspecialchars(get_base_url(true).'/viewtopic.php?id=1') ?>"><?php echo pun_htmlspecialchars(get_base_url(true).'/viewtopic.php?id=1') ?></a></samp></p> | 62: <p><code>[topic]1[/topic]</code> <?php echo $lang_help['produces'] ?> <samp><a href="<?php echo pun_htmlspecialchars(get_base_url(true).'/viewtopic.php?id=1') ?>"><?php echo pun_htmlspecialchars(get_base_url(true).'/viewtopic.php?id=1') ?></a></samp></p> |
63: <p><code>[post=1]<?php echo $lang_help['Test post'] ?>[/post]</code> <?php echo $lang_help['produces'] ?> <samp><a href="<?php echo pun_htmlspecialchars(get_base_url(true).'/viewtopic.php?pid=1#p1') ?>"><?php echo $lang_help['Test post'] ?></a></samp></p> | 63: <p><code>[post=1]<?php echo $lang_help['Test post'] ?>[/post]</code> <?php echo $lang_help['produces'] ?> <samp><a href="<?php echo pun_htmlspecialchars(get_base_url(true).'/viewtopic.php?pid=1#p1') ?>"><?php echo $lang_help['Test post'] ?></a></samp></p> |
a/include/common.php | b/include/common.php |
---|---|
10: exit('The constant PUN_ROOT must be defined and point to a valid FluxBB installation root directory.'); | 10: exit('The constant PUN_ROOT must be defined and point to a valid FluxBB installation root directory.'); |
11: | 11: |
12: // Define the version and database revision that this code was written for | 12: // Define the version and database revision that this code was written for |
13: define('FORUM_VERSION', '1.5.0'); | 13: define('FORUM_VERSION', '1.5.2'); |
14: | 14: |
15: define('FORUM_DB_REVISION', 18); | 15: define('FORUM_DB_REVISION', 18); |
16: define('FORUM_SI_REVISION', 2); | 16: define('FORUM_SI_REVISION', 2); |
a/include/dblayer/mysql.php | b/include/dblayer/mysql.php |
---|---|
303: | 303: |
304: function rename_table($old_table, $new_table, $no_prefix = false) | 304: function rename_table($old_table, $new_table, $no_prefix = false) |
305: { | 305: { |
306: // If there new table exists and the old one doesn't, then we're happy | 306: // If the new table exists and the old one doesn't, then we're happy |
307: if ($this->table_exists($new_table, $no_prefix) && !$this->table_exists($old_table, $no_prefix)) | 307: if ($this->table_exists($new_table, $no_prefix) && !$this->table_exists($old_table, $no_prefix)) |
308: return true; | 308: return true; |
309: | 309: |
321: if (!is_null($default_value) && !is_int($default_value) && !is_float($default_value)) | 321: if (!is_null($default_value) && !is_int($default_value) && !is_float($default_value)) |
322: $default_value = '\''.$this->escape($default_value).'\''; | 322: $default_value = '\''.$this->escape($default_value).'\''; |
323: | 323: |
324: return $this->query('ALTER TABLE '.($no_prefix ? '' : $this->prefix).$table_name.' ADD '.$field_name.' '.$field_type.($allow_null ? ' ' : ' NOT NULL').(!is_null($default_value) ? ' DEFAULT '.$default_value : ' ').(!is_null($after_field) ? ' AFTER '.$after_field : '')) ? true : false; | 324: return $this->query('ALTER TABLE '.($no_prefix ? '' : $this->prefix).$table_name.' ADD '.$field_name.' '.$field_type.($allow_null ? '' : ' NOT NULL').(!is_null($default_value) ? ' DEFAULT '.$default_value : '').(!is_null($after_field) ? ' AFTER '.$after_field : '')) ? true : false; |
325: } | 325: } |
326: | 326: |
327: | 327: |
335: if (!is_null($default_value) && !is_int($default_value) && !is_float($default_value)) | 335: if (!is_null($default_value) && !is_int($default_value) && !is_float($default_value)) |
336: $default_value = '\''.$this->escape($default_value).'\''; | 336: $default_value = '\''.$this->escape($default_value).'\''; |
337: | 337: |
338: return $this->query('ALTER TABLE '.($no_prefix ? '' : $this->prefix).$table_name.' MODIFY '.$field_name.' '.$field_type.($allow_null ? ' ' : ' NOT NULL').(!is_null($default_value) ? ' DEFAULT '.$default_value : ' ').(!is_null($after_field) ? ' AFTER '.$after_field : '')) ? true : false; | 338: return $this->query('ALTER TABLE '.($no_prefix ? '' : $this->prefix).$table_name.' MODIFY '.$field_name.' '.$field_type.($allow_null ? '' : ' NOT NULL').(!is_null($default_value) ? ' DEFAULT '.$default_value : '').(!is_null($after_field) ? ' AFTER '.$after_field : '')) ? true : false; |
339: } | 339: } |
340: | 340: |
341: | 341: |
a/include/dblayer/mysql_innodb.php | b/include/dblayer/mysql_innodb.php |
---|---|
317: | 317: |
318: function rename_table($old_table, $new_table, $no_prefix = false) | 318: function rename_table($old_table, $new_table, $no_prefix = false) |
319: { | 319: { |
320: // If there new table exists and the old one doesn't, then we're happy | 320: // If the new table exists and the old one doesn't, then we're happy |
321: if ($this->table_exists($new_table, $no_prefix) && !$this->table_exists($old_table, $no_prefix)) | 321: if ($this->table_exists($new_table, $no_prefix) && !$this->table_exists($old_table, $no_prefix)) |
322: return true; | 322: return true; |
323: | 323: |
335: if (!is_null($default_value) && !is_int($default_value) && !is_float($default_value)) | 335: if (!is_null($default_value) && !is_int($default_value) && !is_float($default_value)) |
336: $default_value = '\''.$this->escape($default_value).'\''; | 336: $default_value = '\''.$this->escape($default_value).'\''; |
337: | 337: |
338: return $this->query('ALTER TABLE '.($no_prefix ? '' : $this->prefix).$table_name.' ADD '.$field_name.' '.$field_type.($allow_null ? ' ' : ' NOT NULL').(!is_null($default_value) ? ' DEFAULT '.$default_value : ' ').(!is_null($after_field) ? ' AFTER '.$after_field : '')) ? true : false; | 338: return $this->query('ALTER TABLE '.($no_prefix ? '' : $this->prefix).$table_name.' ADD '.$field_name.' '.$field_type.($allow_null ? '' : ' NOT NULL').(!is_null($default_value) ? ' DEFAULT '.$default_value : '').(!is_null($after_field) ? ' AFTER '.$after_field : '')) ? true : false; |
339: } | 339: } |
340: | 340: |
341: | 341: |
349: if (!is_null($default_value) && !is_int($default_value) && !is_float($default_value)) | 349: if (!is_null($default_value) && !is_int($default_value) && !is_float($default_value)) |
350: $default_value = '\''.$this->escape($default_value).'\''; | 350: $default_value = '\''.$this->escape($default_value).'\''; |
351: | 351: |
352: return $this->query('ALTER TABLE '.($no_prefix ? '' : $this->prefix).$table_name.' MODIFY '.$field_name.' '.$field_type.($allow_null ? ' ' : ' NOT NULL').(!is_null($default_value) ? ' DEFAULT '.$default_value : ' ').(!is_null($after_field) ? ' AFTER '.$after_field : '')) ? true : false; | 352: return $this->query('ALTER TABLE '.($no_prefix ? '' : $this->prefix).$table_name.' MODIFY '.$field_name.' '.$field_type.($allow_null ? '' : ' NOT NULL').(!is_null($default_value) ? ' DEFAULT '.$default_value : '').(!is_null($after_field) ? ' AFTER '.$after_field : '')) ? true : false; |
353: } | 353: } |
354: | 354: |
355: | 355: |
a/include/dblayer/mysqli.php | b/include/dblayer/mysqli.php |
---|---|
310: | 310: |
311: function rename_table($old_table, $new_table, $no_prefix = false) | 311: function rename_table($old_table, $new_table, $no_prefix = false) |
312: { | 312: { |
313: // If there new table exists and the old one doesn't, then we're happy | 313: // If the new table exists and the old one doesn't, then we're happy |
314: if ($this->table_exists($new_table, $no_prefix) && !$this->table_exists($old_table, $no_prefix)) | 314: if ($this->table_exists($new_table, $no_prefix) && !$this->table_exists($old_table, $no_prefix)) |
315: return true; | 315: return true; |
316: | 316: |
328: if (!is_null($default_value) && !is_int($default_value) && !is_float($default_value)) | 328: if (!is_null($default_value) && !is_int($default_value) && !is_float($default_value)) |
329: $default_value = '\''.$this->escape($default_value).'\''; | 329: $default_value = '\''.$this->escape($default_value).'\''; |
330: | 330: |
331: return $this->query('ALTER TABLE '.($no_prefix ? '' : $this->prefix).$table_name.' ADD '.$field_name.' '.$field_type.($allow_null ? ' ' : ' NOT NULL').(!is_null($default_value) ? ' DEFAULT '.$default_value : ' ').(!is_null($after_field) ? ' AFTER '.$after_field : '')) ? true : false; | 331: return $this->query('ALTER TABLE '.($no_prefix ? '' : $this->prefix).$table_name.' ADD '.$field_name.' '.$field_type.($allow_null ? '' : ' NOT NULL').(!is_null($default_value) ? ' DEFAULT '.$default_value : '').(!is_null($after_field) ? ' AFTER '.$after_field : '')) ? true : false; |
332: } | 332: } |
333: | 333: |
334: | 334: |
342: if (!is_null($default_value) && !is_int($default_value) && !is_float($default_value)) | 342: if (!is_null($default_value) && !is_int($default_value) && !is_float($default_value)) |
343: $default_value = '\''.$this->escape($default_value).'\''; | 343: $default_value = '\''.$this->escape($default_value).'\''; |
344: | 344: |
345: return $this->query('ALTER TABLE '.($no_prefix ? '' : $this->prefix).$table_name.' MODIFY '.$field_name.' '.$field_type.($allow_null ? ' ' : ' NOT NULL').(!is_null($default_value) ? ' DEFAULT '.$default_value : ' ').(!is_null($after_field) ? ' AFTER '.$after_field : '')) ? true : false; | 345: return $this->query('ALTER TABLE '.($no_prefix ? '' : $this->prefix).$table_name.' MODIFY '.$field_name.' '.$field_type.($allow_null ? '' : ' NOT NULL').(!is_null($default_value) ? ' DEFAULT '.$default_value : '').(!is_null($after_field) ? ' AFTER '.$after_field : '')) ? true : false; |
346: } | 346: } |
347: | 347: |
348: | 348: |
a/include/dblayer/mysqli_innodb.php | b/include/dblayer/mysqli_innodb.php |
---|---|
323: | 323: |
324: function rename_table($old_table, $new_table, $no_prefix = false) | 324: function rename_table($old_table, $new_table, $no_prefix = false) |
325: { | 325: { |
326: // If there new table exists and the old one doesn't, then we're happy | 326: // If the new table exists and the old one doesn't, then we're happy |
327: if ($this->table_exists($new_table, $no_prefix) && !$this->table_exists($old_table, $no_prefix)) | 327: if ($this->table_exists($new_table, $no_prefix) && !$this->table_exists($old_table, $no_prefix)) |
328: return true; | 328: return true; |
329: | 329: |
341: if (!is_null($default_value) && !is_int($default_value) && !is_float($default_value)) | 341: if (!is_null($default_value) && !is_int($default_value) && !is_float($default_value)) |
342: $default_value = '\''.$this->escape($default_value).'\''; | 342: $default_value = '\''.$this->escape($default_value).'\''; |
343: | 343: |
344: return $this->query('ALTER TABLE '.($no_prefix ? '' : $this->prefix).$table_name.' ADD '.$field_name.' '.$field_type.($allow_null ? ' ' : ' NOT NULL').(!is_null($default_value) ? ' DEFAULT '.$default_value : ' ').(!is_null($after_field) ? ' AFTER '.$after_field : '')) ? true : false; | 344: return $this->query('ALTER TABLE '.($no_prefix ? '' : $this->prefix).$table_name.' ADD '.$field_name.' '.$field_type.($allow_null ? '' : ' NOT NULL').(!is_null($default_value) ? ' DEFAULT '.$default_value : '').(!is_null($after_field) ? ' AFTER '.$after_field : '')) ? true : false; |
345: } | 345: } |
346: | 346: |
347: | 347: |
355: if (!is_null($default_value) && !is_int($default_value) && !is_float($default_value)) | 355: if (!is_null($default_value) && !is_int($default_value) && !is_float($default_value)) |
356: $default_value = '\''.$this->escape($default_value).'\''; | 356: $default_value = '\''.$this->escape($default_value).'\''; |
357: | 357: |
358: return $this->query('ALTER TABLE '.($no_prefix ? '' : $this->prefix).$table_name.' MODIFY '.$field_name.' '.$field_type.($allow_null ? ' ' : ' NOT NULL').(!is_null($default_value) ? ' DEFAULT '.$default_value : ' ').(!is_null($after_field) ? ' AFTER '.$after_field : '')) ? true : false; | 358: return $this->query('ALTER TABLE '.($no_prefix ? '' : $this->prefix).$table_name.' MODIFY '.$field_name.' '.$field_type.($allow_null ? '' : ' NOT NULL').(!is_null($default_value) ? ' DEFAULT '.$default_value : '').(!is_null($after_field) ? ' AFTER '.$after_field : '')) ? true : false; |
359: } | 359: } |
360: | 360: |
361: | 361: |
a/include/dblayer/pgsql.php | b/include/dblayer/pgsql.php |
---|---|
354: | 354: |
355: function rename_table($old_table, $new_table, $no_prefix = false) | 355: function rename_table($old_table, $new_table, $no_prefix = false) |
356: { | 356: { |
357: // If there new table exists and the old one doesn't, then we're happy | 357: // If the new table exists and the old one doesn't, then we're happy |
358: if ($this->table_exists($new_table, $no_prefix) && !$this->table_exists($old_table, $no_prefix)) | 358: if ($this->table_exists($new_table, $no_prefix) && !$this->table_exists($old_table, $no_prefix)) |
359: return true; | 359: return true; |
360: | 360: |
a/include/dblayer/sqlite.php | b/include/dblayer/sqlite.php |
---|---|
349: } | 349: } |
350: | 350: |
351: | 351: |
352: function rename_table($old_name, $new_name, $no_prefix = false) | 352: function rename_table($old_table, $new_table, $no_prefix = false) |
353: { | 353: { |
354: // If there new table exists and the old one doesn't, then we're happy | 354: // If the old table does not exist |
355: if ($this->table_exists($new_table, $no_prefix) && !$this->table_exists($old_table, $no_prefix)) | 355: if (!$this->table_exists($old_table, $no_prefix)) |
356: return false; | |
357: // If the table names are the same | |
358: else if ($old_table == $new_table) | |
356: return true; | 359: return true; |
360: // If the new table already exists | |
361: else if ($this->table_exists($new_table, $no_prefix)) | |
362: return false; | |
357: | 363: |
358: $table = $this->get_table_info($old_name, $no_prefix); | 364: $table = $this->get_table_info($old_table, $no_prefix); |
359: | 365: |
360: // Create new table | 366: // Create new table |
361: $newtable = str_replace('CREATE TABLE '.($no_prefix ? '' : $this->prefix).$this->escape($old_name).' (', 'CREATE TABLE '.($no_prefix ? '' : $this->prefix).$this->escape($new_name).' (', $table['sql']); | 367: $query = str_replace('CREATE TABLE '.($no_prefix ? '' : $this->prefix).$this->escape($old_table).' (', 'CREATE TABLE '.($no_prefix ? '' : $this->prefix).$this->escape($new_table).' (', $table['sql']); |
362: $result = $this->query($newtable) ? true : false; | 368: $result = $this->query($query) ? true : false; |
363: | 369: |
364: // Recreate indexes | 370: // Recreate indexes |
365: if (!empty($table['indices'])) | 371: if (!empty($table['indices'])) |
366: { | 372: { |
367: foreach ($table['indices'] as $cur_index) | 373: foreach ($table['indices'] as $cur_index) |
368: $result &= $this->query($cur_index) ? true : false; | 374: { |
375: $query = str_replace('CREATE INDEX '.($no_prefix ? '' : $this->prefix).$this->escape($old_table), 'CREATE INDEX '.($no_prefix ? '' : $this->prefix).$this->escape($new_table), $cur_index); | |
376: $query = str_replace('ON '.($no_prefix ? '' : $this->prefix).$this->escape($old_table), 'ON '.($no_prefix ? '' : $this->prefix).$this->escape($new_table), $query); | |
377: $result &= $this->query($query) ? true : false; | |
378: } | |
369: } | 379: } |
370: | 380: |
371: // Copy content across | 381: // Copy content across |
372: $result &= $this->query('INSERT INTO '.($no_prefix ? '' : $this->prefix).$this->escape($new_name).' SELECT * FROM '.($no_prefix ? '' : $this->prefix).$this->escape($old_name)) ? true : false; | 382: $result &= $this->query('INSERT INTO '.($no_prefix ? '' : $this->prefix).$this->escape($new_table).' SELECT * FROM '.($no_prefix ? '' : $this->prefix).$this->escape($old_table)) ? true : false; |
373: | 383: |
374: // Drop old table | 384: // Drop the old table if the new one exists |
375: $result &= $this->drop_table($table_name, $no_prefix); | 385: if ($this->table_exists($new_table, $no_prefix)) |
386: $result &= $this->drop_table($old_table, $no_prefix); | |
376: | 387: |
377: return $result; | 388: return $result; |
378: } | 389: } |
420: } | 431: } |
421: | 432: |
422: | 433: |
423: function add_field($table_name, $field_name, $field_type, $allow_null, $default_value = null, $after_field = 0, $no_prefix = false) | 434: function add_field($table_name, $field_name, $field_type, $allow_null, $default_value = null, $after_field = null, $no_prefix = false) |
424: { | 435: { |
425: if ($this->field_exists($table_name, $field_name, $no_prefix)) | 436: if ($this->field_exists($table_name, $field_name, $no_prefix)) |
426: return true; | 437: return true; |
436: // Create new table sql | 447: // Create new table sql |
437: $field_type = preg_replace(array_keys($this->datatype_transformations), array_values($this->datatype_transformations), $field_type); | 448: $field_type = preg_replace(array_keys($this->datatype_transformations), array_values($this->datatype_transformations), $field_type); |
438: $query = $field_type; | 449: $query = $field_type; |
450: | |
439: if (!$allow_null) | 451: if (!$allow_null) |
440: $query .= ' NOT NULL'; | 452: $query .= ' NOT NULL'; |
441: if (is_null($default_value) || $default_value === '') | 453: |
454: if ($default_value === '') | |
442: $default_value = '\'\''; | 455: $default_value = '\'\''; |
443: | 456: |
444: $query .= ' DEFAULT '.$default_value; | 457: if (!is_null($default_value)) |
458: $query .= ' DEFAULT '.$default_value; | |
445: | 459: |
446: $old_columns = array_keys($table['columns']); | 460: $old_columns = array_keys($table['columns']); |
447: array_insert($table['columns'], $after_field, $query, $field_name); | 461: |
462: // Determine the proper offset | |
463: if (!is_null($after_field)) | |
464: $offset = array_search($after_field, array_keys($table['columns']), true) + 1; | |
465: else | |
466: $offset = count($table['columns']); | |
467: | |
468: // Out of bounds checks | |
469: if ($offset > count($table['columns'])) | |
470: $offset = count($table['columns']); | |
471: else if ($offset < 0) | |
472: $offset = 0; | |
473: | |
474: if (!is_null($field_name) && $field_name !== '') | |
475: $table['columns'] = array_merge(array_slice($table['columns'], 0, $offset), array($field_name => $query), array_slice($table['columns'], $offset)); | |
448: | 476: |
449: $new_table = 'CREATE TABLE '.($no_prefix ? '' : $this->prefix).$this->escape($table_name).' ('; | 477: $new_table = 'CREATE TABLE '.($no_prefix ? '' : $this->prefix).$this->escape($table_name).' ('; |
450: | 478: |
482: } | 510: } |
483: | 511: |
484: | 512: |
485: function alter_field($table_name, $field_name, $field_type, $allow_null, $default_value = null, $after_field = 0, $no_prefix = false) | 513: function alter_field($table_name, $field_name, $field_type, $allow_null, $default_value = null, $after_field = null, $no_prefix = false) |
486: { | 514: { |
487: // Unneeded for SQLite | 515: // Unneeded for SQLite |
488: return true; | 516: return true; |
a/include/email.php | b/include/email.php |
---|---|
158: $replacement = '['.str_replace('$1', $matches[3], $url).']'; | 158: $replacement = '['.str_replace('$1', $matches[3], $url).']'; |
159: } | 159: } |
160: | 160: |
161: // Update the main text if there is a replacment | 161: // Update the main text if there is a replacement |
162: if (!is_null($replacement)) | 162: if (!is_null($replacement)) |
163: { | 163: { |
164: $text = str_replace($matches[0], $replacement, $text); | 164: $text = str_replace($matches[0], $replacement, $text); |
229: $from = '"'.encode_mail_text($from_name).'" <'.$from_email.'>'; | 229: $from = '"'.encode_mail_text($from_name).'" <'.$from_email.'>'; |
230: $subject = encode_mail_text($subject); | 230: $subject = encode_mail_text($subject); |
231: | 231: |
232: $headers = 'From: '.$from."\r\n".'Date: '.gmdate('r')."\r\n".'MIME-Version: 1.0'."\r\n".'Content-transfer-encoding: 8bit'."\r\n".'Content-type: text/plain; charset=utf-8'."\r\n".'X-Mailer: FluxBB Mailer'; | 232: $headers = 'From: '.$from.PHP_EOL.'Date: '.gmdate('r').PHP_EOL.'MIME-Version: 1.0'.PHP_EOL.'Content-transfer-encoding: 8bit'.PHP_EOL.'Content-type: text/plain; charset=utf-8'.PHP_EOL.'X-Mailer: FluxBB Mailer'; |
233: | 233: |
234: // If we specified a reply-to email, we deal with it here | 234: // If we specified a reply-to email, we deal with it here |
235: if (!empty($reply_to_email)) | 235: if (!empty($reply_to_email)) |
236: { | 236: { |
237: $reply_to = '"'.encode_mail_text($reply_to_name).'" <'.$reply_to_email.'>'; | 237: $reply_to = '"'.encode_mail_text($reply_to_name).'" <'.$reply_to_email.'>'; |
238: | 238: |
239: $headers .= "\r\n".'Reply-To: '.$reply_to; | 239: $headers .= PHP_EOL.'Reply-To: '.$reply_to; |
240: } | 240: } |
241: | 241: |
242: // Make sure all linebreaks are LF in message (and strip out any NULL bytes) | 242: // Make sure all linebreaks are LF in message (and strip out any NULL bytes) |
260: | 260: |
261: // | 261: // |
262: // This function was originally a part of the phpBB Group forum software phpBB2 (http://www.phpbb.com) | 262: // This function was originally a part of the phpBB Group forum software phpBB2 (http://www.phpbb.com) |
263: // They deserve all the credit for writing it. I made small modifications for it to suit PunBB and it's coding standards | 263: // They deserve all the credit for writing it. I made small modifications for it to suit PunBB and its coding standards |
264: // | 264: // |
265: function server_parse($socket, $expected_response) | 265: function server_parse($socket, $expected_response) |
266: { | 266: { |
278: | 278: |
279: // | 279: // |
280: // This function was originally a part of the phpBB Group forum software phpBB2 (http://www.phpbb.com) | 280: // This function was originally a part of the phpBB Group forum software phpBB2 (http://www.phpbb.com) |
281: // They deserve all the credit for writing it. I made small modifications for it to suit PunBB and it's coding standards. | 281: // They deserve all the credit for writing it. I made small modifications for it to suit PunBB and its coding standards. |
282: // | 282: // |
283: function smtp_mail($to, $subject, $message, $headers = '') | 283: function smtp_mail($to, $subject, $message, $headers = '') |
284: { | 284: { |
309: | 309: |
310: if ($pun_config['o_smtp_user'] != '' && $pun_config['o_smtp_pass'] != '') | 310: if ($pun_config['o_smtp_user'] != '' && $pun_config['o_smtp_pass'] != '') |
311: { | 311: { |
312: fwrite($socket, 'EHLO '.$smtp_host."\r\n"); | 312: // Here we try to determine the *real* hostname (reverse DNS entry preferably) |
313: $local_host = php_uname('n'); | |
314: | |
315: // Able to resolve name to IP | |
316: if (($local_addr = @gethostbyname($local_host)) !== $local_host) | |
317: { | |
318: // Able to resolve IP back to name | |
319: if (($local_name = @gethostbyaddr($local_addr)) !== $local_addr) | |
320: { | |
321: $local_host = $local_name; | |
322: } | |
323: } | |
324: | |
325: fwrite($socket, 'EHLO '.$local_host."\r\n"); | |
313: server_parse($socket, '250'); | 326: server_parse($socket, '250'); |
314: | 327: |
315: fwrite($socket, 'AUTH LOGIN'."\r\n"); | 328: fwrite($socket, 'AUTH LOGIN'."\r\n"); |
a/include/functions.php | b/include/functions.php |
---|---|
244: $remote_addr = get_remote_address(); | 244: $remote_addr = get_remote_address(); |
245: | 245: |
246: // Fetch guest user | 246: // Fetch guest user |
247: $result = $db->query('SELECT u.*, g.*, o.logged, o.last_post, o.last_search FROM '.$db->prefix.'users AS u INNER JOIN '.$db->prefix.'groups AS g ON u.group_id=g.g_id LEFT JOIN '.$db->prefix.'online AS o ON o.ident=\''.$remote_addr.'\' WHERE u.id=1') or error('Unable to fetch guest information', __FILE__, __LINE__, $db->error()); | 247: $result = $db->query('SELECT u.*, g.*, o.logged, o.last_post, o.last_search FROM '.$db->prefix.'users AS u INNER JOIN '.$db->prefix.'groups AS g ON u.group_id=g.g_id LEFT JOIN '.$db->prefix.'online AS o ON o.ident=\''.$db->escape($remote_addr).'\' WHERE u.id=1') or error('Unable to fetch guest information', __FILE__, __LINE__, $db->error()); |
248: if (!$db->num_rows($result)) | 248: if (!$db->num_rows($result)) |
249: exit('Unable to fetch guest information. Your database must contain both a guest user and a guest user group.'); | 249: exit('Unable to fetch guest information. Your database must contain both a guest user and a guest user group.'); |
250: | 250: |
681: | 681: |
682: | 682: |
683: // | 683: // |
684: // Delete a topic and all of it's posts | 684: // Delete a topic and all of its posts |
685: // | 685: // |
686: function delete_topic($topic_id) | 686: function delete_topic($topic_id) |
687: { | 687: { |
853: { | 853: { |
854: // Add a previous page link | 854: // Add a previous page link |
855: if ($num_pages > 1 && $cur_page > 1) | 855: if ($num_pages > 1 && $cur_page > 1) |
856: $pages[] = '<a rel="prev" '.(empty($pages) ? ' class="item1"' : '').' href="'.$link.'&p='.($cur_page - 1).'">'.$lang_common['Previous'].'</a>'; | 856: $pages[] = '<a rel="prev"'.(empty($pages) ? ' class="item1"' : '').' href="'.$link.'&p='.($cur_page - 1).'">'.$lang_common['Previous'].'</a>'; |
857: | 857: |
858: if ($cur_page > 3) | 858: if ($cur_page > 3) |
859: { | 859: { |
884: | 884: |
885: // Add a next page link | 885: // Add a next page link |
886: if ($num_pages > 1 && !$link_to_all && $cur_page < $num_pages) | 886: if ($num_pages > 1 && !$link_to_all && $cur_page < $num_pages) |
887: $pages[] = '<a rel="next" '.(empty($pages) ? ' class="item1"' : '').' href="'.$link.'&p='.($cur_page +1).'">'.$lang_common['Next'].'</a>'; | 887: $pages[] = '<a rel="next"'.(empty($pages) ? ' class="item1"' : '').' href="'.$link.'&p='.($cur_page +1).'">'.$lang_common['Next'].'</a>'; |
888: } | 888: } |
889: | 889: |
890: return implode(' ', $pages); | 890: return implode(' ', $pages); |
1297: | 1297: |
1298: // If the delay is 0 seconds, we might as well skip the redirect all together | 1298: // If the delay is 0 seconds, we might as well skip the redirect all together |
1299: if ($pun_config['o_redirect_delay'] == '0') | 1299: if ($pun_config['o_redirect_delay'] == '0') |
1300: { | |
1300: header('Location: '.str_replace('&', '&', $destination_url)); | 1301: header('Location: '.str_replace('&', '&', $destination_url)); |
1302: exit; | |
1303: } | |
1301: | 1304: |
1302: // Send no-cache headers | 1305: // Send no-cache headers |
1303: header('Expires: Thu, 21 Jul 1977 07:30:00 GMT'); // When yours truly first set eyes on this world! :) | 1306: header('Expires: Thu, 21 Jul 1977 07:30:00 GMT'); // When yours truly first set eyes on this world! :) |
1359: $page_title = array(pun_htmlspecialchars($pun_config['o_board_title']), $lang_common['Redirecting']); | 1362: $page_title = array(pun_htmlspecialchars($pun_config['o_board_title']), $lang_common['Redirecting']); |
1360: | 1363: |
1361: ?> | 1364: ?> |
1362: <meta http-equiv="refresh" content="<?php echo $pun_config['o_redirect_delay'] ?>;URL=<?php echo str_replace(array('<', '>', '"'), array('<', '>', '"'), $destination_url) ?>" /> | 1365: <meta http-equiv="refresh" content="<?php echo $pun_config['o_redirect_delay'] ?>;URL=<?php echo $destination_url ?>" /> |
1363: <title><?php echo generate_page_title($page_title) ?></title> | 1366: <title><?php echo generate_page_title($page_title) ?></title> |
1364: <link rel="stylesheet" type="text/css" href="style/<?php echo $pun_user['style'].'.css' ?>" /> | 1367: <link rel="stylesheet" type="text/css" href="style/<?php echo $pun_user['style'].'.css' ?>" /> |
1365: <?php | 1368: <?php |
a/include/parser.php | b/include/parser.php |
---|---|
66: { | 66: { |
67: global $pun_config, $lang_common, $lang_post, $re_list; | 67: global $pun_config, $lang_common, $lang_post, $re_list; |
68: | 68: |
69: // Remove empty tags | |
70: while (($new_text = strip_empty_bbcode($text)) !== false) | |
71: { | |
72: if ($new_text != $text) | |
73: { | |
74: $text = $new_text; | |
75: if ($new_text == '') | |
76: { | |
77: $errors[] = $lang_post['Empty after strip']; | |
78: return ''; | |
79: } | |
80: } | |
81: else | |
82: break; | |
83: } | |
84: | |
69: if ($is_signature) | 85: if ($is_signature) |
70: { | 86: { |
71: global $lang_profile; | 87: global $lang_profile; |
90: if ($pun_config['o_make_links'] == '1') | 106: if ($pun_config['o_make_links'] == '1') |
91: $text = do_clickable($text); | 107: $text = do_clickable($text); |
92: | 108: |
109: $temp_text = false; | |
110: if (empty($errors)) | |
111: $temp_text = preparse_tags($text, $errors, $is_signature); | |
112: | |
113: if ($temp_text !== false) | |
114: $text = $temp_text; | |
115: | |
93: // If we split up the message before we have to concatenate it together again (code tags) | 116: // If we split up the message before we have to concatenate it together again (code tags) |
94: if (isset($inside)) | 117: if (isset($inside)) |
95: { | 118: { |
107: unset($inside); | 130: unset($inside); |
108: } | 131: } |
109: | 132: |
110: $temp_text = false; | |
111: if (empty($errors)) | |
112: $temp_text = preparse_tags($text, $errors, $is_signature); | |
113: | |
114: if ($temp_text !== false) | |
115: $text = $temp_text; | |
116: | |
117: // Remove empty tags | 133: // Remove empty tags |
118: while (($new_text = strip_empty_bbcode($text)) !== false) | 134: while (($new_text = strip_empty_bbcode($text)) !== false) |
119: { | 135: { |
680: else | 696: else |
681: $link = stripslashes($link); | 697: $link = stripslashes($link); |
682: | 698: |
683: return '<a href="'.$full_url.'">'.$link.'</a>'; | 699: return '<a href="'.$full_url.'" rel="nofollow">'.$link.'</a>'; |
684: } | 700: } |
685: } | 701: } |
686: | 702: |
695: if (is_null($alt)) | 711: if (is_null($alt)) |
696: $alt = basename($url); | 712: $alt = basename($url); |
697: | 713: |
698: $img_tag = '<a href="'.$url.'"><'.$lang_common['Image link'].' - '.$alt.'></a>'; | 714: $img_tag = '<a href="'.$url.'" rel="nofollow"><'.$lang_common['Image link'].' - '.$alt.'></a>'; |
699: | 715: |
700: if ($is_signature && $pun_user['show_img_sig'] != '0') | 716: if ($is_signature && $pun_user['show_img_sig'] != '0') |
701: $img_tag = '<img class="sigimage" src="'.$url.'" alt="'.$alt.'" />'; | 717: $img_tag = '<img class="sigimage" src="'.$url.'" alt="'.$alt.'" />'; |
832: $text = ' '.$text; | 848: $text = ' '.$text; |
833: | 849: |
834: $text = ucp_preg_replace('%(?<=[\s\]\)])(<)?(\[)?(\()?([\'"]?)(https?|ftp|news){1}://([\p{L}\p{N}\-]+\.([\p{L}\p{N}\-]+\.)*[\p{L}\p{N}]+(:[0-9]+)?(/(?:[^\s\[]*[^\s.,?!\[;:-])?)?)\4(?(3)(\)))(?(2)(\]))(?(1)(>))(?![^\s]*\[/(?:url|img)\])%uie', 'stripslashes(\'$1$2$3$4\').handle_url_tag(\'$5://$6\', \'$5://$6\', true).stripslashes(\'$4$10$11$12\')', $text); | 850: $text = ucp_preg_replace('%(?<=[\s\]\)])(<)?(\[)?(\()?([\'"]?)(https?|ftp|news){1}://([\p{L}\p{N}\-]+\.([\p{L}\p{N}\-]+\.)*[\p{L}\p{N}]+(:[0-9]+)?(/(?:[^\s\[]*[^\s.,?!\[;:-])?)?)\4(?(3)(\)))(?(2)(\]))(?(1)(>))(?![^\s]*\[/(?:url|img)\])%uie', 'stripslashes(\'$1$2$3$4\').handle_url_tag(\'$5://$6\', \'$5://$6\', true).stripslashes(\'$4$10$11$12\')', $text); |
835: $text = ucp_preg_replace('%(?<=[\s\]\)])(<)?(\[)?(\()?([\'"]?)(www|ftp)\.(([\p{L}\p{N}\-]+\.)*[\p{L}\p{N}]+(:[0-9]+)?(/(?:[^\s\[]*[^\s.,?!\[;:-])?)?)\4(?(3)(\)))(?(2)(\]))(?(1)(>))(?![^\s]*\[/(?:url|img)\])%uie', 'stripslashes(\'$1$2$3$4\').handle_url_tag(\'$5.$6\', \'$5.$6\', true).stripslashes(\'$4$10$11$12\')', $text); | 851: $text = ucp_preg_replace('%(?<=[\s\]\)])(<)?(\[)?(\()?([\'"]?)(www|ftp)\.(([\p{L}\p{N}\-]+\.)+[\p{L}\p{N}]+(:[0-9]+)?(/(?:[^\s\[]*[^\s.,?!\[;:-])?)?)\4(?(3)(\)))(?(2)(\]))(?(1)(>))(?![^\s]*\[/(?:url|img)\])%uie', 'stripslashes(\'$1$2$3$4\').handle_url_tag(\'$5.$6\', \'$5.$6\', true).stripslashes(\'$4$10$11$12\')', $text); |
836: | 852: |
837: return substr($text, 1); | 853: return substr($text, 1); |
838: } | 854: } |
a/include/search_idx.php | b/include/search_idx.php |
---|---|
104: if (in_array($word, $stopwords)) | 104: if (in_array($word, $stopwords)) |
105: return false; | 105: return false; |
106: | 106: |
107: // If the word if CJK we don't want to index it, but we do want to be allowed to search it | 107: // If the word is CJK we don't want to index it, but we do want to be allowed to search it |
108: if (is_cjk($word)) | 108: if (is_cjk($word)) |
109: return !$idx; | 109: return !$idx; |
110: | 110: |
a/install.php | b/install.php |
---|---|
7: */ | 7: */ |
8: | 8: |
9: // The FluxBB version this script installs | 9: // The FluxBB version this script installs |
10: define('FORUM_VERSION', '1.5.0'); | 10: define('FORUM_VERSION', '1.5.2'); |
11: | 11: |
12: define('FORUM_DB_REVISION', 18); | 12: define('FORUM_DB_REVISION', 18); |
13: define('FORUM_SI_REVISION', 2); | 13: define('FORUM_SI_REVISION', 2); |
1565: $db->query('INSERT INTO '.$db_prefix.'users (group_id, username, password, email) VALUES(3, \''.$db->escape($lang_install['Guest']).'\', \''.$db->escape($lang_install['Guest']).'\', \''.$db->escape($lang_install['Guest']).'\')') | 1565: $db->query('INSERT INTO '.$db_prefix.'users (group_id, username, password, email) VALUES(3, \''.$db->escape($lang_install['Guest']).'\', \''.$db->escape($lang_install['Guest']).'\', \''.$db->escape($lang_install['Guest']).'\')') |
1566: or error('Unable to add guest user. Please check your configuration and try again', __FILE__, __LINE__, $db->error()); | 1566: or error('Unable to add guest user. Please check your configuration and try again', __FILE__, __LINE__, $db->error()); |
1567: | 1567: |
1568: $db->query('INSERT INTO '.$db_prefix.'users (group_id, username, password, email, language, style, num_posts, last_post, registered, registration_ip, last_visit) VALUES(1, \''.$db->escape($username).'\', \''.pun_hash($password1).'\', \''.$email.'\', \''.$db->escape($default_lang).'\', \''.$db->escape($default_style).'\', 1, '.$now.', '.$now.', \''.get_remote_address().'\', '.$now.')') | 1568: $db->query('INSERT INTO '.$db_prefix.'users (group_id, username, password, email, language, style, num_posts, last_post, registered, registration_ip, last_visit) VALUES(1, \''.$db->escape($username).'\', \''.pun_hash($password1).'\', \''.$email.'\', \''.$db->escape($default_lang).'\', \''.$db->escape($default_style).'\', 1, '.$now.', '.$now.', \''.$db->escape(get_remote_address()).'\', '.$now.')') |
1569: or error('Unable to add administrator user. Please check your configuration and try again', __FILE__, __LINE__, $db->error()); | 1569: or error('Unable to add administrator user. Please check your configuration and try again', __FILE__, __LINE__, $db->error()); |
1570: | 1570: |
1571: // Enable/disable avatars depending on file_uploads setting in PHP configuration | 1571: // Enable/disable avatars depending on file_uploads setting in PHP configuration |
1671: $db->query('INSERT INTO '.$db_prefix.'topics (poster, subject, posted, first_post_id, last_post, last_post_id, last_poster, forum_id) VALUES(\''.$db->escape($username).'\', \''.$db->escape($subject).'\', '.$now.', 1, '.$now.', 1, \''.$db->escape($username).'\', 1)') | 1671: $db->query('INSERT INTO '.$db_prefix.'topics (poster, subject, posted, first_post_id, last_post, last_post_id, last_poster, forum_id) VALUES(\''.$db->escape($username).'\', \''.$db->escape($subject).'\', '.$now.', 1, '.$now.', 1, \''.$db->escape($username).'\', 1)') |
1672: or error('Unable to insert into table '.$db_prefix.'topics. Please check your configuration and try again', __FILE__, __LINE__, $db->error()); | 1672: or error('Unable to insert into table '.$db_prefix.'topics. Please check your configuration and try again', __FILE__, __LINE__, $db->error()); |
1673: | 1673: |
1674: $db->query('INSERT INTO '.$db_prefix.'posts (poster, poster_id, poster_ip, message, posted, topic_id) VALUES(\''.$db->escape($username).'\', 2, \''.get_remote_address().'\', \''.$db->escape($message).'\', '.$now.', 1)') | 1674: $db->query('INSERT INTO '.$db_prefix.'posts (poster, poster_id, poster_ip, message, posted, topic_id) VALUES(\''.$db->escape($username).'\', 2, \''.$db->escape(get_remote_address()).'\', \''.$db->escape($message).'\', '.$now.', 1)') |
1675: or error('Unable to insert into table '.$db_prefix.'posts. Please check your configuration and try again', __FILE__, __LINE__, $db->error()); | 1675: or error('Unable to insert into table '.$db_prefix.'posts. Please check your configuration and try again', __FILE__, __LINE__, $db->error()); |
1676: | 1676: |
1677: // Index the test post so searching for it works | 1677: // Index the test post so searching for it works |
a/lang/English/admin_categories.php | b/lang/English/admin_categories.php |
---|---|
1: <?php | 1: <?php |
2: | 2: |
3: // Language definitions used in admin-categories.php | 3: // Language definitions used in admin_categories.php |
4: $lang_admin_categories = array( | 4: $lang_admin_categories = array( |
5: | 5: |
6: 'Must enter name message' => 'You must enter a name for the category', | 6: 'Must enter name message' => 'You must enter a name for the category', |
a/lang/English/admin_common.php | b/lang/English/admin_common.php |
---|---|
1: <?php | 1: <?php |
2: | 2: |
3: // Language definitions used in admin_common | 3: // Language definitions used in admin_common.php |
4: $lang_admin_common = array( | 4: $lang_admin_common = array( |
5: | 5: |
6: // The menu | 6: // The menu |
19: 'Prune' => 'Prune', | 19: 'Prune' => 'Prune', |
20: 'Maintenance' => 'Maintenance', | 20: 'Maintenance' => 'Maintenance', |
21: 'Reports' => 'Reports', | 21: 'Reports' => 'Reports', |
22: 'Server statistics' => 'Server statistics', | |
22: | 23: |
23: 'Admin' => 'Admin', | 24: 'Admin' => 'Admin', |
24: 'Go back' => 'Go back', | 25: 'Go back' => 'Go back', |
a/lang/English/admin_forums.php | b/lang/English/admin_forums.php |
---|---|
1: <?php | 1: <?php |
2: | 2: |
3: // Language definitions used in admin-forums.php | 3: // Language definitions used in admin_forums.php |
4: $lang_admin_forums = array( | 4: $lang_admin_forums = array( |
5: | 5: |
6: 'Forum added redirect' => 'Forum added. Redirecting …', | 6: 'Forum added redirect' => 'Forum added. Redirecting …', |
a/lang/English/admin_groups.php | b/lang/English/admin_groups.php |
---|---|
1: <?php | 1: <?php |
2: | 2: |
3: // Language definitions used in admin-groups.php | 3: // Language definitions used in admin_groups.php |
4: $lang_admin_groups = array( | 4: $lang_admin_groups = array( |
5: | 5: |
6: 'Must enter title message' => 'You must enter a group title.', | 6: 'Must enter title message' => 'You must enter a group title.', |
40: 'User title label' => 'User title', | 40: 'User title label' => 'User title', |
41: 'User title help' => 'The rank users in this group have attained. Leave blank to use default title ("%s").', | 41: 'User title help' => 'The rank users in this group have attained. Leave blank to use default title ("%s").', |
42: 'Promote users label' => 'Promote users', | 42: 'Promote users label' => 'Promote users', |
43: 'Promote users help' => 'You can promote users to a new group automatically if they reach a certain number of posts. Select "%s" to disable. For security reasons, you are not allowed to select an administrator group here. Also note that group changes for users affected by this setting may only take effect after their next post.', | 43: 'Promote users help' => 'You can promote users to a new group automatically if they reach a certain number of posts. Select "%s" to disable. For security reasons, you are not allowed to select an administrator group here. Also note that group changes for users affected by this setting may only take effect after their next post. Note that the amount of posts you enter is the total amount of posts of a user, not the amount of posts made as a member of this group.', |
44: 'Disable promotion' => 'Disable promoting', | 44: 'Disable promotion' => 'Disable promoting', |
45: 'Mod privileges label' => 'Allow users moderator privileges', | 45: 'Mod privileges label' => 'Allow users moderator privileges', |
46: 'Mod privileges help' => 'In order for a user in this group to have moderator abilities, he/she must be assigned to moderate one or more forums. This is done via the user administration page of the user\'s profile.', | 46: 'Mod privileges help' => 'In order for a user in this group to have moderator abilities, he/she must be assigned to moderate one or more forums. This is done via the user administration page of the user\'s profile.', |
a/lang/English/admin_index.php | b/lang/English/admin_index.php |
---|---|
7: 'Upgrade check failed message' => 'Check for upgrade failed for unknown reasons.', | 7: 'Upgrade check failed message' => 'Check for upgrade failed for unknown reasons.', |
8: 'Running latest version message' => 'You are running the latest version of FluxBB.', | 8: 'Running latest version message' => 'You are running the latest version of FluxBB.', |
9: 'New version available message' => 'A new version of FluxBB has been released. You can download the latest version at %s.', | 9: 'New version available message' => 'A new version of FluxBB has been released. You can download the latest version at %s.', |
10: 'PHPinfo disabled message' => 'The PHP function phpinfo() has been disabled on this server.', | |
11: 'Not available' => 'Not available', | 10: 'Not available' => 'Not available', |
12: 'Forum admin head' => 'Forum administration', | 11: 'Forum admin head' => 'Forum administration', |
13: 'NA' => 'N/A', | 12: 'NA' => 'N/A', |
21: 'Welcome 7' => 'Set up user groups and promotions.', | 20: 'Welcome 7' => 'Set up user groups and promotions.', |
22: 'Welcome 8' => 'Prune old posts.', | 21: 'Welcome 8' => 'Prune old posts.', |
23: 'Welcome 9' => 'Handle post reports.', | 22: 'Welcome 9' => 'Handle post reports.', |
24: 'Statistics head' => 'Statistics', | 23: 'About head' => 'About FluxBB', |
25: 'FluxBB version label' => 'FluxBB version', | 24: 'FluxBB version label' => 'FluxBB version', |
26: 'Check for upgrade' => 'Check for upgrade', | 25: 'Check for upgrade' => 'Check for upgrade', |
27: 'FluxBB version data' => 'v%s - %s', | 26: 'FluxBB version data' => 'v%s - %s', |
27: 'Server statistics label' => 'Server statistics', | |
28: 'View server statistics' => 'View server statistics', | |
29: 'Support label' => 'Support', | |
30: 'Forum label' => 'Forum', | |
31: 'IRC label' => 'IRC channel', | |
32: | |
33: // Language definitions used in admin_statistics.php | |
34: 'PHPinfo disabled message' => 'The PHP function phpinfo() has been disabled on this server.', | |
35: 'Server statistics head' => 'Server statistics', | |
28: 'Server load label' => 'Server load', | 36: 'Server load label' => 'Server load', |
29: 'Server load data' => '%s - %s user(s) online', | 37: 'Server load data' => '%s - %s user(s) online', |
30: 'Environment label' => 'Environment', | 38: 'Environment label' => 'Environment', |
47: 'Database label' => 'Database', | 55: 'Database label' => 'Database', |
48: 'Database data rows' => 'Rows: %s', | 56: 'Database data rows' => 'Rows: %s', |
49: 'Database data size' => 'Size: %s', | 57: 'Database data size' => 'Size: %s', |
50: | |
51: ); | 58: ); |
a/lang/English/admin_options.php | b/lang/English/admin_options.php |
---|---|
1: <?php | 1: <?php |
2: | 2: |
3: // Language definitions used in admin-options.php | 3: // Language definitions used in admin_options.php |
4: $lang_admin_options = array( | 4: $lang_admin_options = array( |
5: | 5: |
6: 'Bad HTTP Referer message' => 'Bad HTTP_REFERER. If you have moved these forums from one location to another or switched domains, you need to update the Base URL manually in the database (look for o_base_url in the config table) and then clear the cache by deleting all .php files in the /cache directory.', | 6: 'Bad HTTP Referer message' => 'Bad HTTP_REFERER. If you have moved these forums from one location to another or switched domains, you need to update the Base URL manually in the database (look for o_base_url in the config table) and then clear the cache by deleting all .php files in the /cache directory.', |
a/lang/English/admin_permissions.php | b/lang/English/admin_permissions.php |
---|---|
1: <?php | 1: <?php |
2: | 2: |
3: // Language definitions used in admin-permissions.php | 3: // Language definitions used in admin_permissions.php |
4: $lang_admin_permissions = array( | 4: $lang_admin_permissions = array( |
5: | 5: |
6: 'Perms updated redirect' => 'Permissions updated. Redirecting …', | 6: 'Perms updated redirect' => 'Permissions updated. Redirecting …', |
a/lang/English/admin_users.php | b/lang/English/admin_users.php |
---|---|
1: <?php | 1: <?php |
2: | 2: |
3: // Language definitions used in admin-users.php | 3: // Language definitions used in admin_users.php |
4: $lang_admin_users = array( | 4: $lang_admin_users = array( |
5: | 5: |
6: 'Non numeric message' => 'You entered a non-numeric value into a numeric only column.', | 6: 'Non numeric message' => 'You entered a non-numeric value into a numeric only column.', |
a/lang/English/common.php | b/lang/English/common.php |
---|---|
17: 'No permission' => 'You do not have permission to access this page.', | 17: 'No permission' => 'You do not have permission to access this page.', |
18: 'Bad referrer' => 'Bad HTTP_REFERER. You were referred to this page from an unauthorized source. If the problem persists please make sure that \'Base URL\' is correctly set in Admin/Options and that you are visiting the forum by navigating to that URL. More information regarding the referrer check can be found in the FluxBB documentation.', | 18: 'Bad referrer' => 'Bad HTTP_REFERER. You were referred to this page from an unauthorized source. If the problem persists please make sure that \'Base URL\' is correctly set in Admin/Options and that you are visiting the forum by navigating to that URL. More information regarding the referrer check can be found in the FluxBB documentation.', |
19: 'No cookie' => 'You appear to have logged in successfully, however a cookie has not been set. Please check your settings and if applicable, enable cookies for this website.', | 19: 'No cookie' => 'You appear to have logged in successfully, however a cookie has not been set. Please check your settings and if applicable, enable cookies for this website.', |
20: 'Pun include error' => 'Unable to process user include %s from template %s. There is no such file in neither the template directory nor in the user include directory.', | 20: 'Pun include extension' => 'Unable to process user include %s from template %s. "%s" files are not allowed', |
21: 'Pun include directory' => 'Unable to process user include %s from template %s. Directory traversal is not allowed', | |
22: 'Pun include error' => 'Unable to process user include %s from template %s. There is no such file in neither the template directory nor in the user include directory', | |
21: | 23: |
22: // Miscellaneous | 24: // Miscellaneous |
23: 'Announcement' => 'Announcement', | 25: 'Announcement' => 'Announcement', |
41: 'Required' => '(Required)', | 43: 'Required' => '(Required)', |
42: 'required field' => 'is a required field in this form.', // For javascript form validation | 44: 'required field' => 'is a required field in this form.', // For javascript form validation |
43: 'Last post' => 'Last post', | 45: 'Last post' => 'Last post', |
44: 'by' => 'by', // As in last post by someuser | 46: 'by' => 'by', // As in last post by some user |
45: 'New posts' => 'New posts', // The link that leads to the first new post | 47: 'New posts' => 'New posts', // The link that leads to the first new post |
46: 'New posts info' => 'Go to the first new post in this topic.', // The popup text for new posts links | 48: 'New posts info' => 'Go to the first new post in this topic.', // The popup text for new posts links |
47: 'Username' => 'Username', | 49: 'Username' => 'Username', |
a/lang/English/login.php | b/lang/English/login.php |
---|---|
21: | 21: |
22: // Forget password mail stuff | 22: // Forget password mail stuff |
23: 'Forget mail' => 'An email has been sent to the specified address with instructions on how to change your password. If it does not arrive you can contact the forum administrator at', | 23: 'Forget mail' => 'An email has been sent to the specified address with instructions on how to change your password. If it does not arrive you can contact the forum administrator at', |
24: 'Email flood' => 'This account has already requested a password reset in the past hour. Please wait a while before requesting a new password again.' | 24: 'Email flood' => 'This account has already requested a password reset in the past hour. Please wait %s minutes before requesting a new password again.' |
25: | 25: |
26: ); | 26: ); |
a/lang/English/misc.php | b/lang/English/misc.php |
---|---|
11: 'No email subject' => 'You must enter a subject.', | 11: 'No email subject' => 'You must enter a subject.', |
12: 'No email message' => 'You must enter a message.', | 12: 'No email message' => 'You must enter a message.', |
13: 'Too long email message' => 'Messages cannot be longer than 65535 characters (64 KB).', | 13: 'Too long email message' => 'Messages cannot be longer than 65535 characters (64 KB).', |
14: 'Email flood' => 'At least %s seconds have to pass between sent emails. Please wait a while and try sending again.', | 14: 'Email flood' => 'At least %s seconds have to pass between sent emails. Please wait %s seconds and try sending again.', |
15: 'Email sent redirect' => 'Email sent. Redirecting …', | 15: 'Email sent redirect' => 'Email sent. Redirecting …', |
16: 'Send email to' => 'Send email to', | 16: 'Send email to' => 'Send email to', |
17: 'Email subject' => 'Subject', | 17: 'Email subject' => 'Subject', |
22: // Report | 22: // Report |
23: 'No reason' => 'You must enter a reason.', | 23: 'No reason' => 'You must enter a reason.', |
24: 'Reason too long' => 'Your message must be under 65535 bytes (~64kb).', | 24: 'Reason too long' => 'Your message must be under 65535 bytes (~64kb).', |
25: 'Report flood' => 'At least %s seconds have to pass between reports. Please wait a while and try sending again.', | 25: 'Report flood' => 'At least %s seconds have to pass between reports. Please wait %s seconds and try sending again.', |
26: 'Report redirect' => 'Post reported. Redirecting …', | 26: 'Report redirect' => 'Post reported. Redirecting …', |
27: 'Report post' => 'Report post', | 27: 'Report post' => 'Report post', |
28: 'Reason' => 'Reason', | 28: 'Reason' => 'Reason', |
a/lang/English/post.php | b/lang/English/post.php |
---|---|
26: 'Subscribe' => 'Subscribe to this topic', | 26: 'Subscribe' => 'Subscribe to this topic', |
27: 'Stay subscribed' => 'Stay subscribed to this topic', | 27: 'Stay subscribed' => 'Stay subscribed to this topic', |
28: 'Topic review' => 'Topic review (newest first)', | 28: 'Topic review' => 'Topic review (newest first)', |
29: 'Flood start' => 'At least', | 29: 'Flood start' => 'At least %s seconds have to pass between posts. Please wait %s seconds and try posting again.', |
30: 'flood end' => 'seconds have to pass between posts. Please wait a little while and try posting again.', | |
31: 'Preview' => 'Preview', // submit button to preview message | 30: 'Preview' => 'Preview', // submit button to preview message |
32: | 31: |
33: // Edit post | 32: // Edit post |
a/lang/English/search.php | b/lang/English/search.php |
---|---|
6: // The search form | 6: // The search form |
7: 'User search' => 'User search', | 7: 'User search' => 'User search', |
8: 'No search permission' => 'You do not have permission to use the search feature.', | 8: 'No search permission' => 'You do not have permission to use the search feature.', |
9: 'Search flood' => 'At least %s seconds have to pass between searches. Please wait a while and try searching again.', | 9: 'Search flood' => 'At least %s seconds have to pass between searches. Please wait %s seconds and try searching again.', |
10: 'Search' => 'Search', | 10: 'Search' => 'Search', |
11: 'Search criteria legend' => 'Enter your search criteria', | 11: 'Search criteria legend' => 'Enter your search criteria', |
12: 'Search info' => 'To search by keyword, enter a term or terms to search for. Separate terms with spaces. Use AND, OR and NOT to refine your search. To search by author enter the username of the author whose posts you wish to search for. Use wildcard character * for partial matches.', | 12: 'Search info' => 'To search by keyword, enter a term or terms to search for. Separate terms with spaces. Use AND, OR and NOT to refine your search. To search by author enter the username of the author whose posts you wish to search for. Use wildcard character * for partial matches.', |
a/login.php | b/login.php |
---|---|
35: { | 35: { |
36: $form_password_hash = pun_hash($form_password); // Will result in a SHA-1 hash | 36: $form_password_hash = pun_hash($form_password); // Will result in a SHA-1 hash |
37: | 37: |
38: // If there is a salt in the database we have upgraded from 1.3-legacy though havent yet logged in | 38: // If there is a salt in the database we have upgraded from 1.3-legacy though haven't yet logged in |
39: if (!empty($cur_user['salt'])) | 39: if (!empty($cur_user['salt'])) |
40: { | 40: { |
41: if (sha1($cur_user['salt'].sha1($form_password)) == $cur_user['password']) // 1.3 used sha1(salt.sha1(pass)) | 41: if (sha1($cur_user['salt'].sha1($form_password)) == $cur_user['password']) // 1.3 used sha1(salt.sha1(pass)) |
75: generate_users_info_cache(); | 75: generate_users_info_cache(); |
76: } | 76: } |
77: | 77: |
78: // Remove this users guest entry from the online list | 78: // Remove this user's guest entry from the online list |
79: $db->query('DELETE FROM '.$db->prefix.'online WHERE ident=\''.$db->escape(get_remote_address()).'\'') or error('Unable to delete from online list', __FILE__, __LINE__, $db->error()); | 79: $db->query('DELETE FROM '.$db->prefix.'online WHERE ident=\''.$db->escape(get_remote_address()).'\'') or error('Unable to delete from online list', __FILE__, __LINE__, $db->error()); |
80: | 80: |
81: $expire = ($save_pass == '1') ? time() + 1209600 : time() + $pun_config['o_timeout_visit']; | 81: $expire = ($save_pass == '1') ? time() + 1209600 : time() + $pun_config['o_timeout_visit']; |
84: // Reset tracked topics | 84: // Reset tracked topics |
85: set_tracked_topics(null); | 85: set_tracked_topics(null); |
86: | 86: |
87: redirect(htmlspecialchars($_POST['redirect_url']), $lang_login['Login redirect']); | 87: redirect(pun_htmlspecialchars($_POST['redirect_url']), $lang_login['Login redirect']); |
88: } | 88: } |
89: | 89: |
90: | 90: |
112: else if ($action == 'forget' || $action == 'forget_2') | 112: else if ($action == 'forget' || $action == 'forget_2') |
113: { | 113: { |
114: if (!$pun_user['is_guest']) | 114: if (!$pun_user['is_guest']) |
115: { | |
115: header('Location: index.php'); | 116: header('Location: index.php'); |
117: exit; | |
118: } | |
116: | 119: |
117: if (isset($_POST['form_sent'])) | 120: if (isset($_POST['form_sent'])) |
118: { | 121: { |
149: while ($cur_hit = $db->fetch_assoc($result)) | 152: while ($cur_hit = $db->fetch_assoc($result)) |
150: { | 153: { |
151: if ($cur_hit['last_email_sent'] != '' && (time() - $cur_hit['last_email_sent']) < 3600 && (time() - $cur_hit['last_email_sent']) >= 0) | 154: if ($cur_hit['last_email_sent'] != '' && (time() - $cur_hit['last_email_sent']) < 3600 && (time() - $cur_hit['last_email_sent']) >= 0) |
152: message($lang_login['Email flood'], true); | 155: message(sprintf($lang_login['Email flood'], intval((3600 - (time() - $cur_hit['last_email_sent'])) / 60)), true); |
153: | 156: |
154: // Generate a new password and a new password activation code | 157: // Generate a new password and a new password activation code |
155: $new_password = random_pass(8); | 158: $new_password = random_pass(8); |
228: | 231: |
229: | 232: |
230: if (!$pun_user['is_guest']) | 233: if (!$pun_user['is_guest']) |
234: { | |
231: header('Location: index.php'); | 235: header('Location: index.php'); |
236: exit; | |
237: } | |
232: | 238: |
233: // Try to determine if the data in HTTP_REFERER is valid (if not, we redirect to index.php after login) | 239: // Try to determine if the data in HTTP_REFERER is valid (if not, we redirect to index.php after login) |
234: if (!empty($_SERVER['HTTP_REFERER'])) | 240: if (!empty($_SERVER['HTTP_REFERER'])) |
257: | 263: |
258: if (!isset($redirect_url)) | 264: if (!isset($redirect_url)) |
259: $redirect_url = 'index.php'; | 265: $redirect_url = 'index.php'; |
266: else if (preg_match('%viewtopic\.php\?pid=(\d+)$%', $redirect_url, $matches)) | |
267: $redirect_url .= '#p'.$matches[1]; | |
260: | 268: |
261: $page_title = array(pun_htmlspecialchars($pun_config['o_board_title']), $lang_common['Login']); | 269: $page_title = array(pun_htmlspecialchars($pun_config['o_board_title']), $lang_common['Login']); |
262: $required_fields = array('req_username' => $lang_common['Username'], 'req_password' => $lang_common['Password']); | 270: $required_fields = array('req_username' => $lang_common['Username'], 'req_password' => $lang_common['Password']); |
a/misc.php | b/misc.php |
---|---|
111: message($lang_misc['Too long email message']); | 111: message($lang_misc['Too long email message']); |
112: | 112: |
113: if ($pun_user['last_email_sent'] != '' && (time() - $pun_user['last_email_sent']) < $pun_user['g_email_flood'] && (time() - $pun_user['last_email_sent']) >= 0) | 113: if ($pun_user['last_email_sent'] != '' && (time() - $pun_user['last_email_sent']) < $pun_user['g_email_flood'] && (time() - $pun_user['last_email_sent']) >= 0) |
114: message(sprintf($lang_misc['Email flood'], $pun_user['g_email_flood'])); | 114: message(sprintf($lang_misc['Email flood'], $pun_user['g_email_flood'], $pun_user['g_email_flood'] - (time() - $pun_user['last_email_sent']))); |
115: | 115: |
116: // Load the "form email" template | 116: // Load the "form email" template |
117: $mail_tpl = trim(file_get_contents(PUN_ROOT.'lang/'.$pun_user['language'].'/mail_templates/form_email.tpl')); | 117: $mail_tpl = trim(file_get_contents(PUN_ROOT.'lang/'.$pun_user['language'].'/mail_templates/form_email.tpl')); |
133: | 133: |
134: $db->query('UPDATE '.$db->prefix.'users SET last_email_sent='.time().' WHERE id='.$pun_user['id']) or error('Unable to update user', __FILE__, __LINE__, $db->error()); | 134: $db->query('UPDATE '.$db->prefix.'users SET last_email_sent='.time().' WHERE id='.$pun_user['id']) or error('Unable to update user', __FILE__, __LINE__, $db->error()); |
135: | 135: |
136: redirect(htmlspecialchars($_POST['redirect_url']), $lang_misc['Email sent redirect']); | 136: redirect(pun_htmlspecialchars($_POST['redirect_url']), $lang_misc['Email sent redirect']); |
137: } | 137: } |
138: | 138: |
139: | 139: |
140: // Try to determine if the data in HTTP_REFERER is valid (if not, we redirect to the users profile after the email is sent) | 140: // Try to determine if the data in HTTP_REFERER is valid (if not, we redirect to the user's profile after the email is sent) |
141: if (!empty($_SERVER['HTTP_REFERER'])) | 141: if (!empty($_SERVER['HTTP_REFERER'])) |
142: { | 142: { |
143: $referrer = parse_url($_SERVER['HTTP_REFERER']); | 143: $referrer = parse_url($_SERVER['HTTP_REFERER']); |
164: | 164: |
165: if (!isset($redirect_url)) | 165: if (!isset($redirect_url)) |
166: $redirect_url = 'profile.php?id='.$recipient_id; | 166: $redirect_url = 'profile.php?id='.$recipient_id; |
167: else if (preg_match('%viewtopic\.php\?pid=(\d+)$%', $redirect_url, $matches)) | |
168: $redirect_url .= '#p'.$matches[1]; | |
167: | 169: |
168: $page_title = array(pun_htmlspecialchars($pun_config['o_board_title']), $lang_misc['Send email to'].' '.pun_htmlspecialchars($recipient)); | 170: $page_title = array(pun_htmlspecialchars($pun_config['o_board_title']), $lang_misc['Send email to'].' '.pun_htmlspecialchars($recipient)); |
169: $required_fields = array('req_subject' => $lang_misc['Email subject'], 'req_message' => $lang_misc['Email message']); | 171: $required_fields = array('req_subject' => $lang_misc['Email subject'], 'req_message' => $lang_misc['Email message']); |
219: message($lang_misc['Reason too long']); | 221: message($lang_misc['Reason too long']); |
220: | 222: |
221: if ($pun_user['last_report_sent'] != '' && (time() - $pun_user['last_report_sent']) < $pun_user['g_report_flood'] && (time() - $pun_user['last_report_sent']) >= 0) | 223: if ($pun_user['last_report_sent'] != '' && (time() - $pun_user['last_report_sent']) < $pun_user['g_report_flood'] && (time() - $pun_user['last_report_sent']) >= 0) |
222: message(sprintf($lang_misc['Report flood'], $pun_user['g_report_flood'])); | 224: message(sprintf($lang_misc['Report flood'], $pun_user['g_report_flood'], $pun_user['g_report_flood'] - (time() - $pun_user['last_report_sent']))); |
223: | 225: |
224: // Get the topic ID | 226: // Get the topic ID |
225: $result = $db->query('SELECT topic_id FROM '.$db->prefix.'posts WHERE id='.$post_id) or error('Unable to fetch post info', __FILE__, __LINE__, $db->error()); | 227: $result = $db->query('SELECT topic_id FROM '.$db->prefix.'posts WHERE id='.$post_id) or error('Unable to fetch post info', __FILE__, __LINE__, $db->error()); |
268: | 270: |
269: $db->query('UPDATE '.$db->prefix.'users SET last_report_sent='.time().' WHERE id='.$pun_user['id']) or error('Unable to update user', __FILE__, __LINE__, $db->error()); | 271: $db->query('UPDATE '.$db->prefix.'users SET last_report_sent='.time().' WHERE id='.$pun_user['id']) or error('Unable to update user', __FILE__, __LINE__, $db->error()); |
270: | 272: |
271: redirect('viewtopic.php?pid='.$post_id.'#p'.$post_id, $lang_misc['Report redirect']); | 273: redirect('viewforum.php?id='.$forum_id, $lang_misc['Report redirect']); |
272: } | 274: } |
273: | 275: |
274: // Fetch some info about the post, the topic and the forum | 276: // Fetch some info about the post, the topic and the forum |
a/moderate.php | b/moderate.php |
---|---|
710: </div> | 710: </div> |
711: </fieldset> | 711: </fieldset> |
712: </div> | 712: </div> |
713: <p class="buttons"><input type="submit" name="delete_topics_comply" value="<?php echo $lang_misc['Delete'] ?>" /><a href="javascript:history.go(-1)"><?php echo $lang_common['Go back'] ?></a></p> | 713: <p class="buttons"><input type="submit" name="delete_topics_comply" value="<?php echo $lang_misc['Delete'] ?>" /> <a href="javascript:history.go(-1)"><?php echo $lang_common['Go back'] ?></a></p> |
714: </form> | 714: </form> |
715: </div> | 715: </div> |
716: </div> | 716: </div> |
a/post.php | b/post.php |
---|---|
61: { | 61: { |
62: // Flood protection | 62: // Flood protection |
63: if (!isset($_POST['preview']) && $pun_user['last_post'] != '' && (time() - $pun_user['last_post']) < $pun_user['g_post_flood']) | 63: if (!isset($_POST['preview']) && $pun_user['last_post'] != '' && (time() - $pun_user['last_post']) < $pun_user['g_post_flood']) |
64: $errors[] = $lang_post['Flood start'].' '.$pun_user['g_post_flood'].' '.$lang_post['flood end']; | 64: $errors[] = sprintf($lang_post['Flood start'], $pun_user['g_post_flood'], $pun_user['g_post_flood'] - (time() - $pun_user['last_post'])); |
65: | 65: |
66: // If it's a new topic | 66: // If it's a new topic |
67: if ($fid) | 67: if ($fid) |
108: $errors[] = $lang_common['Invalid email']; | 108: $errors[] = $lang_common['Invalid email']; |
109: | 109: |
110: // Check if it's a banned email address | 110: // Check if it's a banned email address |
111: // we should only check guests because members addresses are already verified | 111: // we should only check guests because members' addresses are already verified |
112: if ($pun_user['is_guest'] && is_banned_email($email)) | 112: if ($pun_user['is_guest'] && is_banned_email($email)) |
113: { | 113: { |
114: if ($pun_config['p_allow_banned_email'] == '0') | 114: if ($pun_config['p_allow_banned_email'] == '0') |
171: $new_tid = $tid; | 171: $new_tid = $tid; |
172: | 172: |
173: // Insert the new post | 173: // Insert the new post |
174: $db->query('INSERT INTO '.$db->prefix.'posts (poster, poster_id, poster_ip, message, hide_smilies, posted, topic_id) VALUES(\''.$db->escape($username).'\', '.$pun_user['id'].', \''.get_remote_address().'\', \''.$db->escape($message).'\', '.$hide_smilies.', '.$now.', '.$tid.')') or error('Unable to create post', __FILE__, __LINE__, $db->error()); | 174: $db->query('INSERT INTO '.$db->prefix.'posts (poster, poster_id, poster_ip, message, hide_smilies, posted, topic_id) VALUES(\''.$db->escape($username).'\', '.$pun_user['id'].', \''.$db->escape(get_remote_address()).'\', \''.$db->escape($message).'\', '.$hide_smilies.', '.$now.', '.$tid.')') or error('Unable to create post', __FILE__, __LINE__, $db->error()); |
175: $new_pid = $db->insert_id(); | 175: $new_pid = $db->insert_id(); |
176: | 176: |
177: // To subscribe or not to subscribe, that ... | 177: // To subscribe or not to subscribe, that ... |
187: { | 187: { |
188: // It's a guest. Insert the new post | 188: // It's a guest. Insert the new post |
189: $email_sql = ($pun_config['p_force_guest_email'] == '1' || $email != '') ? '\''.$db->escape($email).'\'' : 'NULL'; | 189: $email_sql = ($pun_config['p_force_guest_email'] == '1' || $email != '') ? '\''.$db->escape($email).'\'' : 'NULL'; |
190: $db->query('INSERT INTO '.$db->prefix.'posts (poster, poster_ip, poster_email, message, hide_smilies, posted, topic_id) VALUES(\''.$db->escape($username).'\', \''.get_remote_address().'\', '.$email_sql.', \''.$db->escape($message).'\', '.$hide_smilies.', '.$now.', '.$tid.')') or error('Unable to create post', __FILE__, __LINE__, $db->error()); | 190: $db->query('INSERT INTO '.$db->prefix.'posts (poster, poster_ip, poster_email, message, hide_smilies, posted, topic_id) VALUES(\''.$db->escape($username).'\', \''.$db->escape(get_remote_address()).'\', '.$email_sql.', \''.$db->escape($message).'\', '.$hide_smilies.', '.$now.', '.$tid.')') or error('Unable to create post', __FILE__, __LINE__, $db->error()); |
191: $new_pid = $db->insert_id(); | 191: $new_pid = $db->insert_id(); |
192: } | 192: } |
193: | 193: |
293: $db->query('INSERT INTO '.$db->prefix.'topic_subscriptions (user_id, topic_id) VALUES('.$pun_user['id'].' ,'.$new_tid.')') or error('Unable to add subscription', __FILE__, __LINE__, $db->error()); | 293: $db->query('INSERT INTO '.$db->prefix.'topic_subscriptions (user_id, topic_id) VALUES('.$pun_user['id'].' ,'.$new_tid.')') or error('Unable to add subscription', __FILE__, __LINE__, $db->error()); |
294: | 294: |
295: // Create the post ("topic post") | 295: // Create the post ("topic post") |
296: $db->query('INSERT INTO '.$db->prefix.'posts (poster, poster_id, poster_ip, message, hide_smilies, posted, topic_id) VALUES(\''.$db->escape($username).'\', '.$pun_user['id'].', \''.get_remote_address().'\', \''.$db->escape($message).'\', '.$hide_smilies.', '.$now.', '.$new_tid.')') or error('Unable to create post', __FILE__, __LINE__, $db->error()); | 296: $db->query('INSERT INTO '.$db->prefix.'posts (poster, poster_id, poster_ip, message, hide_smilies, posted, topic_id) VALUES(\''.$db->escape($username).'\', '.$pun_user['id'].', \''.$db->escape(get_remote_address()).'\', \''.$db->escape($message).'\', '.$hide_smilies.', '.$now.', '.$new_tid.')') or error('Unable to create post', __FILE__, __LINE__, $db->error()); |
297: } | 297: } |
298: else | 298: else |
299: { | 299: { |
300: // Create the post ("topic post") | 300: // Create the post ("topic post") |
301: $email_sql = ($pun_config['p_force_guest_email'] == '1' || $email != '') ? '\''.$db->escape($email).'\'' : 'NULL'; | 301: $email_sql = ($pun_config['p_force_guest_email'] == '1' || $email != '') ? '\''.$db->escape($email).'\'' : 'NULL'; |
302: $db->query('INSERT INTO '.$db->prefix.'posts (poster, poster_ip, poster_email, message, hide_smilies, posted, topic_id) VALUES(\''.$db->escape($username).'\', \''.get_remote_address().'\', '.$email_sql.', \''.$db->escape($message).'\', '.$hide_smilies.', '.$now.', '.$new_tid.')') or error('Unable to create post', __FILE__, __LINE__, $db->error()); | 302: $db->query('INSERT INTO '.$db->prefix.'posts (poster, poster_ip, poster_email, message, hide_smilies, posted, topic_id) VALUES(\''.$db->escape($username).'\', \''.$db->escape(get_remote_address()).'\', '.$email_sql.', \''.$db->escape($message).'\', '.$hide_smilies.', '.$now.', '.$new_tid.')') or error('Unable to create post', __FILE__, __LINE__, $db->error()); |
303: } | 303: } |
304: $new_pid = $db->insert_id(); | 304: $new_pid = $db->insert_id(); |
305: | 305: |
638: <textarea name="req_message" rows="20" cols="95" tabindex="<?php echo $cur_index++ ?>"><?php echo isset($_POST['req_message']) ? pun_htmlspecialchars($orig_message) : (isset($quote) ? $quote : ''); ?></textarea><br /></label> | 638: <textarea name="req_message" rows="20" cols="95" tabindex="<?php echo $cur_index++ ?>"><?php echo isset($_POST['req_message']) ? pun_htmlspecialchars($orig_message) : (isset($quote) ? $quote : ''); ?></textarea><br /></label> |
639: <ul class="bblinks"> | 639: <ul class="bblinks"> |
640: <li><span><a href="help.php#bbcode" onclick="window.open(this.href); return false;"><?php echo $lang_common['BBCode'] ?></a> <?php echo ($pun_config['p_message_bbcode'] == '1') ? $lang_common['on'] : $lang_common['off']; ?></span></li> | 640: <li><span><a href="help.php#bbcode" onclick="window.open(this.href); return false;"><?php echo $lang_common['BBCode'] ?></a> <?php echo ($pun_config['p_message_bbcode'] == '1') ? $lang_common['on'] : $lang_common['off']; ?></span></li> |
641: <li><span><a href="help.php#url" onclick="window.open(this.href); return false;"><?php echo $lang_common['url tag'] ?></a> <?php echo ($pun_config['p_message_bbcode'] == '1' && $pun_user['g_post_links'] == '1') ? $lang_common['on'] : $lang_common['off']; ?></span> | 641: <li><span><a href="help.php#url" onclick="window.open(this.href); return false;"><?php echo $lang_common['url tag'] ?></a> <?php echo ($pun_config['p_message_bbcode'] == '1' && $pun_user['g_post_links'] == '1') ? $lang_common['on'] : $lang_common['off']; ?></span></li> |
642: <li><span><a href="help.php#img" onclick="window.open(this.href); return false;"><?php echo $lang_common['img tag'] ?></a> <?php echo ($pun_config['p_message_bbcode'] == '1' && $pun_config['p_message_img_tag'] == '1') ? $lang_common['on'] : $lang_common['off']; ?></span></li> | 642: <li><span><a href="help.php#img" onclick="window.open(this.href); return false;"><?php echo $lang_common['img tag'] ?></a> <?php echo ($pun_config['p_message_bbcode'] == '1' && $pun_config['p_message_img_tag'] == '1') ? $lang_common['on'] : $lang_common['off']; ?></span></li> |
643: <li><span><a href="help.php#smilies" onclick="window.open(this.href); return false;"><?php echo $lang_common['Smilies'] ?></a> <?php echo ($pun_config['o_smilies'] == '1') ? $lang_common['on'] : $lang_common['off']; ?></span></li> | 643: <li><span><a href="help.php#smilies" onclick="window.open(this.href); return false;"><?php echo $lang_common['Smilies'] ?></a> <?php echo ($pun_config['o_smilies'] == '1') ? $lang_common['on'] : $lang_common['off']; ?></span></li> |
644: </ul> | 644: </ul> |
647: <?php | 647: <?php |
648: | 648: |
649: $checkboxes = array(); | 649: $checkboxes = array(); |
650: if ($is_admmod) | 650: if ($fid && $is_admmod) |
651: $checkboxes[] = '<label><input type="checkbox" name="stick_topic" value="1" tabindex="'.($cur_index++).'"'.(isset($_POST['stick_topic']) ? ' checked="checked"' : '').' />'.$lang_common['Stick topic'].'<br /></label>'; | 651: $checkboxes[] = '<label><input type="checkbox" name="stick_topic" value="1" tabindex="'.($cur_index++).'"'.(isset($_POST['stick_topic']) ? ' checked="checked"' : '').' />'.$lang_common['Stick topic'].'<br /></label>'; |
652: | 652: |
653: if (!$pun_user['is_guest']) | 653: if (!$pun_user['is_guest']) |
a/profile.php | b/profile.php |
---|---|
28: message($lang_common['No permission'], false, '403 Forbidden'); | 28: message($lang_common['No permission'], false, '403 Forbidden'); |
29: } | 29: } |
30: | 30: |
31: // Load the profile.php/register.php language file | 31: // Load the prof_reg.php language file |
32: require PUN_ROOT.'lang/'.$pun_user['language'].'/prof_reg.php'; | 32: require PUN_ROOT.'lang/'.$pun_user['language'].'/prof_reg.php'; |
33: | 33: |
34: // Load the profile.php language file | 34: // Load the profile.php language file |
61: } | 61: } |
62: } | 62: } |
63: | 63: |
64: // Make sure we are allowed to change this users password | 64: // Make sure we are allowed to change this user's password |
65: if ($pun_user['id'] != $id) | 65: if ($pun_user['id'] != $id) |
66: { | 66: { |
67: if (!$pun_user['is_admmod']) // A regular user trying to change another users password? | 67: if (!$pun_user['is_admmod']) // A regular user trying to change another user's password? |
68: message($lang_common['No permission'], false, '403 Forbidden'); | 68: message($lang_common['No permission'], false, '403 Forbidden'); |
69: else if ($pun_user['g_moderator'] == '1') // A moderator trying to change a users password? | 69: else if ($pun_user['g_moderator'] == '1') // A moderator trying to change a user's password? |
70: { | 70: { |
71: $result = $db->query('SELECT u.group_id, g.g_moderator FROM '.$db->prefix.'users AS u INNER JOIN '.$db->prefix.'groups AS g ON (g.g_id=u.group_id) WHERE u.id='.$id) or error('Unable to fetch user info', __FILE__, __LINE__, $db->error()); | 71: $result = $db->query('SELECT u.group_id, g.g_moderator FROM '.$db->prefix.'users AS u INNER JOIN '.$db->prefix.'groups AS g ON (g.g_id=u.group_id) WHERE u.id='.$id) or error('Unable to fetch user info', __FILE__, __LINE__, $db->error()); |
72: if (!$db->num_rows($result)) | 72: if (!$db->num_rows($result)) |
157: | 157: |
158: else if ($action == 'change_email') | 158: else if ($action == 'change_email') |
159: { | 159: { |
160: // Make sure we are allowed to change this users email | 160: // Make sure we are allowed to change this user's email |
161: if ($pun_user['id'] != $id) | 161: if ($pun_user['id'] != $id) |
162: { | 162: { |
163: if (!$pun_user['is_admmod']) // A regular user trying to change another users email? | 163: if (!$pun_user['is_admmod']) // A regular user trying to change another user's email? |
164: message($lang_common['No permission'], false, '403 Forbidden'); | 164: message($lang_common['No permission'], false, '403 Forbidden'); |
165: else if ($pun_user['g_moderator'] == '1') // A moderator trying to change a users email? | 165: else if ($pun_user['g_moderator'] == '1') // A moderator trying to change a user's email? |
166: { | 166: { |
167: $result = $db->query('SELECT u.group_id, g.g_moderator FROM '.$db->prefix.'users AS u INNER JOIN '.$db->prefix.'groups AS g ON (g.g_id=u.group_id) WHERE u.id='.$id) or error('Unable to fetch user info', __FILE__, __LINE__, $db->error()); | 167: $result = $db->query('SELECT u.group_id, g.g_moderator FROM '.$db->prefix.'users AS u INNER JOIN '.$db->prefix.'groups AS g ON (g.g_id=u.group_id) WHERE u.id='.$id) or error('Unable to fetch user info', __FILE__, __LINE__, $db->error()); |
168: if (!$db->num_rows($result)) | 168: if (!$db->num_rows($result)) |
288: <div class="blockform"> | 288: <div class="blockform"> |
289: <h2><span><?php echo $lang_profile['Change email'] ?></span></h2> | 289: <h2><span><?php echo $lang_profile['Change email'] ?></span></h2> |
290: <div class="box"> | 290: <div class="box"> |
291: <form id="change_email" method="post" action="profile.php?action=change_email&id=<?php echo $id ?>" id="change_email" onsubmit="return process_form(this)"> | 291: <form id="change_email" method="post" action="profile.php?action=change_email&id=<?php echo $id ?>" onsubmit="return process_form(this)"> |
292: <div class="inform"> | 292: <div class="inform"> |
293: <fieldset> | 293: <fieldset> |
294: <legend><?php echo $lang_profile['Email legend'] ?></legend> | 294: <legend><?php echo $lang_profile['Email legend'] ?></legend> |
677: else if (isset($_POST['form_sent'])) | 677: else if (isset($_POST['form_sent'])) |
678: { | 678: { |
679: // Fetch the user group of the user we are editing | 679: // Fetch the user group of the user we are editing |
680: $result = $db->query('SELECT u.username, u.group_id, g.g_moderator FROM '.$db->prefix.'users AS u INNER JOIN '.$db->prefix.'groups AS g ON (g.g_id=u.group_id) WHERE u.id='.$id) or error('Unable to fetch user info', __FILE__, __LINE__, $db->error()); | 680: $result = $db->query('SELECT u.username, u.group_id, g.g_moderator FROM '.$db->prefix.'users AS u LEFT JOIN '.$db->prefix.'groups AS g ON (g.g_id=u.group_id) WHERE u.id='.$id) or error('Unable to fetch user info', __FILE__, __LINE__, $db->error()); |
681: if (!$db->num_rows($result)) | 681: if (!$db->num_rows($result)) |
682: message($lang_common['Bad request'], false, '404 Not Found'); | 682: message($lang_common['Bad request'], false, '404 Not Found'); |
683: | 683: |
684: list($old_username, $group_id, $is_moderator) = $db->fetch_row($result); | 684: list($old_username, $group_id, $is_moderator) = $db->fetch_row($result); |
685: | 685: |
686: if ($pun_user['id'] != $id && // If we arent the user (i.e. editing your own profile) | 686: if ($pun_user['id'] != $id && // If we aren't the user (i.e. editing your own profile) |
687: (!$pun_user['is_admmod'] || // and we are not an admin or mod | 687: (!$pun_user['is_admmod'] || // and we are not an admin or mod |
688: ($pun_user['g_id'] != PUN_ADMIN && // or we aren't an admin and ... | 688: ($pun_user['g_id'] != PUN_ADMIN && // or we aren't an admin and ... |
689: ($pun_user['g_mod_edit_users'] == '0' || // mods aren't allowed to edit users | 689: ($pun_user['g_mod_edit_users'] == '0' || // mods aren't allowed to edit users |
1005: | 1005: |
1006: | 1006: |
1007: // View or edit? | 1007: // View or edit? |
1008: if ($pun_user['id'] != $id && // If we arent the user (i.e. editing your own profile) | 1008: if ($pun_user['id'] != $id && // If we aren't the user (i.e. editing your own profile) |
1009: (!$pun_user['is_admmod'] || // and we are not an admin or mod | 1009: (!$pun_user['is_admmod'] || // and we are not an admin or mod |
1010: ($pun_user['g_id'] != PUN_ADMIN && // or we aren't an admin and ... | 1010: ($pun_user['g_id'] != PUN_ADMIN && // or we aren't an admin and ... |
1011: ($pun_user['g_mod_edit_users'] == '0' || // mods aren't allowed to edit users | 1011: ($pun_user['g_mod_edit_users'] == '0' || // mods aren't allowed to edit users |
1037: { | 1037: { |
1038: $user['url'] = pun_htmlspecialchars(($pun_config['o_censoring'] == '1') ? censor_words($user['url']) : $user['url']); | 1038: $user['url'] = pun_htmlspecialchars(($pun_config['o_censoring'] == '1') ? censor_words($user['url']) : $user['url']); |
1039: $user_personal[] = '<dt>'.$lang_profile['Website'].'</dt>'; | 1039: $user_personal[] = '<dt>'.$lang_profile['Website'].'</dt>'; |
1040: $user_personal[] = '<dd><span class="website"><a href="'.$user['url'].'">'.$user['url'].'</a></span></dd>'; | 1040: $user_personal[] = '<dd><span class="website"><a href="'.$user['url'].'" rel="nofollow">'.$user['url'].'</a></span></dd>'; |
1041: } | 1041: } |
1042: | 1042: |
1043: if ($user['email_setting'] == '0' && !$pun_user['is_guest'] && $pun_user['g_send_email'] == '1') | 1043: if ($user['email_setting'] == '0' && !$pun_user['is_guest'] && $pun_user['g_send_email'] == '1') |
1535: </div> | 1535: </div> |
1536: <ul class="bblinks"> | 1536: <ul class="bblinks"> |
1537: <li><span><a href="help.php#bbcode" onclick="window.open(this.href); return false;"><?php echo $lang_common['BBCode'] ?></a> <?php echo ($pun_config['p_sig_bbcode'] == '1') ? $lang_common['on'] : $lang_common['off']; ?></span></li> | 1537: <li><span><a href="help.php#bbcode" onclick="window.open(this.href); return false;"><?php echo $lang_common['BBCode'] ?></a> <?php echo ($pun_config['p_sig_bbcode'] == '1') ? $lang_common['on'] : $lang_common['off']; ?></span></li> |
1538: <li><span><a href="help.php#url" onclick="window.open(this.href); return false;"><?php echo $lang_common['url tag'] ?></a> <?php echo ($pun_config['p_sig_bbcode'] == '1' && $pun_user['g_post_links'] == '1') ? $lang_common['on'] : $lang_common['off']; ?></span> | 1538: <li><span><a href="help.php#url" onclick="window.open(this.href); return false;"><?php echo $lang_common['url tag'] ?></a> <?php echo ($pun_config['p_sig_bbcode'] == '1' && $pun_user['g_post_links'] == '1') ? $lang_common['on'] : $lang_common['off']; ?></span></li> |
1539: <li><span><a href="help.php#img" onclick="window.open(this.href); return false;"><?php echo $lang_common['img tag'] ?></a> <?php echo ($pun_config['p_sig_bbcode'] == '1' && $pun_config['p_sig_img_tag'] == '1') ? $lang_common['on'] : $lang_common['off']; ?></span></li> | 1539: <li><span><a href="help.php#img" onclick="window.open(this.href); return false;"><?php echo $lang_common['img tag'] ?></a> <?php echo ($pun_config['p_sig_bbcode'] == '1' && $pun_config['p_sig_img_tag'] == '1') ? $lang_common['on'] : $lang_common['off']; ?></span></li> |
1540: <li><span><a href="help.php#smilies" onclick="window.open(this.href); return false;"><?php echo $lang_common['Smilies'] ?></a> <?php echo ($pun_config['o_smilies_sig'] == '1') ? $lang_common['on'] : $lang_common['off']; ?></span></li> | 1540: <li><span><a href="help.php#smilies" onclick="window.open(this.href); return false;"><?php echo $lang_common['Smilies'] ?></a> <?php echo ($pun_config['o_smilies_sig'] == '1') ? $lang_common['on'] : $lang_common['off']; ?></span></li> |
1541: </ul> | 1541: </ul> |
1624: <fieldset> | 1624: <fieldset> |
1625: <legend><?php echo $lang_profile['Pagination legend'] ?></legend> | 1625: <legend><?php echo $lang_profile['Pagination legend'] ?></legend> |
1626: <div class="infldset"> | 1626: <div class="infldset"> |
1627: <label class="conl"><?php echo $lang_profile['Topics per page'] ?><br /><input type="text" name="form[disp_topics]" value="<?php echo $user['disp_topics'] ?>" size="6" maxlength="3" /><br /></label> | 1627: <label class="conl"><?php echo $lang_profile['Topics per page'] ?><br /><input type="text" name="form[disp_topics]" value="<?php echo $user['disp_topics'] ?>" size="6" maxlength="2" /><br /></label> |
1628: <label class="conl"><?php echo $lang_profile['Posts per page'] ?><br /><input type="text" name="form[disp_posts]" value="<?php echo $user['disp_posts'] ?>" size="6" maxlength="3" /><br /></label> | 1628: <label class="conl"><?php echo $lang_profile['Posts per page'] ?><br /><input type="text" name="form[disp_posts]" value="<?php echo $user['disp_posts'] ?>" size="6" maxlength="2" /><br /></label> |
1629: <p class="clearb"><?php echo $lang_profile['Paginate info'] ?> <?php echo $lang_profile['Leave blank'] ?></p> | 1629: <p class="clearb"><?php echo $lang_profile['Paginate info'] ?> <?php echo $lang_profile['Leave blank'] ?></p> |
1630: </div> | 1630: </div> |
1631: </fieldset> | 1631: </fieldset> |
a/register.php | b/register.php |
---|---|
66: if (isset($_POST['form_sent'])) | 66: if (isset($_POST['form_sent'])) |
67: { | 67: { |
68: // Check that someone from this IP didn't register a user within the last hour (DoS prevention) | 68: // Check that someone from this IP didn't register a user within the last hour (DoS prevention) |
69: $result = $db->query('SELECT 1 FROM '.$db->prefix.'users WHERE registration_ip=\''.get_remote_address().'\' AND registered>'.(time() - 3600)) or error('Unable to fetch user info', __FILE__, __LINE__, $db->error()); | 69: $result = $db->query('SELECT 1 FROM '.$db->prefix.'users WHERE registration_ip=\''.$db->escape(get_remote_address()).'\' AND registered>'.(time() - 3600)) or error('Unable to fetch user info', __FILE__, __LINE__, $db->error()); |
70: | 70: |
71: if ($db->num_rows($result)) | 71: if ($db->num_rows($result)) |
72: message($lang_register['Registration flood']); | 72: message($lang_register['Registration flood']); |
156: $password_hash = pun_hash($password1); | 156: $password_hash = pun_hash($password1); |
157: | 157: |
158: // Add the user | 158: // Add the user |
159: $db->query('INSERT INTO '.$db->prefix.'users (username, group_id, password, email, email_setting, timezone, dst, language, style, registered, registration_ip, last_visit) VALUES(\''.$db->escape($username).'\', '.$intial_group_id.', \''.$password_hash.'\', \''.$db->escape($email1).'\', '.$email_setting.', '.$timezone.' , '.$dst.', \''.$db->escape($language).'\', \''.$pun_config['o_default_style'].'\', '.$now.', \''.get_remote_address().'\', '.$now.')') or error('Unable to create user', __FILE__, __LINE__, $db->error()); | 159: $db->query('INSERT INTO '.$db->prefix.'users (username, group_id, password, email, email_setting, timezone, dst, language, style, registered, registration_ip, last_visit) VALUES(\''.$db->escape($username).'\', '.$intial_group_id.', \''.$password_hash.'\', \''.$db->escape($email1).'\', '.$email_setting.', '.$timezone.' , '.$dst.', \''.$db->escape($language).'\', \''.$pun_config['o_default_style'].'\', '.$now.', \''.$db->escape(get_remote_address()).'\', '.$now.')') or error('Unable to create user', __FILE__, __LINE__, $db->error()); |
160: $new_uid = $db->insert_id(); | 160: $new_uid = $db->insert_id(); |
161: | 161: |
162: // If the mailing list isn't empty, we may need to send out some alerts | 162: // If the mailing list isn't empty, we may need to send out some alerts |
a/search.php | b/search.php |
---|---|
123: { | 123: { |
124: // Flood protection | 124: // Flood protection |
125: if ($pun_user['last_search'] && (time() - $pun_user['last_search']) < $pun_user['g_search_flood'] && (time() - $pun_user['last_search']) >= 0) | 125: if ($pun_user['last_search'] && (time() - $pun_user['last_search']) < $pun_user['g_search_flood'] && (time() - $pun_user['last_search']) >= 0) |
126: message(sprintf($lang_search['Search flood'], $pun_user['g_search_flood'])); | 126: message(sprintf($lang_search['Search flood'], $pun_user['g_search_flood'], $pun_user['g_search_flood'] - (time() - $pun_user['last_search']))); |
127: | 127: |
128: if (!$pun_user['is_guest']) | 128: if (!$pun_user['is_guest']) |
129: $db->query('UPDATE '.$db->prefix.'users SET last_search='.time().' WHERE id='.$pun_user['id']) or error('Unable to update user', __FILE__, __LINE__, $db->error()); | 129: $db->query('UPDATE '.$db->prefix.'users SET last_search='.time().' WHERE id='.$pun_user['id']) or error('Unable to update user', __FILE__, __LINE__, $db->error()); |
238: } | 238: } |
239: } | 239: } |
240: | 240: |
241: // Sort the results - annoyingly array_multisort re-indexes arrays with numeric keys, so we need to split the keys out into a seperate array then combine them again after | 241: // Sort the results - annoyingly array_multisort re-indexes arrays with numeric keys, so we need to split the keys out into a separate array then combine them again after |
242: $post_ids = array_keys($keyword_results); | 242: $post_ids = array_keys($keyword_results); |
243: $topic_ids = array_values($keyword_results); | 243: $topic_ids = array_values($keyword_results); |
244: | 244: |
360: if (!$num_hits) | 360: if (!$num_hits) |
361: message($lang_search['No user posts']); | 361: message($lang_search['No user posts']); |
362: | 362: |
363: // Pass on the user ID so that we can later know whos posts we're searching for | 363: // Pass on the user ID so that we can later know whose posts we're searching for |
364: $search_type[2] = $user_id; | 364: $search_type[2] = $user_id; |
365: } | 365: } |
366: // If it's a search for topics by a specific user ID | 366: // If it's a search for topics by a specific user ID |
372: if (!$num_hits) | 372: if (!$num_hits) |
373: message($lang_search['No user topics']); | 373: message($lang_search['No user topics']); |
374: | 374: |
375: // Pass on the user ID so that we can later know whos topics we're searching for | 375: // Pass on the user ID so that we can later know whose topics we're searching for |
376: $search_type[2] = $user_id; | 376: $search_type[2] = $user_id; |
377: } | 377: } |
378: // If it's a search for subscribed topics | 378: // If it's a search for subscribed topics |
815: if ($cur_forum['cid'] != $cur_category) // A new category since last iteration? | 815: if ($cur_forum['cid'] != $cur_category) // A new category since last iteration? |
816: { | 816: { |
817: if ($cur_category) | 817: if ($cur_category) |
818: { | |
819: echo "\t\t\t\t\t\t\t\t".'</div>'."\n"; | |
818: echo "\t\t\t\t\t\t\t".'</fieldset>'."\n"; | 820: echo "\t\t\t\t\t\t\t".'</fieldset>'."\n"; |
819: | 821: } |
822: | |
820: echo "\t\t\t\t\t\t\t".'<fieldset><legend><span>'.pun_htmlspecialchars($cur_forum['cat_name']).'</span></legend>'."\n"; | 823: echo "\t\t\t\t\t\t\t".'<fieldset><legend><span>'.pun_htmlspecialchars($cur_forum['cat_name']).'</span></legend>'."\n"; |
824: echo "\t\t\t\t\t\t\t\t".'<div class="rbox">'; | |
821: $cur_category = $cur_forum['cid']; | 825: $cur_category = $cur_forum['cid']; |
822: } | 826: } |
823: | 827: |
824: echo "\t\t\t\t\t\t\t\t".'<div class="checklist-item"><span class="fld-input"><input type="checkbox" name="forums[]" id="forum-'.$cur_forum['fid'].'" value="'.$cur_forum['fid'].'" /></span> <label for="forum-'.$cur_forum['fid'].'">'.pun_htmlspecialchars($cur_forum['forum_name']).'</label></div>'."\n"; | 828: echo "\t\t\t\t\t\t\t\t".'<label><input type="checkbox" name="forums[]" id="forum-'.$cur_forum['fid'].'" value="'.$cur_forum['fid'].'" />'.pun_htmlspecialchars($cur_forum['forum_name']).'</label>'."\n"; |
825: } | 829: } |
826: | 830: |
827: echo "\t\t\t\t\t\t\t".'</fieldset>'."\n"; | 831: if ($cur_category) |
832: { | |
833: echo "\t\t\t\t\t\t\t\t".'</div>'."\n"; | |
834: echo "\t\t\t\t\t\t\t".'</fieldset>'."\n"; | |
835: } | |
836: | |
828: echo "\t\t\t\t\t\t".'</div>'."\n"; | 837: echo "\t\t\t\t\t\t".'</div>'."\n"; |
829: echo "\t\t\t\t\t\t".'</div>'."\n"; | 838: echo "\t\t\t\t\t\t".'</div>'."\n"; |
830: } | 839: } |
a/style/Air.css | b/style/Air.css |
---|---|
22: .pun select { | 22: .pun select { |
23: padding-bottom: 1px; | 23: padding-bottom: 1px; |
24: padding-top: 1px; | 24: padding-top: 1px; |
25: padding-right: 1px; | |
25: } | 26: } |
26: | 27: |
27: /* Content Defaults | 28: /* Content Defaults |
424: /* Breadcrumbs, Postlink, Pagination | 425: /* Breadcrumbs, Postlink, Pagination |
425: ----------------------------------------------------------------*/ | 426: ----------------------------------------------------------------*/ |
426: | 427: |
427: .pun .linkst .inbox, .pun linksb .inbox, .pun .postlinksb .inbox { | 428: .pun .linkst .inbox, .pun .linksb .inbox, .pun .postlinksb .inbox { |
428: overflow: hidden; | 429: overflow: hidden; |
429: } | 430: } |
430: | 431: |
1304: max-width: 25em; | 1305: max-width: 25em; |
1305: } | 1306: } |
1306: | 1307: |
1307: .pun .checklist .checklist-item { | |
1308: position: relative; | |
1309: } | |
1310: | |
1311: .pun .checklist .checklist-item label { | |
1312: padding: 0 0 0 1.75em; | |
1313: } | |
1314: | |
1315: .pun .checklist .checklist-item .fld-input { | |
1316: position: absolute; | |
1317: left: 0; | |
1318: top: 0; | |
1319: padding: 0; | |
1320: margin: 0; | |
1321: } | |
1322: | |
1323: .pun .checklist .checklist-item input { | |
1324: margin: 0; | |
1325: height: 1.55em; | |
1326: width: 1.55em; | |
1327: } | |
1328: | |
1329: /***************************************************************** | 1308: /***************************************************************** |
1330: PROFILES (+ ADMIN MENU) | 1309: PROFILES (+ ADMIN MENU) |
1331: *****************************************************************/ | 1310: *****************************************************************/ |
a/style/Air/base_admin.css | b/style/Air/base_admin.css |
---|---|
34: display: inline-block; | 34: display: inline-block; |
35: } | 35: } |
36: | 36: |
37: #adminconsole fieldset tbody th { | 37: #adminconsole fieldset th { |
38: width: 15em; | 38: width: 15em; |
39: font-weight: normal; | 39: font-weight: normal; |
40: padding-right: 8px; | 40: padding-right: 8px; |
a/style/Cobalt.css | b/style/Cobalt.css |
---|---|
689: max-width: 25em; | 689: max-width: 25em; |
690: } | 690: } |
691: | 691: |
692: .pun .checklist .checklist-item { | |
693: position: relative; | |
694: margin: .2em 0; | |
695: } | |
696: | |
697: .pun .checklist .checklist-item label { | |
698: padding: 0 0 0 2.1em; | |
699: } | |
700: | |
701: .pun .checklist .checklist-item .fld-input { | |
702: position: absolute; | |
703: left: 0; | |
704: top: 0; | |
705: padding: 0; | |
706: margin: 0; | |
707: } | |
708: | |
709: .pun .checklist .checklist-item input { | |
710: margin: 0; | |
711: height: 1.15em; | |
712: width: 1.55em; | |
713: } | |
714: | |
715: /***************************************************************** | 692: /***************************************************************** |
716: 7. PROFILES AND ADMIN | 693: 7. PROFILES AND ADMIN |
717: *****************************************************************/ | 694: *****************************************************************/ |
a/style/Earth.css | b/style/Earth.css |
---|---|
22: .pun select { | 22: .pun select { |
23: padding-bottom: 1px; | 23: padding-bottom: 1px; |
24: padding-top: 1px; | 24: padding-top: 1px; |
25: padding-right: 1px; | |
25: } | 26: } |
26: | 27: |
27: /* Content Defaults | 28: /* Content Defaults |
423: /* Breadcrumbs, Postlink, Pagination | 424: /* Breadcrumbs, Postlink, Pagination |
424: ----------------------------------------------------------------*/ | 425: ----------------------------------------------------------------*/ |
425: | 426: |
426: .pun .linkst .inbox, .pun linksb .inbox, .pun .postlinksb .inbox { | 427: .pun .linkst .inbox, .pun .linksb .inbox, .pun .postlinksb .inbox { |
427: overflow: hidden; | 428: overflow: hidden; |
428: } | 429: } |
429: | 430: |
1303: max-width: 25em; | 1304: max-width: 25em; |
1304: } | 1305: } |
1305: | 1306: |
1306: .pun .checklist .checklist-item { | |
1307: position: relative; | |
1308: } | |
1309: | |
1310: .pun .checklist .checklist-item label { | |
1311: padding: 0 0 0 1.75em; | |
1312: } | |
1313: | |
1314: .pun .checklist .checklist-item .fld-input { | |
1315: position: absolute; | |
1316: left: 0; | |
1317: top: 0; | |
1318: padding: 0; | |
1319: margin: 0; | |
1320: } | |
1321: | |
1322: .pun .checklist .checklist-item input { | |
1323: margin: 0; | |
1324: height: 1.55em; | |
1325: width: 1.55em; | |
1326: } | |
1327: | |
1328: /***************************************************************** | 1307: /***************************************************************** |
1329: PROFILES (+ ADMIN MENU) | 1308: PROFILES (+ ADMIN MENU) |
1330: *****************************************************************/ | 1309: *****************************************************************/ |
a/style/Earth/base_admin.css | b/style/Earth/base_admin.css |
---|---|
34: display: inline-block; | 34: display: inline-block; |
35: } | 35: } |
36: | 36: |
37: #adminconsole fieldset tbody th { | 37: #adminconsole fieldset th { |
38: width: 15em; | 38: width: 15em; |
39: font-weight: normal; | 39: font-weight: normal; |
40: padding-right: 8px; | 40: padding-right: 8px; |
a/style/Fire.css | b/style/Fire.css |
---|---|
22: .pun select { | 22: .pun select { |
23: padding-bottom: 1px; | 23: padding-bottom: 1px; |
24: padding-top: 1px; | 24: padding-top: 1px; |
25: padding-right: 1px; | |
25: } | 26: } |
26: | 27: |
27: /* Content Defaults | 28: /* Content Defaults |
423: /* Breadcrumbs, Postlink, Pagination | 424: /* Breadcrumbs, Postlink, Pagination |
424: ----------------------------------------------------------------*/ | 425: ----------------------------------------------------------------*/ |
425: | 426: |
426: .pun .linkst .inbox, .pun linksb .inbox, .pun .postlinksb .inbox { | 427: .pun .linkst .inbox, .pun .linksb .inbox, .pun .postlinksb .inbox { |
427: overflow: hidden; | 428: overflow: hidden; |
428: } | 429: } |
429: | 430: |
1303: max-width: 25em; | 1304: max-width: 25em; |
1304: } | 1305: } |
1305: | 1306: |
1306: .pun .checklist .checklist-item { | |
1307: position: relative; | |
1308: } | |
1309: | |
1310: .pun .checklist .checklist-item label { | |
1311: padding: 0 0 0 1.75em; | |
1312: } | |
1313: | |
1314: .pun .checklist .checklist-item .fld-input { | |
1315: position: absolute; | |
1316: left: 0; | |
1317: top: 0; | |
1318: padding: 0; | |
1319: margin: 0; | |
1320: } | |
1321: | |
1322: .pun .checklist .checklist-item input { | |
1323: margin: 0; | |
1324: height: 1.55em; | |
1325: width: 1.55em; | |
1326: } | |
1327: | |
1328: /***************************************************************** | 1307: /***************************************************************** |
1329: PROFILES (+ ADMIN MENU) | 1308: PROFILES (+ ADMIN MENU) |
1330: *****************************************************************/ | 1309: *****************************************************************/ |
a/style/Fire/base_admin.css | b/style/Fire/base_admin.css |
---|---|
34: display: inline-block; | 34: display: inline-block; |
35: } | 35: } |
36: | 36: |
37: #adminconsole fieldset tbody th { | 37: #adminconsole fieldset th { |
38: width: 15em; | 38: width: 15em; |
39: font-weight: normal; | 39: font-weight: normal; |
40: padding-right: 8px; | 40: padding-right: 8px; |
a/style/Lithium.css | b/style/Lithium.css |
---|---|
689: max-width: 25em; | 689: max-width: 25em; |
690: } | 690: } |
691: | 691: |
692: .pun .checklist .checklist-item { | |
693: position: relative; | |
694: margin: .2em 0; | |
695: } | |
696: | |
697: .pun .checklist .checklist-item label { | |
698: padding: 0 0 0 2.1em; | |
699: } | |
700: | |
701: .pun .checklist .checklist-item .fld-input { | |
702: position: absolute; | |
703: left: 0; | |
704: top: 0; | |
705: padding: 0; | |
706: margin: 0; | |
707: } | |
708: | |
709: .pun .checklist .checklist-item input { | |
710: margin: 0; | |
711: height: 1.15em; | |
712: width: 1.55em; | |
713: } | |
714: | |
715: /***************************************************************** | 692: /***************************************************************** |
716: 7. PROFILES AND ADMIN | 693: 7. PROFILES AND ADMIN |
717: *****************************************************************/ | 694: *****************************************************************/ |
a/style/Mercury.css | b/style/Mercury.css |
---|---|
689: max-width: 25em; | 689: max-width: 25em; |
690: } | 690: } |
691: | 691: |
692: .pun .checklist .checklist-item { | |
693: position: relative; | |
694: margin: .2em 0; | |
695: } | |
696: | |
697: .pun .checklist .checklist-item label { | |
698: padding: 0 0 0 2.1em; | |
699: } | |
700: | |
701: .pun .checklist .checklist-item .fld-input { | |
702: position: absolute; | |
703: left: 0; | |
704: top: 0; | |
705: padding: 0; | |
706: margin: 0; | |
707: } | |
708: | |
709: .pun .checklist .checklist-item input { | |
710: margin: 0; | |
711: height: 1.15em; | |
712: width: 1.55em; | |
713: } | |
714: | |
715: /***************************************************************** | 692: /***************************************************************** |
716: 7. PROFILES AND ADMIN | 693: 7. PROFILES AND ADMIN |
717: *****************************************************************/ | 694: *****************************************************************/ |
a/style/Oxygen.css | b/style/Oxygen.css |
---|---|
690: max-width: 25em; | 690: max-width: 25em; |
691: } | 691: } |
692: | 692: |
693: .pun .checklist .checklist-item { | |
694: position: relative; | |
695: margin: .2em 0; | |
696: } | |
697: | |
698: .pun .checklist .checklist-item label { | |
699: padding: 0 0 0 2.1em; | |
700: } | |
701: | |
702: .pun .checklist .checklist-item .fld-input { | |
703: position: absolute; | |
704: left: 0; | |
705: top: 0; | |
706: padding: 0; | |
707: margin: 0; | |
708: } | |
709: | |
710: .pun .checklist .checklist-item input { | |
711: margin: 0; | |
712: height: 1.15em; | |
713: width: 1.55em; | |
714: } | |
715: | |
716: /***************************************************************** | 693: /***************************************************************** |
717: 7. PROFILES AND ADMIN | 694: 7. PROFILES AND ADMIN |
718: *****************************************************************/ | 695: *****************************************************************/ |
a/style/Radium.css | b/style/Radium.css |
---|---|
689: max-width: 25em; | 689: max-width: 25em; |
690: } | 690: } |
691: | 691: |
692: .pun .checklist .checklist-item { | |
693: position: relative; | |
694: margin: .2em 0; | |
695: } | |
696: | |
697: .pun .checklist .checklist-item label { | |
698: padding: 0 0 0 2.1em; | |
699: } | |
700: | |
701: .pun .checklist .checklist-item .fld-input { | |
702: position: absolute; | |
703: left: 0; | |
704: top: 0; | |
705: padding: 0; | |
706: margin: 0; | |
707: } | |
708: | |
709: .pun .checklist .checklist-item input { | |
710: margin: 0; | |
711: height: 1.15em; | |
712: width: 1.55em; | |
713: } | |
714: | |
715: /***************************************************************** | 692: /***************************************************************** |
716: 7. PROFILES AND ADMIN | 693: 7. PROFILES AND ADMIN |
717: *****************************************************************/ | 694: *****************************************************************/ |
a/style/Sulfur.css | b/style/Sulfur.css |
---|---|
689: max-width: 25em; | 689: max-width: 25em; |
690: } | 690: } |
691: | 691: |
692: .pun .checklist .checklist-item { | |
693: position: relative; | |
694: margin: .2em 0; | |
695: } | |
696: | |
697: .pun .checklist .checklist-item label { | |
698: padding: 0 0 0 2.1em; | |
699: } | |
700: | |
701: .pun .checklist .checklist-item .fld-input { | |
702: position: absolute; | |
703: left: 0; | |
704: top: 0; | |
705: padding: 0; | |
706: margin: 0; | |
707: } | |
708: | |
709: .pun .checklist .checklist-item input { | |
710: margin: 0; | |
711: height: 1.15em; | |
712: width: 1.55em; | |
713: } | |
714: | |
715: /***************************************************************** | 692: /***************************************************************** |
716: 7. PROFILES AND ADMIN | 693: 7. PROFILES AND ADMIN |
717: *****************************************************************/ | 694: *****************************************************************/ |
a/style/Technetium.css | b/style/Technetium.css |
---|---|
1: /***************************************************************** | 1: /***************************************************************** |
2: Technitium theme CSS | 2: Technitium theme CSS |
3: | |
4: Yes, it is valid CSS 3, but unfortunately border-radius doesn't seem to work correctly in my Firefox version so I have to give it the moz versions, which break the validator. Sorry. | |
5: *****************************************************************/ | 3: *****************************************************************/ |
6: | 4: |
7: /***************************************************************** | 5: /***************************************************************** |
17: margin: 0; | 15: margin: 0; |
18: padding: 0; | 16: padding: 0; |
19: border: 0; | 17: border: 0; |
20: } | 18: } |
21: | 19: |
22: .pun ul, .pun ol { | 20: .pun ul, .pun ol { |
23: list-style: none | 21: list-style: none |
24: } | 22: } |
25: | 23: |
26: | 24: |
27: /* Structural Settings | 25: /* Structural Settings |
34: .pun { | 32: .pun { |
35: width: 95%; | 33: width: 95%; |
36: margin: 0 auto; | 34: margin: 0 auto; |
37: } | 35: } |
38: | 36: |
39: .pun .clearer, .pun .nosize { | 37: .pun .clearer, .pun .nosize { |
40: height: 0; | 38: height: 0; |
42: line-height: 0; | 40: line-height: 0; |
43: font-size: 0; | 41: font-size: 0; |
44: overflow: hidden | 42: overflow: hidden |
45: } | 43: } |
46: | 44: |
47: .pun .clearer, .pun .clearb { | 45: .pun .clearer, .pun .clearb { |
48: clear: both | 46: clear: both |
49: } | 47: } |
50: | 48: |
51: .pun .nosize { | 49: .pun .nosize { |
52: position: absolute; | 50: position: absolute; |
53: left: -9999em; | 51: left: -9999em; |
54: text-indent: -9999em; | 52: text-indent: -9999em; |
55: width: 0; | 53: width: 0; |
56: } | 54: } |
57: | 55: |
58: * html .inbox, * html .inform, * html .pun, * html .tclcon, * html .codebox { | 56: * html .inbox, * html .inform, * html .pun, * html .tclcon, * html .codebox { |
59: height: 1px | 57: height: 1px |
60: } | 58: } |
61: | 59: |
62: .pun, .pun .inbox, .pun .inform, .pun .tclcon, .pun .codebox { | 60: .pun, .pun .inbox, .pun .inform, .pun .tclcon, .pun .codebox { |
63: min-height: 1px | 61: min-height: 1px |
64: } | 62: } |
65: | 63: |
66: .clearl { | 64: .clearl { |
67: clear: left; | 65: clear: left; |
68: } | 66: } |
69: | 67: |
70: /* Hidden Elements | 68: /* Hidden Elements |
71: ----------------------------------------------------------------*/ | 69: ----------------------------------------------------------------*/ |
78: width: 0; | 76: width: 0; |
79: left: -9999em; | 77: left: -9999em; |
80: text-indent: -9999em; | 78: text-indent: -9999em; |
81: } | 79: } |
82: | 80: |
83: /***************************************************************** | 81: /***************************************************************** |
84: 2. TEXT & CONTENT | 82: 2. TEXT & CONTENT |
89: | 87: |
90: .pun { | 88: .pun { |
91: font: 10pt Georgia, Times, "Times New Roman", serif | 89: font: 10pt Georgia, Times, "Times New Roman", serif |
92: } | 90: } |
93: | 91: |
94: .pun table, .pun td, .pun th, .pun input, .pun select, .pun optgroup, .pun textarea, .pun samp, .pun legend { | 92: .pun table, .pun td, .pun th, .pun input, .pun select, .pun optgroup, .pun textarea, .pun samp, .pun legend { |
95: font-size: 1em; | 93: font-size: 1em; |
96: font-family: Georgia, Times, "Times New Roman", serif; | 94: font-family: Georgia, Times, "Times New Roman", serif; |
97: } | 95: } |
98: | 96: |
99: .pun pre, .pun code { | 97: .pun pre, .pun code { |
100: font-size: 1.182em; | 98: font-size: 1.182em; |
101: font-family: consolas, monaco, "bitstream vera sans mono", "courier new", courier, monospace | 99: font-family: consolas, monaco, "bitstream vera sans mono", "courier new", courier, monospace |
102: } | 100: } |
103: | 101: |
104: .pun pre code { | 102: .pun pre code { |
105: font-size: 1em; | 103: font-size: 1em; |
106: } | 104: } |
107: | 105: |
108: .pun strong { | 106: .pun strong { |
109: font-weight: bold; | 107: font-weight: bold; |
110: } | 108: } |
111: | 109: |
112: .pun em { | 110: .pun em { |
113: font-style: italic; | 111: font-style: italic; |
114: } | 112: } |
115: | 113: |
116: #vf td { | 114: #vf td { |
117: font-size: 1.1em; | 115: font-size: 1.1em; |
118: } | 116: } |
119: | 117: |
120: | 118: |
121: /* Content Defaults | 119: /* Content Defaults |
124: .pun p, .pun ul, .pun ol, .pun dl { | 122: .pun p, .pun ul, .pun ol, .pun dl { |
125: font-size: 1em; | 123: font-size: 1em; |
126: padding: 3px 0; | 124: padding: 3px 0; |
127: } | 125: } |
128: | 126: |
129: .pun h2 { | 127: .pun h2 { |
130: font-size: 1.5em; | 128: font-size: 1.5em; |
131: font-weight: normal; | 129: font-weight: normal; |
132: padding: 4px 6px; | 130: padding: 4px 6px; |
133: padding: 6px; | 131: padding: 6px; |
134: -moz-border-radius-topleft: 0.3em; | 132: border-radius: 0.3em 0.3em 0 0; |
135: -moz-border-radius-topright: 0.3em; | 133: } |
136: -webkit-border-top-left-radius: 0.3em; | |
137: -webkit-border-top-right-radius: 0.3em; | |
138: } | |
139: | 134: |
140: .pun h2 #brdmenu { | 135: .pun h2 #brdmenu { |
141: font-size: 1.1em; | 136: font-size: 1.1em; |
142: } | 137: } |
143: | 138: |
144: .pun .blockpost h2 { | 139: .pun .blockpost h2 { |
145: font-size: 1.0em; | 140: font-size: 1.0em; |
146: padding: 8px; | 141: padding: 8px; |
147: } | 142: } |
148: | 143: |
149: .pun h3 { | 144: .pun h3 { |
150: font-size: 1.091em; | 145: font-size: 1.091em; |
151: padding: 3px 0; | 146: padding: 3px 0; |
152: } | 147: } |
153: | 148: |
154: .pun table p, .pun table h3 { | 149: .pun table p, .pun table h3 { |
155: padding: 0; | 150: padding: 0; |
156: } | 151: } |
157: | 152: |
158: .pun span.warntext, .pun p.warntext { | 153: .pun span.warntext, .pun p.warntext { |
159: font-weight: bold | 154: font-weight: bold |
160: } | 155: } |
161: | 156: |
162: .pun .postleft dl dt { | 157: .pun .postleft dl dt { |
163: font-size: 1.4em; | 158: font-size: 1.4em; |
164: } | 159: } |
165: | 160: |
166: /* User Content (Announcements, Rules, Posts) | 161: /* User Content (Announcements, Rules, Posts) |
167: ----------------------------------------------------------------*/ | 162: ----------------------------------------------------------------*/ |
169: .pun .usercontent p, .pun .postmsg p { | 164: .pun .usercontent p, .pun .postmsg p { |
170: padding: 0.5em 0; | 165: padding: 0.5em 0; |
171: line-height: 1.6em; | 166: line-height: 1.6em; |
172: } | 167: } |
173: | 168: |
174: .pun .usercontent ul, .pun .postmsg ul { | 169: .pun .usercontent ul, .pun .postmsg ul { |
175: padding: 0.75em 1em 0.75em 2.5em; | 170: padding: 0.75em 1em 0.75em 2.5em; |
176: list-style: disc | 171: list-style: disc |
177: } | 172: } |
178: | 173: |
179: .pun .usercontent ol, .pun .postmsg ol { | 174: .pun .usercontent ol, .pun .postmsg ol { |
180: padding: 0.75em 1em 0.75em 2.5em; | 175: padding: 0.75em 1em 0.75em 2.5em; |
181: list-style: decimal | 176: list-style: decimal |
182: } | 177: } |
183: | 178: |
184: .pun .usercontent ol.alpha, .pun .postmsg ol.alpha { | 179: .pun .usercontent ol.alpha, .pun .postmsg ol.alpha { |
185: list-style: lower-alpha | 180: list-style: lower-alpha |
186: } | 181: } |
187: | 182: |
188: .pun .usercontent li ol, .pun .usercontent li ul, .pun .postmsg li ol, .pun .postmsg li ul { | 183: .pun .usercontent li ol, .pun .usercontent li ul, .pun .postmsg li ol, .pun .postmsg li ul { |
189: padding: 0.25em 1em 0.75em 2.5em | 184: padding: 0.25em 1em 0.75em 2.5em |
190: } | 185: } |
191: | 186: |
192: .pun .usercontent li p, .pun .postmsg li p { | 187: .pun .usercontent li p, .pun .postmsg li p { |
193: padding: 0 | 188: padding: 0 |
194: } | 189: } |
195: | 190: |
196: .pun .usercontent h1 { | 191: .pun .usercontent h1 { |
197: font-size: 1.4em; | 192: font-size: 1.4em; |
198: font-weight: bold; | 193: font-weight: bold; |
199: padding: 0.75em 0 0 0 | 194: padding: 0.75em 0 0 0 |
200: } | 195: } |
201: | 196: |
202: .pun .usercontent h2 { | 197: .pun .usercontent h2 { |
203: font-size: 1.2em; | 198: font-size: 1.2em; |
204: font-weight: bold; | 199: font-weight: bold; |
205: padding: 0.75em 0 0 0 | 200: padding: 0.75em 0 0 0 |
206: } | 201: } |
207: | 202: |
208: .pun .usercontent h3 { | 203: .pun .usercontent h3 { |
209: font-size: 1.1em; | 204: font-size: 1.1em; |
210: font-weight: bold; | 205: font-weight: bold; |
211: padding: 0.75em 0 0 0 | 206: padding: 0.75em 0 0 0 |
212: } | 207: } |
213: | 208: |
214: .pun .usercontent h4, .pun .usercontent h5, .pun .usercontent h6 { | 209: .pun .usercontent h4, .pun .usercontent h5, .pun .usercontent h6 { |
215: font-size: 1em; | 210: font-size: 1em; |
216: font-weight: bold; | 211: font-weight: bold; |
217: padding: 0.75em 0 0 0 | 212: padding: 0.75em 0 0 0 |
218: } | 213: } |
219: | 214: |
220: .pun .quotebox cite { | 215: .pun .quotebox cite { |
221: font-weight: bold; | 216: font-weight: bold; |
222: font-style: normal; | 217: font-style: normal; |
223: padding: 0.75em 0.75em 0 0.75em | 218: padding: 0.75em 0.75em 0 0.75em |
224: } | 219: } |
225: | 220: |
226: .pun span.bbu { | 221: .pun span.bbu { |
227: text-decoration: underline | 222: text-decoration: underline |
228: } | 223: } |
229: | 224: |
230: .pun span.bbs, .pun del { | 225: .pun span.bbs, .pun del { |
231: text-decoration: line-through; | 226: text-decoration: line-through; |
232: } | 227: } |
233: | 228: |
234: .pun .postmsg ins, #punhelp samp ins { | 229: .pun .postmsg ins, #punhelp samp ins { |
235: text-decoration: none; | 230: text-decoration: none; |
236: } | 231: } |
237: | 232: |
238: .pun div.postmsg h5, #punhelp h5 { | 233: .pun div.postmsg h5, #punhelp h5 { |
239: font-size: 1.1em; | 234: font-size: 1.1em; |
240: font-weight: bold; | 235: font-weight: bold; |
241: padding: 0.75em 0 0 0; | 236: padding: 0.75em 0 0 0; |
242: } | 237: } |
243: | 238: |
244: /***************************************************************** | 239: /***************************************************************** |
245: 3. COMMON STYLES | 240: 3. COMMON STYLES |
250: | 245: |
251: .pun { | 246: .pun { |
252: margin: 12px 20px | 247: margin: 12px 20px |
253: } | 248: } |
254: | 249: |
255: #punredirect, #punmaint, #puninstall, #pundb_update { | 250: #punredirect, #punmaint, #puninstall, #pundb_update { |
256: margin: 50px 20% 12px 20%; | 251: margin: 50px 20% 12px 20%; |
257: width: auto; | 252: width: auto; |
258: } | 253: } |
259: | 254: |
260: | 255: |
261: /* Vertical Element Spacing | 256: /* Vertical Element Spacing |
263: | 258: |
264: #brdheader { | 259: #brdheader { |
265: margin: 0 0 12px 0; | 260: margin: 0 0 12px 0; |
266: } | 261: } |
267: | 262: |
268: #announce, #brdstats { | 263: #announce, #brdstats { |
269: margin: 12px 0 12px 0; | 264: margin: 12px 0 12px 0; |
270: } | 265: } |
271: | 266: |
272: .pun .blocktable, .pun .block, .pun .blockform, .pun .block2col, #postreview { | 267: .pun .blocktable, .pun .block, .pun .blockform, .pun .block2col, #postreview { |
273: margin-bottom: 12px | 268: margin-bottom: 12px |
274: } | 269: } |
275: | 270: |
276: #punindex .blocktable, .pun .blockpost { | 271: #punindex .blocktable, .pun .blockpost { |
277: margin-bottom: 6px | 272: margin-bottom: 6px |
278: } | 273: } |
279: | 274: |
280: #postreview .box { | 275: #postreview .box { |
281: margin-bottom: 3px; | 276: margin-bottom: 3px; |
282: } | 277: } |
283: | 278: |
284: .pun .block2col .blockform, .pun .block2col .block { | 279: .pun .block2col .blockform, .pun .block2col .block { |
285: margin-bottom: 0px | 280: margin-bottom: 0px |
286: } | 281: } |
287: | 282: |
288: .pun .linkst, .pun .linksb { | 283: .pun .linkst, .pun .linksb { |
289: margin-top: -12px | 284: margin-top: -12px |
290: } | 285: } |
291: | 286: |
292: .pun .postlinksb { | 287: .pun .postlinksb { |
293: margin-top: -6px | 288: margin-top: -6px |
294: } | 289: } |
295: | 290: |
296: | 291: |
297: /* External Borders | 292: /* External Borders |
300: .pun .box { | 295: .pun .box { |
301: border-style: solid; | 296: border-style: solid; |
302: border-width: 1px; | 297: border-width: 1px; |
303: } | 298: } |
304: | 299: |
305: | 300: |
306: .pun h2 { | 301: .pun h2 { |
315: | 310: |
316: .pun .block .inbox, .pun .blockmenu .inbox { | 311: .pun .block .inbox, .pun .blockmenu .inbox { |
317: padding: 3px 6px | 312: padding: 3px 6px |
318: } | 313: } |
319: | 314: |
320: /***************************************************************** | 315: /***************************************************************** |
321: 4. COMMON BOARD ELEMENTS | 316: 4. COMMON BOARD ELEMENTS |
328: font-size: 1.5em; | 323: font-size: 1.5em; |
329: line-height: 1.1em; | 324: line-height: 1.1em; |
330: padding: 3px 0 0 0; | 325: padding: 3px 0 0 0; |
331: } | 326: } |
332: | 327: |
333: #brdmenu { | 328: #brdmenu { |
334: font-size:1.2em; | 329: font-size:1.2em; |
335: } | 330: } |
336: | 331: |
337: #brddesc { | 332: #brddesc { |
338: padding: 3px 0; | 333: padding: 3px 0; |
339: } | 334: } |
340: | 335: |
341: #brddesc * { | 336: #brddesc * { |
342: padding-top: 0; | 337: padding-top: 0; |
343: padding-bottom: 0; | 338: padding-bottom: 0; |
344: } | 339: } |
345: | 340: |
346: | 341: |
347: #brdmenu li { | 342: #brdmenu li { |
349: margin-right: 10px; | 344: margin-right: 10px; |
350: margin-top: 12px; | 345: margin-top: 12px; |
351: margin-bottom: 12px; | 346: margin-bottom: 12px; |
352: } | 347: } |
353: | 348: |
354: | 349: |
355: #brdmenu a:link, #brdmenu a:visited { | 350: #brdmenu a:link, #brdmenu a:visited { |
356: text-decoration: none; | 351: text-decoration: none; |
357: text-shadow: #FFF 1px -1px 0.4em; | 352: text-shadow: #FFF 1px -1px 0.4em; |
358: padding: 0.2em; | 353: padding: 0.2em; |
359: } | 354: } |
360: | 355: |
361: #brdwelcome .conl { | 356: #brdwelcome .conl { |
362: float: left; | 357: float: left; |
363: white-space: nowrap; | 358: white-space: nowrap; |
364: } | 359: } |
365: | 360: |
366: #brdwelcome li { | 361: #brdwelcome li { |
367: float:left; | 362: float:left; |
371: | 366: |
372: #brdwelcome .conl li strong:after { | 367: #brdwelcome .conl li strong:after { |
373: content: '.' | 368: content: '.' |
374: } | 369: } |
375: | 370: |
376: #brdwelcome .conr { | 371: #brdwelcome .conr { |
377: float: right; | 372: float: right; |
378: text-align: right; | 373: text-align: right; |
379: } | 374: } |
380: | 375: |
381: #brdwelcome .conr li { | 376: #brdwelcome .conr li { |
382: float: right; | 377: float: right; |
383: text-align: right; | 378: text-align: right; |
384: } | 379: } |
385: | 380: |
386: /* Breadcrumbs and Post Links | 381: /* Breadcrumbs and Post Links |
387: ----------------------------------------------------------------*/ | 382: ----------------------------------------------------------------*/ |
388: | 383: |
389: .pun .linkst { | 384: .pun .linkst { |
390: padding: 8px 6px 3px 6px | 385: padding: 8px 6px 3px 6px |
391: } | 386: } |
392: | 387: |
393: .pun .linksb, .pun .postlinksb { | 388: .pun .linksb, .pun .postlinksb { |
394: padding: 3px 6px 8px 6px | 389: padding: 3px 6px 8px 6px |
395: } | 390: } |
396: | 391: |
397: .pun .crumbs { | 392: .pun .crumbs { |
398: clear: both; | 393: clear: both; |
399: width: 100%; | 394: width: 100%; |
400: overflow: hidden; | 395: overflow: hidden; |
401: } | 396: } |
402: | 397: |
403: .pun .crumbs li { | 398: .pun .crumbs li { |
404: display: inline; | 399: display: inline; |
405: white-space: nowrap; | 400: white-space: nowrap; |
406: font-weight: bold; | 401: font-weight: bold; |
407: } | 402: } |
408: | 403: |
409: .pun .linkst .crumbs { | 404: .pun .linkst .crumbs { |
410: font-size: 1.3em; | 405: font-size: 1.3em; |
411: } | 406: } |
412: | 407: |
413: .pun .pagelink { | 408: .pun .pagelink { |
414: float: left; | 409: float: left; |
415: display: block; | 410: display: block; |
416: white-space: normal; | 411: white-space: normal; |
417: } | 412: } |
418: | 413: |
419: .pun .postlink { | 414: .pun .postlink { |
420: font-size: 1.1em; | 415: font-size: 1.1em; |
421: font-weight: bold; | 416: font-weight: bold; |
422: white-space: wrap; | 417: white-space: wrap; |
423: text-decoration: none; | 418: text-decoration: none; |
424: } | 419: } |
425: | 420: |
426: .pun .linkst .postlink { | 421: .pun .linkst .postlink { |
427: position: relative; | 422: position: relative; |
428: margin-top: -0.2em; | 423: margin-top: -0.2em; |
429: margin-bottom: 0.5em; | 424: margin-bottom: 0.5em; |
430: } | 425: } |
431: | 426: |
432: .pun .linksb .postlink, .pun .postlinksb .postlink { | 427: .pun .linksb .postlink, .pun .postlinksb .postlink { |
433: position: relative; | 428: position: relative; |
434: margin-top: 0.5em; | 429: margin-top: 0.5em; |
435: margin-bottom: -0.5em; | 430: margin-bottom: -0.5em; |
436: } | 431: } |
437: | 432: |
438: .pun .postlink, .pun .modbuttons { | 433: .pun .postlink, .pun .modbuttons { |
439: float: right; | 434: float: right; |
440: text-align: right; | 435: text-align: right; |
441: } | 436: } |
442: | 437: |
443: .pun .modbuttons { | 438: .pun .modbuttons { |
444: padding: 1px 0; | 439: padding: 1px 0; |
445: white-space: nowrap; | 440: white-space: nowrap; |
446: } | 441: } |
447: | 442: |
448: .pun .modbuttons input { | 443: .pun .modbuttons input { |
449: margin-left: 6px; | 444: margin-left: 6px; |
450: } | 445: } |
451: | 446: |
452: #punindex .subscribelink { | 447: #punindex .subscribelink { |
453: margin-top: 6px; | 448: margin-top: 6px; |
454: } | 449: } |
455: | 450: |
456: /* Board Footer | 451: /* Board Footer |
457: ----------------------------------------------------------------*/ | 452: ----------------------------------------------------------------*/ |
460: border-bottom-style: solid; | 455: border-bottom-style: solid; |
461: border-bottom-width: 1px; | 456: border-bottom-width: 1px; |
462: text-align: center; | 457: text-align: center; |
463: } | 458: } |
464: | 459: |
465: #brdfooter #modcontrols dd { | 460: #brdfooter #modcontrols dd { |
466: display: inline; | 461: display: inline; |
467: margin-right: 10px; | 462: margin-right: 10px; |
468: } | 463: } |
469: | 464: |
470: #brdfooter .conl { | 465: #brdfooter .conl { |
471: float: left; | 466: float: left; |
472: } | 467: } |
473: | 468: |
474: #brdfooter .conr { | 469: #brdfooter .conr { |
475: float: right; | 470: float: right; |
476: text-align: right; | 471: text-align: right; |
477: } | 472: } |
478: | 473: |
479: #brdfooter #feedlinks span { | 474: #brdfooter #feedlinks span { |
480: background:url("Technetium/feed.png") no-repeat scroll left center transparent; | 475: background:url("Technetium/feed.png") no-repeat scroll left center transparent; |
488: | 483: |
489: #brdstats .conl { | 484: #brdstats .conl { |
490: float: left; | 485: float: left; |
491: } | 486: } |
492: | 487: |
493: #brdstats .conr { | 488: #brdstats .conr { |
494: float: right; | 489: float: right; |
495: text-align: right; | 490: text-align: right; |
496: } | 491: } |
497: | 492: |
498: #onlinelist dd, #onlinelist dt { | 493: #onlinelist dd, #onlinelist dt { |
499: display: inline; | 494: display: inline; |
500: } | 495: } |
501: | 496: |
502: | 497: |
503: /***************************************************************** | 498: /***************************************************************** |
509: border-collapse: collapse; | 504: border-collapse: collapse; |
510: border-spacing: 0; | 505: border-spacing: 0; |
511: empty-cells: show; | 506: empty-cells: show; |
512: } | 507: } |
513: | 508: |
514: .pun .blocktable table { | 509: .pun .blocktable table { |
515: table-layout: fixed; | 510: table-layout: fixed; |
516: } | 511: } |
517: | 512: |
518: .pun td, .pun th { | 513: .pun td, .pun th { |
519: padding: 4px 6px; | 514: padding: 4px 6px; |
520: line-height: 1.4em; | 515: line-height: 1.4em; |
521: text-align: left; | 516: text-align: left; |
522: font-weight: normal; | 517: font-weight: normal; |
523: } | 518: } |
524: | 519: |
525: .pun td { | 520: .pun td { |
526: border-style: solid none none solid; | 521: border-style: solid none none solid; |
527: border-width: 1px; | 522: border-width: 1px; |
528: } | 523: } |
529: | 524: |
530: .pun .tcl { | 525: .pun .tcl { |
531: border-left: 0; | 526: border-left: 0; |
532: width: auto; | 527: width: auto; |
533: } | 528: } |
534: | 529: |
535: .pun .tc2, .pun .tc3, .pun .tcmod { | 530: .pun .tc2, .pun .tc3, .pun .tcmod { |
536: width: 10%; | 531: width: 10%; |
537: text-align: center; | 532: text-align: center; |
538: padding: 4px 0; | 533: padding: 4px 0; |
539: } | 534: } |
540: | 535: |
541: .pun .tcr { | 536: .pun .tcr { |
542: width: 30%; | 537: width: 30%; |
543: } | 538: } |
544: | 539: |
545: .pun .tcl h3 { | 540: .pun .tcl h3 { |
546: font-size: 1.3em; | 541: font-size: 1.3em; |
547: font-weight: bold; | 542: font-weight: bold; |
548: } | 543: } |
549: | 544: |
550: .pun .tcl span.newtext, .pun .tcl span.pagestext { | 545: .pun .tcl span.newtext, .pun .tcl span.pagestext { |
551: white-space: nowrap | 546: white-space: nowrap |
552: } | 547: } |
553: | 548: |
554: .pun .tcl p { | 549: .pun .tcl p { |
555: padding: 5px 0 0 0 | 550: padding: 5px 0 0 0 |
556: } | 551: } |
557: | 552: |
558: #punsearch #vf .tc2 { | 553: #punsearch #vf .tc2 { |
559: width: 18%; | 554: width: 18%; |
560: text-align: left; | 555: text-align: left; |
561: padding: 4px 6px; | 556: padding: 4px 6px; |
562: } | 557: } |
563: | 558: |
564: #users1 .tcr { | 559: #users1 .tcr { |
565: width: 25% | 560: width: 25% |
566: } | 561: } |
567: | 562: |
568: #users1 .tc2 { | 563: #users1 .tc2 { |
569: width: 25%; | 564: width: 25%; |
570: text-align: left; | 565: text-align: left; |
571: padding: 4px 6px; | 566: padding: 4px 6px; |
572: } | 567: } |
573: | 568: |
574: #debug .tcl { | 569: #debug .tcl { |
575: width: 10% | 570: width: 10% |
576: } | 571: } |
577: | 572: |
578: #debug .tcr { | 573: #debug .tcr { |
579: width: 90%; | 574: width: 90%; |
580: white-space: normal | 575: white-space: normal |
581: } | 576: } |
582: | 577: |
583: #punindex .tcr .byuser { | 578: #punindex .tcr .byuser { |
584: display: block | 579: display: block |
585: } | 580: } |
586: | 581: |
587: .pun .blocktable .tclcon { | 582: .pun .blocktable .tclcon { |
588: padding: 0 11px 0 12px; | 583: padding: 0 11px 0 12px; |
590: height: 1%; | 585: height: 1%; |
591: min-height: 1px; | 586: min-height: 1px; |
592: position: relative; | 587: position: relative; |
593: } | 588: } |
594: | 589: |
595: .pun .blocktable .tclcon div { | 590: .pun .blocktable .tclcon div { |
596: width: 100%; | 591: width: 100%; |
597: overflow: hidden; | 592: overflow: hidden; |
598: } | 593: } |
599: | 594: |
600: .pun .icon { | 595: .pun .icon { |
601: height: 24px; | 596: height: 24px; |
602: width: 24px; | 597: width: 24px; |
603: overflow: hidden; | 598: overflow: hidden; |
604: float: left; | 599: float: left; |
605: } | 600: } |
606: | 601: |
607: .pun .icon div { | 602: .pun .icon div { |
608: position: absolute; | 603: position: absolute; |
609: left: -9999em; | 604: left: -9999em; |
610: text-indent: -9999em; | 605: text-indent: -9999em; |
611: height: 0; | 606: height: 0; |
612: } | 607: } |
613: | 608: |
614: .pun .iposted .ipost { | 609: .pun .iposted .ipost { |
615: position: absolute; | 610: position: absolute; |
619: padding-left: 4px; | 614: padding-left: 4px; |
620: text-align: center; | 615: text-align: center; |
621: top: 0; | 616: top: 0; |
622: } | 617: } |
623: | 618: |
624: .pun .stickytext { | 619: .pun .stickytext { |
625: display: none; | 620: display: none; |
626: } | 621: } |
627: | 622: |
628: .pun .movedtext { | 623: .pun .movedtext { |
629: display: none; | 624: display: none; |
631: | 626: |
632: .pun .closedtext { | 627: .pun .closedtext { |
633: font-weight: bold; | 628: font-weight: bold; |
634: } | 629: } |
635: /***************************************************************** | 630: /***************************************************************** |
636: 6. MAIN FORMS | 631: 6. MAIN FORMS |
637: *****************************************************************/ | 632: *****************************************************************/ |
642: padding: 9px 10px; | 637: padding: 9px 10px; |
643: border-style: solid; | 638: border-style: solid; |
644: border-width: 1px; | 639: border-width: 1px; |
645: } | 640: } |
646: | 641: |
647: .pun .forminfo h3 { | 642: .pun .forminfo h3 { |
648: font-weight: bold; | 643: font-weight: bold; |
649: } | 644: } |
650: | 645: |
651: | 646: |
652: | 647: |
707: .pun label { | 702: .pun label { |
708: display: block; | 703: display: block; |
709: padding: 3px 0 | 704: padding: 3px 0 |
710: } | 705: } |
711: | 706: |
712: .pun label.conl { | 707: .pun label.conl { |
713: float: left; | 708: float: left; |
714: overflow: visible; | 709: overflow: visible; |
715: margin-right: 10px | 710: margin-right: 10px |
716: } | 711: } |
717: | 712: |
718: .pun select { | 713: .pun select { |
719: padding-top: 1px; | 714: padding-top: 1px; |
720: padding-bottom: 1px; | 715: padding-bottom: 1px; |
721: } | 716: } |
722: | 717: |
723: .pun fieldset .rbox { | 718: .pun fieldset .rbox { |
724: } | 719: } |
725: | 720: |
726: .pun fieldset .rbox br { | 721: .pun fieldset .rbox br { |
727: display: none; | 722: display: none; |
728: } | 723: } |
729: | 724: |
730: .pun fieldset .rbox label { | 725: .pun fieldset .rbox label { |
731: padding: 3px 0 3px 25px; | 726: padding: 3px 0 3px 25px; |
732: position: relative; | 727: position: relative; |
733: vertical-align: middle; | 728: vertical-align: middle; |
734: } | 729: } |
735: | 730: |
736: .pun fieldset .rbox input { | 731: .pun fieldset .rbox input { |
737: margin: 0 9px 0 -25px; | 732: margin: 0 9px 0 -25px; |
739: width: 16px; | 734: width: 16px; |
740: position: relative; | 735: position: relative; |
741: vertical-align: middle; | 736: vertical-align: middle; |
742: } | 737: } |
743: | 738: |
744: .pun .txtarea { | 739: .pun .txtarea { |
745: width: 90% | 740: width: 90% |
746: } | 741: } |
747: | 742: |
748: .pun .txtarea textarea, .pun input.longinput { | 743: .pun .txtarea textarea, .pun input.longinput { |
749: width: 100% | 744: width: 100% |
750: } | 745: } |
751: | 746: |
752: .pun .bblinks { | 747: .pun .bblinks { |
753: padding-bottom: 10px; | 748: padding-bottom: 10px; |
754: padding-left: 4px | 749: padding-left: 4px |
755: } | 750: } |
756: | 751: |
757: .pun .bblinks li { | 752: .pun .bblinks li { |
758: display: inline; | 753: display: inline; |
759: padding-right: 20px | 754: padding-right: 20px |
760: } | 755: } |
761: | 756: |
762: .pun .blockform .buttons { | 757: .pun .blockform .buttons { |
763: padding-left: 18px; | 758: padding-left: 18px; |
764: padding-bottom: 5px; | 759: padding-bottom: 5px; |
765: } | 760: } |
766: | 761: |
767: .pun .blockform .buttons input { | 762: .pun .blockform .buttons input { |
768: margin-right: 8px; | 763: margin-right: 8px; |
769: } | 764: } |
770: | 765: |
771: #posterror ul { | 766: #posterror ul { |
772: list-style: square; | 767: list-style: square; |
773: padding: 3px 0 3px 24px; | 768: padding: 3px 0 3px 24px; |
774: } | 769: } |
775: | 770: |
776: .pun .deletemsg { | 771: .pun .deletemsg { |
777: border-style: solid; | 772: border-style: solid; |
778: border-width: 1px; | 773: border-width: 1px; |
779: padding: 6px 15px; | 774: padding: 6px 15px; |
780: } | 775: } |
781: | 776: |
782: .pun .multiselect { | 777: .pun .multiselect { |
783: float: left; | 778: float: left; |
784: padding-bottom: 7px; | 779: padding-bottom: 7px; |
785: } | 780: } |
786: | 781: |
787: .pun .checklist { | 782: .pun .checklist { |
788: border-width: 1px; | 783: border-width: 1px; |
792: overflow: auto; | 787: overflow: auto; |
793: padding: 0.25em 0.5em; | 788: padding: 0.25em 0.5em; |
794: margin: 0.25em 16px 0 0.15em; | 789: margin: 0.25em 16px 0 0.15em; |
795: } | 790: } |
796: | 791: |
797: .pun .checklist legend { | 792: .pun .checklist legend { |
798: padding: 0; | 793: padding: 0; |
799: } | 794: } |
800: | 795: |
801: .pun .checklist legend span { | 796: .pun .checklist legend span { |
802: width: auto; | 797: width: auto; |
803: max-width: 25em; | 798: max-width: 25em; |
804: } | 799: } |
805: | |
806: .pun .checklist .checklist-item { | |
807: position: relative; | |
808: } | |
809: | |
810: .pun .checklist .checklist-item label { | |
811: padding: 0 0 0 1.75em; | |
812: } | |
813: | |
814: .pun .checklist .checklist-item .fld-input { | |
815: position: absolute; | |
816: left: 0; | |
817: top: 0; | |
818: padding: 0; | |
819: margin: 0; | |
820: } | |
821: | |
822: .pun .checklist .checklist-item input { | |
823: margin: 0; | |
824: height: 1.55em; | |
825: width: 1.55em; | |
826: } | |
827: | 800: |
828: /***************************************************************** | 801: /***************************************************************** |
829: 7. PROFILES AND ADMIN | 802: 7. PROFILES AND ADMIN |
831: | 804: |
832: .pun .block2col { | 805: .pun .block2col { |
833: padding-bottom: 1px | 806: padding-bottom: 1px |
834: } | 807: } |
835: | 808: |
836: .pun .block2col .blockform, .pun .block2col .block { | 809: .pun .block2col .blockform, .pun .block2col .block { |
837: margin-left: 14em | 810: margin-left: 14em |
838: } | 811: } |
839: | 812: |
840: .pun .blockmenu { | 813: .pun .blockmenu { |
841: float:left; | 814: float:left; |
842: width: 13em | 815: width: 13em |
843: } | 816: } |
844: | 817: |
845: .pun .blockmenu li { | 818: .pun .blockmenu li { |
846: padding: 3px 0; | 819: padding: 3px 0; |
847: font-weight: bold; | 820: font-weight: bold; |
848: } | 821: } |
849: | 822: |
850: .pun .blockmenu a:link, .pun .blockmenu a:visited { | 823: .pun .blockmenu a:link, .pun .blockmenu a:visited { |
851: text-decoration: none | 824: text-decoration: none |
852: } | 825: } |
853: | 826: |
854: .pun .blockmenu a:hover, .pun .blockmenu a:active { | 827: .pun .blockmenu a:hover, .pun .blockmenu a:active { |
855: text-decoration: underline | 828: text-decoration: underline |
856: } | 829: } |
857: | 830: |
858: #viewprofile dl { | 831: #viewprofile dl { |
859: float: left; | 832: float: left; |
860: width: 100%; | 833: width: 100%; |
861: overflow: hidden | 834: overflow: hidden |
862: } | 835: } |
863: | 836: |
864: #viewprofile dd { | 837: #viewprofile dd { |
865: margin-left: 14em; | 838: margin-left: 14em; |
866: padding: 3px; | 839: padding: 3px; |
867: } | 840: } |
868: | 841: |
869: #viewprofile dt { | 842: #viewprofile dt { |
870: float: left; | 843: float: left; |
871: width: 13em; | 844: width: 13em; |
872: margin: 3px 0; | 845: margin: 3px 0; |
873: } | 846: } |
874: | 847: |
875: #profileavatar img { | 848: #profileavatar img { |
876: float: right; | 849: float: right; |
877: margin-left: 1em | 850: margin-left: 1em |
878: } | 851: } |
879: | 852: |
880: /***************************************************************** | 853: /***************************************************************** |
881: 8. MAIN POSTS | 854: 8. MAIN POSTS |
883: | 856: |
884: .pun .blockpost h2 a:link, .pun .blockpost h2 a:visited { | 857: .pun .blockpost h2 a:link, .pun .blockpost h2 a:visited { |
885: text-decoration: none; | 858: text-decoration: none; |
886: } | 859: } |
887: | 860: |
888: .pun .blockpost h2 a:hover, .pun .blockpost h2 a:active { | 861: .pun .blockpost h2 a:hover, .pun .blockpost h2 a:active { |
889: text-decoration: underline; | 862: text-decoration: underline; |
890: } | 863: } |
891: | 864: |
892: .pun .blockpost h2 .conr { | 865: .pun .blockpost h2 .conr { |
893: float: right; | 866: float: right; |
894: text-align: right; | 867: text-align: right; |
895: } | 868: } |
896: | 869: |
897: #punsearch .blockpost h2 span { | 870: #punsearch .blockpost h2 span { |
898: white-space: nowrap; | 871: white-space: nowrap; |
899: } | 872: } |
900: | 873: |
901: .pun .blockpost .box { | 874: .pun .blockpost .box { |
902: overflow: hidden; | 875: overflow: hidden; |
903: } | 876: } |
904: | 877: |
905: .pun .postleft, .pun .postfootleft { | 878: .pun .postleft, .pun .postfootleft { |
906: float:left; | 879: float:left; |
908: overflow: hidden; | 881: overflow: hidden; |
909: position: relative; | 882: position: relative; |
910: overflow: hidden; | 883: overflow: hidden; |
911: } | 884: } |
912: | 885: |
913: .pun .postleft dl { | 886: .pun .postleft dl { |
914: padding: 0.5em 6px; | 887: padding: 0.5em 6px; |
915: } | 888: } |
916: | 889: |
917: .pun .postleft .usercontacts, .pun .postleft .icon { | 890: .pun .postleft .usercontacts, .pun .postleft .icon { |
918: margin-top: 6px | 891: margin-top: 6px |
919: } | 892: } |
920: | 893: |
921: .pun .postleft .postavatar, .pun .postleft .usertitle { | 894: .pun .postleft .postavatar, .pun .postleft .usertitle { |
922: margin-bottom: 6px; | 895: margin-bottom: 6px; |
923: display: block; | 896: display: block; |
924: } | 897: } |
925: | 898: |
926: .pun .blockpost dt { | 899: .pun .blockpost dt { |
927: font-size: 1.091em; | 900: font-size: 1.091em; |
928: font-weight: bold; | 901: font-weight: bold; |
929: } | 902: } |
930: | 903: |
931: .pun .blockpost dt a:link, .pun .blockpost dt a:visited { | 904: .pun .blockpost dt a:link, .pun .blockpost dt a:visited { |
932: text-decoration: none; | 905: text-decoration: none; |
933: } | 906: } |
934: | 907: |
935: .pun .blockpost dt a:hover, .pun .blockpost dt a:active { | 908: .pun .blockpost dt a:hover, .pun .blockpost dt a:active { |
936: text-decoration: underline; | 909: text-decoration: underline; |
937: } | 910: } |
938: | 911: |
939: .pun .postright, .pun .postfootright { | 912: .pun .postright, .pun .postfootright { |
940: border-left-width: 18em; | 913: border-left-width: 18em; |
941: border-left-style: solid | 914: border-left-style: solid |
942: } | 915: } |
943: | 916: |
944: #postpreview .postright { | 917: #postpreview .postright { |
945: border-left: 0 | 918: border-left: 0 |
946: } | 919: } |
947: | 920: |
948: .pun .postright { | 921: .pun .postright { |
949: padding: 0 6px; | 922: padding: 0 6px; |
950: } | 923: } |
951: | 924: |
952: .pun .postfootright, .pun .multidelete { | 925: .pun .postfootright, .pun .multidelete { |
953: text-align: right | 926: text-align: right |
954: } | 927: } |
955: | 928: |
956: .pun .postmsg { | 929: .pun .postmsg { |
957: width:98%; | 930: width:98%; |
958: overflow: hidden; | 931: overflow: hidden; |
959: padding-bottom: 6px; | 932: padding-bottom: 6px; |
960: word-wrap: break-word; | 933: word-wrap: break-word; |
961: } | 934: } |
962: | 935: |
963: .pun .postfootright ul, .pun .postfootright div, .pun .postfootright p, | 936: .pun .postfootright ul, .pun .postfootright div, .pun .postfootright p, |
964: .pun .postfootleft p { | 937: .pun .postfootleft p { |
965: padding: 6px 6px 6px 6px; | 938: padding: 6px 6px 6px 6px; |
966: } | 939: } |
967: | 940: |
968: .pun .postfootright li { | 941: .pun .postfootright li { |
969: display: inline; | 942: display: inline; |
970: } | 943: } |
971: | 944: |
972: .pun .postfootright li:before { | 945: .pun .postfootright li:before { |
973: content: " | "; | 946: content: " | "; |
974: } | 947: } |
975: | 948: |
976: .pun .postfootright li:first-child:before { | 949: .pun .postfootright li:first-child:before { |
977: content: ""; | 950: content: ""; |
978: } | 951: } |
979: | 952: |
980: .pun .postfootright a:link, .pun .postfootright a:visited { | 953: .pun .postfootright a:link, .pun .postfootright a:visited { |
981: text-decoration: none | 954: text-decoration: none |
982: } | 955: } |
983: | 956: |
984: .pun .postfootright a:hover, .pun .postfootright a:active { | 957: .pun .postfootright a:hover, .pun .postfootright a:active { |
985: text-decoration: underline | 958: text-decoration: underline |
986: } | 959: } |
987: | 960: |
988: | 961: |
989: .pun .quotebox, .pun .codebox { | 962: .pun .quotebox, .pun .codebox { |
992: border-left: 5px solid; | 965: border-left: 5px solid; |
993: margin: 0.75em 1em; | 966: margin: 0.75em 1em; |
994: padding: 0 0.75em; | 967: padding: 0 0.75em; |
995: } | 968: } |
996: | 969: |
997: .pun .quotebox cite { | 970: .pun .quotebox cite { |
998: display: block; | 971: display: block; |
999: padding: 0.75em 0 0 0; | 972: padding: 0.75em 0 0 0; |
1000: } | 973: } |
1001: | 974: |
1002: .pun .quotebox blockquote { | 975: .pun .quotebox blockquote { |
1003: width: 100%; | 976: width: 100%; |
1004: overflow: hidden | 977: overflow: hidden |
1005: } | 978: } |
1006: | 979: |
1007: .pun .codebox pre { | 980: .pun .codebox pre { |
1008: overflow: auto; | 981: overflow: auto; |
1009: width: 100%; | 982: width: 100%; |
1010: overflow-y:hidden | 983: overflow-y:hidden |
1011: } | 984: } |
1012: | 985: |
1013: * html .pun .codebox pre { | 986: * html .pun .codebox pre { |
1014: padding-bottom: 10px; | 987: padding-bottom: 10px; |
1015: } | 988: } |
1016: | 989: |
1017: *+html .pun .codebox pre { | 990: *+html .pun .codebox pre { |
1018: padding-bottom: 10px | 991: padding-bottom: 10px |
1019: } | 992: } |
1020: | 993: |
1021: .pun .codebox pre code { | 994: .pun .codebox pre code { |
1022: display: block; | 995: display: block; |
1023: padding: 0.75em; | 996: padding: 0.75em; |
1024: } | 997: } |
1025: | 998: |
1026: .pun .codebox pre.vscroll { | 999: .pun .codebox pre.vscroll { |
1027: height: 32em; | 1000: height: 32em; |
1028: overflow: auto; | 1001: overflow: auto; |
1029: overflow-y: auto | 1002: overflow-y: auto |
1030: } | 1003: } |
1031: | 1004: |
1032: .pun .postmsg .postimg img, .pun .postmsg a .postimg img { | 1005: .pun .postmsg .postimg img, .pun .postmsg a .postimg img { |
1033: max-width: 100%; | 1006: max-width: 100%; |
1034: vertical-align: middle; | 1007: vertical-align: middle; |
1035: } | 1008: } |
1036: | 1009: |
1037: .pun .postmsg img { | 1010: .pun .postmsg img { |
1038: vertical-align: bottom; | 1011: vertical-align: bottom; |
1039: } | 1012: } |
1040: | 1013: |
1041: .pun .postsignature hr { | 1014: .pun .postsignature hr { |
1042: margin-left: 0px; | 1015: margin-left: 0px; |
1044: text-align: left; | 1017: text-align: left; |
1045: height: 1px; | 1018: height: 1px; |
1046: border:none | 1019: border:none |
1047: } | 1020: } |
1048: | 1021: |
1049: .pun .blockpost label { | 1022: .pun .blockpost label { |
1050: padding: 3px 6px; | 1023: padding: 3px 6px; |
1052: border-width: 1px; | 1025: border-width: 1px; |
1053: vertical-align: middle; | 1026: vertical-align: middle; |
1054: display: inline-block; | 1027: display: inline-block; |
1055: } | 1028: } |
1056: | 1029: |
1057: .pun .blockpost label * { | 1030: .pun .blockpost label * { |
1058: vertical-align: middle; | 1031: vertical-align: middle; |
1059: margin: 0; | 1032: margin: 0; |
1060: padding: 0; | 1033: padding: 0; |
1061: } | 1034: } |
1062: | 1035: |
1063: | 1036: |
1064: /****************************************************************/ | 1037: /****************************************************************/ |
1067: | 1040: |
1068: #punhelp h2 { | 1041: #punhelp h2 { |
1069: margin-top: 12px | 1042: margin-top: 12px |
1070: } | 1043: } |
1071: | 1044: |
1072: #punhelp div.box { | 1045: #punhelp div.box { |
1073: padding: 10px | 1046: padding: 10px |
1074: } | 1047: } |
1075: | 1048: |
1076: /***************************************************************** | 1049: /***************************************************************** |
1077: COLOUR SCHEME | 1050: COLOUR SCHEME |
1083: body { | 1056: body { |
1084: background: #fff url("Technetium/bg.png") repeat-x top; | 1057: background: #fff url("Technetium/bg.png") repeat-x top; |
1085: color: #122434 | 1058: color: #122434 |
1086: } | 1059: } |
1087: | 1060: |
1088: .pun { | 1061: .pun { |
1089: color: #122434 | 1062: color: #122434 |
1090: } | 1063: } |
1091: | 1064: |
1092: .pun .box, #adminconsole fieldset th { | 1065: .pun .box, #adminconsole fieldset th { |
1093: background-color: #FBFCFD; | 1066: background-color: #FBFCFD; |
1094: background-image: url("Technetium/light-shade.png"); | 1067: background-image: url("Technetium/light-shade.png"); |
1095: background-position: bottom; | 1068: background-position: bottom; |
1096: background-repeat: repeat-x; | 1069: background-repeat: repeat-x; |
1097: } | 1070: } |
1098: | 1071: |
1099: .pun td.tc2, .pun td.tc3, .pun td.tcmod, #postpreview, #viewprofile dd, .pun .forminfo, | 1072: .pun td.tc2, .pun td.tc3, .pun td.tcmod, #postpreview, #viewprofile dd, .pun .forminfo, |
1100: #brdfooter #modcontrols, #adminconsole fieldset td, .pun .blockmenu .box, #adstats dd { | 1073: #brdfooter #modcontrols, #adminconsole fieldset td, .pun .blockmenu .box, #adstats dd { |
1102: background-image: url("Technetium/light-shade.png"); | 1075: background-image: url("Technetium/light-shade.png"); |
1103: background-repeat: repeat-x; | 1076: background-repeat: repeat-x; |
1104: background-position: bottom; | 1077: background-position: bottom; |
1105: } | 1078: } |
1106: | 1079: |
1107: .pun h2, #brdmenu { | 1080: .pun h2, #brdmenu { |
1108: background-color: #C5D8EB; | 1081: background-color: #C5D8EB; |
1110: background-image: url("Technetium/dark-shade.png"); | 1083: background-image: url("Technetium/dark-shade.png"); |
1111: background-repeat: repeat-x; | 1084: background-repeat: repeat-x; |
1112: background-position: top; | 1085: background-position: top; |
1113: } | 1086: } |
1114: | 1087: |
1115: .pun h2 { | 1088: .pun h2 { |
1116: background-color: #C5D8EB; | 1089: background-color: #C5D8EB; |
1118: background-repeat: repeat-x; | 1091: background-repeat: repeat-x; |
1119: color: #122434; | 1092: color: #122434; |
1120: text-shadow: #FFF 1px -1px 0.7em; | 1093: text-shadow: #FFF 1px -1px 0.7em; |
1121: } | 1094: } |
1122: | 1095: |
1123: .pun #announce h2 { | 1096: .pun #announce h2 { |
1124: display: none; | 1097: display: none; |
1125: } | 1098: } |
1126: | 1099: |
1127: .box #announce-block { | 1100: .box #announce-block { |
1128: background-color: #FDFCE3; | 1101: background-color: #FDFCE3; |
1132: background-color: #EFF3F8; | 1105: background-color: #EFF3F8; |
1133: background-image: url("Technetium/light-shade.png"); | 1106: background-image: url("Technetium/light-shade.png"); |
1134: background-repeat: repeat-x; | 1107: background-repeat: repeat-x; |
1135: } | 1108: } |
1136: | 1109: |
1137: .pun td { | 1110: .pun td { |
1138: background-image: url("Technetium/light-shade.png"); | 1111: background-image: url("Technetium/light-shade.png"); |
1139: background-color: #FBFCFD; | 1112: background-color: #FBFCFD; |
1140: background-position: bottom; | 1113: background-position: bottom; |
1141: background-repeat: repeat-x; | 1114: background-repeat: repeat-x; |
1142: } | 1115: } |
1143: | 1116: |
1144: .pun .isticky td { | 1117: .pun .isticky td { |
1145: background-color: #E4EBF1; | 1118: background-color: #E4EBF1; |
1146: } | 1119: } |
1147: | 1120: |
1148: .pun .iclosed td { | 1121: .pun .iclosed td { |
1149: background-color: #ECEEF0 | 1122: background-color: #ECEEF0 |
1150: } | 1123: } |
1151: | 1124: |
1152: .pun .iclosed.isticky td { | 1125: .pun .iclosed.isticky td { |
1153: background-color: #CDD6E0; | 1126: background-color: #CDD6E0; |
1154: } | 1127: } |
1155: | 1128: |
1156: .pun legend { | 1129: .pun legend { |
1157: color: #122434 | 1130: color: #122434 |
1158: } | 1131: } |
1159: | 1132: |
1160: .pun .blockmenu li.isactive a, #posterror li strong { | 1133: .pun .blockmenu li.isactive a, #posterror li strong { |
1161: color: #333 | 1134: color: #333 |
1162: } | 1135: } |
1163: | 1136: |
1164: .pun .usercontent * { | 1137: .pun .usercontent * { |
1165: background: transparent; | 1138: background: transparent; |
1166: color: #333 | 1139: color: #333 |
1167: } | 1140: } |
1168: | 1141: |
1169: #adminmenu .box { | 1142: #adminmenu .box { |
1170: background: #FBFCFD; | 1143: background: #FBFCFD; |
1171: } | 1144: } |
1172: | 1145: |
1173: .pun .postlink a:link, .pun .postlink a:visited, .pun .postlink a:active { | 1146: .pun .postlink a:link, .pun .postlink a:visited, .pun .postlink a:active { |
1174: background-color:#F0F5FA; | 1147: background-color:#F0F5FA; |
1180: padding: 0.3em; | 1153: padding: 0.3em; |
1181: border-radius: 0.4em; | 1154: border-radius: 0.4em; |
1182: position: relative; | 1155: position: relative; |
1183: -moz-border-radius: 0.4em; | 1156: } |
1184: -webkit-border-top-left-radius: 0.4em; | |
1185: -webkit-border-top-right-radius: 0.4em; | |
1186: -webkit-border-bottom-left-radius: 0.4em; | |
1187: -webkit-border-bottom-right-radius: 0.4em; | |
1188: | |
1189: } | |
1190: | 1157: |
1191: .pun .postlink a:hover { | 1158: .pun .postlink a:hover { |
1192: background-color: #C0D6E9; | 1159: background-color: #C0D6E9; |
1193: color: #000; | 1160: color: #000; |
1194: } | 1161: } |
1195: | 1162: |
1196: #brdheader .box { | 1163: #brdheader .box { |
1197: background-color:#F0F5FA; | 1164: background-color:#F0F5FA; |
1200: background-position: top; | 1167: background-position: top; |
1201: color:#122434; | 1168: color:#122434; |
1202: border-radius: 0.4em; | 1169: border-radius: 0.4em; |
1203: -moz-border-radius: 0.4em; | 1170: } |
1204: -webkit-border-top-left-radius: 0.4em; | |
1205: -webkit-border-top-right-radius: 0.4em; | |
1206: -webkit-border-bottom-left-radius: 0.4em; | |
1207: -webkit-border-bottom-right-radius: 0.4em; | |
1208: } | |
1209: | 1171: |
1210: .pun #brdtitle { | 1172: .pun #brdtitle { |
1211: background-color: #D1E1EF; | 1173: background-color: #D1E1EF; |
1212: background-image: url("Technetium/inv-shade.png"); | 1174: background-image: url("Technetium/inv-shade.png"); |
1213: background-repeat: repeat-x; | 1175: background-repeat: repeat-x; |
1214: text-shadow: #FFF 1px -1px 0.4em; | 1176: text-shadow: #FFF 1px -1px 0.4em; |
1215: } | 1177: } |
1216: | 1178: |
1217: | 1179: |
1218: .pun .infldset, #pundelete .deletemsg, #adintro .inbox, #adstats .inbox { | 1180: .pun .infldset, #pundelete .deletemsg, #adintro .inbox, #adstats .inbox { |
1224: list-style-type: disc; | 1186: list-style-type: disc; |
1225: margin-left: 8px; | 1187: margin-left: 8px; |
1226: padding-left: 16px; | 1188: padding-left: 16px; |
1227: } | 1189: } |
1228: | 1190: |
1229: .pun .multiselect { | 1191: .pun .multiselect { |
1230: color: #122434; | 1192: color: #122434; |
1231: } | 1193: } |
1232: | 1194: |
1233: .pun .checklist { | 1195: .pun .checklist { |
1234: background: white; | 1196: background: white; |
1235: border-color: #A2B5CC; | 1197: border-color: #A2B5CC; |
1236: } | 1198: } |
1237: | 1199: |
1238: /* Posts | 1200: /* Posts |
1239: ----------------------------------------------------------------*/ | 1201: ----------------------------------------------------------------*/ |
1240: | 1202: |
1241: .pun .blockpost .box, .pun .postright, .pun .postfootright, .pun .deletemsg { | 1203: .pun .blockpost .box, .pun .postright, .pun .postfootright, .pun .deletemsg { |
1242: background-color: #F8FAFD; | 1204: background-color: #F8FAFD; |
1243: } | 1205: } |
1244: | 1206: |
1245: .pun .postright, .pun .postfootright { | 1207: .pun .postright, .pun .postfootright { |
1246: border-left-color: #F0F5FA | 1208: border-left-color: #F0F5FA |
1247: } | 1209: } |
1248: | 1210: |
1249: .pun .postleft, .pun .postfootleft, .pun .blockpost label, .pun .codebox, .pun .quotebox { | 1211: .pun .postleft, .pun .postfootleft, .pun .blockpost label, .pun .codebox, .pun .quotebox { |
1250: background-color: #F0F5FA | 1212: background-color: #F0F5FA |
1251: } | 1213: } |
1252: | 1214: |
1253: #punhelp .codebox, #punhelp .quotebox { | 1215: #punhelp .codebox, #punhelp .quotebox { |
1254: background-color: #f9f9f9; | 1216: background-color: #f9f9f9; |
1255: } | 1217: } |
1256: | 1218: |
1257: .pun .blockpost h2 { | 1219: .pun .blockpost h2 { |
1258: background-color: #F0F5FA; | 1220: background-color: #F0F5FA; |
1259: } | 1221: } |
1260: | 1222: |
1261: .pun .blockpost h2 span.conr { | 1223: .pun .blockpost h2 span.conr { |
1262: color: #aabdcd | 1224: color: #aabdcd |
1263: } | 1225: } |
1264: | 1226: |
1265: .pun hr { | 1227: .pun hr { |
1266: background-color: #333; | 1228: background-color: #333; |
1267: color: #333 | 1229: color: #333 |
1268: } | 1230: } |
1269: | 1231: |
1270: .pun .quotebox { | 1232: .pun .quotebox { |
1271: background-color: #FAFCFE; | 1233: background-color: #FAFCFE; |
1272: } | 1234: } |
1273: | 1235: |
1274: .pun .postmsg ins, #punhelp samp ins { | 1236: .pun .postmsg ins, #punhelp samp ins { |
1275: background-color: #ff0; | 1237: background-color: #ff0; |
1276: } | 1238: } |
1277: | 1239: |
1278: /* Borders | 1240: /* Borders |
1279: ----------------------------------------------------------------*/ | 1241: ----------------------------------------------------------------*/ |
1288: | 1250: |
1289: .pun td { | 1251: .pun td { |
1290: border-color: #A2B5CC; | 1252: border-color: #A2B5CC; |
1291: } | 1253: } |
1292: | 1254: |
1293: .pun th, .pun fieldset { | 1255: .pun th, .pun fieldset { |
1294: border-color: #A2B5CC; | 1256: border-color: #A2B5CC; |
1295: } | 1257: } |
1296: | 1258: |
1297: #adminconsole td, #adminconsole th { | 1259: #adminconsole td, #adminconsole th { |
1298: border-style:solid; | 1260: border-style:solid; |
1309: | 1271: |
1310: .pun .forminfo, .pun .blockpost label, .pun .deletemsg { | 1272: .pun .forminfo, .pun .blockpost label, .pun .deletemsg { |
1311: border-color: #aca899 #fff #fff #aca899; | 1273: border-color: #aca899 #fff #fff #aca899; |
1312: } | 1274: } |
1313: | 1275: |
1314: .pun .quotebox, .pun .codebox { | 1276: .pun .quotebox, .pun .codebox { |
1315: border-color: #BCD2E9; | 1277: border-color: #BCD2E9; |
1316: } | 1278: } |
1317: | 1279: |
1318: .pun .postlink a:link, .pun .postlink a:visited { | 1280: .pun .postlink a:link, .pun .postlink a:visited { |
1319: border-color: #C0D6E9 | 1281: border-color: #C0D6E9 |
1320: } | 1282: } |
1321: | 1283: |
1322: | 1284: |
1323: /* Links | 1285: /* Links |
1326: .pun a:link, .pun a:visited { | 1288: .pun a:link, .pun a:visited { |
1327: color: #1F537B; | 1289: color: #1F537B; |
1328: text-decoration: none; | 1290: text-decoration: none; |
1329: } | 1291: } |
1330: | 1292: |
1331: .pun a:hover, .pun a:active, .pun a:focus { | 1293: .pun a:hover, .pun a:active, .pun a:focus { |
1332: color: #9E1D00 | 1294: color: #9E1D00 |
1333: } | 1295: } |
1334: | 1296: |
1335: #brdmenu li a:active, #brdmenu li a:link, #brdmenu li a:visited { | 1297: #brdmenu li a:active, #brdmenu li a:link, #brdmenu li a:visited { |
1336: color: #1F2E3D; | 1298: color: #1F2E3D; |
1337: } | 1299: } |
1338: | 1300: |
1339: #brdmenu li a:hover { | 1301: #brdmenu li a:hover { |
1340: color: #000; | 1302: color: #000; |
1341: text-shadow: #8895A2 1px -1px 0.4em; | 1303: text-shadow: #8895A2 1px -1px 0.4em; |
1342: } | 1304: } |
1343: | 1305: |
1344: #vf a { | 1306: #vf a { |
1345: font-weight: bold; | 1307: font-weight: bold; |
1346: } | 1308: } |
1347: | 1309: |
1348: .pun .postreport a:link, .pun .postreport a:visited, | 1310: .pun .postreport a:link, .pun .postreport a:visited, |
1349: .pun .iclosed td.tcl a:link, .pun .iclosed td.tcl a:visited { | 1311: .pun .iclosed td.tcl a:link, .pun .iclosed td.tcl a:visited { |
1350: color: #888 | 1312: color: #888 |
1351: } | 1313: } |
1352: | 1314: |
1353: .pun .isticky.iclosed td.tcl a:link, .pun .isticky.iclosed td.tcl a:visited { | 1315: .pun .isticky.iclosed td.tcl a:link, .pun .isticky.iclosed td.tcl a:visited { |
1354: color: #475F6B !important; | 1316: color: #475F6B !important; |
1355: } | 1317: } |
1356: | 1318: |
1357: .pun .isticky.iclosed td.tcl a:hover { | 1319: .pun .isticky.iclosed td.tcl a:hover { |
1358: color: #577382 !important; | 1320: color: #577382 !important; |
1359: } | 1321: } |
1360: | 1322: |
1361: | 1323: |
1362: .pun .postreport a:hover, .pun .postreport a:active, | 1324: .pun .postreport a:hover, .pun .postreport a:active, |
1363: .pun .iclosed td.tcl a:hover, .pun .iclosed td.tcl a:active { | 1325: .pun .iclosed td.tcl a:hover, .pun .iclosed td.tcl a:active { |
1364: color: #aaa | 1326: color: #aaa |
1365: } | 1327: } |
1366: | 1328: |
1367: .pun .maintenancelink a:link, .pun .maintenancelink a:visited { | 1329: .pun .maintenancelink a:link, .pun .maintenancelink a:visited { |
1368: color: #b42000 | 1330: color: #b42000 |
1369: } | 1331: } |
1370: | 1332: |
1371: .pun .maintenancelink a:hover, .pun .maintenancelink a:active { | 1333: .pun .maintenancelink a:hover, .pun .maintenancelink a:active { |
1372: color: #b42000 | 1334: color: #b42000 |
1373: } | 1335: } |
1374: | 1336: |
1375: | 1337: |
1376: /* Status Indicators | 1338: /* Status Indicators |
1378: | 1340: |
1379: .pun .icon { | 1341: .pun .icon { |
1380: background-image:url(Technetium/icon-nonew.png); | 1342: background-image:url(Technetium/icon-nonew.png); |
1381: } | 1343: } |
1382: | 1344: |
1383: .pun .iredirect .icon { | 1345: .pun .iredirect .icon { |
1384: background-image:url(Technetium/icon-moved.png); | 1346: background-image:url(Technetium/icon-moved.png); |
1385: } | 1347: } |
1386: | 1348: |
1387: .pun .inew .icon{ | 1349: .pun .inew .icon{ |
1388: background-image:url(Technetium/icon-new.png); | 1350: background-image:url(Technetium/icon-new.png); |
1389: } | 1351: } |
1390: | 1352: |
1391: .pun .iclosed .icon { | 1353: .pun .iclosed .icon { |
1392: background-image:url(Technetium/icon-closed.png); | 1354: background-image:url(Technetium/icon-closed.png); |
1393: } | 1355: } |
1394: | 1356: |
1395: .pun .isticky .icon { | 1357: .pun .isticky .icon { |
1396: background-image:url(Technetium/icon-nonew-sticky.png); | 1358: background-image:url(Technetium/icon-nonew-sticky.png); |
1397: } | 1359: } |
1398: | 1360: |
1399: .pun .isticky.inew .icon { | 1361: .pun .isticky.inew .icon { |
1400: background-image:url(Technetium/icon-new-sticky.png); | 1362: background-image:url(Technetium/icon-new-sticky.png); |
1401: } | 1363: } |
1402: | 1364: |
1403: .pun .iclosed.isticky .icon { | 1365: .pun .iclosed.isticky .icon { |
1404: background-image:url(Technetium/icon-closed-sticky.png); | 1366: background-image:url(Technetium/icon-closed-sticky.png); |
1405: } | 1367: } |
1406: | 1368: |
1407: .pun .imoved .icon { | 1369: .pun .imoved .icon { |
1408: background-image:url(Technetium/icon-moved.png); | 1370: background-image:url(Technetium/icon-moved.png); |
1409: } | 1371: } |
1410: | 1372: |
a/style/imports/base_admin.css | b/style/imports/base_admin.css |
---|---|
1: #adminconsole .block2 {MARGIN-TOP: 12px} | 1: #adminconsole .block2 {margin-top: 12px} |
2: | 2: |
3: /*** Admin Main Content ***/ | 3: /*** Admin Main Content ***/ |
4: * HTML #adstats DD {HEIGHT: 1%} | 4: * html #adstats dd {height: 1%} |
5: #adstats DD {MARGIN-LEFT: 14em; PADDING: 3px; MARGIN-BOTTOM: 5px; LINE-HEIGHT: 1.5em} | 5: #adstats dd {margin-left: 14em; padding: 3px; margin-bottom: 5px; line-height: 1.5em} |
6: #adstats DT {FLOAT: left; WIDTH: 13em; PADDING: 3px; LINE-HEIGHT: 1.5em} | 6: #adstats dt {float: left; width: 13em; padding: 3px; line-height: 1.5em} |
7: #adstats {PADDING: 15px 15px 5px 10px} | 7: #adstats {padding: 15px 15px 5px 10px} |
8: #adintro {PADDING: 5px} | 8: #adintro {padding: 5px} |
9: #adintro P {PADDING: 10px} | 9: #adintro p {padding: 10px} |
10: #adstats DL {PADDING: 5px 0 10px 5px} | 10: #adstats dl {padding: 5px 0 10px 5px} |
11: | 11: |
12: #adminconsole FIELDSET TD {TEXT-ALIGN: left; PADDING: 4px; WHITE-SPACE: normal} | 12: #adminconsole fieldset td {text-align: left; padding: 4px; white-space: normal} |
13: #adminconsole FIELDSET TH {TEXT-ALIGN: left; PADDING: 4px; WHITE-SPACE: normal} | 13: #adminconsole fieldset th {text-align: left; padding: 4px; white-space: normal} |
14: #adminconsole FIELDSET TD SPAN, #adminconsole FIELDSET TH SPAN {DISPLAY: block; FONT-SIZE: 1em; FONT-WEIGHT: normal} | 14: #adminconsole fieldset td span, #adminconsole fieldset th span {display: block; font-size: 1em; font-weight: normal} |
15: #adminconsole TH {WIDTH: 15em; FONT-WEIGHT: bold} | 15: #adminconsole th {width: 15em; font-weight: bold} |
16: #adminconsole INPUT, #adminconsole SELECT, #adminconsole TEXTAREA {MARGIN-BOTTOM: 0; MARGIN-TOP: 0; FONT-WEIGHT: normal} | 16: #adminconsole input, #adminconsole select, #adminconsole textarea {margin-bottom: 0; margin-top: 0; font-weight: normal} |
17: #adminconsole TABLE.aligntop TH, #adminconsole TABLE.aligntop TD {VERTICAL-ALIGN: top} | 17: #adminconsole table.aligntop th, #adminconsole table.aligntop td {vertical-align: top} |
18: #adminconsole TABLE.aligntop TH {PADDING-TOP: 0.7em} | 18: #adminconsole table.aligntop th {padding-top: 0.7em} |
19: #adminconsole TD, #adminconsole TH {BORDER-STYLE: solid; BORDER-WIDTH: 3px 0 3px 0} | 19: #adminconsole td, #adminconsole th {border-style: solid; border-width: 3px 0 3px 0} |
20: #adminconsole P {PADDING-BOTTOM: 6px} | 20: #adminconsole p {padding-bottom: 6px} |
21: #adminconsole .topspace {PADDING-TOP: 6px} | 21: #adminconsole .topspace {padding-top: 6px} |
22: #adminconsole P.submittop, #adminconsole P.submitend {TEXT-ALIGN: center} | 22: #adminconsole p.submittop, #adminconsole p.submitend {text-align: center} |
23: #adminconsole TH.hidehead {COLOR: #f1f1f1} | 23: #adminconsole th.hidehead {color: #f1f1f1} |
24: #adminconsole THEAD TH {PADDING-BOTTOM: 0} | 24: #adminconsole thead th {padding-bottom: 0} |
25: #adminconsole P.linkactions {FONT-WEIGHT: bold; PADDING-LEFT: 5px} | 25: #adminconsole p.linkactions {font-weight: bold; padding-left: 5px} |
26: #adminconsole TH INPUT, #adminconsole DIV.fsetsubmit {MARGIN-TOP: 6px} | 26: #adminconsole th input, #adminconsole div.fsetsubmit {margin-top: 6px} |
27: | 27: |
28: /*** Particular table settings ***/ | 28: /*** Particular table settings ***/ |
29: #categoryedit .tcl {WIDTH: 25%} | 29: #categoryedit .tcl {width: 25%} |
30: #censoring .tcl, #censoring .tc2 {WIDTH: 20%} | 30: #censoring .tcl, #censoring .tc2 {width: 20%} |
31: #edforum .tcl, #edforum .tc2 {WIDTH: 8%} | 31: #edforum .tcl, #edforum .tc2 {width: 8%} |
32: #edforum .tc2 {WIDTH: 6%} | 32: #edforum .tc2 {width: 6%} |
33: | 33: |
34: TABLE#forumperms TH, TABLE#forumperms TD {WHITE-SPACE: normal; WIDTH: auto; TEXT-ALIGN: center} | 34: table#forumperms th, table#forumperms td {white-space: normal; width: auto; text-align: center} |
35: TABLE#forumperms .atcl {TEXT-ALIGN: left; WIDTH: 15em; WHITE-SPACE: nowrap} | 35: table#forumperms .atcl {text-align: left; width: 15em; white-space: nowrap} |
36: #adminconsole TD.nodefault {BACKGROUND-COLOR: #D59B9B} | 36: #adminconsole td.nodefault {background-color: #d59b9b} |
37: | 37: |
38: /*** User/Ban Search Result Tables ***/ | 38: /*** User/Ban Search Result Tables ***/ |
39: #users2 TH, #bans1 TH {TEXT-ALIGN: left} | 39: #users2 th, #bans1 th {text-align: left} |
40: #users2 TH.tcmod {TEXT-ALIGN: center} | 40: #users2 th.tcmod {text-align: center} |
41: #users2 .tcl, #bans1 .tcl {WIDTH: auto; TEXT-ALIGN: left; PADDING: 4px 6px} | 41: #users2 .tcl, #bans1 .tcl {width: auto; text-align: left; padding: 4px 6px} |
42: #users2 .tc2, #bans1 .tc2 {WIDTH: 18%; TEXT-ALIGN: left; PADDING: 4px 6px} | 42: #users2 .tc2, #bans1 .tc2 {width: 18%; text-align: left; padding: 4px 6px} |
43: #users2 .tc3, #users2 .tc5, #bans1 .tc3, #bans1 .tc5, #bans1 .tc6 {WIDTH: 12%; TEXT-ALIGN: left; PADDING: 4px 6px} | 43: #users2 .tc3, #users2 .tc5, #bans1 .tc3, #bans1 .tc5, #bans1 .tc6 {width: 12%; text-align: left; padding: 4px 6px} |
44: #users2 .tc4, #bans1 .tc4 {WIDTH: 10%; TEXT-ALIGN: center} | 44: #users2 .tc4, #bans1 .tc4 {width: 10%; text-align: center} |
45: #users2 .tcr {WIDTH: 20%; WHITE-SPACE: nowrap} | 45: #users2 .tcr {width: 20%; white-space: nowrap} |
46: #bans1 .tcr {WIDTH: 15%; WHITE-SPACE: nowrap} | 46: #bans1 .tcr {width: 15%; white-space: nowrap} |
47: #users2 .tcmod {WIDTH: 10%; TEXT-ALIGN: center} | 47: #users2 .tcmod {width: 10%; text-align: center} |
48: #adminconsole #linkst, #adminconsole #linksb A {FONT-WEIGHT: bold} | 48: #adminconsole #linkst, #adminconsole #linksb a {font-weight: bold} |
49: | 49: |
50: /*** Plugins ***/ | 50: /*** Plugins ***/ |
a/viewforum.php | b/viewforum.php |
---|---|
108: <div class="inbox crumbsplus"> | 108: <div class="inbox crumbsplus"> |
109: <ul class="crumbs"> | 109: <ul class="crumbs"> |
110: <li><a href="index.php"><?php echo $lang_common['Index'] ?></a></li> | 110: <li><a href="index.php"><?php echo $lang_common['Index'] ?></a></li> |
111: <li><span>» </span><a href="viewforum.php?id=<?php echo $id ?>"><strong><?php echo pun_htmlspecialchars($cur_forum['forum_name']) ?></strong></a></li> | 111: <li><span>» </span><strong><a href="viewforum.php?id=<?php echo $id ?>"><?php echo pun_htmlspecialchars($cur_forum['forum_name']) ?></a></strong></li> |
112: </ul> | 112: </ul> |
113: <div class="pagepost"> | 113: <div class="pagepost"> |
114: <p class="pagelink conl"><?php echo $paging_links ?></p> | 114: <p class="pagelink conl"><?php echo $paging_links ?></p> |
287: </div> | 287: </div> |
288: <ul class="crumbs"> | 288: <ul class="crumbs"> |
289: <li><a href="index.php"><?php echo $lang_common['Index'] ?></a></li> | 289: <li><a href="index.php"><?php echo $lang_common['Index'] ?></a></li> |
290: <li><span>» </span><a href="viewforum.php?id=<?php echo $id ?>"><strong><?php echo pun_htmlspecialchars($cur_forum['forum_name']) ?></strong></a></li> | 290: <li><span>» </span><strong><a href="viewforum.php?id=<?php echo $id ?>"><?php echo pun_htmlspecialchars($cur_forum['forum_name']) ?></a></strong></li> |
291: </ul> | 291: </ul> |
292: <?php echo (!empty($forum_actions) ? "\t\t".'<p class="subscribelink clearb">'.implode(' - ', $forum_actions).'</p>'."\n" : '') ?> | 292: <?php echo (!empty($forum_actions) ? "\t\t".'<p class="subscribelink clearb">'.implode(' - ', $forum_actions).'</p>'."\n" : '') ?> |
293: <div class="clearer"></div> | 293: <div class="clearer"></div> |
a/viewtopic.php | b/viewtopic.php |
---|---|
33: | 33: |
34: list($id, $posted) = $db->fetch_row($result); | 34: list($id, $posted) = $db->fetch_row($result); |
35: | 35: |
36: // Determine on what page the post is located (depending on $forum_user['disp_posts']) | 36: // Determine on which page the post is located (depending on $forum_user['disp_posts']) |
37: $result = $db->query('SELECT COUNT(id) FROM '.$db->prefix.'posts WHERE topic_id='.$id.' AND posted<'.$posted) or error('Unable to count previous posts', __FILE__, __LINE__, $db->error()); | 37: $result = $db->query('SELECT COUNT(id) FROM '.$db->prefix.'posts WHERE topic_id='.$id.' AND posted<'.$posted) or error('Unable to count previous posts', __FILE__, __LINE__, $db->error()); |
38: $num_posts = $db->result($result) + 1; | 38: $num_posts = $db->result($result) + 1; |
39: | 39: |
180: <ul class="crumbs"> | 180: <ul class="crumbs"> |
181: <li><a href="index.php"><?php echo $lang_common['Index'] ?></a></li> | 181: <li><a href="index.php"><?php echo $lang_common['Index'] ?></a></li> |
182: <li><span>» </span><a href="viewforum.php?id=<?php echo $cur_topic['forum_id'] ?>"><?php echo pun_htmlspecialchars($cur_topic['forum_name']) ?></a></li> | 182: <li><span>» </span><a href="viewforum.php?id=<?php echo $cur_topic['forum_id'] ?>"><?php echo pun_htmlspecialchars($cur_topic['forum_name']) ?></a></li> |
183: <li><span>» </span><a href="viewtopic.php?id=<?php echo $id ?>"><strong><?php echo pun_htmlspecialchars($cur_topic['subject']) ?></strong></a></li> | 183: <li><span>» </span><strong><a href="viewtopic.php?id=<?php echo $id ?>"><?php echo pun_htmlspecialchars($cur_topic['subject']) ?></a></strong></li> |
184: </ul> | 184: </ul> |
185: <div class="pagepost"> | 185: <div class="pagepost"> |
186: <p class="pagelink conl"><?php echo $paging_links ?></p> | 186: <p class="pagelink conl"><?php echo $paging_links ?></p> |
270: if ($pun_config['o_censoring'] == '1') | 270: if ($pun_config['o_censoring'] == '1') |
271: $cur_post['url'] = censor_words($cur_post['url']); | 271: $cur_post['url'] = censor_words($cur_post['url']); |
272: | 272: |
273: $user_contacts[] = '<span class="website"><a href="'.pun_htmlspecialchars($cur_post['url']).'">'.$lang_topic['Website'].'</a></span>'; | 273: $user_contacts[] = '<span class="website"><a href="'.pun_htmlspecialchars($cur_post['url']).'" rel="nofollow">'.$lang_topic['Website'].'</a></span>'; |
274: } | 274: } |
275: } | 275: } |
276: | 276: |
277: if ($pun_user['is_admmod']) | 277: if ($pun_user['is_admmod']) |
278: { | 278: { |
279: $user_info[] = '<dd><span><a href="moderate.php?get_host='.$cur_post['id'].'" title="'.$cur_post['poster_ip'].'">'.$lang_topic['IP address logged'].'</a></span></dd>'; | 279: $user_info[] = '<dd><span><a href="moderate.php?get_host='.$cur_post['id'].'" title="'.pun_htmlspecialchars($cur_post['poster_ip']).'">'.$lang_topic['IP address logged'].'</a></span></dd>'; |
280: | 280: |
281: if ($cur_post['admin_note'] != '') | 281: if ($cur_post['admin_note'] != '') |
282: $user_info[] = '<dd><span>'.$lang_topic['Note'].' <strong>'.pun_htmlspecialchars($cur_post['admin_note']).'</strong></span></dd>'; | 282: $user_info[] = '<dd><span>'.$lang_topic['Note'].' <strong>'.pun_htmlspecialchars($cur_post['admin_note']).'</strong></span></dd>'; |
289: $user_title = get_title($cur_post); | 289: $user_title = get_title($cur_post); |
290: | 290: |
291: if ($pun_user['is_admmod']) | 291: if ($pun_user['is_admmod']) |
292: $user_info[] = '<dd><span><a href="moderate.php?get_host='.$cur_post['id'].'" title="'.$cur_post['poster_ip'].'">'.$lang_topic['IP address logged'].'</a></span></dd>'; | 292: $user_info[] = '<dd><span><a href="moderate.php?get_host='.$cur_post['id'].'" title="'.pun_htmlspecialchars($cur_post['poster_ip']).'">'.$lang_topic['IP address logged'].'</a></span></dd>'; |
293: | 293: |
294: if ($pun_config['o_show_user_info'] == '1' && $cur_post['poster_email'] != '' && !$pun_user['is_guest'] && $pun_user['g_send_email'] == '1') | 294: if ($pun_config['o_show_user_info'] == '1' && $cur_post['poster_email'] != '' && !$pun_user['is_guest'] && $pun_user['g_send_email'] == '1') |
295: $user_contacts[] = '<span class="email"><a href="mailto:'.$cur_post['poster_email'].'">'.$lang_common['Email'].'</a></span>'; | 295: $user_contacts[] = '<span class="email"><a href="mailto:'.$cur_post['poster_email'].'">'.$lang_common['Email'].'</a></span>'; |
386: <ul class="crumbs"> | 386: <ul class="crumbs"> |
387: <li><a href="index.php"><?php echo $lang_common['Index'] ?></a></li> | 387: <li><a href="index.php"><?php echo $lang_common['Index'] ?></a></li> |
388: <li><span>» </span><a href="viewforum.php?id=<?php echo $cur_topic['forum_id'] ?>"><?php echo pun_htmlspecialchars($cur_topic['forum_name']) ?></a></li> | 388: <li><span>» </span><a href="viewforum.php?id=<?php echo $cur_topic['forum_id'] ?>"><?php echo pun_htmlspecialchars($cur_topic['forum_name']) ?></a></li> |
389: <li><span>» </span><a href="viewtopic.php?id=<?php echo $id ?>"><strong><?php echo pun_htmlspecialchars($cur_topic['subject']) ?></strong></a></li> | 389: <li><span>» </span><strong><a href="viewtopic.php?id=<?php echo $id ?>"><?php echo pun_htmlspecialchars($cur_topic['subject']) ?></a></strong></li> |
390: </ul> | 390: </ul> |
391: <?php echo $subscraction ?> | 391: <?php echo $subscraction ?> |
392: <div class="clearer"></div> | 392: <div class="clearer"></div> |
435: <textarea name="req_message" rows="7" cols="75" tabindex="<?php echo $cur_index++ ?>"></textarea></label> | 435: <textarea name="req_message" rows="7" cols="75" tabindex="<?php echo $cur_index++ ?>"></textarea></label> |
436: <ul class="bblinks"> | 436: <ul class="bblinks"> |
437: <li><span><a href="help.php#bbcode" onclick="window.open(this.href); return false;"><?php echo $lang_common['BBCode'] ?></a> <?php echo ($pun_config['p_message_bbcode'] == '1') ? $lang_common['on'] : $lang_common['off']; ?></span></li> | 437: <li><span><a href="help.php#bbcode" onclick="window.open(this.href); return false;"><?php echo $lang_common['BBCode'] ?></a> <?php echo ($pun_config['p_message_bbcode'] == '1') ? $lang_common['on'] : $lang_common['off']; ?></span></li> |
438: <li><span><a href="help.php#url" onclick="window.open(this.href); return false;"><?php echo $lang_common['url tag'] ?></a> <?php echo ($pun_config['p_message_bbcode'] == '1' && $pun_user['g_post_links'] == '1') ? $lang_common['on'] : $lang_common['off']; ?></span> | 438: <li><span><a href="help.php#url" onclick="window.open(this.href); return false;"><?php echo $lang_common['url tag'] ?></a> <?php echo ($pun_config['p_message_bbcode'] == '1' && $pun_user['g_post_links'] == '1') ? $lang_common['on'] : $lang_common['off']; ?></span></li> |
439: <li><span><a href="help.php#img" onclick="window.open(this.href); return false;"><?php echo $lang_common['img tag'] ?></a> <?php echo ($pun_config['p_message_bbcode'] == '1' && $pun_config['p_message_img_tag'] == '1') ? $lang_common['on'] : $lang_common['off']; ?></span></li> | 439: <li><span><a href="help.php#img" onclick="window.open(this.href); return false;"><?php echo $lang_common['img tag'] ?></a> <?php echo ($pun_config['p_message_bbcode'] == '1' && $pun_config['p_message_img_tag'] == '1') ? $lang_common['on'] : $lang_common['off']; ?></span></li> |
440: <li><span><a href="help.php#smilies" onclick="window.open(this.href); return false;"><?php echo $lang_common['Smilies'] ?></a> <?php echo ($pun_config['o_smilies'] == '1') ? $lang_common['on'] : $lang_common['off']; ?></span></li> | 440: <li><span><a href="help.php#smilies" onclick="window.open(this.href); return false;"><?php echo $lang_common['Smilies'] ?></a> <?php echo ($pun_config['o_smilies'] == '1') ? $lang_common['on'] : $lang_common['off']; ?></span></li> |
441: </ul> | 441: </ul> |