/** * Generate post content */ $message_parser = new parse_message(); $vars = array( 'MOD_HU_TITLE' => $row['mod_hu_title'], 'MOD_EN_TITLE' => $row['mod_title'], 'MOD_VERSION' => $row['mod_version'], 'MOD_DESC' => $row['mod_desc'], 'MOD_AUTHOR' => $row['mod_author_name'], 'U_MOD_AUTHOR' => 'http://www.phpbb.com/community/memberlist.php?mode=viewprofile&u=' . $row['mod_author_id'], 'U_MOD_COM_DB' => 'http://www.phpbb.com/mods/db/index.php?i=misc&mode=display&contrib_id=' . $row['mod_db_id'], 'MOD_TAGS' => generate_tags_bbcode_list($mod_tags, $tagcats, array("{$phpbb_root_path}mods.{$phpEx}", "mode=listtag&cat=%1\$s&tag=%2\$s")), 'U_MOD' => generate_board_url() . '/' . $url_rewriter->rewrite("{$phpbb_root_path}mods.{$phpEx}", "mode=mod&id={$row['mod_id']}"), ); $message = generate_content_post('mod_pack', $vars); $message_md5 = md5($message); $message_parser->message = &$message; $message_parser->parse(true, true, false, false, false, true, true); if (!empty($message_parser->warn_msg)) { trigger_error(implode('<br />', $message_parser->warn_msg), E_USER_NOTICE); } /** * Submit the post */ $data = array( 'forum_id' => MODS_FORUM_ID, 'topic_title' => $row['mod_hu_title'],
// Just to make sure (also easier development; although not every database (or table) engine supports it) $db->sql_transaction('begin'); // Insert into (our own) bug database (if adding: without the topic id for the time being) if ($mode == 'add') { $sql_ary = array('project_id' => $project_id, 'report_title' => $report_data['report_title'], 'report_desc' => $message_parser->message, 'report_component' => $report_data['report_component'], 'report_version' => $report_data['report_version']); $sql = 'INSERT INTO ' . BUGS_REPORTS_TABLE . ' ' . $db->sql_build_array('INSERT', $sql_ary); $db->sql_query($sql); $report_data['report_id'] = $db->sql_nextid(); } elseif ($mode == 'edit') { $sql_ary = array('report_title' => $report_data['report_title'], 'report_desc' => $message_parser->message, 'report_component' => $report_data['report_component'], 'report_version' => $report_data['report_version']); $sql = 'UPDATE ' . BUGS_REPORTS_TABLE . ' SET ' . $db->sql_build_array('UPDATE', $sql_ary) . ' WHERE report_id = ' . $report_data['report_id']; $db->sql_query($sql); } // Generate post content $vars = array('REPORT_TITLE' => $report_data['report_title'], 'PROJECT_TITLE' => $project['project_title'], 'COMPONENT_TITLE' => $report_data['component_title'], 'VERSION_TITLE' => $report_data['version_title'], 'REPORT_DESCRIPTION' => $report_data['report_desc'], 'U_REPORT' => generate_board_url() . '/' . $url_rewriter->rewrite("{$phpbb_root_path}bugs.{$phpEx}", "mode=report&project={$project_name}&report_id={$report_data['report_id']}")); $message = generate_content_post('bug_report', $vars); $message_md5 = md5($message); $message_parser->message =& $message; $message_parser->parse(true, $report_data['enable_magic_url'], $report_data['enable_smilies'], $auth->acl_get('f_img', $forum_id), $auth->acl_get('f_flash', $forum_id), true, true); /*if (!empty($message_parser->warn_msg)) { trigger_error(implode('<br />', $message_parser->warn_msg), E_USER_NOTICE); }*/ // Post the topic $data = array('forum_id' => $forum_id, 'topic_title' => $report_data['report_title'], 'icon_id' => 0, 'enable_bbcode' => 1, 'enable_smilies' => $report_data['enable_smilies'], 'enable_urls' => $report_data['enable_magic_url'], 'enable_sig' => 0, 'message' => $message_parser->message, 'message_md5' => $message_md5, 'bbcode_bitfield' => $message_parser->bbcode_bitfield, 'bbcode_uid' => $message_parser->bbcode_uid, 'post_edit_locked' => $report_data['post_edit_locked'], 'enable_indexing' => $project['enable_indexing'], 'notify' => false, 'notify_set' => false, 'post_time' => $report_data['post_time'], 'forum_name' => $project['project_title'], 'post_edit_reason' => $report_data['post_edit_reason'], 'topic_replies_real' => $report_data['topic_replies_real'], 'poster_id' => $report_data['topic_poster'], 'post_id' => $report_data['post_id'], 'topic_id' => $report_data['topic_id'], 'topic_poster' => $report_data['topic_poster'], 'topic_first_post_id' => $report_data['topic_first_post_id'], 'topic_last_post_id' => $report_data['topic_last_post_id']); $poll = false; submit_post($mode == 'add' ? 'post' : 'edit', $report_data['report_title'], '', POST_NORMAL, $poll, $data); // Now update the report with the id of the topic if ($mode == 'add') { $sql = 'UPDATE ' . BUGS_REPORTS_TABLE . ' SET topic_id = ' . $data['topic_id'] . ' WHERE report_id = ' . $report_data['report_id']; $db->sql_query($sql);
if (isset($_POST['submit']) && !sizeof($error)) { // Just to make sure (also easier development; although not every database (or table) engine supports it) $db->sql_transaction('begin'); /** * Generate post content */ $vars = array( 'ARTICLE_TITLE' => $article_data['article_title'], 'ARTICLE_DESC' => $article_data['article_desc'], 'ARTICLE_CONTENT' => $article_data['article_content'], 'ARTICLE_TAGS' => generate_tags_bbcode_list($tags, $tagcats, array("{$phpbb_root_path}kb.{$phpEx}", "mode=tag&cat=%1\$s&name=%2\$s")), 'U_ARTICLE' => generate_board_url() . '/' . $url_rewriter->rewrite("{$phpbb_root_path}kb.{$phpEx}", "mode=article&name={$article_data['article_name']}"), ); $message = generate_content_post('kb_article', $vars); $message_md5 = md5($message); $message_parser->message = &$message; $message_parser->parse(true, $url_status, $smilies_status, $img_status, $flash_status, true, true); if (!empty($message_parser->warn_msg)) { trigger_error(implode('<br />', $message_parser->warn_msg), E_USER_NOTICE); } /** * Submit the post */ // Query forum details $sql = 'SELECT forum_name, enable_indexing