PNG
IHDR ; IDATxܻn0K
)(pA7LeG{ §㻢|ذaÆ
6lذaÆ
6lذaÆ
6lom$^yذag5 bÆ
6lذaÆ
6lذa{
6lذaÆ
`}HFkm,mӪôô!x|'ܢ˟;E:9&ᶒ}{v]n&6
h_tڠ͵-ҫZ;Z$.Pkž)!o>}leQfJTu іچ\X=8Rن4`Vwl>nG^is"ms$ui?wbs[m6K4O.4%/bC%tMז -lG6mrz2s%9s@-k9=)kB5\+͂ZsٲRn~GRCwIcIn7jJhۛNCS|j08yiHKֶۛkɈ+;SzL /F*\Ԕ#"5m2[S=gnaPeғL
lذaÆ
6l^ḵaÆ
6lذaÆ
6lذa;
_ذaÆ
6lذaÆ
6lذaÆ
R IENDB`
buddy_list) {
$usr->buddy_list = unserialize($usr->buddy_list);
}
if ($usr->ignore_list) {
$usr->ignore_list = unserialize($usr->ignore_list);
if (isset($usr->ignore_list[1])) {
$usr->ignore_list[0] =& $usr->ignore_list[1];
}
}
/* Handle temporarily un-hidden users. */
if (isset($_GET['reveal'])) {
$_GET['reveal'] = htmlspecialchars((string)$_GET['reveal']);
foreach(explode(':', $_GET['reveal']) as $v) {
$v = (int) $v;
if (isset($usr->ignore_list[$v])) {
$usr->ignore_list[$v] = 0;
}
}
if ($GLOBALS['FUD_OPT_2'] & 32768) {
define('unignore_tmp', '/'. $_GET['reveal']);
} else {
define('unignore_tmp', '&reveal='. $_GET['reveal']);
}
} else {
define('unignore_tmp', '');
}
} else {
define('unignore_tmp', '');
if (isset($_GET['reveal'])) {
unset($_GET['reveal']);
}
}
$_SERVER['QUERY_STRING_ENC'] = htmlspecialchars($_SERVER['QUERY_STRING']);
function make_tmp_unignore_lnk($id)
{
if ($GLOBALS['FUD_OPT_2'] & 32768 && strpos($_SERVER['QUERY_STRING_ENC'], '?') === false) {
$_SERVER['QUERY_STRING_ENC'] .= '?1=1';
}
if (!isset($_GET['reveal'])) {
return $_SERVER['QUERY_STRING_ENC'] .'&reveal='. $id;
} else {
return str_replace('&reveal='. $_GET['reveal'], unignore_tmp .':'. $id, $_SERVER['QUERY_STRING_ENC']);
}
}
function make_reveal_link($id)
{
if ($GLOBALS['FUD_OPT_2'] & 32768 && strpos($_SERVER['QUERY_STRING_ENC'], '?') === false) {
$_SERVER['QUERY_STRING_ENC'] .= '?1=1';
}
if (empty($GLOBALS['__FMDSP__'])) {
return $_SERVER['QUERY_STRING_ENC'] .'&rev='. $id;
} else {
return str_replace('&rev='. $_GET['rev'], reveal_lnk .':'. $id, $_SERVER['QUERY_STRING_ENC']);
}
}
/* Draws a message, needs a message object, user object, permissions array,
* flag indicating wether or not to show controls and a variable indicating
* the number of the current message (needed for cross message pager)
* last argument can be anything, allowing forms to specify various vars they
* need to.
*/
function tmpl_drawmsg($obj, $usr, $perms, $hide_controls, &$m_num, $misc)
{
$o1 =& $GLOBALS['FUD_OPT_1'];
$o2 =& $GLOBALS['FUD_OPT_2'];
$a = (int) $obj->users_opt;
$b =& $usr->users_opt;
$MOD =& $GLOBALS['MOD'];
$next_page = $next_message = $prev_message = '';
/* Draw next/prev message controls. */
if (!$hide_controls && $misc) {
/* Tree view is a special condition, we only show 1 message per page. */
if ($_GET['t'] == 'tree' || $_GET['t'] == 'tree_msg') {
$prev_message = $misc[0] ? '
' : '';
$next_message = $misc[1] ? '
' : '';
} else {
/* Handle previous link. */
if (!$m_num && $obj->id > $obj->root_msg_id) { /* prev link on different page */
$prev_message = '
';
} else if ($m_num) { /* Inline link, same page. */
$prev_message = '
';
}
/* Handle next link. */
if ($obj->id < $obj->last_post_id) {
if ($m_num && !($misc[1] - $m_num - 1)) { /* next page link */
$next_message = '
';
$next_page = 'Next Page
';
} else {
$next_message = '
';
}
}
}
++$m_num;
}
$user_login = $obj->user_id ? $obj->login : $GLOBALS['ANON_NICK'];
/* Check if the message should be ignored and it is not temporarily revelead. */
if ($usr->ignore_list && !empty($usr->ignore_list[$obj->poster_id]) && !isset($GLOBALS['__FMDSP__'][$obj->id])) {
return !$hide_controls ? '
| '.($obj->user_id ? 'Message by '.$obj->login.' is ignored' : ''.$GLOBALS['ANON_NICK'].' is ignored' ) .' [reveal message] [reveal all messages by '.$user_login.'] [stop ignoring this user] | '.$prev_message.$next_message.' |
';
}
if ($obj->facebook) {
$im .= '
';
}
if ($obj->yahoo) {
$im .= '
';
}
if ($obj->jabber) {
$im .= '
';
}
if ($obj->google) {
$im .= '
';
}
if ($obj->skype) {
$im .= '
';
}
if ($obj->twitter) {
$im .= '
';
}
if ($im) {
$dmsg_im_row = ''.$im.'| '.$obj->poll_name.'[ '.$obj->total_votes.' '.convertPlural($obj->total_votes, array('vote','votes')).' ] |
|---|
[Updated on: '.print_date('%a, %d %B %Y %H:%M', $obj->update_stamp).'] by Moderator
'; } else if ($obj->updated_by == $obj->poster_id && $o1 & 33554432) { $modified_message = '[Updated on: '.print_date('%a, %d %B %Y %H:%M', $obj->update_stamp).']
'; } else { $modified_message = ''; } } else { $modified_message = ''; } if ($_GET['t'] != 'tree' && $_GET['t'] != 'msg') { $lnk = d_thread_view; } else { $lnk =& $_GET['t']; } $rpl = ''; if (!$hide_controls) { /* Show reply links, eg: [message #1 is a reply to message #2]. */ if ($o2 & 536870912) { if ($obj->reply_to && $obj->reply_to != $obj->id) { $rpl = '[message #'.$obj->id.' is a reply to message #'.$obj->reply_to.']'; } else { $rpl = '[message #'.$obj->id.']'; } } /* Little trick, this variable will only be available if we have a next link leading to another page. */ if (empty($next_page)) { $next_page = ' '; } // Edit button if editing is enabled, EDIT_TIME_LIMIT has not transpired, and there are no replies. if (_uid && ($perms & 16 || (_uid == $obj->poster_id && (!$GLOBALS['EDIT_TIME_LIMIT'] || __request_timestamp__ - $obj->post_stamp < $GLOBALS['EDIT_TIME_LIMIT'] * 60 ) && (($GLOBALS['FUD_OPT_3'] & 1024) || $obj->id == $obj->last_post_id)) ) ) { $edit_link = '| '.($obj->icon && !$hide_controls ? ' |
'.print_date('%a, %d %B %Y %H:%M', $obj->post_stamp).' '.$prev_message.$next_message.' | |||
|
||||
|
'.$msg_body.'
'.$drawmsg_file_attachments.'
'.(!$hide_controls ? ''.(($obj->sig && $o1 & 32768 && $obj->msg_opt & 1 && $b & 4096 && !($a & 67108864)) ? ' '.$obj->sig.'' : '' ) .' '.$modified_message.'' : '' ) .'
| ||||
|
||||