function message_display($tid, $message, $msg_count, $first_msg, $folder_fid, $in_list = true, $closed = false, $limit_text = true, $is_poll = false, $show_sigs = true, $is_preview = false, $highlight_array = array()) { $perm_is_moderator = session::check_perm(USER_PERM_FOLDER_MODERATE, $folder_fid); $post_edit_time = forum_get_setting('post_edit_time', null, 0); $post_edit_grace_period = forum_get_setting('post_edit_grace_period', null, 0); $webtag = get_webtag(); if (($uid = session::get_value('UID')) === false) { return; } if ($posts_per_page = session::get_value('POSTS_PER_PAGE')) { if ($posts_per_page < 10) { $posts_per_page = 10; } if ($posts_per_page > 30) { $posts_per_page = 30; } } else { $posts_per_page = 20; } if (($quick_reply = session::get_value('REPLY_QUICK')) === false) { $quick_reply = 'N'; } if ((!isset($message['CONTENT']) || $message['CONTENT'] == "") && !$is_preview) { message_display_deleted($tid, isset($message['PID']) ? $message['PID'] : 0, $message, $in_list, $is_preview, $first_msg, $msg_count, $posts_per_page); return; } $from_user_permissions = perm_get_user_permissions($message['FROM_UID']); if ($uid != $message['FROM_UID']) { if ($from_user_permissions & USER_PERM_WORMED && !$perm_is_moderator) { message_display_deleted($tid, $message['PID'], $message, $in_list, $is_preview, $first_msg, $msg_count, $posts_per_page); return; } } if (!isset($message['FROM_RELATIONSHIP'])) { $message['FROM_RELATIONSHIP'] = 0; } if (!isset($message['TO_RELATIONSHIP'])) { $message['TO_RELATIONSHIP'] = 0; } if ($message['TO_RELATIONSHIP'] & USER_IGNORED_COMPLETELY || $message['FROM_RELATIONSHIP'] & USER_IGNORED_COMPLETELY) { message_display_deleted($tid, $message['PID'], $message, $in_list, $is_preview, $first_msg, $msg_count, $posts_per_page); return; } // Add emoticons/WikiLinks and ignore signature ---------------------------- if (session::get_value('IMAGES_TO_LINKS') == 'Y') { $message['CONTENT'] = preg_replace('/<a([^>]*)href="([^"]*)"([^\\>]*)><img[^>]*src="([^"]*)"[^>]*><\\/a>/iu', '[href: <a\\1href="\\2"\\3>\\2</a>][img: <a\\1href="\\4"\\3>\\4</a>]', $message['CONTENT']); $message['CONTENT'] = preg_replace('/<img[^>]*src="([^"]*)"[^>]*>/iu', '[img: <a href="\\1">\\1</a>]', $message['CONTENT']); $message['CONTENT'] = preg_replace('/<embed[^>]*src="([^"]*)"[^>]*>/iu', '[object: <a href="\\1">\\1</a>]', $message['CONTENT']); } if (!$is_poll || $is_poll && isset($message['PID']) && $message['PID'] > 1) { $message['CONTENT'] = message_apply_formatting($message['CONTENT'], $message['FROM_RELATIONSHIP'] & USER_IGNORED_SIG || !$show_sigs); } // Check length of post to see if we should truncate it for display -------- if (mb_strlen(strip_tags($message['CONTENT'])) > intval(forum_get_setting('maximum_post_length', null, 6226)) && $limit_text) { $cut_msg = mb_substr($message['CONTENT'], 0, intval(forum_get_setting('maximum_post_length', null, 6226))); $cut_msg = preg_replace("/(<[^>]+)?\$/Du", "", $cut_msg); $message['CONTENT'] = fix_html($cut_msg); $message['CONTENT'] .= "…[" . gettext("Message Truncated") . "]\n<p align=\"center\"><a href=\"display.php?webtag={$webtag}&msg={$tid}.{$message['PID']}\" target=\"_self\">" . gettext("View full message") . "</a>"; } // Check for words that should be filtered --------------------------------- if (!$is_poll || $is_poll && isset($message['PID']) && $message['PID'] > 1) { $message['CONTENT'] = word_filter_add_ob_tags($message['CONTENT'], false); } if ($in_list && isset($message['PID'])) { echo "<a name=\"a{$tid}_{$message['PID']}\"></a>\n"; } // Check for search words to highlight ------------------------------------- if (is_array($highlight_array) && sizeof($highlight_array) > 0) { $highlight_pattern = array(); $highlight_replace = array(); foreach ($highlight_array as $key => $word) { $highlight_word = preg_quote($word, "/"); $highlight_pattern[$key] = "/({$highlight_word})/iu"; $highlight_replace[$key] = "<span class=\"highlight\">\\1</span>"; } $message_parts = preg_split('/([<|>])/u', $message['CONTENT'], -1, PREG_SPLIT_DELIM_CAPTURE); for ($i = 0; $i < sizeof($message_parts); $i++) { if (!($i % 4)) { $message_parts[$i] = preg_replace($highlight_pattern, $highlight_replace, $message_parts[$i], 1); } } $message['CONTENT'] = implode("", $message_parts); } // Little up/down arrows to the left of each message ----------------------- if (forum_get_setting('require_post_approval', 'Y') && $message['FROM_UID'] != $uid) { if (isset($message['APPROVED']) && $message['APPROVED'] == 0 && !$perm_is_moderator) { message_display_approval_req($tid, $message['PID'], $in_list, $is_preview, $first_msg, $msg_count, $posts_per_page); return; } } // OUTPUT MESSAGE ---------------------------------------------------------- if (!$is_preview && $message['MOVED_TID'] > 0 && $message['MOVED_PID'] > 0) { $post_link = "<a href=\"messages.php?webtag={$webtag}&msg=%s.%s\" target=\"_self\">%s</a>"; $post_link = sprintf($post_link, $message['MOVED_TID'], $message['MOVED_PID'], gettext("here")); echo "<div align=\"center\">\n"; echo "<table class=\"thread_track_notice\" width=\"96%\">\n"; echo " <tr>\n"; echo " <td align=\"left\">", sprintf(gettext("<b>Thread Split:</b> This post has been moved %s"), $post_link), "</td>\n"; echo " </tr>\n"; echo "</table>\n"; echo "</div>\n"; echo $in_list ? "<br />\n" : ''; return; } echo "<div align=\"center\">\n"; echo "<table width=\"100%\" cellspacing=\"0\" cellpadding=\"0\">\n"; echo " <tr>\n"; if ($in_list && !$is_preview) { message_display_navigation($tid, $message['PID'], $first_msg, $msg_count, $posts_per_page); } echo " <td align=\"center\">\n"; echo " <table width=\"100%\" class=\"box\" cellpadding=\"0\">\n"; echo " <tr>\n"; echo " <td align=\"left\">\n"; echo " <table class=\"posthead\" width=\"100%\">\n"; echo " <tr>\n"; echo " <td width=\"1%\" align=\"right\" style=\"white-space: nowrap\"><span class=\"posttofromlabel\"> ", gettext("From"), ": </span></td>\n"; echo " <td style=\"white-space: nowrap\" width=\"98%\" align=\"left\"><span class=\"posttofrom\">"; if ($message['FROM_UID'] > -1) { echo "<a href=\"user_profile.php?webtag={$webtag}&uid={$message['FROM_UID']}\" target=\"_blank\" class=\"popup 650x500\">"; echo word_filter_add_ob_tags(format_user_name($message['FLOGON'], $message['FNICK']), true), "</a></span>"; } else { echo word_filter_add_ob_tags(format_user_name($message['FLOGON'], $message['FNICK']), true), "</span>"; } if (session::get_value('SHOW_AVATARS') == 'Y') { if (isset($message['AVATAR_URL']) && strlen($message['AVATAR_URL']) > 0) { echo " <img src=\"{$message['AVATAR_URL']}\" alt=\"\" title=\"", word_filter_add_ob_tags(format_user_name($message['FLOGON'], $message['FNICK']), true), "\" border=\"0\" width=\"16\" height=\"16\" />"; } else { if (isset($message['AVATAR_AID']) && is_md5($message['AVATAR_AID'])) { $attachment = attachments_get_by_hash($message['AVATAR_AID']); if ($profile_picture_href = attachments_make_link($attachment, false, false, false, false)) { echo " <img src=\"{$profile_picture_href}&avatar_picture\" alt=\"\" title=\"", word_filter_add_ob_tags(format_user_name($message['FLOGON'], $message['FNICK']), true), "\" border=\"0\" width=\"16\" height=\"16\" />\n"; } } } } $temp_ignore = false; // If the user posting a poll is ignored, remove ignored status for this message only so the poll can be seen if ($is_poll && isset($message['PID']) && $message['PID'] == 1 && $message['FROM_RELATIONSHIP'] & USER_IGNORED) { $message['FROM_RELATIONSHIP'] -= USER_IGNORED; $temp_ignore = true; } if ($message['FROM_RELATIONSHIP'] & USER_FRIEND) { echo " <img src=\"", html_style_image('friend.png'), "\" alt=\"", gettext("Friend"), "\" title=\"", gettext("Friend"), "\" />"; } else { if ($message['FROM_RELATIONSHIP'] & USER_IGNORED || $temp_ignore) { echo " <img src=\"", html_style_image('enemy.png'), "\" alt=\"", gettext("Ignored user"), "\" title=\"", gettext("Ignored user"), "\" />"; } } echo "</td>\n"; echo " <td width=\"1%\" align=\"right\" style=\"white-space: nowrap\"><span class=\"postinfo\">"; if ($message['FROM_RELATIONSHIP'] & USER_IGNORED && $limit_text && $uid != 0) { echo "<b>", gettext("Ignored message"), "</b>"; } else { if ($in_list) { if ($from_user_permissions & USER_PERM_WORMED) { echo "<b>", gettext("Wormed user"), "</b> "; } if ($message['FROM_RELATIONSHIP'] & USER_IGNORED_SIG) { echo "<b>", gettext("Ignored signature"), "</b> "; } if (forum_get_setting('require_post_approval', 'Y') && isset($message['APPROVED']) && $message['APPROVED'] == 0) { echo "<b>", gettext("Approval Required"), "</b> "; } echo format_time($message['CREATED']); } } echo " </span></td>\n"; echo " </tr>\n"; echo " <tr>\n"; echo " <td width=\"1%\" align=\"right\" style=\"white-space: nowrap\"><span class=\"posttofromlabel\"> ", gettext("To"), ": </span></td>\n"; echo " <td style=\"white-space: nowrap\" width=\"98%\" align=\"left\"><span class=\"posttofrom\">"; if ($message['TLOGON'] != gettext("ALL") && $message['TO_UID'] != 0) { echo "<a href=\"user_profile.php?webtag={$webtag}&uid={$message['TO_UID']}\" target=\"_blank\" class=\"popup 650x500\">"; echo word_filter_add_ob_tags(format_user_name($message['TLOGON'], $message['TNICK']), true), "</a></span>"; if ($message['TO_RELATIONSHIP'] & USER_FRIEND) { echo " <img src=\"", html_style_image('friend.png'), "\" alt=\"", gettext("Friend"), "\" title=\"", gettext("Friend"), "\" />"; } else { if ($message['TO_RELATIONSHIP'] & USER_IGNORED) { echo " <img src=\"", html_style_image('enemy.png'), "\" alt=\"", gettext("Ignored user"), "\" title=\"", gettext("Ignored user"), "\" />"; } } if (isset($message['VIEWED']) && $message['VIEWED'] > 0) { echo " <span class=\"smalltext\"><img src=\"", html_style_image('post_read.png'), "\" alt=\"\" title=\"", sprintf(gettext("Read: %s"), format_time($message['VIEWED'])), "\" /></span>"; } else { if ($is_preview == false) { echo " <span class=\"smalltext\"><img src=\"", html_style_image('post_unread.png'), "\" alt=\"\" title=\"", gettext("Unread Message"), "\" /></span>"; } } } else { echo "", gettext("ALL"), "</span>"; } echo "</td>\n"; echo " <td align=\"right\" style=\"white-space: nowrap\"><span class=\"postinfo\">"; if ($message['FROM_RELATIONSHIP'] & USER_IGNORED && $limit_text && $in_list && $uid != 0) { echo "<a href=\"user_rel.php?webtag={$webtag}&uid={$message['FROM_UID']}&msg={$tid}.{$message['PID']}\" target=\"_self\">", gettext("Stop ignoring this user"), "</a> "; echo "<a href=\"display.php?webtag={$webtag}&msg={$tid}.{$message['PID']}\" target=\"_self\">", gettext("View Message"), "</a>"; } else { if ($in_list && $msg_count > 0) { if ($is_poll) { echo "<a href=\"poll_results.php?webtag={$webtag}&tid={$tid}\" target=\"_blank\" class=\"popup 800x600\"><img src=\"", html_style_image('poll.png'), "\" border=\"0\" alt=\"", gettext("This is a poll. Click to view results."), "\" title=\"", gettext("This is a poll. Click to view results."), "\" /></a> ", gettext("Poll"), " "; } echo sprintf(gettext("%s of %s"), $message['PID'], $msg_count); } } echo " </span></td>\n"; echo " </tr>\n"; echo " </table>\n"; echo " </td>\n"; echo " </tr>\n"; if (!($message['FROM_RELATIONSHIP'] & USER_IGNORED) || !$limit_text) { echo " <tr>\n"; echo " <td align=\"left\">\n"; echo " <table width=\"100%\">\n"; echo " <tr>\n"; echo " <td colspan=\"3\" align=\"right\"><span class=\"postnumber\">"; if ($in_list && $msg_count > 0) { $title = $message['PID'] == 1 ? "" . gettext("Permanent link to this thread") . " ({$tid}.1)" : "" . gettext("Link to this post"); if ($is_preview) { echo "<a href=\"messages.php?webtag={$webtag}&msg={$tid}.{$message['PID']}\" target=\"_blank\" title=\"{$title}\">{$tid}.{$message['PID']}</a>"; } else { echo "<a href=\"index.php?webtag={$webtag}&msg={$tid}.{$message['PID']}\" target=\"", html_get_top_frame_name(), "\" title=\"{$title}\">{$tid}.{$message['PID']}</a>"; } if ($message['REPLY_TO_PID'] > 0) { $title = "" . gettext("Link to post") . " #{$message['REPLY_TO_PID']}"; echo " ", gettext("In reply to"), " "; if (intval($message['REPLY_TO_PID']) >= intval($first_msg)) { echo "<a href=\"#a{$tid}_{$message['REPLY_TO_PID']}\" target=\"_self\" title=\"{$title}\">"; echo "{$tid}.{$message['REPLY_TO_PID']}</a>"; } else { if ($is_preview) { echo "<a href=\"messages.php?webtag={$webtag}&msg={$tid}.{$message['REPLY_TO_PID']}\" target=\"_blank\" title=\"{$title}\">"; echo "{$tid}.{$message['REPLY_TO_PID']}</a>"; } else { echo "<a href=\"messages.php?webtag={$webtag}&msg={$tid}.{$message['REPLY_TO_PID']}\" target=\"_self\" title=\"{$title}\">"; echo "{$tid}.{$message['REPLY_TO_PID']}</a>"; } } } } echo " </span></td>\n"; echo " </tr>\n"; echo " <tr>\n"; echo " <td class=\"postbody postcontent\" align=\"left\">{$message['CONTENT']}</td>\n"; echo " </tr>\n"; if (isset($message['EDITED']) && $message['EDITED'] > 0) { if ($post_edit_grace_period == 0 || $message['EDITED'] - $message['CREATED'] > $post_edit_grace_period * MINUTE_IN_SECONDS) { if ($edit_user = user_get_logon($message['EDITED_BY'])) { echo " <tr>\n"; echo " <td class=\"postbody\" align=\"left\"><p class=\"edit_text\">", sprintf(gettext("EDITED: %s by %s"), format_time($message['EDITED']), $edit_user), "</p></td>\n"; echo " </tr>\n"; } } } if (forum_get_setting('require_post_approval', 'Y') && isset($message['APPROVED']) && $message['APPROVED'] > 0 && $perm_is_moderator) { if (isset($message['APPROVED_BY']) && $message['APPROVED_BY'] > 0 && $message['APPROVED_BY'] != $message['FROM_UID']) { if ($approved_user = user_get_logon($message['APPROVED_BY'])) { echo " <tr>\n"; echo " <td class=\"postbody\" align=\"left\"><p class=\"approved_text\">", sprintf(gettext("APPROVED: %s by %s"), format_time($message['APPROVED']), $approved_user), "</p></td>\n"; echo " </tr>\n"; } } } if ($tid != 0 && isset($message['PID']) || isset($message['AID'])) { $aid = isset($message['AID']) ? $message['AID'] : attachments_get_id($tid, $message['PID']); $attachments_array = array(); $image_attachments_array = array(); if (attachments_get($message['FROM_UID'], $aid, $attachments_array, $image_attachments_array)) { echo " <tr>\n"; echo " <td class=\"postbody\" align=\"left\">\n"; if (is_array($attachments_array) && sizeof($attachments_array) > 0) { echo " <p><b>", gettext("Attachments"), ":</b><br />\n"; foreach ($attachments_array as $attachment) { echo " ", attachments_make_link($attachment), "<br />\n"; } echo " </p>\n"; } if (is_array($image_attachments_array) && sizeof($image_attachments_array) > 0) { echo " <p><b>", gettext("Image Attachments"), ":</b><br />\n"; foreach ($image_attachments_array as $key => $attachment) { echo " ", attachments_make_link($attachment), "\n"; } echo " </p>\n"; } echo " </td>\n"; echo " </tr>\n"; } } echo " </table>\n"; if (!$is_preview) { echo " <table width=\"100%\" class=\"postresponse\" cellspacing=\"1\" cellpadding=\"0\">\n"; echo " <tr>\n"; if (isset($message['ANON_LOGON']) && $message['ANON_LOGON'] > USER_ANON_DISABLED || !isset($message['USER_ACTIVE']) || is_null($message['USER_ACTIVE'])) { echo " <td width=\"25%\" align=\"left\">"; echo " <img src=\"", html_style_image('status_offline.png'), "\" alt=\"\" title=\"", gettext("Inactive / Offline"), "\" />"; echo " </td>\n"; } else { echo " <td width=\"25%\" align=\"left\">"; echo " <img src=\"", html_style_image('status_online.png'), "\" alt=\"\" title=\"", gettext("Online"), "\" />"; echo " </td>\n"; } echo " <td width=\"50%\" style=\"white-space: nowrap\">"; if ($msg_count > 0) { if (!$closed && session::check_perm(USER_PERM_POST_CREATE, $folder_fid) || $perm_is_moderator) { if ($quick_reply == 'Y') { echo "<img src=\"", html_style_image('quickreply.png'), "\" border=\"0\" alt=\"", gettext("Quick Reply"), "\" title=\"", gettext("Quick Reply"), "\" />\n"; echo "<a href=\"Javascript:void(0)\" rel=\"{$tid}.{$message['PID']}\" target=\"_self\" class=\"quick_reply_link\">", gettext("Quick Reply"), "</a>\n"; } else { echo "<img src=\"", html_style_image('post.png'), "\" border=\"0\" alt=\"", gettext("Reply"), "\" title=\"", gettext("Reply"), "\" />"; echo " <a href=\"post.php?webtag={$webtag}&replyto={$tid}.{$message['PID']}\" target=\"_parent\" id=\"reply_{$message['PID']}\">", gettext("Reply"), "</a>"; } echo " <img src=\"", html_style_image('quote_disabled.png'), "\" border=\"0\" alt=\"", gettext("Quote"), "\" title=\"", gettext("Quote"), "\" id=\"quote_img_{$message['PID']}\" />"; echo " <a href=\"post.php?webtag={$webtag}&replyto={$tid}.{$message['PID']}&quote_list={$message['PID']}\" target=\"_parent\" title=\"", gettext("Quote"), "\" id=\"quote_{$message['PID']}\" rel=\"{$message['PID']}\">", gettext("Quote"), "</a>"; if (!session::check_perm(USER_PERM_PILLORIED, 0) && ($uid != $message['FROM_UID'] && $from_user_permissions & USER_PERM_PILLORIED || $uid == $message['FROM_UID']) && session::check_perm(USER_PERM_POST_EDIT, $folder_fid) && ($post_edit_time == 0 || time() - $message['CREATED'] < $post_edit_time * HOUR_IN_SECONDS) && forum_get_setting('allow_post_editing', 'Y') || $perm_is_moderator) { if ($is_poll && $message['PID'] == 1) { if (!poll_is_closed($tid) || $perm_is_moderator) { echo " <img src=\"", html_style_image('edit.png'), "\" border=\"0\" alt=\"", gettext("Edit Poll"), "\" title=\"", gettext("Edit Poll"), "\" />"; echo " <a href=\"edit_poll.php?webtag={$webtag}&msg={$tid}.{$message['PID']}\" target=\"_parent\">", gettext("Edit Poll"), "</a>\n"; } } else { echo " <img src=\"", html_style_image('edit.png'), "\" border=\"0\" alt=\"", gettext("Edit"), "\" title=\"", gettext("Edit"), "\" />"; echo " <a href=\"edit.php?webtag={$webtag}&msg={$tid}.{$message['PID']}\" target=\"_parent\">", gettext("Edit"), "</a>"; } } } } else { echo " "; } echo "</td>\n"; echo " <td width=\"25%\" align=\"right\" style=\"white-space: nowrap\">\n"; echo " <span class=\"post_options\" id=\"post_options_{$tid}.{$message['PID']}\"></span>\n"; echo " </td>\n"; echo " </tr>"; echo " </table>\n"; } else { echo " <table width=\"100%\" class=\"postresponse\" cellspacing=\"1\" cellpadding=\"0\">\n"; echo " <tr>\n"; echo " <td> </td>\n"; echo " </tr>\n"; echo " </table>\n"; } } echo " </td>\n"; echo " </tr>\n"; echo " </table>\n"; echo " </td>\n"; if ($in_list && !$is_preview) { message_display_navigation($tid, $message['PID'], $first_msg, $msg_count, $posts_per_page); } echo " </tr>\n"; echo " </table>\n"; if ($in_list && isset($message['PID'])) { echo " <div id=\"quick_reply_{$message['PID']}\"></div>\n"; } echo "</div>\n"; echo $in_list ? "<br />\n" : ''; }
if (session::check_perm(USER_PERM_EMAIL_CONFIRM, 0)) { html_email_confirmation_error(); exit; } if (!session::check_perm(USER_PERM_POST_CREATE, $t_fid)) { html_draw_error(gettext("You cannot reply to posts in this folder")); } if (isset($_GET['quote_list']) && strlen(trim($_GET['quote_list'])) > 0) { $quote_list = array_filter(explode(',', $_GET['quote_list']), 'is_numeric'); sort($quote_list); $t_content_array = array(); foreach ($quote_list as $quote_pid) { if ($message_array = messages_get($reply_to_tid, $quote_pid)) { $message_author = htmlentities_array(format_user_name($message_array['FLOGON'], $message_array['FNICK'])); $message_content = message_get_content($reply_to_tid, $quote_pid); $message_content = message_apply_formatting($message_content, true); $message_link = "messages.php?webtag={$webtag}&msg={$reply_to_tid}.{$quote_pid}"; $t_content_array[] = sprintf('<div class="quotetext"><b>%s:</b> <a href="%s">%s</a></div> <div class="quote">%s</div>', gettext('quote'), $message_link, $message_author, fix_html($message_content)); } } if (sizeof($t_content_array) > 0) { $t_content = implode('', $t_content_array); } } $new_thread = false; } else { if (isset($_POST['t_tid']) && isset($_POST['t_rpid'])) { $reply_to_tid = is_numeric($_POST['t_tid']) ? $_POST['t_tid'] : 0; $reply_to_pid = is_numeric($_POST['t_rpid']) ? $_POST['t_rpid'] : 0; if (!($t_fid = thread_get_folder($reply_to_tid, $reply_to_pid))) {
html_draw_top(array('js' => array('js/search.js', 'js/search_popup.js', 'js/thread_list.js'))); thread_list_draw_top(SEARCH_RESULTS); echo "<br />\n"; echo "<h1>", gettext("Search Results"), "</h1>\n"; echo "", html_style_image('search', gettext("Found")), " ", gettext("Found"), ": {$search_results_array['result_count']} ", gettext("matches"), "<br />\n"; if ($page > 1) { echo "", html_style_image('current_thread', gettext("Previous page")), " <a href=\"search.php?webtag={$webtag}&page=", $page - 1, "&sort_by={$sort_by}&sort_dir={$sort_dir}\">", gettext("Previous page"), "</a>\n"; } echo "<ol start=\"", $page * 20 - 20 + 1, "\">\n"; foreach ($search_results_array['result_array'] as $search_result) { if (($message = messages_get($search_result['TID'], $search_result['PID'], 1)) !== false) { if (($thread_data = thread_get($search_result['TID'])) !== false) { $message['TITLE'] = trim($thread_data['TITLE']); // Fetch the messaage content, strip the signature and remove HTML. $message['CONTENT'] = message_get_content($search_result['TID'], $search_result['PID']); $message['CONTENT'] = message_apply_formatting($message['CONTENT'], true); $message['CONTENT'] = trim(strip_tags($message['CONTENT'])); // Limit thread title to 20 characters. if (mb_strlen($message['TITLE']) > 20) { $message['TITLE'] = word_filter_add_ob_tags(mb_substr($message['TITLE'], 0, 20), true) . "…"; } else { $message['TITLE'] = word_filter_add_ob_tags($message['TITLE'], true); } // Limit displayed post content to 35 characters if (mb_strlen($message['CONTENT']) > 70) { $message['CONTENT'] = word_filter_add_ob_tags(fix_html(mb_substr($message['CONTENT'], 0, 70)), true) . "…"; } else { $message['CONTENT'] = word_filter_add_ob_tags($message['CONTENT'], true); } if (thread_is_poll($search_result['TID']) && $search_result['PID'] == 1 || strlen($message['CONTENT']) < 1) { echo " <li><p><a href=\"messages.php?webtag={$webtag}&msg={$search_result['TID']}.{$search_result['PID']}&hightlight=yes\" target=\"", html_get_frame_name('right'), "\"><b>{$message['TITLE']}</b></a><br />";
function light_pm_display($message_data, $preview = false) { $webtag = get_webtag(); forum_check_webtag_available($webtag); if (!$preview) { if (strlen(trim($message_data['SUBJECT'])) > 0) { echo "<h3 class=\"message_subject\">", word_filter_add_ob_tags($message_data['SUBJECT'], true), "</h3>\n"; } else { echo "<h3 class=\"message_subject\">", gettext("No Subject"), "</h3>\n"; } } echo "<div class=\"message\">\n"; echo "<div class=\"message_header\">\n"; echo "<div class=\"message_from\">\n"; echo gettext("From"), ": ", word_filter_add_ob_tags(format_user_name($message_data['FROM_LOGON'], $message_data['FROM_NICKNAME']), true), "\n"; echo "<span class=\"message_time\">", format_date_time($message_data['CREATED']), "</span>\n"; echo "<div class=\"clearer\"></div>\n"; echo "</div>\n"; echo "<div class=\"message_to\">", gettext("To"), ": "; if (isset($message_data['RECIPIENTS']) && sizeof($message_data['RECIPIENTS']) > 0) { foreach ($message_data['RECIPIENTS'] as $recipient) { echo "<span>", word_filter_add_ob_tags(format_user_name($recipient['LOGON'], $recipient['NICKNAME']), true), "</span>\n"; } } else { echo gettext('Unknown User'); } echo "<div class=\"clearer\"></div>\n"; echo "</div>\n"; echo "</div>\n"; $message_data['CONTENT'] = message_apply_formatting($message_data['CONTENT']); $message_data['CONTENT'] = word_filter_add_ob_tags($message_data['CONTENT']); echo "<div class=\"message_links\"> </div>\n"; echo "<div class=\"message_body\">", $message_data['CONTENT'], "</div>\n"; if (isset($message_data['ATTACHMENTS']) && sizeof($message_data['ATTACHMENTS']) > 0) { if (($attachments_array = attachments_get($message_data['FROM_UID'], $message_data['ATTACHMENTS'])) !== false) { echo "<div class=\"message_attachments\">\n"; echo " <span>", gettext("Attachments"), ":</span>\n"; echo " <ul>\n"; foreach ($attachments_array as $attachment) { if (($attachment_link = light_attachments_make_link($attachment)) !== false) { echo "<li>", html_style_image('attach'), $attachment_link, "</li>\n"; } } echo " </ul>\n"; echo "</div>\n"; } } if ($preview === false) { $links_array = array(); if (($message_data['TYPE'] & PM_INBOX_ITEMS) > 0) { $links_array[] = "<a href=\"lpm_write.php?webtag={$webtag}&reply_to={$message_data['MID']}\" class=\"reply\">" . html_style_image('post') . gettext("Reply") . "</a>"; if (isset($message_data['RECIPIENTS']) && sizeof($message_data['RECIPIENTS']) > 1) { $links_array[] = "<a href=\"lpm_write.php?webtag={$webtag}&replyall={$message_data['MID']}\" class=\"replyall\">" . html_style_image('reply_all') . gettext("Reply All") . "</a>"; } $links_array[] = "<a href=\"lpm_write.php?webtag={$webtag}&fwdmsg={$message_data['MID']}\" class=\"forward\">" . html_style_image('forward') . gettext("Forward") . "</a>"; $links_array[] = "<a href=\"lpm.php?webtag={$webtag}&delete_msg={$message_data['MID']}\" class=\"delete\">" . html_style_image('delete') . gettext("Delete") . "</a>"; } else { if (($message_data['TYPE'] & PM_OUTBOX_ITEMS) > 0) { $links_array[] = "<a href=\"lpm_edit.php?webtag={$webtag}&mid={$message_data['MID']}\" class=\"edit\">" . html_style_image('edit') . gettext("Edit") . "</a>"; $links_array[] = "<a href=\"lpm_write.php?webtag={$webtag}&fwdmsg={$message_data['MID']}\" class=\"forward\">" . html_style_image('forward') . gettext("Forward") . "</a>"; $links_array[] = "<a href=\"lpm.php?webtag={$webtag}&delete_msg={$message_data['MID']}\" class=\"delete\">" . html_style_image('delete') . gettext("Delete") . "</a>"; } else { if (($message_data['TYPE'] & PM_DRAFT_ITEMS) > 0) { $links_array[] = "<a href=\"lpm_write.php?webtag={$webtag}&editmsg={$message_data['MID']}\" class=\"edit\">" . html_style_image('edit') . gettext("Edit") . "</a>"; $links_array[] = "<a href=\"lpm.php?webtag={$webtag}&delete_msg={$message_data['MID']}\" class=\"delete\">" . html_style_image('delete') . gettext("Delete") . "</a>"; } else { $links_array[] = "<a href=\"lpm_write.php?webtag={$webtag}&fwdmsg={$message_data['MID']}\" class=\"forward\">" . html_style_image('forward') . gettext("Forward") . "</a>"; $links_array[] = "<a href=\"lpm.php?webtag={$webtag}&delete_msg={$message_data['MID']}\" class=\"delete\">" . html_style_image('delete') . gettext("Delete") . "</a>"; } } } if (sizeof($links_array) > 0) { echo "<div class=\"message_footer_links\">", implode(' ', $links_array), "</div>\n"; } } echo "</div>"; }
function pm_display($message_data, $preview = false, $export_html = false) { $webtag = get_webtag(); forum_check_webtag_available($webtag); echo "<div align=\"center\">\n"; echo " <table cellpadding=\"0\" cellspacing=\"0\" width=\"100%\">\n"; echo " <tr>\n"; echo " <td align=\"left\">\n"; echo " <table class=\"box\" width=\"100%\" cellpadding=\"0\">\n"; echo " <tr>\n"; echo " <td align=\"left\">\n"; echo " <table width=\"100%\" cellspacing=\"0\" cellpadding=\"0\">\n"; echo " <tr>\n"; echo " <td align=\"left\">\n"; echo " <table width=\"100%\" class=\"posthead\" cellspacing=\"1\" cellpadding=\"0\">\n"; echo " <tr>\n"; if ($export_html === true) { echo " <td width=\"1%\" align=\"right\" style=\"white-space: nowrap\"><span class=\"posttofromlabel\"> ", gettext("From"), ": </span></td>\n"; echo " <td style=\"white-space: nowrap\" width=\"98%\" align=\"left\"><span class=\"posttofrom\">", word_filter_add_ob_tags(format_user_name($message_data['FROM_LOGON'], $message_data['FROM_NICKNAME']), true), "</span></td>\n"; } else { echo " <td width=\"1%\" align=\"right\" style=\"white-space: nowrap\"><span class=\"posttofromlabel\"> ", gettext("From"), ": </span></td>\n"; echo " <td style=\"white-space: nowrap\" width=\"98%\" align=\"left\"><span class=\"posttofrom\"><a href=\"user_profile.php?webtag={$webtag}&uid={$message_data['FROM_UID']}\" target=\"_blank\" class=\"popup 650x500\">", word_filter_add_ob_tags(format_user_name($message_data['FROM_LOGON'], $message_data['FROM_NICKNAME']), true), "</a></span></td>\n"; } if (isset($message_data['TYPE']) && $message_data['TYPE'] & PM_SAVED_DRAFT) { echo " <td align=\"right\" style=\"white-space: nowrap\"><span class=\"postinfo\"><i>", gettext("Not Sent"), "</i> </span></td>\n"; } else { echo " <td align=\"right\" style=\"white-space: nowrap\"><span class=\"postinfo\">", format_date_time($message_data['CREATED']), " </span></td>\n"; } echo " </tr>\n"; echo " <tr>\n"; echo " <td width=\"1%\" align=\"right\" style=\"white-space: nowrap\"><span class=\"posttofromlabel\"> ", gettext("Subject"), ": </span></td>\n"; if (strlen(trim($message_data['SUBJECT'])) > 0) { echo " <td style=\"white-space: nowrap\" width=\"98%\" align=\"left\"><span class=\"posttofrom\">", word_filter_add_ob_tags($message_data['SUBJECT'], true), "</span></td>\n"; } else { echo " <td style=\"white-space: nowrap\" width=\"98%\" align=\"left\"><span class=\"posttofrom\"><i>", gettext("No Subject"), "</i></span></td>\n"; } echo " </tr>\n"; echo " <tr>\n"; echo " <td width=\"1%\" align=\"right\" style=\"white-space: nowrap\"><span class=\"posttofromlabel\"> ", gettext("To"), ": </span></td>\n"; if (isset($message_data['RECIPIENTS']) && sizeof($message_data['RECIPIENTS']) > 0) { echo " <td style=\"white-space: nowrap\" width=\"98%\" align=\"left\"><span class=\"posttofrom\">"; foreach ($message_data['RECIPIENTS'] as $recipient) { echo " <a href=\"user_profile.php?webtag={$webtag}&uid={$recipient['UID']}\" target=\"_blank\" class=\"popup 650x500\">", word_filter_add_ob_tags(format_user_name($recipient['LOGON'], $recipient['NICKNAME']), true), "</a>"; } echo " </td>\n"; } else { echo " <td style=\"white-space: nowrap\" width=\"98%\" align=\"left\"><span class=\"posttofrom\">", gettext('Unknown User'), "</td>\n"; } $message_data['CONTENT'] = message_apply_formatting($message_data['CONTENT']); $message_data['CONTENT'] = word_filter_add_ob_tags($message_data['CONTENT']); echo " </tr>\n"; echo " </table>\n"; echo " </td>\n"; echo " </tr>\n"; echo " <tr>\n"; echo " <td align=\"left\">\n"; echo " <table width=\"100%\">\n"; echo " <tr>\n"; echo " <td colspan=\"3\" align=\"left\"> </td>\n"; echo " </tr>\n"; echo " <tr>\n"; echo " <td class=\"postbody overflow_content\" align=\"left\">{$message_data['CONTENT']}</td>\n"; echo " </tr>\n"; if (isset($message_data['ATTACHMENTS']) && sizeof($message_data['ATTACHMENTS']) > 0) { if (($attachments_array = attachments_get($message_data['FROM_UID'], $message_data['ATTACHMENTS'])) !== false) { echo " <tr>\n"; echo " <td class=\"postbody\" align=\"left\">\n"; echo " <p><b>", gettext("Attachments"), ":</b><br />\n"; foreach ($attachments_array as $attachment) { echo attachments_make_link($attachment), $attachment['thumbnail'] == 'N' ? "<br />\n" : "\n"; } echo " </p>\n"; echo " </td>\n"; echo " </tr>\n"; } } echo " </table>\n"; echo " <table width=\"100%\" class=\"postresponse\" cellspacing=\"1\" cellpadding=\"0\">\n"; echo " <tr>\n"; echo " <td align=\"center\">\n"; if ($preview === false) { if ($message_data['TYPE'] & PM_INBOX_ITEMS) { echo "", html_style_image('post', "Reply"), " <a href=\"pm_write.php?webtag={$webtag}&reply_to={$message_data['MID']}\" target=\"", html_get_frame_name('main'), "\">", gettext("Reply"), "</a> \n"; if (isset($message_data['RECIPIENTS']) && sizeof($message_data['RECIPIENTS']) > 1) { echo "", html_style_image('reply_all', "Reply All"), " <a href=\"pm_write.php?webtag={$webtag}&replyall={$message_data['MID']}\" target=\"", html_get_frame_name('main'), "\">", gettext("Reply All"), "</a> \n"; } echo "", html_style_image('forward', "Forward"), " <a href=\"pm_write.php?webtag={$webtag}&fwdmsg={$message_data['MID']}\" target=\"", html_get_frame_name('main'), "\">", gettext("Forward"), "</a> \n"; } else { if ($message_data['TYPE'] & PM_DRAFT_ITEMS) { echo "", html_style_image('edit', "Edit"), " <a href=\"pm_write.php?webtag={$webtag}&editmsg={$message_data['MID']}\" target=\"", html_get_frame_name('main'), "\">", gettext("Edit"), "</a> \n"; } else { if ($message_data['EDITABLE'] == 1) { echo "", html_style_image('post', "Edit"), " <a href=\"pm_edit.php?webtag={$webtag}&mid={$message_data['MID']}\" target=\"", html_get_frame_name('main'), "\">", gettext("Edit"), "</a> \n"; } echo "", html_style_image('forward', "Forward"), " <a href=\"pm_write.php?webtag={$webtag}&fwdmsg={$message_data['MID']}\" target=\"", html_get_frame_name('main'), "\">", gettext("Forward"), "</a> \n"; } } } echo " </td>\n"; echo " </tr>\n"; echo " </table>\n"; echo " </td>\n"; echo " </tr>\n"; echo " </table>\n"; echo " </td>\n"; echo " </tr>\n"; echo " </table>\n"; echo " </td>\n"; echo " </tr>\n"; echo " </table>\n"; echo "</div>\n"; }
function light_pm_display($pm_message_array, $folder, $preview = false) { $webtag = get_webtag(); echo "<div class=\"message\">\n"; echo "<div class=\"message_header\">\n"; echo "<div class=\"message_from\">\n"; if ($folder == PM_FOLDER_INBOX) { echo "<span>", gettext("From"), ": ", word_filter_add_ob_tags(format_user_name($pm_message_array['FLOGON'], $pm_message_array['FNICK']), true), "</span>\n"; } else { if (isset($pm_message_array['RECIPIENTS']) && strlen(trim($pm_message_array['RECIPIENTS'])) > 0) { $recipient_array = preg_split("/[;|,]/u", trim($pm_message_array['RECIPIENTS'])); if ($pm_message_array['TO_UID'] > 0) { $recipient_array = array_unique(array_merge($recipient_array, array($pm_message_array['TLOGON']))); } echo "<span>", gettext("To"), ": ", word_filter_add_ob_tags(implode('; ', $recipient_array)), "</span>\n"; } else { if (is_array($pm_message_array['TLOGON'])) { $recipient_array = array_unique($pm_message_array['TLOGON']); echo "<span>", gettext("To"), ": ", word_filter_add_ob_tags(implode('; ', $recipient_array)), "</span>\n"; } else { if (isset($pm_message_array['TO_UID']) && is_numeric($pm_message_array['TO_UID'])) { echo "<span>", gettext("To"), ": ", word_filter_add_ob_tags(format_user_name($pm_message_array['TLOGON'], $pm_message_array['TNICK']), true), "</span>\n"; } else { echo "<span>", gettext("To"), ": <span class=\"norecipients\">", gettext("No Recipients"), "</span></span>\n"; } } } } echo "<div class=\"clearer\"></div>\n"; echo "</div>\n"; echo "<div class=\"message_subject\">\n"; echo "", gettext("Subject"), ": "; if (strlen(trim($pm_message_array['SUBJECT'])) > 0) { echo word_filter_add_ob_tags($pm_message_array['SUBJECT'], true), "\n"; } else { echo "<span class=\"no_subject\">", gettext("No Subject"), "</span>\n"; } echo "<div class=\"clearer\"></div>\n"; echo "</div>\n"; echo "</div>\n"; $pm_message_array['CONTENT'] = message_apply_formatting($pm_message_array['CONTENT']); $pm_message_array['CONTENT'] = word_filter_add_ob_tags($pm_message_array['CONTENT']); echo "<div class=\"message_body\">", $pm_message_array['CONTENT'], "</div>\n"; if (isset($pm_message_array['AID'])) { $aid = $pm_message_array['AID']; $attachments_array = array(); $image_attachments_array = array(); if (attachments_get($pm_message_array['FROM_UID'], $aid, $attachments_array, $image_attachments_array)) { if (is_array($attachments_array) && sizeof($attachments_array) > 0) { echo "<div class=\"message_attachments\">\n"; echo " <span>", gettext("Attachments"), ":</span>\n"; echo " <ul>\n"; foreach ($attachments_array as $attachment) { if ($attachment_link = light_attachments_make_link($attachment)) { echo "<li>", $attachment_link, "</li>\n"; } } echo " </ul>\n"; echo "</div>\n"; } if (is_array($image_attachments_array) && sizeof($image_attachments_array) > 0) { echo "<div class=\"message_attachments\">\n"; echo " <span>", gettext("Image Attachments"), ":</span>\n"; echo " <ul>\n"; foreach ($image_attachments_array as $attachment) { if ($attachment_link = light_attachments_make_link($attachment)) { echo "<li>", $attachment_link, "</li>\n"; } } echo " </ul>\n"; echo "</div>\n"; } } } if ($preview === false) { $links_array = array(); if ($folder == PM_FOLDER_INBOX) { $links_array[] = "<a href=\"lpm_write.php?webtag={$webtag}&replyto={$pm_message_array['MID']}\" class=\"reply\">" . gettext("Reply") . "</a>"; $links_array[] = "<a href=\"lpm_write.php?webtag={$webtag}&fwdmsg={$pm_message_array['MID']}\" class=\"forward\">" . gettext("Forward") . "</a>"; $links_array[] = "<a href=\"lpm.php?webtag={$webtag}&folder={$folder}&deletemsg={$pm_message_array['MID']}\" class=\"delete\">" . gettext("Delete") . "</a>"; } else { if ($folder == PM_FOLDER_OUTBOX) { $links_array[] = "<a href=\"lpm_edit.php?webtag={$webtag}&mid={$pm_message_array['MID']}\" class=\"edit\">" . gettext("Edit") . "</a>"; $links_array[] = "<a href=\"lpm_write.php?webtag={$webtag}&fwdmsg={$pm_message_array['MID']}\" class=\"forward\">" . gettext("Forward") . "</a>"; $links_array[] = "<a href=\"lpm.php?webtag={$webtag}&folder={$folder}&deletemsg={$pm_message_array['MID']}\" class=\"delete\">" . gettext("Delete") . "</a>"; } else { if ($folder == PM_FOLDER_DRAFTS) { $links_array[] = "<a href=\"lpm_write.php?webtag={$webtag}&editmsg={$pm_message_array['MID']}\" class=\"edit\">" . gettext("Edit") . "</a>"; $links_array[] = "<a href=\"lpm.php?webtag={$webtag}&folder={$folder}&deletemsg={$pm_message_array['MID']}\" class=\"delete\">" . gettext("Delete") . "</a>"; } else { $links_array[] = "<a href=\"lpm_write.php?webtag={$webtag}&fwdmsg={$pm_message_array['MID']}\" class=\"forward\">" . gettext("Forward") . "</a>"; $links_array[] = "<a href=\"lpm.php?webtag={$webtag}&folder={$folder}&deletemsg={$pm_message_array['MID']}\" class=\"delete\">" . gettext("Delete") . "</a>"; } } } if (sizeof($links_array) > 0) { echo "<div class=\"message_footer_links\">", implode(' ', $links_array), "</div>\n"; } } echo "</div>"; }
// Includes required by this page. require_once BH_INCLUDE_PATH . 'constants.inc.php'; require_once BH_INCLUDE_PATH . 'format.inc.php'; require_once BH_INCLUDE_PATH . 'header.inc.php'; require_once BH_INCLUDE_PATH . 'html.inc.php'; require_once BH_INCLUDE_PATH . 'lang.inc.php'; require_once BH_INCLUDE_PATH . 'logon.inc.php'; require_once BH_INCLUDE_PATH . 'messages.inc.php'; require_once BH_INCLUDE_PATH . 'session.inc.php'; require_once BH_INCLUDE_PATH . 'user.inc.php'; // Get the start page if ($start_page = forum_get_setting('start_page')) { // Get the start page CSS if ($start_page_css = forum_get_setting('start_page_css')) { // Check for cached page. cache_check_etag(md5($start_page . $start_page_css)); html_draw_top("inline_css={$start_page_css}"); echo message_apply_formatting($start_page); html_draw_bottom(); } else { // Check for cached page. cache_check_etag(md5($start_page)); html_draw_top(); echo message_apply_formatting($start_page); html_draw_bottom(); } } else { html_draw_top(); echo "<h1>", gettext("You can edit this page from the admin interface"), "</h1>\n"; html_draw_bottom(); }
function pm_display($pm_message_array, $folder, $preview = false, $export_html = false) { $webtag = get_webtag(); echo "<div align=\"center\">\n"; echo " <table cellpadding=\"0\" cellspacing=\"0\" width=\"100%\">\n"; echo " <tr>\n"; echo " <td align=\"left\">\n"; echo " <table class=\"box\" width=\"100%\" cellpadding=\"0\">\n"; echo " <tr>\n"; echo " <td align=\"left\">\n"; echo " <table width=\"100%\" cellspacing=\"0\" cellpadding=\"0\">\n"; echo " <tr>\n"; echo " <td align=\"left\">\n"; echo " <table width=\"100%\" class=\"posthead\" cellspacing=\"1\" cellpadding=\"0\">\n"; echo " <tr>\n"; if ($folder == PM_FOLDER_INBOX) { if ($export_html === true) { echo " <td width=\"1%\" align=\"right\" style=\"white-space: nowrap\"><span class=\"posttofromlabel\"> ", gettext("From"), ": </span></td>\n"; echo " <td style=\"white-space: nowrap\" width=\"98%\" align=\"left\"><span class=\"posttofrom\">", word_filter_add_ob_tags(format_user_name($pm_message_array['FLOGON'], $pm_message_array['FNICK']), true), "</span></td>\n"; } else { echo " <td width=\"1%\" align=\"right\" style=\"white-space: nowrap\"><span class=\"posttofromlabel\"> ", gettext("From"), ": </span></td>\n"; echo " <td style=\"white-space: nowrap\" width=\"98%\" align=\"left\"><span class=\"posttofrom\"><a href=\"user_profile.php?webtag={$webtag}&uid={$pm_message_array['FROM_UID']}\" target=\"_blank\" class=\"popup 650x500\">", word_filter_add_ob_tags(format_user_name($pm_message_array['FLOGON'], $pm_message_array['FNICK']), true), "</a></span></td>\n"; } } else { if (isset($pm_message_array['RECIPIENTS']) && strlen(trim($pm_message_array['RECIPIENTS'])) > 0) { $recipient_array = preg_split("/[;|,]/u", trim($pm_message_array['RECIPIENTS'])); if ($pm_message_array['TO_UID'] > 0) { $recipient_array = array_unique(array_merge($recipient_array, array($pm_message_array['TLOGON']))); } if ($export_html === false) { $recipient_array = array_map('user_profile_popup_callback', $recipient_array); } echo " <td width=\"1%\" align=\"right\" style=\"white-space: nowrap\"><span class=\"posttofromlabel\"> ", gettext("To"), ": </span></td>\n"; echo " <td style=\"white-space: nowrap\" width=\"98%\" align=\"left\"><span class=\"posttofrom\">", word_filter_add_ob_tags(implode('; ', $recipient_array)), "</span></td>\n"; } else { if (is_array($pm_message_array['TLOGON'])) { $recipient_array = array_unique($pm_message_array['TLOGON']); if ($export_html === false) { $recipient_array = array_map('user_profile_popup_callback', $recipient_array); } echo " <td width=\"1%\" align=\"right\" style=\"white-space: nowrap\"><span class=\"posttofromlabel\"> ", gettext("To"), ": </span></td>\n"; echo " <td style=\"white-space: nowrap\" width=\"98%\" align=\"left\"><span class=\"posttofrom\">", word_filter_add_ob_tags(implode('; ', $recipient_array)), "</span></td>\n"; } else { if (isset($pm_message_array['TO_UID']) && is_numeric($pm_message_array['TO_UID'])) { if ($export_html === true) { echo " <td width=\"1%\" align=\"right\" style=\"white-space: nowrap\"><span class=\"posttofromlabel\"> ", gettext("To"), ": </span></td>\n"; echo " <td style=\"white-space: nowrap\" width=\"98%\" align=\"left\"><span class=\"posttofromlabel\">", word_filter_add_ob_tags(format_user_name($pm_message_array['TLOGON'], $pm_message_array['TNICK']), true), "</span></td>\n"; } else { echo " <td width=\"1%\" align=\"right\" style=\"white-space: nowrap\"><span class=\"posttofromlabel\"> ", gettext("To"), ": </span></td>\n"; echo " <td style=\"white-space: nowrap\" width=\"98%\" align=\"left\"><span class=\"posttofromlabel\"><a href=\"user_profile.php?webtag={$webtag}&uid={$pm_message_array['TO_UID']}\" target=\"_blank\" class=\"popup 650x500\">", word_filter_add_ob_tags(format_user_name($pm_message_array['TLOGON'], $pm_message_array['TNICK']), true), "</a></span></td>\n"; } } else { echo " <td width=\"1%\" align=\"right\" style=\"white-space: nowrap\"><span class=\"posttofromlabel\"> ", gettext("To"), ": </span></td>\n"; echo " <td align=\"left\" class=\"postbody\"><i>", gettext("No Recipients"), "</i></td>\n"; } } } } // Add emoticons/wikilinks and word filter tags $pm_message_array['CONTENT'] = message_apply_formatting($pm_message_array['CONTENT']); $pm_message_array['CONTENT'] = word_filter_add_ob_tags($pm_message_array['CONTENT']); echo " </tr>\n"; echo " <tr>\n"; echo " <td width=\"1%\" align=\"right\" style=\"white-space: nowrap\"><span class=\"posttofromlabel\"> ", gettext("Subject"), ": </span></td>\n"; if (strlen(trim($pm_message_array['SUBJECT'])) > 0) { echo " <td style=\"white-space: nowrap\" width=\"98%\" align=\"left\"><span class=\"posttofrom\">", word_filter_add_ob_tags($pm_message_array['SUBJECT'], true), "</span></td>\n"; } else { echo " <td style=\"white-space: nowrap\" width=\"98%\" align=\"left\"><span class=\"posttofrom\"><i>", gettext("No Subject"), "</i></span></td>\n"; } if (isset($pm_message_array['TYPE']) && ($pm_message_array['TYPE'] & PM_SAVED_DRAFT) > 0) { echo " <td align=\"right\" style=\"white-space: nowrap\"><span class=\"postinfo\"><i>", gettext("Not Sent"), "</i> </span></td>\n"; } else { echo " <td align=\"right\" style=\"white-space: nowrap\"><span class=\"postinfo\">", format_time($pm_message_array['CREATED']), " </span></td>\n"; } echo " </tr>\n"; echo " </table>\n"; echo " </td>\n"; echo " </tr>\n"; echo " <tr>\n"; echo " <td align=\"left\">\n"; echo " <table width=\"100%\">\n"; echo " <tr>\n"; echo " <td colspan=\"3\" align=\"left\"> </td>\n"; echo " </tr>\n"; echo " <tr>\n"; echo " <td class=\"postbody\" align=\"left\">{$pm_message_array['CONTENT']}</td>\n"; echo " </tr>\n"; if (isset($pm_message_array['AID'])) { $aid = $pm_message_array['AID']; $attachments_array = array(); $image_attachments_array = array(); if (attachments_get($pm_message_array['FROM_UID'], $aid, $attachments_array, $image_attachments_array)) { // Draw the attachment header at the bottom of the post echo " <tr>\n"; echo " <td class=\"postbody\" align=\"left\">\n"; if (is_array($attachments_array) && sizeof($attachments_array) > 0) { echo " <p><b>", gettext("Attachments"), ":</b><br />\n"; foreach ($attachments_array as $attachment) { echo " ", attachments_make_link($attachment, true, false, $export_html), "<br />\n"; } echo " </p>\n"; } if (is_array($image_attachments_array) && sizeof($image_attachments_array) > 0) { echo " <p><b>", gettext("Image Attachments"), ":</b><br />\n"; foreach ($image_attachments_array as $attachment) { echo " ", attachments_make_link($attachment, true, false, $export_html), "\n"; } echo " </p>\n"; } echo " </td>\n"; echo " </tr>\n"; } } echo " </table>\n"; echo " <table width=\"100%\" class=\"postresponse\" cellspacing=\"1\" cellpadding=\"0\">\n"; echo " <tr>\n"; if ($preview === false) { if ($folder == PM_FOLDER_INBOX) { echo " <td align=\"center\"><img src=\"", html_style_image('post.png'), "\" border=\"0\" alt=\"", gettext("Reply"), "\" title=\"", gettext("Reply"), "\" /> <a href=\"pm_write.php?webtag={$webtag}&replyto={$pm_message_array['MID']}\" target=\"", html_get_frame_name('main'), "\">", gettext("Reply"), "</a> <img src=\"", html_style_image('forward.png'), "\" border=\"0\" alt=\"", gettext("Forward"), "\" title=\"", gettext("Forward"), "\" /> <a href=\"pm_write.php?webtag={$webtag}&fwdmsg={$pm_message_array['MID']}\" target=\"", html_get_frame_name('main'), "\">", gettext("Forward"), "</a></td>\n"; } else { if ($folder == PM_FOLDER_OUTBOX) { echo " <td align=\"center\"><img src=\"", html_style_image('post.png'), "\" border=\"0\" alt=\"", gettext("Edit"), "\" title=\"", gettext("Edit"), "\" /> <a href=\"pm_edit.php?webtag={$webtag}&mid={$pm_message_array['MID']}\" target=\"", html_get_frame_name('main'), "\">", gettext("Edit"), "</a> <img src=\"", html_style_image('forward.png'), "\" border=\"0\" alt=\"", gettext("Forward"), "\" title=\"", gettext("Forward"), "\" /> <a href=\"pm_write.php?webtag={$webtag}&fwdmsg={$pm_message_array['MID']}\" target=\"", html_get_frame_name('main'), "\">", gettext("Forward"), "</a></td>\n"; } else { if ($folder == PM_FOLDER_DRAFTS) { echo " <td align=\"center\"><img src=\"", html_style_image('edit.png'), "\" border=\"0\" alt=\"", gettext("Edit"), "\" title=\"", gettext("Edit"), "\" /> <a href=\"pm_write.php?webtag={$webtag}&editmsg={$pm_message_array['MID']}\" target=\"", html_get_frame_name('main'), "\">", gettext("Edit"), "</a></td>\n"; } else { echo " <td align=\"center\"><img src=\"", html_style_image('forward.png'), "\" border=\"0\" alt=\"", gettext("Forward"), "\" title=\"", gettext("Forward"), "\" /> <a href=\"pm_write.php?webtag={$webtag}&fwdmsg={$pm_message_array['MID']}\" target=\"", html_get_frame_name('main'), "\">", gettext("Forward"), "</a></td>\n"; } } } } else { echo " <td align=\"center\"> </td>\n"; } echo " </tr>\n"; echo " </table>\n"; echo " </td>\n"; echo " </tr>\n"; echo " </table>\n"; echo " </td>\n"; echo " </tr>\n"; echo " </table>\n"; echo " </td>\n"; echo " </tr>\n"; echo " </table>\n"; echo "</div>\n"; }
function message_display($tid, $message, $msg_count, $first_msg, $folder_fid, $in_list = true, $closed = false, $is_poll = false, $show_sigs = true, $is_preview = false, $highlight_array = array()) { $perm_is_moderator = session::check_perm(USER_PERM_FOLDER_MODERATE, $folder_fid); $post_edit_time = forum_get_setting('post_edit_time', null, 0); $post_edit_grace_period = forum_get_setting('post_edit_grace_period', null, 0); $webtag = get_webtag(); forum_check_webtag_available($webtag); if (!isset($_SESSION['UID']) || !is_numeric($_SESSION['UID'])) { return; } if (isset($_SESSION['POSTS_PER_PAGE']) && is_numeric($_SESSION['POSTS_PER_PAGE'])) { $posts_per_page = max(min($_SESSION['POSTS_PER_PAGE'], 30), 10); } else { $posts_per_page = 20; } if (isset($_SESSION['REPLY_QUICK']) && $_SESSION['REPLY_QUICK'] == 'Y') { $quick_reply = 'Y'; } else { $quick_reply = 'N'; } if ((!isset($message['CONTENT']) || $message['CONTENT'] == '') && !$is_preview) { message_display_deleted($tid, isset($message['PID']) ? $message['PID'] : 0, $message, $in_list, $is_preview, $first_msg, $msg_count, $posts_per_page); return; } $from_user_permissions = perm_get_user_permissions($message['FROM_UID']); if ($_SESSION['UID'] != $message['FROM_UID']) { if ($from_user_permissions & USER_PERM_WORMED && !$perm_is_moderator) { message_display_deleted($tid, $message['PID'], $message, $in_list, $is_preview, $first_msg, $msg_count, $posts_per_page); return; } } if (!$is_preview && !isset($message['APPROVED'])) { message_display_approval_req($tid, $message['PID'], $in_list, $is_preview, $first_msg, $msg_count, $posts_per_page); return; } if (isset($message['RELATIONSHIP']) && $message['RELATIONSHIP'] & USER_IGNORED_COMPLETELY) { message_display_deleted($tid, $message['PID'], $message, $in_list, $is_preview, $first_msg, $msg_count, $posts_per_page); return; } if (isset($message['RECIPIENTS']) && sizeof($message['RECIPIENTS']) == 1) { $recipient = array_slice(array_values($message['RECIPIENTS']), 0, 1); if (isset($recipient['RELATIONSHIP']) && $recipient['RELATIONSHIP'] & USER_IGNORED_COMPLETELY) { message_display_deleted($tid, $message['PID'], $message, $in_list, $is_preview, $first_msg, $msg_count, $posts_per_page); return; } } if (!$is_preview && isset($message['MOVED_TID']) && isset($message['MOVED_PID'])) { message_display_moved($tid, $message['PID'], $message, $in_list, $is_preview, $first_msg, $msg_count, $posts_per_page); return; } // Add emoticons/WikiLinks and ignore signature ---------------------------- if (isset($_SESSION['IMAGES_TO_LINKS']) && $_SESSION['IMAGES_TO_LINKS'] == 'Y') { $message['CONTENT'] = message_images_to_links($message['CONTENT']); } if (!$is_poll || isset($message['PID']) && $message['PID'] > 1) { $message['CONTENT'] = message_apply_formatting($message['CONTENT'], isset($message['RELATIONSHIP']) && ($message['RELATIONSHIP'] & USER_IGNORED_SIG) > 0 || !$show_sigs); } // Check for words that should be filtered --------------------------------- if (!$is_poll || isset($message['PID']) && $message['PID'] > 1) { $message['CONTENT'] = word_filter_add_ob_tags($message['CONTENT'], false); } if ($in_list && isset($message['PID'])) { echo "<a name=\"a{$tid}_{$message['PID']}\"></a>\n"; } // Check for search words to highlight ------------------------------------- if (is_array($highlight_array) && sizeof($highlight_array) > 0) { $highlight_pattern = sprintf('/(%s)/i', implode('|', array_map('preg_quote_callback', $highlight_array))); $message_parts = preg_split('/([<|>])/u', $message['CONTENT'], -1, PREG_SPLIT_DELIM_CAPTURE); for ($i = 0; $i < sizeof($message_parts); $i++) { if (!($i % 4)) { $message_parts[$i] = preg_replace_callback($highlight_pattern, 'search_highlight_callback', $message_parts[$i]); } } $message['CONTENT'] = implode("", $message_parts); } if ($in_list && isset($message['PID'])) { echo "<div align=\"center\" class=\"message\" id=\"message_{$tid}_{$message['PID']}\">\n"; } else { echo "<div align=\"center\" class=\"message\">\n"; } echo "<table width=\"100%\" cellspacing=\"0\" cellpadding=\"0\">\n"; echo " <tr>\n"; if ($in_list && !$is_preview) { message_display_navigation($tid, $message['PID'], $first_msg, $msg_count, $posts_per_page); } echo " <td align=\"center\">\n"; echo " <table width=\"100%\" class=\"box\" cellpadding=\"0\">\n"; echo " <tr>\n"; echo " <td align=\"left\">\n"; echo " <table class=\"message_posthead\" width=\"100%\">\n"; echo " <tr>\n"; echo " <td width=\"1%\" align=\"right\" style=\"white-space: nowrap\"><span class=\"posttofromlabel\"> ", gettext("From"), ": </span></td>\n"; echo " <td style=\"white-space: nowrap\" width=\"98%\" align=\"left\"><span class=\"posttofrom\">"; if (isset($message['FROM_UID'])) { echo "<a href=\"user_profile.php?webtag={$webtag}&uid={$message['FROM_UID']}\" target=\"_blank\" class=\"popup 650x500\">"; echo word_filter_add_ob_tags(format_user_name($message['FROM_LOGON'], $message['FROM_NICKNAME']), true), "</a> </span>"; } else { echo word_filter_add_ob_tags(format_user_name($message['FROM_LOGON'], $message['FROM_NICKNAME']), true), " </span>"; } if (isset($_SESSION['SHOW_AVATARS']) && $_SESSION['SHOW_AVATARS'] == 'Y') { if (isset($message['AVATAR_URL']) && filter_var($message['AVATAR_URL'], FILTER_VALIDATE_URL)) { echo html_style_image('profile_image profile_image_small', format_user_name($message['FROM_LOGON'], $message['FROM_NICKNAME']), null, array('background-image' => sprintf("url('%s')", $message['AVATAR_URL']))); } else { if (isset($message['AVATAR_AID']) && is_numeric($message['AVATAR_AID'])) { $attachment = attachments_get_by_aid($message['AVATAR_AID']); if (($profile_picture_href = attachments_make_link($attachment, false, false, false, false)) !== false) { echo html_style_image('profile_image profile_image_small', format_user_name($message['FROM_LOGON'], $message['FROM_NICKNAME']), null, array('background-image' => sprintf("url('%s&profile_picture')", $profile_picture_href))); } } } } // If the user posting a poll is ignored, remove ignored status for this message only so the poll can be seen if ($is_poll && isset($message['PID']) && $message['PID'] == 1 && (isset($message['RELATIONSHIP']) && $message['RELATIONSHIP'] & USER_IGNORED)) { $message['RELATIONSHIP'] -= USER_IGNORED; } if (isset($message['RELATIONSHIP']) && $message['RELATIONSHIP'] & USER_FRIEND) { echo "", html_style_image('friend', gettext("Friend")), " "; } else { if (isset($message['RELATIONSHIP']) && $message['RELATIONSHIP'] & USER_IGNORED) { echo "", html_style_image('enemy', gettext("Ignored user")), " "; } } if (isset($message['ANON_LOGON']) && $message['ANON_LOGON'] > USER_ANON_DISABLED || !isset($message['USER_ACTIVE']) || is_null($message['USER_ACTIVE'])) { echo html_style_image('status_offline', gettext("Inactive / Offline")), " "; } else { echo html_style_image('status_online', gettext("Online")), " "; } if (isset($message['FROM_UID']) && isset($message['THREAD_BY_UID']) && $message['FROM_UID'] == $message['THREAD_BY_UID'] && $first_msg > 1) { echo html_style_image('thread_starter', gettext("Thread Starter")), " "; } echo "</td>\n"; echo " <td width=\"1%\" align=\"right\" style=\"white-space: nowrap\"><span class=\"postinfo\">"; if (!$is_preview && $_SESSION['UID'] > 0 && isset($message['RELATIONSHIP']) && $message['RELATIONSHIP'] & USER_IGNORED) { echo "<b>", gettext("Ignored message"), "</b>"; } else { if ($in_list) { if ($from_user_permissions & USER_PERM_WORMED) { echo "<b>", gettext("Wormed user"), "</b> "; } if (isset($message['RELATIONSHIP']) && $message['RELATIONSHIP'] & USER_IGNORED_SIG) { echo "<b>", gettext("Ignored signature"), "</b> "; } echo format_date_time($message['CREATED']); } } echo " </span></td>\n"; echo " </tr>\n"; echo " <tr>\n"; echo " <td width=\"1%\" align=\"right\" style=\"white-space: nowrap\"><span class=\"posttofromlabel\"> ", gettext("To"), ": </span></td>\n"; echo " <td style=\"white-space: nowrap\" width=\"98%\" align=\"left\">"; if (isset($message['RECIPIENTS']) && sizeof($message['RECIPIENTS']) > 0) { foreach ($message['RECIPIENTS'] as $recipient) { if (isset($recipient['RELATIONSHIP']) && $recipient['RELATIONSHIP'] & USER_IGNORED_COMPLETELY) { continue; } echo "<span class=\"posttofrom\"><a href=\"user_profile.php?webtag={$webtag}&uid={$recipient['UID']}\" target=\"_blank\" class=\"popup 650x500\">"; echo word_filter_add_ob_tags(format_user_name($recipient['LOGON'], $recipient['NICKNAME']), true), "</a> </span>\n"; if (isset($_SESSION['SHOW_AVATARS']) && $_SESSION['SHOW_AVATARS'] == 'Y') { if (isset($recipient['AVATAR_URL']) && filter_var($recipient['AVATAR_URL'], FILTER_VALIDATE_URL)) { echo html_style_image('profile_image profile_image_small', format_user_name($recipient['LOGON'], $recipient['NICKNAME']), null, array('background-image' => sprintf("url('%s')", $recipient['AVATAR_URL']))); } else { if (isset($recipient['AVATAR_AID']) && is_numeric($recipient['AVATAR_AID'])) { $attachment = attachments_get_by_aid($recipient['AVATAR_AID']); if (($profile_picture_href = attachments_make_link($attachment, false, false, false, false)) !== false) { echo html_style_image('profile_image profile_image_small', format_user_name($recipient['LOGON'], $recipient['NICKNAME']), null, array('background-image' => sprintf("url('%s&profile_picture')", $profile_picture_href))); } } } } if (isset($recipient['ANON_LOGON']) && $recipient['ANON_LOGON'] > USER_ANON_DISABLED || !isset($recipient['USER_ACTIVE']) || is_null($recipient['USER_ACTIVE'])) { echo html_style_image('status_offline', gettext("Inactive / Offline")), " "; } else { echo html_style_image('status_online', gettext("Online")), " "; } if (isset($recipient['UID']) && isset($message['THREAD_BY_UID']) && $recipient['UID'] == $message['THREAD_BY_UID'] && $first_msg > 1) { echo html_style_image('thread_starter', gettext("Thread Starter")), " "; } if (isset($recipient['VIEWED']) && $recipient['VIEWED'] > 0) { echo html_style_image('post_read', sprintf(gettext("Read: %s"), format_date_time($recipient['VIEWED']))), " "; } else { if ($is_preview == false) { echo html_style_image('post_unread', gettext("Unread Message")), " "; } else { echo " "; } } } } else { echo gettext('ALL'); } echo "</span></td>\n"; echo " <td align=\"right\" style=\"white-space: nowrap\"><span class=\"postinfo\">"; if (!$is_preview && $_SESSION['UID'] > 0 && isset($message['RELATIONSHIP']) && $message['RELATIONSHIP'] & USER_IGNORED) { echo "<a href=\"user_rel.php?webtag={$webtag}&uid={$message['FROM_UID']}&msg={$tid}.{$message['PID']}\" target=\"_self\">", gettext("Stop ignoring this user"), "</a> "; echo "<a href=\"display.php?webtag={$webtag}&msg={$tid}.{$message['PID']}&return_msg={$tid}.{$first_msg}\" target=\"_self\">", gettext("View Message"), "</a>"; } else { if ($in_list && $msg_count > 0) { if ($is_poll) { echo "<a href=\"poll_results.php?webtag={$webtag}&tid={$tid}\" target=\"_blank\" class=\"popup 800x600\">", html_style_image('poll', "This is a poll. Click to view results."), "</a> ", gettext("Poll"), " "; } echo sprintf(gettext("%s of %s"), $message['PID'], $msg_count); } } echo " </span></td>\n"; echo " </tr>\n"; echo " </table>\n"; echo " </td>\n"; echo " </tr>\n"; if ($is_preview || !isset($message['RELATIONSHIP']) || !($message['RELATIONSHIP'] & USER_IGNORED)) { echo " <tr>\n"; echo " <td align=\"left\">\n"; echo " <table class=\"message_postbody\" width=\"100%\">\n"; echo " <tr>\n"; echo " <td colspan=\"3\" align=\"right\"><span class=\"postnumber\">"; if ($in_list && $msg_count > 0) { $title = $message['PID'] == 1 ? "" . gettext("Permanent link to this thread") . " ({$tid}.1)" : "" . gettext("Link to this post"); if ($is_preview) { echo "<a href=\"messages.php?webtag={$webtag}&msg={$tid}.{$message['PID']}\" target=\"_blank\" title=\"{$title}\">{$tid}.{$message['PID']}</a>"; } else { echo "<a href=\"index.php?webtag={$webtag}&msg={$tid}.{$message['PID']}\" target=\"", html_get_top_frame_name(), "\" title=\"{$title}\">{$tid}.{$message['PID']}</a>"; } if ($message['REPLY_TO_PID'] > 0) { $title = "" . gettext("Link to post") . " #{$message['REPLY_TO_PID']}"; echo " ", gettext("In reply to"), " "; if (intval($message['REPLY_TO_PID']) >= intval($first_msg)) { echo "<a href=\"#a{$tid}_{$message['REPLY_TO_PID']}\" target=\"_self\" title=\"{$title}\">"; echo "{$tid}.{$message['REPLY_TO_PID']}</a>"; } else { if ($is_preview) { echo "<a href=\"messages.php?webtag={$webtag}&msg={$tid}.{$message['REPLY_TO_PID']}\" target=\"_blank\" title=\"{$title}\">"; echo "{$tid}.{$message['REPLY_TO_PID']}</a>"; } else { echo "<a href=\"messages.php?webtag={$webtag}&msg={$tid}.{$message['REPLY_TO_PID']}\" target=\"_self\" title=\"{$title}\">"; echo "{$tid}.{$message['REPLY_TO_PID']}</a>"; } } } } echo " </span></td>\n"; echo " </tr>\n"; echo " <tr>\n"; echo " <td class=\"postbody overflow_content\" align=\"left\">{$message['CONTENT']}</td>\n"; echo " </tr>\n"; if (!$is_preview && isset($message['EDITED'])) { if ($post_edit_grace_period == 0 || $message['EDITED'] - $message['CREATED'] > $post_edit_grace_period * MINUTE_IN_SECONDS) { if (($edit_user = user_get_logon($message['EDITED_BY'])) !== false) { echo " <tr>\n"; echo " <td class=\"postbody\" align=\"left\"><p class=\"edit_text\">", sprintf(gettext("EDITED: %s by %s"), format_date_time($message['EDITED']), $edit_user), "</p></td>\n"; echo " </tr>\n"; } } } if (!$is_preview && isset($message['APPROVED']) && isset($message['APPROVED_BY'])) { if ($message['APPROVED_BY'] != $message['FROM_UID'] && ($approved_user = user_get_logon($message['APPROVED_BY'])) !== false) { echo " <tr>\n"; echo " <td class=\"postbody\" align=\"left\"><p class=\"approved_text\">", sprintf(gettext("APPROVED: %s by %s"), format_date_time($message['APPROVED']), $approved_user), "</p></td>\n"; echo " </tr>\n"; } } if (isset($message['ATTACHMENTS']) && sizeof($message['ATTACHMENTS']) > 0) { if (($attachments_array = attachments_get($message['FROM_UID'], $message['ATTACHMENTS'])) !== false) { echo " <tr>\n"; echo " <td class=\"postbody\" align=\"left\">\n"; echo " <p><b>", gettext("Attachments"), ":</b><br />\n"; foreach ($attachments_array as $attachment) { echo attachments_make_link($attachment), $attachment['thumbnail'] == 'N' ? "<br />\n" : "\n"; } echo " </p>\n"; echo " </td>\n"; echo " </tr>\n"; } } echo " </table>\n"; if (!$is_preview) { echo " <table width=\"100%\" class=\"postresponse\" cellspacing=\"1\" cellpadding=\"0\">\n"; echo " <tr>\n"; echo " <td align=\"left\" width=\"25%\">"; echo " <div class=\"message_vote_form\" data-msg=\"{$tid}.{$message['PID']}\">\n"; echo " ", message_get_vote_form_html($message), "\n"; echo " </div>\n"; echo " </td>\n"; echo " <td width=\"50%\" style=\"white-space: nowrap\">"; if ($msg_count > 0) { if (!$closed && session::check_perm(USER_PERM_POST_CREATE, $folder_fid) || $perm_is_moderator) { if ($quick_reply == 'Y') { echo "", html_style_image('quick_reply', "Quick Reply"), "\n"; echo "<a href=\"Javascript:void(0)\" data-msg=\"{$tid}.{$message['PID']}\" target=\"_self\" class=\"quick_reply_link\">", gettext("Quick Reply"), "</a>\n"; } else { echo "", html_style_image('post', "Reply"), ""; echo " <a href=\"post.php?webtag={$webtag}&reply_to={$tid}.{$message['PID']}&return_msg={$tid}.{$first_msg}\" target=\"_parent\" id=\"reply_{$message['PID']}\">", gettext("Reply"), "</a>"; } echo " ", html_style_image('quote_disabled', gettext("Quote"), "quote_img_{$message['PID']}"); echo " <a href=\"post.php?webtag={$webtag}&reply_to={$tid}.{$message['PID']}&quote_list={$message['PID']}&return_msg={$tid}.{$first_msg}\" target=\"_parent\" title=\"", gettext("Quote"), "\" id=\"quote_{$message['PID']}\" data-pid=\"{$message['PID']}\">", gettext("Quote"), "</a>"; if (!session::check_perm(USER_PERM_PILLORIED, 0) && ($_SESSION['UID'] != $message['FROM_UID'] && $from_user_permissions & USER_PERM_PILLORIED || $_SESSION['UID'] == $message['FROM_UID']) && session::check_perm(USER_PERM_POST_EDIT, $folder_fid) && ($post_edit_time == 0 || time() - $message['CREATED'] < $post_edit_time * HOUR_IN_SECONDS) && forum_get_setting('allow_post_editing', 'Y') || $perm_is_moderator) { if ($is_poll && $message['PID'] == 1) { if (!poll_is_closed($tid) || $perm_is_moderator) { echo " ", html_style_image('edit', "Edit Poll"), ""; echo " <a href=\"edit_poll.php?webtag={$webtag}&msg={$tid}.{$message['PID']}&return_msg={$tid}.{$first_msg}\" target=\"_parent\">", gettext("Edit Poll"), "</a>\n"; } } else { echo " ", html_style_image('edit', "Edit"), ""; echo " <a href=\"edit.php?webtag={$webtag}&msg={$tid}.{$message['PID']}&return_msg={$tid}.{$first_msg}\" target=\"_parent\">", gettext("Edit"), "</a>"; } } } } else { echo " "; } echo "</td>\n"; echo " <td align=\"right\" style=\"white-space: nowrap\">\n"; echo " <span class=\"post_options\" id=\"post_options_{$tid}_{$first_msg}_{$message['PID']}\">\n"; echo " ", gettext("More"), " ", html_style_image('post_options', gettext("More"), 'post_options'), "\n"; echo " </span>\n"; echo " </td>\n"; echo " </tr>"; echo " </table>\n"; } else { echo " <table width=\"100%\" class=\"postresponse\" cellspacing=\"1\" cellpadding=\"0\">\n"; echo " <tr>\n"; echo " <td> </td>\n"; echo " </tr>\n"; echo " </table>\n"; } } echo " </td>\n"; echo " </tr>\n"; echo " </table>\n"; echo " </td>\n"; if ($in_list && !$is_preview) { message_display_navigation($tid, $message['PID'], $first_msg, $msg_count, $posts_per_page); } echo " </tr>\n"; echo " </table>\n"; if ($in_list && isset($message['PID'])) { echo " <div id=\"quick_reply_{$message['PID']}\"></div>\n"; } echo "</div>\n"; echo $in_list ? "<br />\n" : ''; }