function discussion_forum_parse_output($text, $options = array()) { // BBcode part $bbcode_ruleset = array('' => array('type' => BBCODE_TYPE_ROOT), 'i' => array('type' => BBCODE_TYPE_NOARG, 'open_tag' => '<i>', 'close_tag' => '</i>'), 'img' => array('type' => BBCODE_TYPE_NOARG, 'open_tag' => '<img src="', 'close_tag' => '" class="forum_post_image" />', 'childs' => ''), 'b' => array('type' => BBCODE_TYPE_NOARG, 'open_tag' => '<b>', 'close_tag' => '</b>'), 'spoiler' => array('type' => BBCODE_TYPE_NOARG, 'open_tag' => '<div class="spoiler"><span>Spoiler: <button class="spoiler_control">Visa</button></span><span class="spoiler_content">', 'close_tag' => '</span></div>', 'childs' => '')); $text = clickable_links($text); if (isset($options['search_highlight'])) { $options['search_highlight'] = is_array($options['search_highlight']) ? $options['search_highlight'] : explode(' ', $options['search_highlight']); $safe_wordlist = array_map('preg_quote', $options['search_highlight']); $pattern = '/(' . str_replace('/', '\\/', implode('|', $safe_wordlist)) . ')/'; echo $pattern . "\n"; $replacement = '<strong class="search_highlight">$1</strong>'; $text = preg_replace($pattern, $replacement, $text); } $text = nl2br($text); $text = str_replace(array("\n", "\r"), '', $text); $bbcode_handler = bbcode_create($bbcode_ruleset); $text = bbcode_parse($bbcode_handler, $text); $pattern = '/\\[svar:(.+?):([0-9]+?)\\](.*?)(\\[\\/svar\\])/'; $replacement = '<div class="answer" id="forum_answer_to_$2"><strong>Svar till <a href="/traffa/quicksearch.php?username=$1">$1</a></strong> [<a href="/diskussionsforum/gaa_till_post.php?post_id=$2">Gå till post</a>]: $3</div>'; $text = preg_replace($pattern, $replacement, $text); $pattern = '/\\[svar:(.+?)\\](.+?)(\\[\\/svar\\])/'; $replacement = '<div class="answer"><a href="?$1">$1</a>: $2</div>'; $text = preg_replace($pattern, $replacement, $text); $pattern = '/\\[poll:(.+?)\\]/'; $text = preg_replace_callback($pattern, 'discussion_forum_insert_poll', $text); $pattern = '/\\@(.+?)\\@/'; $replacement = '<span class="forum_answer" id="$1">Svar till $1</span>'; $text = preg_replace($pattern, $replacement, $text); $pattern = '/\\[tillagg:(.+?):(.+?)\\](.*?)(\\[\\/tillagg\\])/'; $replacement = '<div class="answer" id="forum_answer_to_$2">Tilläg av <a href="/traffa/quicksearch.php?username=$1">$1</a> klockan $2<br />$3</div>'; $text = preg_replace_callback($pattern, 'discussion_forum_tillagg_callback', $text); $code_languages = array('php', 'html', 'javascript', 'css', 'C#', 'asp', 'joar'); // Note: The pattern modifier /i makes the pattern case-insensitive. $pattern = '/\\[code:(' . implode('|', $code_languages) . ')\\](.*?)(\\[\\/code\\])/i'; $text = preg_replace_callback($pattern, 'discussion_forum_code_tag_callback', $text); // Note: See above for explanation on /i, /e evaluates (an escaped version) of the search string. $pattern = '/\\[code\\](.*?)\\[\\/code\\]/ie'; //$text = preg_replace($pattern, 'discussion_forum_code_tag_callback(array(1 => "", 2 => "$1"))', $text); // $text = ($_SESSION['preferences']['forum_enable_smilies'] == 1) ? setSmilies($text) : $text; if (isset($options['post']['quality_level']) && $options['post']['quality_level'] <= 3 && $_SESSION['preferences']['forum_enable_smilies'] == 1) { $text = setSmilies($text); } return $text; }
function list_entries($recipient, $entries, $offset = 0, $filter = 0) { global $hp_includepath; if ($offset < 1 || !is_numeric($offset)) { $offset = 0; } $list_sql = 'SELECT gb.id, gb.timestamp, gb.message, gb.sender, gb.read, gb.answered, gb.forum_post, login.username, info.image, '; $list_sql .= 'info.birthday, info.gender, is_private, zip_codes.* '; $list_sql .= 'FROM traffa_guestbooks AS gb, login, userinfo AS info, zip_codes '; if ($filter > 0) { $list_sql .= 'WHERE ('; $list_sql .= '(gb.recipient ="' . $recipient . '" AND gb.sender = "' . $filter . '") '; $list_sql .= 'OR (gb.recipient = "' . $filter . '" AND gb.sender = "' . $recipient . '") '; $list_sql .= ') AND login.id = gb.sender AND info.userid = gb.sender AND zip_codes.zip_code = info.zip_code '; } else { $list_sql .= 'WHERE gb.recipient = "' . $recipient . '" AND zip_codes.zip_code = info.zip_code '; } $list_sql .= 'AND login.id = gb.sender AND info.userid = gb.sender AND deleted = 0 '; if (isset($_SESSION['login']['id'])) { $list_sql .= 'AND (gb.is_private = 0 OR gb.sender = ' . $_SESSION['login']['id'] . ' OR gb.recipient = ' . $_SESSION['login']['id'] . ') '; } else { $list_sql .= 'AND gb.is_private = 0 '; } if ($filter > 0) { $list_sql .= 'ORDER BY gb.id DESC'; } else { $list_sql .= 'ORDER BY gb.id DESC LIMIT ' . $offset . ', ' . GUESTBOOK_MESSAGES_PER_PAGE; } $list_result = mysql_query($list_sql) or die(report_sql_error($list_sql)); if ($filter == 0) { echo '<p class="subtitle">Gästbok - ' . cute_number($entries) . ' inlägg</p>' . "\n"; } else { echo '<p class="subtitle">Gästbok - Visar historik</p>' . "\n"; } if ($offset > 0) { echo ' - sida ' . intval($offset / GUESTBOOK_MESSAGES_PER_PAGE + 1) . ' av ' . intval($entries / GUESTBOOK_MESSAGES_PER_PAGE + 1); } echo '</p>' . "\n"; $unread = array(); if (true) { while ($entry = mysql_fetch_assoc($list_result)) { if ($entry['read'] != 1) { rounded_corners_top(array('color' => 'orange_deluxe', 'id' => 'gb_entry_' . $entry['id'])); } else { rounded_corners_top(array('color' => 'blue_deluxe', 'id' => 'gb_entry_' . $entry['id'])); $button_color = 'blue_'; } echo '<div class="entry_picture">' . "\n"; if ($entry['image'] == 1 || $entry['image'] == 2) { echo ui_avatar($entry['sender']); } echo '</div>' . "\n"; echo '<div class="entry_main">' . "\n"; echo '<div class="entry_info">' . "\n"; echo '<span class="gb_private" id="gb_private_' . $entry['id'] . '_label">'; echo $entry['is_private'] == 1 ? 'Detta inlägg är privat' : ''; echo '</span>' . "\n"; echo '<span class="gb_unanswered" id="gb_unanswered_' . $entry['id'] . '_label">'; echo $entry['answered'] != 'Y' ? 'Obesvarat' : ''; echo '</span>' . "\n"; echo '<span class="timestamp">Skrevs ' . fix_time($entry['timestamp']) . '</span>'; echo '<a href="/traffa/profile.php?id=' . $entry['sender'] . '">' . $entry['username'] . '</a>' . "\n"; echo $entry['gender'] == 'm' ? ' Pojke' : ''; echo $entry['gender'] == 'f' ? ' Flicka' : ''; echo $entry['birthday'] != '0000-00-00' ? ' ' . date_get_age($entry['birthday']) . ' år' : ''; echo strlen($entry['spot']) > 0 ? ' från <a style="cursor: pointer;" onclick="window.open(\'http://www.hitta.se/LargeMap.aspx?ShowSatellite=false&pointX=' . $entry['y_rt90'] . '&pointY=' . $entry['x_rt90'] . '&cx=' . $entry['y_rt90'] . '&cy=' . $entry['x_rt90'] . '&z=6&name=' . $entry['username'] . '%20i%20' . urlencode($entry['spot']) . '\', \'user_map_3\', \'location=false, width=750, height=500\');">' . $entry['spot'] . '</a>' : ''; echo '</div>' . "\n"; echo '<p>' . "\n"; echo setsmilies(nl2br($entry['message'])); // preint_r($entry); echo '</p>' . "\n"; echo '</div>' . "\n"; echo '<div class="entry_controls">' . "\n"; echo $recipient == $_SESSION['login']['id'] && $entry['sender'] != $_SESSION['login']['id'] ? '<a href="/hamsterpaj/abuse.php?report_type=guestbook_entry&reference_id=' . $entry['id'] . '" class="abuse_button"><img src="http://images.hamsterpaj.net/abuse.png" /></a> ' . "\n" : ''; echo $recipient == $_SESSION['login']['id'] && $entry['sender'] != $_SESSION['login']['id'] ? '<button class="' . $button_color . 'button_70" onclick="gb_block_user(\'' . $entry['username'] . '\');">Blockera</button> ' . "\n" : ''; echo $recipient == $_SESSION['login']['id'] || $entry['sender'] == $_SESSION['login']['id'] ? '<button id="gb_private_' . $entry['id'] . '" class="' . $button_color . 'button_80" onclick="gb_private(' . $entry['id'] . ');"' . ($entry['is_private'] == 1 ? ' style="display: none;"' : '') . '>Privatisera</button> ' . "\n" : ''; echo $recipient == $_SESSION['login']['id'] && $entry['sender'] != $_SESSION['login']['id'] ? '<button id="gb_unprivate_' . $entry['id'] . '" class="' . $button_color . 'button_90" onclick="gb_unprivate(' . $entry['id'] . ');"' . ($entry['is_private'] == 1 ? '' : ' style="display: none;"') . '>Avprivatisera</button> ' . "\n" : ''; echo '<button class="' . $button_color . 'button_70" onclick="gb_history(' . $recipient . ', ' . $entry['sender'] . ');">Historik</button> ' . "\n"; echo '<button class="' . $button_color . 'button_60" onclick="gb_goto(' . $entry['sender'] . ');">Gå till</button> ' . "\n"; echo $recipient == $_SESSION['login']['id'] && $entry['sender'] != $_SESSION['login']['id'] ? '<button class="' . $button_color . 'button_60" onclick="gb_remove(' . $entry['id'] . ', \'' . $entry['username'] . '\', \'' . fix_time($entry['timestamp']) . '\');">Ta bort</button> ' . "\n" : ''; echo $recipient == $_SESSION['login']['id'] && $entry['sender'] != $_SESSION['login']['id'] ? '<button class="' . $button_color . 'button_50" onclick="gb_answer(\'' . $entry['username'] . '\', ' . $entry['sender'] . ', ' . $entry['id'] . ');">Svara</button> ' . "\n" : ''; echo '</div>' . "\n"; if ($entry['read'] != 1) { rounded_corners_bottom(array('color' => 'orange_deluxe')); } else { rounded_corners_bottom(array('color' => 'blue_deluxe')); } if ($entry['read'] == 0) { array_push($unread, $entry['id']); } } } else { while ($list_data = mysql_fetch_assoc($list_result)) { if ($list_data['read'] == 1) { echo '<div style="background: #f7f7f7">' . "\n"; } else { echo '<div style="background: #ffc777">' . "\n"; } echo '<table class="body"><tr><td style="width: 80px; vertical-align: top;">' . "\n"; if ($list_data['image'] == 1 || $list_data['image'] == 2) { echo insert_avatar($list_data['sender']); } echo '</td>' . "\n" . '<td style="vertical-align: top; width: 650px;">' . "\n"; if ($list_data['is_private'] == 1) { echo '<b>Detta inlägg är privat</b>' . "\n"; } if ($list_data['forum_post'] > 0) { echo '<div class="orange_faded_div" style="width: auto;">Detta är en kommentar på ett forumsinlägg. <a href="javascript: void(0);" onclick="window.open(\'/forum_new/read_post_popup.php?id=' . $list_data['forum_post'] . '\', Math.random(), \'width=600, height=450, scrollbars=yes\');">Läs inlägget i en popup</a> eller <a href="/forum_new/index.php?action=redirect_to_post&post_id=' . $list_data['forum_post'] . '">gå till tråden i forumet</a>.</div>'; } if ($_SESSION['login']['id'] == $recipient) { $reply_status = $list_data['answered'] == 'Y' ? null : ' Obesvarat'; } echo '<p style="color: grey;">'; echo $list_data['read'] == 0 ? '<strong>' : null; echo '(skrevs ' . fix_time($list_data['timestamp']) . $reply_status . ')'; echo $list_data['read'] == 0 ? '</strong>' : null; echo '<br />' . "\n"; echo '<a href="/traffa/profile.php?id=' . $list_data['sender'] . '"><b>' . $list_data['username'] . '</b></a> '; if ($list_data['gender'] == 'm') { echo 'Kille '; } elseif ($list_data['gender'] == 'f') { echo 'Tjej '; } $userage = date_get_age($list_data['birthday']); if ($userage > 0) { echo $userage . ' år '; } if (strlen($list_data['spot']) > 0) { echo 'från ' . $list_data['spot'] . ' '; } echo '</p>' . "\n"; echo '<p>'; echo setSmilies(nl2br($list_data['message'])); echo '</p>' . "\n"; echo '<p style="text-align: right;">' . "\n"; echo '<form action="/traffa/userblocks.php" method="post" style="display: inline; float: right;">' . "\n"; if ($_SESSION['login']['id'] == $recipient && $filter == 0) { echo '<input type="submit" value="Blockera" class="button_70" style="display: inline;" onclick="return confirm(\'Du är på väg att blockera avsändaren från att skicka fler gästboksinlägg och meddelanden till dig\');" />' . "\n"; } if ($filter == 0) { echo '<input type="button" onClick="window.location=\'' . $_SERVER['PHP_SELF'] . '?action=history&view=' . $recipient . '&remote=' . $list_data['sender'] . '\';" class="button_70" value="Historik" /> ' . "\n"; } echo '<input type="button" onclick="window.location=\'' . $_SERVER['PHP_SELF'] . '?view=' . $list_data['sender'] . '\';" class="button_60" value="Gå till" /> ' . "\n"; if ($_SESSION['login']['id'] == $recipient) { echo '<input type="button" onclick="window.open(\'/traffa/gb-reply.php?action=reply&username='******'username'] . '&userid=' . $list_data['sender'] . '&answereid=' . $list_data['id']; echo '\',\'\' ,\'toolbar=no, location=no, directories=no, status=no, menubar=no, scrollbars=no, resizable=no, width=250, height=200\');" value="Svara" class="button_50" /> ' . "\n"; if ($filter == 0) { echo '<input type="button" onclick="var name=confirm(\'Vill du verkligen ta bort inlägget?\'); if(name==true){ window.location=\'' . $_SERVER['PHP_SELF'] . '?action=delete&entry_id=' . $list_data['id'] . '&return_offset=' . $_GET['offset'] . '\'; }" value="Ta bort" class="button_70" />' . "\n"; echo '<input type="hidden" name="addblock" value="' . $list_data['username'] . '" />' . "\n"; } } echo '</form>' . "\n"; if ($_SESSION['login']['id'] == $recipient && $filter == 0) { echo '<button class="button_80" style="display: inline;" onclick="idiot_report(\'' . $list_data['sender'] . '\');" />Rapportera</button>' . "\n"; } echo '</p>' . "\n"; echo '</td></tr>' . "\n" . '</table>' . "\n"; echo '</div>' . "\n"; echo '<br />' . "\n"; if ($list_data['read'] == 0) { array_push($unread, $list_data['id']); } } } if ($offset > 0) { echo '<input type="button" onclick="window.location=\'' . $_SERVER['PHP_SELF'] . '?offset=' . intval($offset - GUESTBOOK_MESSAGES_PER_PAGE) . '&view=' . $recipient . '\';" value="<<Föregående sida" class="button" style="float: left;" />'; } if ($offset + GUESTBOOK_MESSAGES_PER_PAGE < $entries && $entries > GUESTBOOK_MESSAGES_PER_PAGE) { echo '<input type="button" onclick="window.location=\'' . $_SERVER['PHP_SELF'] . '?offset=' . intval($offset + GUESTBOOK_MESSAGES_PER_PAGE) . '&view=' . $recipient . '\';" value="Nästa sida>>" class="button" style="float: right;" />'; } echo '<div style="text-align: center; margin-bottom: 15px;">'; for ($pages = 1; $pages < intval($entries / GUESTBOOK_MESSAGES_PER_PAGE + 1) && $pages < 32; $pages++) { echo '<a href="' . $_SERVER['PHP_SELF'] . '?view=' . $recipient . '&offset=' . ($pages - 1) * GUESTBOOK_MESSAGES_PER_PAGE . '">' . $pages . '</a> '; } echo '</div>'; if ($recipient == $_SESSION['login']['id'] && $filter == 0) { $read_sql = 'UPDATE traffa_guestbooks SET `read` = 1 WHERE id = 1 '; //Bara för att göra foreach-loopen smidigare :P foreach ($unread as $current) { $read_sql .= 'OR id = ' . $current . ' '; } mysql_query($read_sql) or die(report_sql_error($read_sql, __FILE__, __LINE__)); } }
function guestbook_list($entries) { $out .= '<ul class="guestbook_entries">' . "\n"; foreach ($entries as $entry) { $out .= "\n\n"; $out .= '<!-- Post #' . cute_number($entry['id']) . ' by ' . $entry['username'] . ' at ' . date('Y-m-d H:i:s', $entry['timestamp']) . '-->' . "\n"; /* $class = ($entry['read'] == 0) ? ' class="unread"': ''; $out .= '<li' . $class . '>' . "\n"; if($entry['image'] == 1 || $entry['image'] == 2) { $out .= '<img src="http://images.hamsterpaj.net/images/users/thumb/' . $entry['sender'] . '.jpg" class="user_avatar" id="entry_' . $entry['id'] . '_photo" />' . "\n"; } else { $out .= '<img src="http://images.hamsterpaj.net/images/users/no_image_mini.png" class="user_avatar" id="entry_' . $entry['id'] . '_photo" />' . "\n"; } $out .= '<div class="container">' . "\n"; $out .= '<div class="top_bg">' . "\n"; $out .= '<div class="bottom_bg">' . "\n"; */ $options['user_id'] = $entry['sender']; $options['type'] = $entry['read'] == 0 ? 'unread' : 'standard'; $out .= message_top($options); $out .= '<div id="guestbook_entry_' . $entry['id'] . '">' . "\n"; $out .= '<span class="timestamp">' . fix_time($entry['timestamp']) . '</span>' . "\n"; $out .= '<a href="/traffa/profile.php?id=' . $entry['sender'] . '">' . $entry['username'] . '</a> ' . "\n"; $genders = array('f' => 'F', 'm' => 'P'); $out .= $genders[$entry['gender']]; $out .= date_get_age($entry['birthday']) > 0 ? date_get_age($entry['birthday']) : ''; $out .= '<span class="unanswered" id="unanswered_label_' . $entry['id'] . '"' . $style . '>' . "\n"; $out .= $entry['answered'] != 'Y' ? '(Obesvarat)' : ''; $out .= '</span>' . "\n"; $style = $entry['is_private'] == 0 ? ' style="display: none;"' : ''; $out .= '<span class="private" id="private_label_' . $entry['id'] . '"' . $style . '>(Privat)</span>' . "\n"; $out .= '<p>' . setSmilies(nl2br($entry['message'])) . '</p>' . "\n"; $out .= '<p class="gb_entry_controls">' . "\n"; $out .= login_checklogin() && $entry['recipient'] == $_SESSION['login']['id'] && $entry['sender'] != $_SESSION['login']['id'] ? '<a href="/traffa/guestbook.php?view=' . $entry['sender'] . '" class="gb_reply_control" id="reply_control_' . $entry['id'] . '">Svara</a>' . "\n" : ''; $out .= '<a href="/traffa/guestbook.php?view=' . $entry['sender'] . '&history=' . $entry['recipient'] . '">Historik</a>' . "\n"; $out .= '<a href="/traffa/guestbook.php?view=' . $entry['sender'] . '">Gå till</a>' . "\n"; $out .= $entry['recipient'] == $_SESSION['login']['id'] ? '<a href="/installningar/userblock.php?action=block&username='******'username'] . '" class="gb_block_control">Blockera</a>' . "\n" : ''; if (login_checklogin() && $entry['recipient'] == $_SESSION['login']['id'] && $entry['sender'] != $_SESSION['login']['id']) { $out .= '<a href="/traffa/guestbook.php?view=' . $entry['sender'] . '" class="gb_delete_control" id="delete_control_' . $entry['id'] . '">Ta bort</a>' . "\n"; } if (login_checklogin() && $entry['recipient'] == $_SESSION['login']['id'] && $entry['sender'] != $_SESSION['login']['id']) { $private_style = $entry['is_private'] == 1 ? ' style="display: none;"' : ''; $unprivate_style = $entry['is_private'] == 0 ? ' style="display: none;"' : ''; $out .= '<a href="/traffa/guestbook.php?view=' . $entry['sender'] . '" class="gb_private_control" id="private_control_' . $entry['id'] . '"' . $private_style . '>'; $out .= 'Gör privat</a>' . "\n"; $out .= '<a href="/traffa/guestbook.php?view=' . $entry['sender'] . '" class="gb_unprivate_control" id="unprivate_control_' . $entry['id'] . '"' . $unprivate_style . '>'; $out .= 'Gör offentligt</a>' . "\n"; $out .= '<a href="/hamsterpaj/abuse.php?report_type=guestbook_entry&reference_id=' . $entry['id'] . '" class="abuse_button"><img src="http://images.hamsterpaj.net/abuse.png" /></a>' . "\n"; } $out .= '</p>' . "\n"; $out .= guestbook_form(array('recipient' => $entry['sender'], 'reply-to' => $entry['id'], 'form_id' => 'gb_reply_form_' . $entry['id'])); $out .= '</div>' . "\n"; $out .= message_bottom(); /* $out .= '</div>' . "\n"; $out .= '</div>' . "\n"; $out .= '</div>' . "\n"; $out .= '</li>' . "\n"; */ } $out .= '</ul>' . "\n"; return $out; }
function profile_presentation_parse($options) { if (!isset($options['presentation_text'])) { return 'Presentation data does not exist.'; } $bbcode_ruleset = array('' => array('type' => BBCODE_TYPE_ROOT), 'i' => array('type' => BBCODE_TYPE_NOARG, 'open_tag' => '<i>', 'close_tag' => '</i>'), 'b' => array('type' => BBCODE_TYPE_NOARG, 'open_tag' => '<strong>', 'close_tag' => '</strong>'), 'rubrik' => array('type' => BBCODE_TYPE_NOARG, 'open_tag' => '<h2>', 'close_tag' => '</h2>', 'childs' => ''), 'underrubrik' => array('type' => BBCODE_TYPE_NOARG, 'open_tag' => '<h3>', 'close_tag' => '</h3>', 'childs' => ''), 'minirubrik' => array('type' => BBCODE_TYPE_NOARG, 'open_tag' => '<h4>', 'close_tag' => '</h4>', 'childs' => '')); //$options['presentation_text'] = clickable_links($options['presentation_text']); $options['presentation_text'] = nl2br($options['presentation_text']); $options['presentation_text'] = str_replace(array("\n", "\r"), '', $options['presentation_text']); $bbcode_handler = bbcode_create($bbcode_ruleset); $options['presentation_text'] = bbcode_parse($bbcode_handler, $options['presentation_text']); $pattern = '/\\[poll:(.+?)\\]/'; $options['presentation_text'] = preg_replace_callback($pattern, 'profile_presentation_poll_tag_callback', $options['presentation_text']); $options['presentation_text'] = setSmilies($options['presentation_text']); //$options['presentation_text'] = profile_presentation_friends_tag_callback($options); $pattern = '/\\[link:(profile\\]([a-zA-Z0-9_-]+)|webb\\](.+?))\\[\\/link\\]/'; $options['presentation_text'] = preg_replace_callback($pattern, 'profile_presentation_link_tag_callback', $options['presentation_text']); $pattern = '/\\[link:(photos|guestbook)\\]/'; $options['presentation_text'] = preg_replace_callback($pattern, 'profile_presentation_link_tag_callback', $options['presentation_text']); $pattern = '/\\[fotoalbum:([0-9]+)\\]/'; $options['presentation_text'] = str_replace('%USERID%', $options['user_id'], preg_replace_callback($pattern, 'profile_presentation_photos_callback', $options['presentation_text'])); $output .= '<div class="profile_presentation_text">'; $output .= $options['presentation_text']; $output .= '</div>'; return $output; }
while ($data = mysql_fetch_assoc($result)) { $groups .= '<a style="font-weight:bold;" href="/traffa/groups.php?action=goto&groupid=' . $data['groupid'] . '">' . $data['name'] . '</a> '; } if (isset($groups)) { echo '<div class="contentPostbox" style="border-bottom:0px;">'; echo 'Grupper jag är med i: ' . $groups; echo '</div>'; } if ($userdata['traffa']['bgimage'] > 100) { $div_extra = ' background-image: url(\'' . $hp_url . 'images/traffabgs/' . $userdata['traffa']['bgimage'] . '.jpg\');'; } elseif ($userdata['traffa']['bgimage'] > 0) { $div_extra = ' background-image: url(\'' . $hp_url . 'images/traffabgs/' . $userdata['traffa']['bgimage'] . '.png\');'; } echo '<div class="contentPostbox" style="' . $div_extra . '">'; if (strlen($userdata['traffa']['presentation']) > 0) { echo setSmilies(nl2br(parseAll(stripslashes($userdata['traffa']['presentation']))), 25); } else { echo '<i>' . $userdata['login']['username'] . ' har inte skrivit någon presentation än.</i>'; } echo '</div><br />'; if ($_SESSION['login']['userlevel'] >= USERLEVELS_EDIT_PRESENTATION) { echo '<a href="/traffa/admin_edit_presentation.php?id=' . $userid . '">Ändra denna persons presentation</a>'; } if ($userdata['traffa']['personality'] != 0) { echo '<div class="contentPostbox" style="margin-top: 10px">'; echo '<b>Personlighet: ' . $traffaDefPersonalities[$userdata['traffa']['personality']] . '</b><br>'; echo $traffaDefPersonalitiesDesc[$userdata['traffa']['personality']] . '<br><br>'; echo '<font style="font-size: 10px; font-style: italic;">(Denna personlighetsbeskrivning har författats av crew i syfte att underhålla och bör inte tas på för stort allvar.)</font>'; echo '</div>' . "\n"; } $query = 'SELECT i.id, i.name, i.image, i.type, ';
function group_list_messages($options) { $groupid = $options['group_id']; /* Fetch the total messages in group */ $selectquery = 'SELECT message_count AS total, owner FROM groups_list WHERE groupid = ' . $groupid; $result = mysql_query($selectquery) or die(report_sql_error($selectquery)); $data = mysql_fetch_assoc($result); $total_msg = $data['total']; $new_messages = $data['total']; /* Get the group owner */ $owner = $data['owner']; /* Fetch read_msg for this user */ $selectquery = 'SELECT read_msg AS total_read FROM groups_members WHERE groupid = ' . $groupid . ' AND userid = ' . $_SESSION['login']['id']; $result = mysql_query($selectquery) or die(report_sql_error($selectquery)); $data = mysql_fetch_assoc($result); $query = 'UPDATE groups_members SET read_msg = ' . $total_msg . ' WHERE userid = ' . $_SESSION['login']['id'] . ' AND groupid = ' . $groupid; mysql_query($query) or die(report_sql_error($query)); $_SESSION['cache']['groups_notices'][$groupid]['unread_messages'] = 0; $new_messages = $new_messages - $data['total_read']; /* Update the read_msg */ $query = 'SELECT login.username, groups_scribble.userid, groups_scribble.timestamp, groups_scribble.text, groups_scribble.id, userinfo.image, userinfo.birthday FROM login, groups_scribble, userinfo WHERE login.id = groups_scribble.userid AND groups_scribble.groupid = ' . $groupid . ' AND userinfo.userid = groups_scribble.userid AND groups_scribble.deleted = 0 ORDER BY groups_scribble.id DESC LIMIT ' . ($options['page'] - 1) * 100 . ', 100'; //Lef hackar via råd från heggan. Maskroskisseporr ska inte synas för hennes söta ögon. if ($_SESSION['login']['id'] == '148153') { /* Fetch the total messages in group */ $query = 'SELECT login.username, groups_scribble.userid, groups_scribble.timestamp, groups_scribble.text, groups_scribble.id, userinfo.image, userinfo.birthday FROM login, groups_scribble, userinfo WHERE groups_scribble.text NOT LIKE "%maskrosp0rn%" AND login.id = groups_scribble.userid AND groups_scribble.groupid = ' . $groupid . ' AND userinfo.userid = groups_scribble.userid AND groups_scribble.deleted = 0 ORDER BY groups_scribble.id DESC LIMIT ' . ($options['page'] - 1) * 100 . ', 100'; } //Död åt lef $result = mysql_query($query) or die(report_sql_error($query)); /* $count_read - Hur många msg har gruppen */ $count_read = 0; while ($data = mysql_fetch_assoc($result)) { for ($i = 0; $i < count($surveys); $i++) { if ($surveys[$i]['start_time'] >= $data['timestamp']) { echo survey_draw_frame($surveys[$i]); unset($surveys[$i]); } } $div_code = $count_read < $new_messages ? 'orange' : 'blue'; if (preg_match("/(" . $_SESSION['login']['username'] . "|Magic word: igotgodmodeigotgubbmode)/i", $data['text'])) { $div_code = 'orange_deluxe'; } echo rounded_corners_top(array('color' => $div_code)); echo '<table class="body" style="width: 95%;"><tr><td style="vertical-align: top; width: 75px;">'; if ($data['image'] == 1 || $data['image'] == 2) { echo ui_avatar($data['userid']); } else { echo '<img src="' . IMAGE_URL . 'user_no_image.png" alt="Ingen visningsbild"/>'; } echo '</td><td style="vertical-align: top;">'; echo fix_time($data['timestamp']) . ' <a href="javascript:void(0);" onclick="javascript:document.postform.group_message.value=document.postform.group_message.value + \'' . $data['username'] . ': \';document.postform.group_message.focus();">[^]</a><br/>'; echo '<a href="/traffa/profile.php?id=' . $data['userid'] . '">'; echo '<b>' . ($data['userid'] == 43273 ? '<span style="color: #FF60B6">GheyAtrapp</span>' : $data['username']) . '</b></a> '; if ($owner == $_SESSION['login']['id'] || is_privilegied('groups_superadmin')) { echo '<a href="' . $_SERVER['PHP_SELF'] . '?action=remove_post&groupid=' . $groupid . '&postid=' . $data['id'] . '" onclick="return confirm(\'Vill du verkligen ta bort posten?\')">[Ta bort]</a>'; } echo ui_birthday_cake($data['birthday']) . ' '; echo '<br/>'; echo setSmilies(discussion_forum_parse_output($data['text'])); echo '</td></tr></table>'; echo rounded_corners_bottom(array('color' => $div_code)); $count_read++; } }
echo rounded_corners_top(array('color' => $div_code)); echo '<table class="body" style="width: 95%;"><tr><td style="vertical-align: top; width: 75px;">'; if ($data['image'] == 1 || $data['image'] == 2) { echo ui_avatar($data['userid']); } else { echo '<img src="' . IMAGE_URL . 'user_no_image.png" alt="Ingen visninsbild"/>'; } echo '</td><td style="vertical-align: top;">'; echo fix_time($data['timestamp']) . ' <a href="javascript:void(0);" onclick="javascript:document.postform.group_message.value=document.postform.group_message.value + \'' . $data['username'] . ': \';document.postform.group_message.focus();">[^]</a><br/>'; echo '<a href="/traffa/profile.php?id=' . $data['userid'] . '">'; echo '<b>' . ($data['userid'] == 43273 ? '<span style="color: #FF60B6">GheyAtrapp</span>' : $data['username']) . '</b></a> '; if ($owner == $_SESSION['login']['id']) { echo '<a href="' . $_SERVER['PHP_SELF'] . '?action=remove_post&groupid=' . $groupid . '&postid=' . $data['id'] . '">[Ta bort]</a>'; } echo ui_birthday_cake($data['birthday']) . ' '; echo '<br/>'; echo setSmilies(discussion_forum_parse_output($data['text'])); echo '</td></tr></table>'; echo rounded_corners_bottom(array('color' => $div_code)); } } break; default: throw new Exception('No input!'); break; } } catch (Exception $error) { echo '<div class="form_notice_error">'; echo $error->getMessage(); echo '</div>'; }