本文整理汇总了PHP中bbencode_second_pass函数的典型用法代码示例。如果您正苦于以下问题:PHP bbencode_second_pass函数的具体用法?PHP bbencode_second_pass怎么用?PHP bbencode_second_pass使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。
在下文中一共展示了bbencode_second_pass函数的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: bbencode_all
/**
* 进行了适当修改,以便脱离 phpbb 使用 (dualface@gmail.com)
*/
function bbencode_all($text, $uid)
{
$text = bbencode_first_pass($text, 'post');
$text = bbencode_second_pass($text, 'post');
$text .= "\n";
$text = str_replace(array("\r\n", "\r"), "\n", $text);
// cross-platform newlines
$text = preg_replace('/(.+)\\n(.+)/', "\$1<br />\$2", $text);
$text = preg_replace('/\\n?(.+?)(?:\\n\\s*\\n|\\z)/s', "<p>\$1</p>\n", $text);
// make paragraphs, including one at the end
return $text;
}
示例2: __construct
public function __construct()
{
global $template, $announcement_centre_config;
$this->config = $announcement_centre_config;
$this->config['announcement_text'] = smilies_pass($this->config['announcement_text']);
$announcement_text_uid = make_bbcode_uid();
$this->config['announcement_text'] = bbencode_first_pass($this->config['announcement_text'], $announcement_text_uid);
$this->config['announcement_text'] = bbencode_second_pass($this->config['announcement_text'], $announcement_text_uid);
$this->config['announcement_text'] = str_replace("\n", "\n<br />\n", $this->config['announcement_text']);
$this->config['announcement_guest_text'] = smilies_pass($this->config['announcement_guest_text']);
$announcement_guest_text_uid = make_bbcode_uid();
$this->config['announcement_guest_text'] = bbencode_first_pass($this->config['announcement_guest_text'], $announcement_guest_text_uid);
$this->config['announcement_guest_text'] = bbencode_second_pass($this->config['announcement_guest_text'], $announcement_guest_text_uid);
$this->config['announcement_guest_text'] = str_replace("\n", "\n<br />\n", $this->config['announcement_guest_text']);
$announcement_guest_text = $this->config['announcement_guest_text'];
$announcement_title = empty($this->config['announcement_title']) ? $lang['Site_announcement_block_title'] : str_replace("\n", "\n<br />\n", $this->config['announcement_title']);
$announcement_guest_title = empty($this->config['announcement_guest_title']) ? $lang['Guest_announcement_block_title'] : str_replace("\n", "\n<br />\n", $this->config['announcement_guest_title']);
// get the post information in case last topic or forum has been entered
if (!$this->config['announcement_forum_id'] == '' || !$this->config['announcement_topic_id'] == '') {
if (!($result = $db->sql_query($this->getFetchSql()))) {
message_die(GENERAL_ERROR, 'Error in getting announcement post', '', __LINE__, __FILE__, $sql);
}
if ($row = $db->sql_fetchrow($result)) {
$row['post_text'] = smilies_pass($row['post_text']);
$row['post_text'] = bbencode_first_pass($row['post_text'], $row['bbcode_uid']);
$row['post_text'] = bbencode_second_pass($row['post_text'], $row['bbcode_uid']);
$row['post_text'] = str_replace("\n", "\n<br />\n", $row['post_text']);
$announcement_text = $row['post_text'];
}
} else {
$announcement_text = $this->config['announcement_text'];
}
// who sees the announcements
if ($this->config['announcement_status'] == ANNOUNCEMENTS_LEFTY74_SHOW_YES) {
switch ($this->getDisplay()) {
case 'normal':
$template->assign_block_vars('announcement_displayed', array());
break;
case 'guest':
$template->assign_block_vars('guest_announcement_displayed', array());
break;
default:
$template->assign_block_vars('announcement_not_displayed', array());
}
}
//BEGIN ACP Site Announcement Centre by lefty74
$template->assign_vars(array('L_ANNOUNCEMENT_TITLE' => $announcement_title, 'SITE_ANNOUNCEMENTS_LEFTY74' => $announcement_text, 'L_ANNOUNCEMENT_GUEST_TITLE' => $announcement_guest_title, 'GUEST_ANNOUNCEMENTS_LEFTY74' => $announcement_guest_text));
}
示例3: preg_replace
if (!$board_config['allow_html'] || !$userdata['user_allowhtml']) {
if ($user_sig != '') {
$user_sig = preg_replace('#(<)([\\/]?.*?)(>)#is', "<\\2>", $user_sig);
}
if ($postrow[$i]['enable_html']) {
$message = preg_replace('#(<)([\\/]?.*?)(>)#is', "<\\2>", $message);
}
}
//
// Parse message and/or sig for BBCode if reqd
//
if ($user_sig != '' && $user_sig_bbcode_uid != '') {
$user_sig = $board_config['allow_bbcode'] ? bbencode_second_pass($user_sig, $user_sig_bbcode_uid) : preg_replace("/\\:{$user_sig_bbcode_uid}/si", '', $user_sig);
}
if ($bbcode_uid != '') {
$message = $board_config['allow_bbcode'] ? bbencode_second_pass($message, $bbcode_uid) : preg_replace("/\\:{$bbcode_uid}/si", '', $message);
}
if ($user_sig != '') {
$user_sig = make_clickable($user_sig);
}
$message = make_clickable($message);
//
// Parse smilies
//
if ($board_config['allow_smilies']) {
if ($postrow[$i]['user_allowsmile'] && $user_sig != '') {
$user_sig = smilies_pass($user_sig);
}
if ($postrow[$i]['enable_smilies']) {
$message = smilies_pass($message);
}
示例4: preg_replace
if ($user_sig != '' && $userdata['user_allowhtml']) {
$user_sig = preg_replace('#(<)([\\/]?.*?)(>)#is', "<\\2>", $user_sig);
}
if ($postrow[$i]['enable_html']) {
$message = preg_replace('#(<)([\\/]?.*?)(>)#is', "<\\2>", $message);
}
}
//
// Parse message and/or sig for BBCode if reqd
//
if ($board_config['allow_bbcode']) {
if ($user_sig != '' && $user_sig_bbcode_uid != '') {
$user_sig = $board_config['allow_bbcode'] ? bbencode_second_pass($user_sig, $user_sig_bbcode_uid) : preg_replace('/\\:[0-9a-z\\:]+\\]/si', ']', $user_sig);
}
if ($bbcode_uid != '') {
$message = $board_config['allow_bbcode'] ? bbencode_second_pass($message, $bbcode_uid) : preg_replace('/\\:[0-9a-z\\:]+\\]/si', ']', $message);
}
}
if ($user_sig != '') {
$user_sig = make_clickable($user_sig);
}
$message = make_clickable($message);
//
// Parse smilies
//
if ($board_config['allow_smilies']) {
if ($postrow[$i]['user_allowsmile'] && $user_sig != '') {
$user_sig = smilies_pass($user_sig);
}
if ($postrow[$i]['enable_smilies']) {
$message = smilies_pass($message);
示例5: IN
AND t.topic_id IN ( SELECT topic_id
FROM ' . $phpbb_table_prefix . '_topics
LEFT JOIN ' . $phpbb_table_prefix . '_users u ON u.user_id = topic_poster
WHERE topic_status != 2
AND forum_id != 2
AND u.user_active = 1)
ORDER BY p.post_id ASC';
$req_post = mysql_query($sql_post);
$yml = array();
while ($data = mysql_fetch_array($req_post)) {
if ($data['poster_id'] == -1) {
$user = "\n" . ' author_name: ' . $data['post_username'];
} else {
$user = "\n" . ' sfGuardUser: ' . stripText($data['username']) . '_user';
}
$content = bbencode_second_pass($data['post_text'], $data['bbcode_uid']);
$content = str_replace("\n\r", ' ', $content);
$content = str_replace("\n", ' ', $content);
$content = str_replace("\r", "\n ", $content);
$content = str_replace("\t", ' ', $content);
$content = str_replace("(lien externe)", "", $content);
$content = str_replace(' class="postlink external"', "", $content);
$content = str_replace(' class="postlink"', "", $content);
$content = str_replace('<span> </span>', "", $content);
$content = str_replace('<span class="postbody">', "", $content);
$content = str_replace('</span>', "", $content);
$content = str_replace('<span class="genmed">', "", $content);
$yml['sfSimpleForumPost'][] = '
p_' . $data['post_id'] . ':
sfSimpleForumTopic: t_' . $data['topic_id'] . '
title: "' . $data['topic_title'] . '"' . $user . '
示例6: str_replace
if ($highlight_match) {
$shout = str_replace('\\"', '"', substr(@preg_replace('#(\\>(((?>([^><]+|(?R)))*)\\<))#se', "@preg_replace('#\\b(" . str_replace('\\', '\\\\', addslashes($highlight_match)) . ")\\b#i', '<span style=\"color:#" . $theme['fontcolor3'] . "\"><b>\\\\1</b></span>', '\\0')", '>' . $shout . '<'), 1, -1));
}
//
// Replace naughty words
//
if (count($orig_word)) {
if ($user_sig != '') {
$user_sig = preg_replace($orig_word, $replacement_word, $user_sig);
}
$shout = preg_replace($orig_word, $replacement_word, $shout);
}
if ($smilies_on && $shout != '' && $shout_row['enable_smilies']) {
$shout = smilies_pass($shout);
}
$shout = bbencode_second_pass($shout, $shout_row['shout_bbcode_uid']);
$shout = str_replace("\n", "\n<br />\n", $shout);
if ($is_auth['auth_mod'] && $is_auth['auth_delete']) {
$temp_url = append_sid("shoutbox_max.{$phpEx}?mode=ip&" . POST_POST_URL . "=" . $shout_row['shout_id']);
$ip_img = '<a href="' . $temp_url . '"><img src="' . $images['icon_ip'] . '" alt="' . $lang['View_IP'] . '" title="' . $lang['View_IP'] . '" border="0" /></a>';
$ip = '<a href="' . $temp_url . '">' . $lang['View_IP'] . '</a>';
$temp_url = append_sid("shoutbox_max.{$phpEx}?mode=delete&" . POST_POST_URL . "=" . $shout_row['shout_id']);
$delshout_img = '<a href="' . $temp_url . '"><img src="' . $images['icon_delpost'] . '" alt="' . $lang['Delete_post'] . '" title="' . $lang['Delete_post'] . '" border="0" /></a> ';
$delshout = '<a href="' . $temp_url . '">' . $lang['Delete_post'] . '</a>';
$temp_url = append_sid("shoutbox_max.{$phpEx}?mode=censor&" . POST_POST_URL . "=" . $shout_row['shout_id']);
$censorshout_img = '<a href="' . $temp_url . '"><img src="' . $images['icon_censor'] . '" alt="' . $lang['Censor'] . '" title="' . $lang['Censor'] . '" border="0" /></a> ';
$censorshout = '<a href="' . $temp_url . '">' . $lang['Delete_post'] . '</a>';
} else {
$ip_img = '';
$ip = '';
if ($userdata['user_id'] == $user_id && $is_auth['auth_delete'] && ($userdata['user_id'] != ANONYMOUS || $userdata['user_id'] == ANONYMOUS && $userdata['session_ip'] == $shout_row['shout_ip'])) {
示例7: includeNewsBlock
function includeNewsBlock()
{
global $template, $lang, $db, $board_config, $auction_config_data;
global $orig_word, $replacement_word;
include './extension.inc';
include './includes/bbcode.' . $phpEx;
if ($auction_config_data['auction_block_display_news'] == 1) {
$template->assign_block_vars('news_block', array('L_AUCTION_NEWS' => $lang['auction_news']));
$sql = "SELECT t.*,\r\n u.username,\r\n u.user_id,\r\n p.*,\r\n x.*\r\n FROM " . TOPICS_TABLE . " t, " . USERS_TABLE . " u, " . POSTS_TABLE . " p, " . POSTS_TEXT_TABLE . " x\r\n WHERE t.forum_id = " . $auction_config_data['auction_news_forum_id'] . " AND\r\n t.topic_poster = u.user_id AND\r\n p.post_id = t.topic_first_post_id AND\r\n x.post_id = t.topic_first_post_id\r\n ORDER BY t.topic_first_post_id DESC\r\n LIMIT 0,3";
if (!($result = $db->sql_query($sql))) {
message_die(GENERAL_ERROR, 'Could not query news block information', '', __LINE__, __FILE__, $sql);
}
$total_topics = 0;
while ($row = $db->sql_fetchrow($result)) {
$topic_rowset[] = $row;
$total_topics++;
}
$db->sql_freeresult($result);
// Dump out the news
if ($total_topics) {
for ($i = 0; $i < $total_topics; $i++) {
$topic_id = $topic_rowset[$i]['topic_id'];
$post_subject = count($orig_word) ? preg_replace($orig_word, $replacement_word, $topic_rowset[$i]['topic_title']) : $topic_rowset[$i]['topic_title'];
$topic_poster_url = $topic_rowset[$i]['user_id'] != ANONYMOUS ? append_sid("profile.{$phpEx}?mode=viewprofile&" . POST_USERS_URL . "=" . $topic_rowset[$i]['user_id']) : '';
$topic_poster = $topic_rowset[$i]['user_id'] != ANONYMOUS ? $topic_rowset[$i]['username'] : ($topic_rowset[$i]['post_username'] != "" ? $topic_rowset[$i]['post_username'] : $lang['Guest']);
$topic_time = create_date($board_config['default_dateformat'], $topic_rowset[$i]['topic_time'], $board_config['board_timezone']);
$bbcode_uid = $topic_rowset[$i]['bbcode_uid'];
// Format the message
$message = $topic_rowset[$i]['post_text'];
if (!$board_config['allow_html'] && $topic_rowset[$i]['enable_html']) {
$message = preg_replace("#(<)([\\/]?.*?)(>)#is", "<\\2>", $message);
}
if ($board_config['allow_bbcode'] && $bbcode_uid != "") {
$message = $board_config['allow_bbcode'] ? bbencode_second_pass($message, $bbcode_uid) : preg_replace("/\\:[0-9a-z\\:]+\\]/si", "]", $message);
}
$message = make_clickable($message);
// Define censored word matches
if (empty($orig_word) && empty($replacement_word)) {
$orig_word = array();
$replacement_word = array();
obtain_word_list($orig_word, $replacement_word);
}
// Replace naughty words
if (count($orig_word)) {
$post_subject = preg_replace($orig_word, $replacement_word, $post_subject);
$message = preg_replace($orig_word, $replacement_word, $message);
}
// Parse smilies
if ($board_config['allow_smilies']) {
if ($topic_rowset[$i]['enable_smilies']) {
$message = smilies_pass($message);
}
}
// Replace newlines
$message = str_replace("\n", "\n<br />\n", $message);
$view_topic_url = append_sid("viewtopic.{$phpEx}?" . POST_TOPIC_URL . "={$topic_id}");
$template->assign_block_vars('news_block.content_block', array('TOPIC_TITLE' => $post_subject, 'POST_TEXT' => $message, 'TOPIC_POSTER' => $topic_poster, 'U_TOPIC_POSTER' => $topic_poster_url, 'TOPIC_TIME' => $no_date ? '' : $topic_time, 'L_VIEW_TOPIC' => $lang['auction_news_more'], 'U_VIEW_TOPIC' => $view_topic_url));
}
}
}
}
示例8: getLatestPosts
function getLatestPosts($numItems)
{
$URLPath = "/forums";
//- Not Not Include Closing \ Mark!
$posts = array();
$query = "select t.topic_id, t.topic_title, u.username, p.post_id, p.post_time, pt.bbcode_uid, pt.post_text FROM users u, topics t, posts p, posts_text pt where t.topic_id = p.topic_id and pt.post_id = p.post_id and u.user_id = p.poster_id and t.forum_id <> 11 and t.forum_id <> 7 and t.forum_id <> 14 order by p.post_time desc limit {$numItems}";
$result = mysql_query($query);
$count = 0;
$numRows = mysql_numrows($result);
while ($count < $numRows) {
$ni = new postClass();
$postId = mysql_result($result, $count, "post_id");
$url = "http://www.winbolo.net/forums/viewtopic.php?p=" . $postId . "#" . $postId;
$text = mysql_result($result, $count, "post_text");
#$text = ereg_replace ("\n", "<br>", mysql_result($result, $count, "post_text"));
$text = bbencode_second_pass($text, mysql_result($result, $count, "bbcode_uid"));
$ni->setup($url, mysql_result($result, $count, "topic_title"), mysql_result($result, $count, "username"), mysql_result($result, $count, "post_time"), $text);
$posts[$count] = $ni;
$count++;
}
return $posts;
}
示例9: array
$row++;
} else {
$col++;
}
}
if ($mode == 'inline' && $num_smilies > $inline_rows * $inline_columns) {
$template->assign_block_vars('switch_smilies_extra', array());
$template->assign_vars(array('L_MORE_SMILIES' => $lang['More_emoticons'], 'U_MORE_SMILIES_ANNOUNCEMENT_TEXT' => append_sid("../posting.{$phpEx}?mode=smilies_announcement_text")));
}
$template->assign_vars(array('L_EMOTICONS' => $lang['Emoticons'], 'L_CLOSE_WINDOW' => $lang['Close_window'], 'S_SMILIES_COLSPAN' => $s_colspan));
}
}
$template->set_filenames(array("body" => "admin/announcement_centre_config_body.tpl"));
//
// Escape any quotes in the site description for proper display in the text
// box on the Announcement Box page
//
$new['announcement_text'] = str_replace('"', '"', $new['announcement_text']);
$new['announcement_guest_text'] = str_replace('"', '"', $new['announcement_guest_text']);
$new['announcement_text_draft'] = str_replace('"', '"', $new['announcement_text_draft']);
$new['announcement_title'] = str_replace('"', '"', $new['announcement_title']);
$new['announcement_guest_title'] = str_replace('"', '"', $new['announcement_guest_title']);
$preview_announcement = $new['announcement_text_draft'];
$preview_announcement_uid = make_bbcode_uid();
$preview_announcement = bbencode_first_pass($preview_announcement, $preview_announcement_uid);
$preview_announcement = bbencode_second_pass($preview_announcement, $preview_announcement_uid);
$preview_announcement = smilies_pass($preview_announcement, './../');
$preview_announcement = str_replace("\n", "\n<br />\n", $preview_announcement);
$template->assign_vars(array("S_ANNOUNCEMENT_ACTION" => append_sid("admin_announcement_centre.{$phpEx}"), "L_BBCODE_B_HELP" => $lang['bbcode_b_help'], "L_BBCODE_I_HELP" => $lang['bbcode_i_help'], "L_BBCODE_U_HELP" => $lang['bbcode_u_help'], "L_BBCODE_Q_HELP" => $lang['bbcode_q_help'], "L_BBCODE_C_HELP" => $lang['bbcode_c_help'], "L_BBCODE_L_HELP" => $lang['bbcode_l_help'], "L_BBCODE_O_HELP" => $lang['bbcode_o_help'], "L_BBCODE_P_HELP" => $lang['bbcode_p_help'], "L_BBCODE_W_HELP" => $lang['bbcode_w_help'], "L_BBCODE_A_HELP" => $lang['bbcode_a_help'], "L_BBCODE_S_HELP" => $lang['bbcode_s_help'], "L_BBCODE_F_HELP" => $lang['bbcode_f_help'], "L_EMPTY_MESSAGE" => $lang['Empty_message'], "L_FONT_COLOR" => $lang['Font_color'], "L_COLOR_DEFAULT" => $lang['color_default'], "L_COLOR_DARK_RED" => $lang['color_dark_red'], "L_COLOR_RED" => $lang['color_red'], "L_COLOR_ORANGE" => $lang['color_orange'], "L_COLOR_BROWN" => $lang['color_brown'], "L_COLOR_YELLOW" => $lang['color_yellow'], "L_COLOR_GREEN" => $lang['color_green'], "L_COLOR_OLIVE" => $lang['color_olive'], "L_COLOR_CYAN" => $lang['color_cyan'], "L_COLOR_BLUE" => $lang['color_blue'], "L_COLOR_DARK_BLUE" => $lang['color_dark_blue'], "L_COLOR_INDIGO" => $lang['color_indigo'], "L_COLOR_VIOLET" => $lang['color_violet'], "L_COLOR_WHITE" => $lang['color_white'], "L_COLOR_BLACK" => $lang['color_black'], "L_FONT_SIZE" => $lang['Font_size'], "L_FONT_TINY" => $lang['font_tiny'], "L_FONT_SMALL" => $lang['font_small'], "L_FONT_NORMAL" => $lang['font_normal'], "L_FONT_LARGE" => $lang['font_large'], "L_FONT_HUGE" => $lang['font_huge'], "L_BBCODE_CLOSE_TAGS" => $lang['Close_Tags'], "L_STYLES_TIP" => $lang['Styles_tip'], "L_ANNOUNCEMENT_MAIN_TITLE" => $lang['Announcement_main_title'], "L_ANNOUNCEMENT_MAIN_TITLE_EXPLAIN" => $lang['Announcement_main_title_explain'], "L_ANNOUNCEMENT_BLOCK_TITLE" => $lang['Announcement_block_title'], "L_ANNOUNCEMENT_DRAFT_TEXT" => $lang['Announcement_draft_text'], "L_ANNOUNCEMENT_DRAFT_TEXT_EXPLAIN" => $lang['Announcement_draft_text_explain'], "L_SHOW_ANNOUNCEMENT_TEXT" => $lang['Show_announcement_text'], "L_ANNOUNCEMENT_TITLE" => $lang['Announcement_title'], "L_ANNOUNCEMENT_TITLE_EXPLAIN" => $lang['Announcement_title_explain'], "L_ANNOUNCEMENT_DEFAULT_TITLE_EXPLAIN" => $lang['Announcement_default_title_explain'] . $lang['Site_announcement_block_title'], "L_ANNOUNCEMENT_TEXT" => $lang['Announcement_text'], "L_ANNOUNCEMENT_TEXT_EXPLAIN" => $lang['Announcement_text_explain'], "L_FORUM_ID" => $lang['Forum_ID'], "L_TOPIC_ID" => $lang['Topic_ID'], "L_ANNOUNCEMENT_FORUM_TOPIC_LATEST" => $lang['Announcement_forum_topic_latest'], "L_ANNOUNCEMENT_FORUM_TOPIC_FIRST" => $lang['Announcement_forum_topic_first'], "L_ANNOUNCEMENT_GUEST_TITLE" => $lang['Announcement_guest_title'], "L_ANNOUNCEMENT_DEFAULT_GUEST_TITLE_EXPLAIN" => $lang['Announcement_default_title_explain'] . $lang['Guest_announcement_block_title'], "L_ANNOUNCEMENT_GUEST_TITLE_EXPLAIN" => $lang['Announcement_guest_title_explain'], "L_ANNOUNCEMENT_GUEST_TEXT" => $lang['Announcement_guest_text'], "L_SELECT_ALL" => $lang['Select_all'], "L_COPY_TO_ANNOUNCEMENT" => $lang['Copy_to_Announcement'], "L_COPY_TO_GUEST_ANNOUNCEMENT" => $lang['Copy_to_Guest_Announcement'], "L_SUBMIT" => $lang['Submit'], "L_PREVIEW" => $lang['Preview'], "L_RESET" => $lang['Reset'], "L_YES" => $lang['Yes'], "L_NO" => $lang['No'], "ANNOUNCEMENT_VERSION" => sprintf($announcement_centre_config['announcement_mod_version']), "L_SHOW_ANNOUNCEMENT_ALL" => $lang['Show_announcement_all'], "L_SHOW_ANNOUNCEMENT_REG" => $lang['Show_announcement_reg'], "L_SHOW_ANNOUNCEMENT_MOD" => $lang['Show_announcement_mod'], "L_SHOW_ANNOUNCEMENT_ADM" => $lang['Show_announcement_adm'], "L_SHOW_ANNOUNCEMENT_WHO" => $lang['Show_announcement_who'], "L_ANNOUNCEMENT_GUESTS_ONLY" => $lang['Announcement_guests_only'], "L_ANNOUNCEMENT_GUESTS_ONLY_EXPLAIN" => $lang['Announcement_guests_only_explain'], "ANNOUNCEMENT_FORUM_ID" => $new['announcement_forum_id'], "ANNOUNCEMENT_TOPIC_ID" => $new['announcement_topic_id'], "ANNOUNCEMENT_TITLE" => $new['announcement_title'], "ANNOUNCEMENT_TEXT" => $new['announcement_text'], "ANNOUNCEMENT_GUEST_TITLE" => $new['announcement_guest_title'], "ANNOUNCEMENT_GUEST_TEXT" => $new['announcement_guest_text'], "ANNOUNCEMENT_TEXT_DRAFT" => $new['announcement_text_draft'], "ANNOUNCEMENT_PREVIEW" => $preview_announcement, "S_ANNOUNCEMENT_STATUS_YES" => $announcement_status_yes, "SHOW_ANNOUNCEMENT_YES" => ANNOUNCEMENTS_LEFTY74_SHOW_YES, "S_ANNOUNCEMENT_STATUS_NO" => $announcement_status_no, "SHOW_ANNOUNCEMENT_NO" => ANNOUNCEMENTS_LEFTY74_SHOW_NO, "S_ANNOUNCEMENT_FORUM_TOPIC_LATEST" => $announcement_forum_topic_latest, "ANNOUNCEMENT_FORUM_TOPIC_LATEST" => ANNOUNCEMENTS_LEFTY74_FORUM_TOPIC_LATEST, "S_ANNOUNCEMENT_FORUM_TOPIC_FIRST" => $announcement_forum_topic_first, "ANNOUNCEMENT_FORUM_TOPIC_FIRST" => ANNOUNCEMENTS_LEFTY74_FORUM_TOPIC_FIRST, "ANNOUNCEMENT_GUEST_SEPARATE_STATUS_YES" => ANNOUNCEMENTS_LEFTY74_GUEST_YES, "S_ANNOUNCEMENT_GUEST_SEPARATE_STATUS_YES" => $announcement_guestannouncement_status_yes, "ANNOUNCEMENT_GUEST_SEPARATE_STATUS_NO" => ANNOUNCEMENTS_LEFTY74_GUEST_NO, "S_ANNOUNCEMENT_GUEST_SEPARATE_STATUS_NO" => $announcement_guestannouncement_status_no, "SHOW_ANNOUNCEMENT_ALL" => ANNOUNCEMENTS_LEFTY74_SHOW_ALL, "S_SHOW_ANNOUNCEMENT_ALL_CHECKED" => $show_announcement_all, "SHOW_ANNOUNCEMENT_REG" => ANNOUNCEMENTS_LEFTY74_SHOW_REG, "S_SHOW_ANNOUNCEMENT_REG_CHECKED" => $show_announcement_reg, "SHOW_ANNOUNCEMENT_MOD" => ANNOUNCEMENTS_LEFTY74_SHOW_MOD, "S_SHOW_ANNOUNCEMENT_MOD_CHECKED" => $show_announcement_mod, "SHOW_ANNOUNCEMENT_ADM" => ANNOUNCEMENTS_LEFTY74_SHOW_ADM, "S_SHOW_ANNOUNCEMENT_ADM_CHECKED" => $show_announcement_adm));
$template->pparse("body");
include './page_footer_admin.' . $phpEx;
示例10: pcp_output_sig
function pcp_output_sig($field_name, $view_userdata, $map_name = '')
{
global $board_config, $phpbb_root_path, $phpEx, $lang, $images, $userdata;
global $values_list, $tables_linked, $classes_fields, $user_maps, $user_fields;
$txt = '';
$img = '';
$res = '';
if (!empty($view_userdata[$field_name]) && $view_userdata['user_id'] != ANONYMOUS && $view_userdata['user_allow_sig'] && $userdata['user_viewsig']) {
$user_sig = $view_userdata[$field_name];
$user_sig_bbcode_uid = $view_userdata[$field_name . '_bbcode_uid'];
if (!$board_config['allow_html'] && $userdata['user_allowhtml']) {
$user_sig = preg_replace('#(<)([\\/]?.*?)(>)#is', "<\\2>", $user_sig);
}
if ($board_config['allow_bbcode'] && $user_sig_bbcode_uid != '') {
$user_sig = $board_config['allow_bbcode'] ? bbencode_second_pass($user_sig, $user_sig_bbcode_uid) : preg_replace('/\\:[0-9a-z\\:]+\\]/si', ']', $user_sig);
}
$user_sig = make_clickable($user_sig);
if ($board_config['allow_smilies'] && $view_userdata['user_allowsmile']) {
$user_sig = smilies_pass($user_sig);
}
if (count($orig_word) > 0) {
$user_sig = str_replace('\\"', '"', substr(preg_replace('#(\\>(((?>([^><]+|(?R)))*)\\<))#se', "preg_replace(\$orig_word, \$replacement_word, '\\0')", '>' . $user_sig . '<'), 1, -1));
}
$txt = str_replace("\n", "\n<br />\n", $user_sig);
// result
$res = pcp_output_format($field_name, $txt, $img, $map_name);
}
return $res;
}
示例11: build_toolbar
//-- add
build_toolbar('viewforum', $l_privmsgs_text, $s_privmsg_new, $forum_id);
//-- fin mod : toolbar ---------------------------------------------------------
$template->set_filenames(array('body' => 'viewforum_body.tpl'));
make_jumpbox('viewforum.' . $phpEx);
// Start Smilies Invasion Mod
if ($board_config['allow_smilies']) {
$forum_row['forum_name'] = smilies_pass($forum_row['forum_name']);
}
// V: Addon Smilies&Bbcode too long desc
$long_desc = $forum_row['forum_desc_long'];
if ($long_desc) {
$bbcode_uid = make_bbcode_uid();
$long_desc = smilies_pass($long_desc);
$long_desc = bbencode_first_pass($long_desc, $bbcode_uid);
$long_desc = bbencode_second_pass($long_desc, $bbcode_uid);
$long_desc = nl2br($long_desc);
}
$template->assign_vars(array('FORUM_ID' => $forum_id, 'FORUM_NAME' => $forum_row['forum_name'], 'FORUM_DESC_LONG' => $long_desc, 'MODERATORS' => $forum_moderators, 'POST_IMG' => $forum_row['forum_status'] == FORUM_LOCKED ? $images['post_locked'] : $images['post_new'], 'FOLDER_IMG' => $images['folder'], 'FOLDER_NEW_IMG' => $images['folder_new'], 'FOLDER_HOT_IMG' => $images['folder_hot'], 'FOLDER_HOT_NEW_IMG' => $images['folder_hot_new'], 'FOLDER_LOCKED_IMG' => $images['folder_locked'], 'FOLDER_LOCKED_NEW_IMG' => $images['folder_locked_new'], 'FOLDER_STICKY_IMG' => $images['folder_sticky'], 'FOLDER_STICKY_NEW_IMG' => $images['folder_sticky_new'], 'FOLDER_ANNOUNCE_IMG' => $images['folder_announce'], 'FOLDER_ANNOUNCE_NEW_IMG' => $images['folder_announce_new'], 'L_TOPICS' => $lang['Topics'], 'L_REPLIES' => $lang['Replies'], 'L_VIEWS' => $lang['Views'], 'L_POSTS' => $lang['Posts'], 'L_LASTPOST' => $lang['Last_Post'], 'L_MODERATOR' => $l_moderators, 'L_MARK_TOPICS_READ' => $lang['Mark_all_topics'], 'L_POST_NEW_TOPIC' => $forum_row['forum_status'] == FORUM_LOCKED ? $lang['Forum_locked'] : $lang['Post_new_topic'], 'L_NO_NEW_POSTS' => $lang['No_new_posts'], 'L_NEW_POSTS' => $lang['New_posts'], 'L_NO_NEW_POSTS_LOCKED' => $lang['No_new_posts_locked'], 'L_NEW_POSTS_LOCKED' => $lang['New_posts_locked'], 'L_NO_NEW_POSTS_HOT' => $lang['No_new_posts_hot'], 'L_NEW_POSTS_HOT' => $lang['New_posts_hot'], 'L_ANNOUNCEMENT' => $lang['Post_Announcement'], 'L_GLOBAL_ANNOUNCEMENT' => $lang['Post_Global_Announcement'], 'L_STICKY' => $lang['Post_Sticky'], 'L_POSTED' => $lang['Posted'], 'L_JOINED' => $lang['Joined'], 'L_AUTHOR' => $lang['Author'], 'S_AUTH_LIST' => $s_auth_can, 'U_VIEW_FORUM' => append_sid("viewforum.{$phpEx}?" . POST_FORUM_URL . "={$forum_id}"), 'U_MARK_READ' => append_sid("viewforum.{$phpEx}?" . POST_FORUM_URL . "={$forum_id}&mark=topics")));
//
// End header
//
//
// Okay, lets dump out the page ...
//
//-- mod : topic display order ---------------------------------------------------------------------
//-- add
$template->assign_vars(array('S_DISPLAY_ORDER' => $s_display_order));
//-- fin mod : topic display order -----------------------------------------------------------------
if ($total_topics) {
for ($i = 0; $i < $total_topics; $i++) {
示例12: getText
function getText()
{
$text = ereg_replace("\n", "<br>", $this->text);
$text = bbencode_second_pass($text, $this->bbcodeUid);
return $text;
}
示例13: message_die
if ($view_id == '') {
message_die(GENERAL_ERROR, $lang['No_Message_ID'], '', __LINE__, __FILE__);
}
$sql = 'SELECT pm.*, pmt.*
FROM ' . PRIVMSGS_TABLE . "{$archive_text} pm, " . PRIVMSGS_TEXT_TABLE . " pmt\r\n\t\t WHERE pm.privmsgs_id = pmt.privmsgs_text_id\r\n\t\t AND pmt.privmsgs_text_id = {$view_id}";
if (!($result = $db->sql_query($sql))) {
message_die(GENERAL_ERROR, $lang['Error_Posts_Table'], '', __LINE__, __FILE__);
}
$privmsg = $db->sql_fetchrow($result);
/************************/
/* Just stole all the phpBB code for message processing :) And edited a ton of it out since we are all admins here */
/**********************/
$private_message = $privmsg['privmsgs_text'];
$bbcode_uid = $privmsg['privmsgs_bbcode_uid'];
if ($bbcode_uid != '') {
$private_message = bbencode_second_pass($private_message, $bbcode_uid);
}
$private_message = make_clickable($private_message);
if ($privmsg['privmsgs_enable_smilies']) {
$old_config = $board_config['smilies_path'];
$board_config['smilies_path'] = '../' . $board_config['smilies_path'];
$private_message = smilies_pass($private_message);
$board_config['smilies_path'] = $old_config;
}
$private_message = str_replace("\n", '<br />', $private_message);
$template->set_filenames(array('viewmsg_body' => 'admin/admin_priv_msgs_view_body.tpl'));
$template->assign_vars(array('L_SUBJECT' => $lang['Subject'], 'L_TO' => $lang['To'], 'L_FROM' => $lang['From'], 'L_SENT_DATE' => $lang['Sent_Date'], 'L_PRIVATE_MESSAGES' => $aprvmUtil->modName));
$template->assign_vars(array('SUBJECT' => $privmsg['privmsgs_subject'], 'FROM' => $aprvmUtil->id_2_name($privmsg['privmsgs_from_userid']), 'FROM_IP' => $board_config['aprvmIP'] ? ' : (' . decode_ip($privmsg['privmsgs_ip']) . ')' : '', 'TO' => $aprvmUtil->id_2_name($privmsg['privmsgs_to_userid']), 'DATE' => create_date($lang['DATE_FORMAT'], $privmsg['privmsgs_date'], $board_config['board_timezone']), 'MESSAGE' => $private_message));
if ($board_config['aprvmView']) {
$template->assign_block_vars('popup_switch', array());
$template->pparse('viewmsg_body');
示例14: format_rss_txt
/**
* format_rss_txt() will put together BBcodes and smilies before the output
* @access private
*/
function format_rss_txt($subject, $message, $msg_sumarize = 0, $message_url, $bbcode_uid, $allow_smiles = TRUE, $allow_html = FALSE, $allow_sig = FALSE)
{
global $board_config, $userdata, $lang;
// Since ' is not HTML, but is XML convert.
$message = ' ' . str_replace("’", "'", $message);
if (!empty($this->rss_config['rss_bbcode_filters'])) {
$patterns = $this->rss_config['rss_bbcode_filters']['pattern'];
$replaces = $this->rss_config['rss_bbcode_filters']['replace'];
if (!empty($patterns)) {
$message = preg_replace($patterns, $replaces, $message);
// Take care of nested bbcode tags when filtering all
if (strpos($this->rss_config['rss_strip_bbcode'], 'all') !== FALSE) {
$nested_cnt = preg_match_all("`(\\[[a-z]([^\\[\\]]*)\\])`i", $message, $matches);
for ($i = 1; $i <= $nested_cnt; $i++) {
$message = preg_replace($patterns, $replaces, $message);
}
}
}
}
if ($msg_sumarize > 0) {
$message = $this->summarize($message, $msg_sumarize, $this->rss_config['msg_sumarize_method']);
}
// Close all possibly broken quote tags after summarize, since they could break the layout.
if (strpos($message, "[quote:{$bbcode_uid}") !== FALSE) {
$open_count = preg_match_all("#\\[quote\\:{$bbcode_uid}#si", $message, $open_matches);
$close_count = preg_match_all("#\\[/quote\\:{$bbcode_uid}#si", $message, $close_matches);
$tags_to_close = $open_count - $close_count;
if ($tags_to_close > 0) {
for ($i = 1; $i <= $tags_to_close; $i++) {
$message .= ($i == $tags_to_close ? '<br/><br/><b>...</b>' : '') . " [/quote:{$bbcode_uid}]";
}
}
}
// If the board has HTML off but the post has HTML
// on then we process it, else leave it alone
// Left commented for now as it would only be usefull for atom feed format
// And everything goes through htmlspecialchars anyway
//if ( $board_config['allow_html'] || !$userdata['user_allowhtml']) {
// if ( !$allow_html ) {
// $message = preg_replace('#(<)([\/]?.*?)(>)#is', "<\\2>", $message);
// }
//}
if ($bbcode_uid != '') {
if ($this->rss_config['rss_allow_bbcode']) {
if (!$this->rss_config['rss_allow_links']) {
$message = preg_replace("`\\[/?url(=.*?)?\\]`si", "", $message);
}
$message = bbencode_second_pass($message, $bbcode_uid);
if ($msg_sumarize > 0 || !empty($this->rss_config['rss_bbcode_filters'])) {
// Clean all possible bbcode_uids left
$message = preg_replace('`\\:[0-9a-z\\:=\\"]+\\]`si', ']', $message);
}
} else {
$message = preg_replace("`\\:[0-9a-z\\:=\"]+\\]`i", "]", $message);
}
}
if ($this->rss_config['rss_allow_links']) {
$message = make_clickable($message);
}
// Parse smilies
if ($this->rss_config['rss_allow_smilies']) {
if ($allow_smiles) {
$message = smilies_pass($message);
$message = preg_replace('`' . $this->path_config['smilies_path'] . '`', $this->path_config['smilies_url'], $message);
}
}
// Replace naughty words
if (count($orig_word)) {
$message = str_replace('\\"', '"', substr(@preg_replace('#(\\>(((?>([^><]+|(?R)))*)\\<))#se', "@preg_replace(\$orig_word, \$replacement_word, '\\0')", '>' . $message . '<'), 1, -1));
}
$message .= '<br/><br/><a href="' . $message_url . '" title="' . $subject . '"><b>' . $lang['rss_more'] . '</b></a>';
$message = str_replace("\n", "\n<br/>\n", $message);
$message = str_replace("span", "div class=\"detail\"", $message);
$message = preg_replace('|[\\x00-\\x08\\x0B\\x0C\\x0E-\\x1f]|', '', $message);
return $message;
}
示例15: topic_review
function topic_review($topic_id, $is_inline_review)
{
global $db, $board_config, $template, $lang, $images, $theme, $phpEx, $phpbb_root_path;
global $userdata, $user_ip;
global $orig_word, $replacement_word;
global $starttime;
if (!$is_inline_review) {
if (!isset($topic_id)) {
message_die(GENERAL_MESSAGE, 'Topic_not_exist');
}
//
// Get topic info ...
//
$sql = "SELECT t.topic_title, f.forum_id, f.auth_view, f.auth_read, f.auth_post, f.auth_reply, f.auth_edit, f.auth_delete, f.auth_sticky, f.auth_announce, f.auth_pollcreate, f.auth_vote, f.auth_attachments \n\t\t\tFROM " . TOPICS_TABLE . " t, " . FORUMS_TABLE . " f \n\t\t\tWHERE t.topic_id = {$topic_id}\n\t\t\t\tAND f.forum_id = t.forum_id";
if (!($result = $db->sql_query($sql))) {
message_die(GENERAL_ERROR, 'Could not obtain topic information', '', __LINE__, __FILE__, $sql);
}
if (!($forum_row = $db->sql_fetchrow($result))) {
message_die(GENERAL_MESSAGE, 'Topic_post_not_exist');
}
$db->sql_freeresult($result);
$forum_id = $forum_row['forum_id'];
$topic_title = $forum_row['topic_title'];
//
// Start session management
//
$userdata = session_pagestart($user_ip, $forum_id);
init_userprefs($userdata);
//
// End session management
//
$is_auth = array();
$is_auth = auth(AUTH_ALL, $forum_id, $userdata, $forum_row);
if (!$is_auth['auth_read']) {
message_die(GENERAL_MESSAGE, sprintf($lang['Sorry_auth_read'], $is_auth['auth_read_type']));
}
}
//
// Define censored word matches
//
if (empty($orig_word) && empty($replacement_word)) {
$orig_word = array();
$replacement_word = array();
obtain_word_list($orig_word, $replacement_word);
}
//
// Dump out the page header and load viewtopic body template
//
if (!$is_inline_review) {
$gen_simple_header = TRUE;
$page_title = $lang['Topic_review'] . ' - ' . $topic_title;
include $phpbb_root_path . 'includes/page_header.' . $phpEx;
$template->set_filenames(array('reviewbody' => 'posting_topic_review.tpl'));
}
//
// Go ahead and pull all data for this topic
//
$sql = "SELECT u.username, u.user_id, p.*, pt.post_text, pt.post_subject, pt.bbcode_uid\n\t\tFROM " . POSTS_TABLE . " p, " . USERS_TABLE . " u, " . POSTS_TEXT_TABLE . " pt\n\t\tWHERE p.topic_id = {$topic_id}\n\t\t\tAND p.poster_id = u.user_id\n\t\t\tAND p.post_id = pt.post_id\n\t\tORDER BY p.post_time DESC\n\t\tLIMIT " . $board_config['posts_per_page'];
if (!($result = $db->sql_query($sql))) {
message_die(GENERAL_ERROR, 'Could not obtain post/user information', '', __LINE__, __FILE__, $sql);
}
//
// Okay, let's do the loop, yeah come on baby let's do the loop
// and it goes like this ...
//
if ($row = $db->sql_fetchrow($result)) {
$mini_post_img = $images['icon_minipost'];
$mini_post_alt = $lang['Post'];
$i = 0;
do {
$poster_id = $row['user_id'];
$poster = $row['username'];
$post_date = create_date($board_config['default_dateformat'], $row['post_time'], $board_config['board_timezone']);
//
// Handle anon users posting with usernames
//
if ($poster_id == ANONYMOUS && $row['post_username'] != '') {
$poster = $row['post_username'];
$poster_rank = $lang['Guest'];
} elseif ($poster_id == ANONYMOUS) {
$poster = $lang['Guest'];
$poster_rank = '';
}
$post_subject = $row['post_subject'] != '' ? $row['post_subject'] : '';
$message = $row['post_text'];
$bbcode_uid = $row['bbcode_uid'];
//
// If the board has HTML off but the post has HTML
// on then we process it, else leave it alone
//
if (!$board_config['allow_html'] && $row['enable_html']) {
$message = preg_replace('#(<)([\\/]?.*?)(>)#is', '<\\2>', $message);
}
if ($bbcode_uid != "") {
$message = $board_config['allow_bbcode'] ? bbencode_second_pass($message, $bbcode_uid) : preg_replace('/\\:[0-9a-z\\:]+\\]/si', ']', $message);
}
$message = make_clickable($message);
if (count($orig_word)) {
$post_subject = preg_replace($orig_word, $replacement_word, $post_subject);
$message = preg_replace($orig_word, $replacement_word, $message);
//.........这里部分代码省略.........