Changeset 702 for trunk/forum/posting.php
- Timestamp:
- Mar 31, 2010, 6:32:40 PM (15 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/forum/posting.php
r400 r702 3 3 * 4 4 * @package phpBB3 5 * @version $Id : posting.php 9048 2008-11-04 15:54:43Z toonarmy$5 * @version $Id$ 6 6 * @copyright (c) 2005 phpBB Group 7 7 * @license http://opensource.org/licenses/gpl-license.php GNU Public License … … 40 40 $cancel = (isset($_POST['cancel']) && !isset($_POST['save'])) ? true : false; 41 41 42 $refresh = (isset($_POST['add_file']) || isset($_POST['delete_file']) || isset($_POST[' cancel_unglobalise']) || $save || $load) ? true : false;42 $refresh = (isset($_POST['add_file']) || isset($_POST['delete_file']) || isset($_POST['full_editor']) || isset($_POST['cancel_unglobalise']) || $save || $load) ? true : false; 43 43 $mode = ($delete && !$preview && !$refresh && $submit) ? 'delete' : request_var('mode', ''); 44 44 … … 46 46 $current_time = time(); 47 47 48 49 48 // Was cancel pressed? If so then redirect to the appropriate page 50 49 if ($cancel || ($current_time - $lastclick < 2 && $submit)) 51 50 { 52 $redirect = ($post_id) ? append_sid("{$phpbb_root_path}viewtopic.$phpEx", 'p=' . $post_id) . '#p' . $post_id : (($topic_id) ? append_sid("{$phpbb_root_path}viewtopic.$phpEx", 't=' . $topic_id) : (($forum_id) ? append_sid("{$phpbb_root_path}viewforum.$phpEx", 'f=' . $forum_id) : append_sid("{$phpbb_root_path}index.$phpEx"))); 51 $f = ($forum_id) ? 'f=' . $forum_id . '&' : ''; 52 $redirect = ($post_id) ? append_sid("{$phpbb_root_path}viewtopic.$phpEx", $f . 'p=' . $post_id) . '#p' . $post_id : (($topic_id) ? append_sid("{$phpbb_root_path}viewtopic.$phpEx", $f . 't=' . $topic_id) : (($forum_id) ? append_sid("{$phpbb_root_path}viewforum.$phpEx", 'f=' . $forum_id) : append_sid("{$phpbb_root_path}index.$phpEx"))); 53 53 redirect($redirect); 54 54 } … … 75 75 } 76 76 77 // Force forum id 78 $sql = 'SELECT forum_id 79 FROM ' . TOPICS_TABLE . ' 80 WHERE topic_id = ' . $topic_id; 81 $result = $db->sql_query($sql); 82 $f_id = (int) $db->sql_fetchfield('forum_id'); 83 $db->sql_freeresult($result); 84 85 $forum_id = (!$f_id) ? $forum_id : $f_id; 86 77 87 $sql = 'SELECT f.*, t.* 78 88 FROM ' . TOPICS_TABLE . ' t, ' . FORUMS_TABLE . " f 79 89 WHERE t.topic_id = $topic_id 80 90 AND (f.forum_id = t.forum_id 81 OR f.forum_id = $forum_id)"; 91 OR f.forum_id = $forum_id)" . 92 (($auth->acl_get('m_approve', $forum_id)) ? '' : 'AND t.topic_approved = 1'); 82 93 break; 83 94 … … 90 101 trigger_error('NO_POST'); 91 102 } 103 104 // Force forum id 105 $sql = 'SELECT forum_id 106 FROM ' . POSTS_TABLE . ' 107 WHERE post_id = ' . $post_id; 108 $result = $db->sql_query($sql); 109 $f_id = (int) $db->sql_fetchfield('forum_id'); 110 $db->sql_freeresult($result); 111 112 $forum_id = (!$f_id) ? $forum_id : $f_id; 92 113 93 114 $sql = 'SELECT f.*, t.*, p.*, u.username, u.username_clean, u.user_sig, u.user_sig_bbcode_uid, u.user_sig_bbcode_bitfield … … 97 118 AND u.user_id = p.poster_id 98 119 AND (f.forum_id = t.forum_id 99 OR f.forum_id = $forum_id)"; 120 OR f.forum_id = $forum_id)" . 121 (($auth->acl_get('m_approve', $forum_id)) ? '' : 'AND p.post_approved = 1'); 100 122 break; 101 123 … … 143 165 } 144 166 167 // Not able to reply to unapproved posts/topics 168 // TODO: add more descriptive language key 169 if ($auth->acl_get('m_approve', $forum_id) && ((($mode == 'reply' || $mode == 'bump') && !$post_data['topic_approved']) || ($mode == 'quote' && !$post_data['post_approved']))) 170 { 171 trigger_error(($mode == 'reply' || $mode == 'bump') ? 'TOPIC_UNAPPROVED' : 'POST_UNAPPROVED'); 172 } 173 145 174 if ($mode == 'popup') 146 175 { … … 150 179 151 180 $user->setup(array('posting', 'mcp', 'viewtopic'), $post_data['forum_style']); 181 182 if ($config['enable_post_confirm'] && !$user->data['is_registered']) 183 { 184 include($phpbb_root_path . 'includes/captcha/captcha_factory.' . $phpEx); 185 $captcha =& phpbb_captcha_factory::get_instance($config['captcha_plugin']); 186 $captcha->init(CONFIRM_POST); 187 } 152 188 153 189 // Use post_row values in favor of submitted ones... … … 343 379 344 380 $post_data['post_edit_locked'] = (isset($post_data['post_edit_locked'])) ? (int) $post_data['post_edit_locked'] : 0; 381 $post_data['post_subject_md5'] = (isset($post_data['post_subject']) && $mode == 'edit') ? md5($post_data['post_subject']) : ''; 345 382 $post_data['post_subject'] = (in_array($mode, array('quote', 'edit'))) ? $post_data['post_subject'] : ((isset($post_data['topic_title'])) ? $post_data['topic_title'] : ''); 346 383 $post_data['topic_time_limit'] = (isset($post_data['topic_time_limit'])) ? (($post_data['topic_time_limit']) ? (int) $post_data['topic_time_limit'] / 86400 : (int) $post_data['topic_time_limit']) : 0; … … 467 504 // HTML, BBCode, Smilies, Images and Flash status 468 505 $bbcode_status = ($config['allow_bbcode'] && $auth->acl_get('f_bbcode', $forum_id)) ? true : false; 469 $smilies_status = ($ bbcode_status && $config['allow_smilies'] && $auth->acl_get('f_smilies', $forum_id)) ? true : false;506 $smilies_status = ($config['allow_smilies'] && $auth->acl_get('f_smilies', $forum_id)) ? true : false; 470 507 $img_status = ($bbcode_status && $auth->acl_get('f_img', $forum_id)) ? true : false; 471 508 $url_status = ($config['allow_post_links']) ? true : false; 472 509 $flash_status = ($bbcode_status && $auth->acl_get('f_flash', $forum_id) && $config['allow_post_flash']) ? true : false; 473 $quote_status = ($auth->acl_get('f_reply', $forum_id)) ? true : false;510 $quote_status = true; 474 511 475 512 // Save Draft … … 517 554 ); 518 555 556 $hidden_fields = array( 557 'icon_id' => 0, 558 559 'disable_bbcode' => false, 560 'disable_smilies' => false, 561 'disable_magic_url' => false, 562 'attach_sig' => true, 563 'lock_topic' => false, 564 565 'topic_type' => POST_NORMAL, 566 'topic_time_limit' => 0, 567 568 'poll_title' => '', 569 'poll_option_text' => '', 570 'poll_max_options' => 1, 571 'poll_length' => 0, 572 'poll_vote_change' => false, 573 ); 574 575 foreach ($hidden_fields as $name => $default) 576 { 577 if (!isset($_POST[$name])) 578 { 579 // Don't include it, if its not available 580 unset($hidden_fields[$name]); 581 continue; 582 } 583 584 if (is_bool($default)) 585 { 586 // Use the string representation 587 $hidden_fields[$name] = request_var($name, ''); 588 } 589 else 590 { 591 $hidden_fields[$name] = request_var($name, $default); 592 } 593 } 594 595 $s_hidden_fields .= build_hidden_fields($hidden_fields); 596 519 597 confirm_box(false, 'SAVE_DRAFT', $s_hidden_fields); 520 598 } … … 565 643 } 566 644 567 $solved_captcha = false;568 645 569 646 if ($submit || $preview || $refresh) … … 579 656 $post_data['topic_type'] = request_var('topic_type', (($mode != 'post') ? (int) $post_data['topic_type'] : POST_NORMAL)); 580 657 $post_data['topic_time_limit'] = request_var('topic_time_limit', (($mode != 'post') ? (int) $post_data['topic_time_limit'] : 0)); 581 $post_data['icon_id'] = request_var('icon', 0); 658 659 if ($post_data['enable_icons'] && $auth->acl_get('f_icons', $forum_id)) 660 { 661 $post_data['icon_id'] = request_var('icon', (int) $post_data['icon_id']); 662 } 582 663 583 664 $post_data['enable_bbcode'] = (!$bbcode_status || isset($_POST['disable_bbcode'])) ? false : true; … … 647 728 $post_data['poll_option_text'] = utf8_normalize_nfc(request_var('poll_option_text', '', true)); 648 729 $post_data['poll_max_options'] = request_var('poll_max_options', 1); 649 $post_data['poll_vote_change'] = ($auth->acl_get('f_votechg', $forum_id) && isset($_POST['poll_vote_change'])) ? 1 : 0;730 $post_data['poll_vote_change'] = ($auth->acl_get('f_votechg', $forum_id) && $auth->acl_get('f_vote', $forum_id) && isset($_POST['poll_vote_change'])) ? 1 : 0; 650 731 } 651 732 … … 674 755 $message_md5 = md5($message_parser->message); 675 756 757 // If editing and checksum has changed we know the post was edited while we're editing 758 // Notify and show user the changed post 759 if ($mode == 'edit' && $post_data['forum_flags'] & FORUM_FLAG_POST_REVIEW) 760 { 761 $edit_post_message_checksum = request_var('edit_post_message_checksum', ''); 762 $edit_post_subject_checksum = request_var('edit_post_subject_checksum', ''); 763 764 // $post_data['post_checksum'] is the checksum of the post submitted in the meantime 765 // $message_md5 is the checksum of the post we're about to submit 766 // $edit_post_message_checksum is the checksum of the post we're editing 767 // ... 768 769 // We make sure nobody else made exactly the same change 770 // we're about to submit by also checking $message_md5 != $post_data['post_checksum'] 771 if (($edit_post_message_checksum !== '' && $edit_post_message_checksum != $post_data['post_checksum'] && $message_md5 != $post_data['post_checksum']) 772 || ($edit_post_subject_checksum !== '' && $edit_post_subject_checksum != $post_data['post_subject_md5'] && md5($post_data['post_subject']) != $post_data['post_subject_md5'])) 773 { 774 if (topic_review($topic_id, $forum_id, 'post_review_edit', $post_id)) 775 { 776 $template->assign_vars(array( 777 'S_POST_REVIEW' => true, 778 779 'L_POST_REVIEW' => $user->lang['POST_REVIEW_EDIT'], 780 'L_POST_REVIEW_EXPLAIN' => $user->lang['POST_REVIEW_EDIT_EXPLAIN'], 781 )); 782 } 783 784 $submit = false; 785 $refresh = true; 786 } 787 } 788 676 789 // Check checksum ... don't re-parse message if the same 677 790 $update_message = ($mode != 'edit' || $message_md5 != $post_data['post_checksum'] || $status_switch || strlen($post_data['bbcode_uid']) < BBCODE_UID_LEN) ? true : false; 791 792 // Also check if subject got updated... 793 $update_subject = $mode != 'edit' || ($post_data['post_subject_md5'] && $post_data['post_subject_md5'] != md5($post_data['post_subject'])); 678 794 679 795 // Parse message … … 742 858 if ($config['enable_post_confirm'] && !$user->data['is_registered'] && in_array($mode, array('quote', 'post', 'reply'))) 743 859 { 744 $confirm_id = request_var('confirm_id', ''); 745 $confirm_code = request_var('confirm_code', ''); 746 747 $sql = 'SELECT code 748 FROM ' . CONFIRM_TABLE . " 749 WHERE confirm_id = '" . $db->sql_escape($confirm_id) . "' 750 AND session_id = '" . $db->sql_escape($user->session_id) . "' 751 AND confirm_type = " . CONFIRM_POST; 752 $result = $db->sql_query($sql); 753 $confirm_row = $db->sql_fetchrow($result); 754 $db->sql_freeresult($result); 755 756 if (empty($confirm_row['code']) || strcasecmp($confirm_row['code'], $confirm_code) !== 0) 757 { 758 $error[] = $user->lang['CONFIRM_CODE_WRONG']; 759 } 760 else 761 { 762 $solved_captcha = true; 860 $captcha_data = array( 861 'message' => utf8_normalize_nfc(request_var('message', '', true)), 862 'subject' => utf8_normalize_nfc(request_var('subject', '', true)), 863 'username' => utf8_normalize_nfc(request_var('username', '', true)), 864 ); 865 $vc_response = $captcha->validate($captcha_data); 866 if ($vc_response) 867 { 868 $error[] = $vc_response; 763 869 } 764 870 } … … 887 993 $db->sql_freeresult($result); 888 994 889 if ($forum_type != FORUM_POST || !$auth->acl_get('f_post', $to_forum_id) )995 if ($forum_type != FORUM_POST || !$auth->acl_get('f_post', $to_forum_id) || (!$auth->acl_get('m_approve', $to_forum_id) && !$auth->acl_get('f_noapprove', $to_forum_id))) 890 996 { 891 997 $to_forum_id = 0; … … 999 1105 } 1000 1106 1001 $redirect_url = submit_post($mode, $post_data['post_subject'], $post_data['username'], $post_data['topic_type'], $poll, $data, $update_message); 1002 1003 // Check the permissions for post approval, as well as the queue trigger where users are put on approval with a post count lower than specified. Moderators are not affected. 1004 if ((($config['enable_queue_trigger'] && $user->data['user_posts'] < $config['queue_trigger_posts']) || !$auth->acl_get('f_noapprove', $data['forum_id'])) && !$auth->acl_get('m_approve', $data['forum_id'])) 1107 // The last parameter tells submit_post if search indexer has to be run 1108 $redirect_url = submit_post($mode, $post_data['post_subject'], $post_data['username'], $post_data['topic_type'], $poll, $data, $update_message, ($update_message || $update_subject) ? true : false); 1109 1110 if ($config['enable_post_confirm'] && !$user->data['is_registered'] && (isset($captcha) && $captcha->is_solved() === true) && ($mode == 'post' || $mode == 'reply' || $mode == 'quote')) 1111 { 1112 $captcha->reset(); 1113 } 1114 1115 // Check the permissions for post approval. Moderators are not affected. 1116 if ((!$auth->acl_get('f_noapprove', $data['forum_id']) && !$auth->acl_get('m_approve', $data['forum_id']) && empty($data['force_approved_state'])) || (isset($data['force_approved_state']) && !$data['force_approved_state'])) 1005 1117 { 1006 1118 meta_refresh(10, $redirect_url); … … 1129 1241 if ($mode == 'quote' && !$submit && !$preview && !$refresh) 1130 1242 { 1131 $message_parser->message = '[quote="' . $post_data['quote_username'] . '"]' . censor_text(trim($message_parser->message)) . "[/quote]\n"; 1243 if ($config['allow_bbcode']) 1244 { 1245 $message_parser->message = '[quote="' . $post_data['quote_username'] . '"]' . censor_text(trim($message_parser->message)) . "[/quote]\n"; 1246 } 1247 else 1248 { 1249 $offset = 0; 1250 $quote_string = "> "; 1251 $message = censor_text(trim($message_parser->message)); 1252 // see if we are nesting. It's easily tricked but should work for one level of nesting 1253 if (strpos($message, ">") !== false) 1254 { 1255 $offset = 10; 1256 } 1257 $message = utf8_wordwrap($message, 75 + $offset, "\n"); 1258 1259 $message = $quote_string . $message; 1260 $message = str_replace("\n", "\n" . $quote_string, $message); 1261 $message_parser->message = $post_data['quote_username'] . " " . $user->lang['WROTE'] . " :\n" . $message . "\n"; 1262 } 1132 1263 } 1133 1264 … … 1158 1289 // Forum moderators? 1159 1290 $moderators = array(); 1160 get_moderators($moderators, $forum_id); 1291 if ($config['load_moderators']) 1292 { 1293 get_moderators($moderators, $forum_id); 1294 } 1161 1295 1162 1296 // Generate smiley listing … … 1219 1353 generate_forum_rules($post_data); 1220 1354 1221 if ($config['enable_post_confirm'] && !$user->data['is_registered'] && $solved_captcha === false && ($mode == 'post' || $mode == 'reply' || $mode == 'quote')) 1222 { 1223 // Show confirm image 1224 $sql = 'DELETE FROM ' . CONFIRM_TABLE . " 1225 WHERE session_id = '" . $db->sql_escape($user->session_id) . "' 1226 AND confirm_type = " . CONFIRM_POST; 1227 $db->sql_query($sql); 1228 1229 // Generate code 1230 $code = gen_rand_string(mt_rand(5, 8)); 1231 $confirm_id = md5(unique_id($user->ip)); 1232 $seed = hexdec(substr(unique_id(), 4, 10)); 1233 1234 // compute $seed % 0x7fffffff 1235 $seed -= 0x7fffffff * floor($seed / 0x7fffffff); 1236 1237 $sql = 'INSERT INTO ' . CONFIRM_TABLE . ' ' . $db->sql_build_array('INSERT', array( 1238 'confirm_id' => (string) $confirm_id, 1239 'session_id' => (string) $user->session_id, 1240 'confirm_type' => (int) CONFIRM_POST, 1241 'code' => (string) $code, 1242 'seed' => (int) $seed) 1243 ); 1244 $db->sql_query($sql); 1355 // Posting uses is_solved for legacy reasons. Plugins have to use is_solved to force themselves to be displayed. 1356 if ($config['enable_post_confirm'] && !$user->data['is_registered'] && (isset($captcha) && $captcha->is_solved() === false) && ($mode == 'post' || $mode == 'reply' || $mode == 'quote')) 1357 { 1245 1358 1246 1359 $template->assign_vars(array( 1247 1360 'S_CONFIRM_CODE' => true, 1248 'CONFIRM_ID' => $confirm_id, 1249 'CONFIRM_IMAGE' => '<img src="' . append_sid("{$phpbb_root_path}ucp.$phpEx", 'mode=confirm&id=' . $confirm_id . '&type=' . CONFIRM_POST) . '" alt="" title="" />', 1250 'L_POST_CONFIRM_EXPLAIN' => sprintf($user->lang['POST_CONFIRM_EXPLAIN'], '<a href="mailto:' . htmlspecialchars($config['board_contact']) . '">', '</a>'), 1361 'CAPTCHA_TEMPLATE' => $captcha->get_template(), 1251 1362 )); 1252 1363 } … … 1256 1367 $s_hidden_fields .= ($draft_id || isset($_REQUEST['draft_loaded'])) ? '<input type="hidden" name="draft_loaded" value="' . request_var('draft_loaded', $draft_id) . '" />' : ''; 1257 1368 1369 if ($mode == 'edit') 1370 { 1371 $s_hidden_fields .= build_hidden_fields(array( 1372 'edit_post_message_checksum' => $post_data['post_checksum'], 1373 'edit_post_subject_checksum' => $post_data['post_subject_md5'], 1374 )); 1375 } 1376 1258 1377 // Add the confirm id/code pair to the hidden fields, else an error is displayed on next submit/preview 1259 if ($solved_captcha !== false) 1260 { 1261 $s_hidden_fields .= build_hidden_fields(array( 1262 'confirm_id' => request_var('confirm_id', ''), 1263 'confirm_code' => request_var('confirm_code', '')) 1264 ); 1378 if (isset($captcha) && $captcha->is_solved() !== false) 1379 { 1380 $s_hidden_fields .= build_hidden_fields($captcha->get_hidden_fields()); 1265 1381 } 1266 1382 … … 1287 1403 'SMILIES_STATUS' => ($smilies_status) ? $user->lang['SMILIES_ARE_ON'] : $user->lang['SMILIES_ARE_OFF'], 1288 1404 'URL_STATUS' => ($bbcode_status && $url_status) ? $user->lang['URL_IS_ON'] : $user->lang['URL_IS_OFF'], 1405 'MAX_FONT_SIZE' => (int) $config['max_post_font_size'], 1289 1406 'MINI_POST_IMG' => $user->img('icon_post_target', $user->lang['POST']), 1290 1407 'POST_DATE' => ($post_data['post_time']) ? $user->format_date($post_data['post_time']) : '', … … 1303 1420 'S_DISPLAY_USERNAME' => (!$user->data['is_registered'] || ($mode == 'edit' && $post_data['poster_id'] == ANONYMOUS)) ? true : false, 1304 1421 'S_SHOW_TOPIC_ICONS' => $s_topic_icons, 1305 'S_DELETE_ALLOWED' => ($mode == 'edit' && (($post_id == $post_data['topic_last_post_id'] && $post_data['poster_id'] == $user->data['user_id'] && $auth->acl_get('f_delete', $forum_id) && !$post_data['post_edit_locked'] && ($post_data['post_time'] > time() - ($config[' edit_time'] * 60) || !$config['edit_time'])) || $auth->acl_get('m_delete', $forum_id))) ? true : false,1422 'S_DELETE_ALLOWED' => ($mode == 'edit' && (($post_id == $post_data['topic_last_post_id'] && $post_data['poster_id'] == $user->data['user_id'] && $auth->acl_get('f_delete', $forum_id) && !$post_data['post_edit_locked'] && ($post_data['post_time'] > time() - ($config['delete_time'] * 60) || !$config['delete_time'])) || $auth->acl_get('m_delete', $forum_id))) ? true : false, 1306 1423 'S_BBCODE_ALLOWED' => $bbcode_status, 1307 1424 'S_BBCODE_CHECKED' => ($bbcode_checked) ? ' checked="checked"' : '', … … 1341 1458 $template->assign_vars(array( 1342 1459 'S_SHOW_POLL_BOX' => true, 1343 'S_POLL_VOTE_CHANGE' => ($auth->acl_get('f_votechg', $forum_id) ),1460 'S_POLL_VOTE_CHANGE' => ($auth->acl_get('f_votechg', $forum_id) && $auth->acl_get('f_vote', $forum_id)), 1344 1461 'S_POLL_DELETE' => ($mode == 'edit' && sizeof($post_data['poll_options']) && ((!$post_data['poll_last_vote'] && $post_data['poster_id'] == $user->data['user_id'] && $auth->acl_get('f_delete', $forum_id)) || $auth->acl_get('m_delete', $forum_id))), 1345 1462 'S_POLL_DELETE_CHECKED' => (!empty($poll_delete)) ? true : false, … … 1362 1479 1363 1480 // Output page ... 1364 page_header($page_title );1481 page_header($page_title, false); 1365 1482 1366 1483 $template->set_filenames(array( … … 1390 1507 ($forum_style) ? $user->setup('posting', $forum_style) : $user->setup('posting'); 1391 1508 1392 page_header($user->lang['PROGRESS_BAR'] );1509 page_header($user->lang['PROGRESS_BAR'], false); 1393 1510 1394 1511 $template->set_filenames(array( … … 1415 1532 1416 1533 // If moderator removing post or user itself removing post, present a confirmation screen 1417 if ($auth->acl_get('m_delete', $forum_id) || ($post_data['poster_id'] == $user->data['user_id'] && $user->data['is_registered'] && $auth->acl_get('f_delete', $forum_id) && $post_id == $post_data['topic_last_post_id'] && !$post_data['post_edit_locked'] && ($post_data['post_time'] > time() - ($config[' edit_time'] * 60) || !$config['edit_time'])))1534 if ($auth->acl_get('m_delete', $forum_id) || ($post_data['poster_id'] == $user->data['user_id'] && $user->data['is_registered'] && $auth->acl_get('f_delete', $forum_id) && $post_id == $post_data['topic_last_post_id'] && !$post_data['post_edit_locked'] && ($post_data['post_time'] > time() - ($config['delete_time'] * 60) || !$config['delete_time']))) 1418 1535 { 1419 1536 $s_hidden_fields = build_hidden_fields(array( … … 1439 1556 1440 1557 $next_post_id = delete_post($forum_id, $topic_id, $post_id, $data); 1558 $post_username = ($post_data['poster_id'] == ANONYMOUS && !empty($post_data['post_username'])) ? $post_data['post_username'] : $post_data['username']; 1441 1559 1442 1560 if ($next_post_id === false) 1443 1561 { 1444 add_log('mod', $forum_id, $topic_id, 'LOG_DELETE_TOPIC', $post_data['topic_title'] );1562 add_log('mod', $forum_id, $topic_id, 'LOG_DELETE_TOPIC', $post_data['topic_title'], $post_username); 1445 1563 1446 1564 $meta_info = append_sid("{$phpbb_root_path}viewforum.$phpEx", "f=$forum_id"); … … 1449 1567 else 1450 1568 { 1451 add_log('mod', $forum_id, $topic_id, 'LOG_DELETE_POST', $post_data['post_subject'] );1569 add_log('mod', $forum_id, $topic_id, 'LOG_DELETE_POST', $post_data['post_subject'], $post_username); 1452 1570 1453 1571 $meta_info = append_sid("{$phpbb_root_path}viewtopic.$phpEx", "f=$forum_id&t=$topic_id&p=$next_post_id") . "#p$next_post_id";
Note:
See TracChangeset
for help on using the changeset viewer.