관리-도구
편집 파일: drawpmsg.inc
<?php /** * copyright : (C) 2001-2021 Advanced Internet Designs Inc. * email : forum@prohost.org * $Id$ * * This program is free software; you can redistribute it and/or modify it * under the terms of the GNU General Public License as published by the * Free Software Foundation; version 2 of the License. **/ function tmpl_drawpmsg($obj, $usr, $mini) { $o1 =& $GLOBALS['FUD_OPT_1']; $o2 =& $GLOBALS['FUD_OPT_2']; $a = (int) $obj->users_opt; $b =& $usr->users_opt; if (!$mini) { $custom_tag = $obj->custom_status ? '<br />'.$obj->custom_status.'' : ''; $c = (int) $obj->level_opt; if ($obj->avatar_loc && $a & 8388608 && $b & 8192 && $o1 & 28 && !($c & 2)) { if (!($c & 1)) { $level_name =& $obj->level_name; $level_image = $obj->level_img ? ' <img src="[[relativeurl]]/images/'.$obj->level_img.'" alt="" />' : ''; } else { $level_name = $level_image = ''; } } else { $level_image = $obj->level_img ? ' <img src="[[relativeurl]]/images/'.$obj->level_img.'" alt="" />' : ''; $obj->avatar_loc = ''; $level_name =& $obj->level_name; } $avatar = ($obj->avatar_loc || $level_image) ? '<td class="avatarPad wo">'.$obj->avatar_loc.$level_image.'</td>' : ''; $dmsg_tags = ($custom_tag || $level_name) ? '<div class="ctags">'.$level_name.$custom_tag.'</div>' : ''; if (($o2 & 32 && !($a & 32768)) || $b & 1048576) { $obj->login = $obj->alias; $online_indicator = (($obj->last_visit + $GLOBALS['LOGEDIN_TIMEOUT'] * 60) > __request_timestamp__) ? '<img src="[[relativeurl]]/theme/default/images/online.png" alt="'.$obj->login.' is currently online" title="'.$obj->login.' is currently online" />' : '<img src="[[relativeurl]]/theme/default/images/offline.png" alt="'.$obj->login.' is currently offline" title="'.$obj->login.' is currently offline" />'; } else { $online_indicator = ''; } if ($obj->location) { if (strlen($obj->location) > $GLOBALS['MAX_LOCATION_SHOW']) { $location = substr($obj->location, 0, $GLOBALS['MAX_LOCATION_SHOW']) .'...'; } else { $location = $obj->location; } $location = '<br /><b>Location:</b> '.$location; } else { $location = ''; } $usr->buddy_list = $usr->buddy_list ? unserialize($usr->buddy_list) : array(); if ($obj->user_id != _uid && $obj->user_id > 0) { $buddy_link = !isset($usr->buddy_list[$obj->user_id]) ? '<a href="[[relativeurl]]/index.php?t=buddy_list&'._rsid.'&add='.$obj->user_id.'&SQ='.$GLOBALS['sq'].'">add to buddy list</a><br />' : '<br />[<a href="[[relativeurl]]/index.php?t=buddy_list&del='.$obj->user_id.'&redr=1&'._rsid.'&SQ='.$GLOBALS['sq'].'">remove from buddy list</a>]'; } else { $buddy_link = ''; } /* Show im buttons if need be. */ if ($b & 16384) { $im = ''; if ($obj->icq) { $im .= '<a href="[[relativeurl]]/index.php?t=usrinfo&id='.$obj->user_id.'&'._rsid.'#icq_msg"><img src="[[relativeurl]]/theme/default/images/icq.png" alt="" title="'.$obj->icq.'" /></a> '; } if ($obj->facebook) { $im .= '<a href="https://www.facebook.com/'.$obj->facebook.'"><img src="[[relativeurl]]/theme/default/images/facebook.png" title="'.$obj->facebook.'" alt="" /></a> '; } if ($obj->yahoo) { $im .= '<a href="http://edit.yahoo.com/config/send_webmesg?.target='.$obj->yahoo.'&.src=pg"><img src="[[relativeurl]]/theme/default/images/yahoo.png" alt="" title="'.$obj->yahoo.'" /></a> '; } if ($obj->jabber) { $im .= '<img src="[[relativeurl]]/theme/default/images/jabber.png" title="'.$obj->jabber.'" alt="" />'; } if ($obj->google) { $im .= '<img src="[[relativeurl]]/theme/default/images/google.png" title="'.$obj->google.'" alt="" />'; } if ($obj->skype) { $im .= '<a href="callto://'.$obj->skype.'"><img src="[[relativeurl]]/theme/default/images/skype.png" title="'.$obj->skype.'" alt="" /></a>'; } if ($obj->twitter) { $im .= '<a href="https://twitter.com/'.$obj->twitter.'"><img src="[[relativeurl]]/theme/default/images/twitter.png" title="'.$obj->twitter.'" alt="" /></a>'; } if ($im) { $dmsg_im_row = ''.$im.'<br />'; } else { $dmsg_im_row = ''; } } else { $dmsg_im_row = ''; } if ($obj->ouser_id != _uid) { $user_profile = '<a href="[[relativeurl]]/index.php?t=usrinfo&id='.$obj->user_id.'&'._rsid.'"><img src="[[relativeurl]]/theme/default/images/msg_about.gif" alt="" /></a>'; $email_link = ($o1 & 4194304 && $a & 16) ? '<a href="[[relativeurl]]/index.php?t=email&toi='.$obj->user_id.'&'._rsid.'" rel="nofollow"><img src="[[relativeurl]]/theme/default/images/msg_email.gif" alt="" /></a>' : ''; $private_msg_link = '<a href="[[relativeurl]]/index.php?t=ppost&toi='.$obj->user_id.'&'._rsid.'"><img title="Send a private message to this user" src="[[relativeurl]]/theme/default/images/msg_pm.gif" alt="" /></a>'; } else { $user_profile = $email_link = $private_msg_link = ''; } $msg_toolbar = '<tr><td colspan="2" class="MsgToolBar"><table border="0" cellspacing="0" cellpadding="0" class="wa"><tr> <td class="nw al">'.$user_profile.' '.$email_link.' '.$private_msg_link.'</td> <td class="nw ar"><a href="[[relativeurl]]/index.php?t=pmsg&'._rsid.'&btn_delete=1&sel='.$obj->id.'&SQ='.$GLOBALS['sq'].'"><img src="[[relativeurl]]/theme/default/images/msg_delete.gif" alt="" /></a> '.($obj->fldr == 4 ? '<a href="[[relativeurl]]/index.php?t=ppost&msg_id='.$obj->id.'&'._rsid.'"><img src="[[relativeurl]]/theme/default/images/msg_edit.gif" alt="" /></a> ' : '' ) .($obj->fldr == 1 ? '<a href="[[relativeurl]]/index.php?t=ppost&reply='.$obj->id.'&'._rsid.'"><img src="[[relativeurl]]/theme/default/images/msg_reply.gif" alt="" /></a> <a href="[[relativeurl]]/index.php?t=ppost&quote='.$obj->id.'&'._rsid.'"><img src="[[relativeurl]]/theme/default/images/msg_quote.gif" alt="" /></a> ' : '' ) .'<a href="[[relativeurl]]/index.php?t=ppost&forward='.$obj->id.'&'._rsid.'"><img src="[[relativeurl]]/theme/default/images/msg_forward.gif" alt="" /></a></td> </tr></table></td></tr>'; } else { $dmsg_tags = $dmsg_im_row = $user_profile = $msg_toolbar = $buddy_link = $avatar = $online_indicator = $host_name = $location = ''; } if ($obj->length > 0) { $msg_body = read_pmsg_body($obj->foff, $obj->length); } else { $msg_body = 'No Message Body'; } $msg_body = $obj->length ? read_pmsg_body($obj->foff, $obj->length) : 'No Message Body'; $file_attachments = ''; if ($obj->attach_cnt) { $c = uq('SELECT a.id, a.original_name, a.dlcount, m.icon, a.fsize FROM fud30_attach a LEFT JOIN fud30_mime m ON a.mime_type=m.id WHERE a.message_id='. $obj->id .' AND attach_opt=1'); while ($r = db_rowobj($c)) { $sz = $r->fsize/1024; $sz = $sz<1000 ? number_format($sz, 2) .'KB' : number_format($sz / 1024 ,2) .'MB'; if(!$r->icon) { $r->icon = 'unknown.gif'; } $file_attachments .= '<li> <img alt="" src="[[relativeurl]]/images/mime/'.$r->icon.'" class="at" /> <span class="GenText fb">Attachment:</span> <a href="[[relativeurl]]/index.php?t=getfile&id='.$r->id.'&'._rsid.'&private=1" title="'.$r->original_name.'">'.$r->original_name.'</a> <br /> <span class="SmallText">(Size: '.$sz.', Downloaded '.convertPlural($r->dlcount, array(''.$r->dlcount.' time',''.$r->dlcount.' times')).')</span> </li>'; } unset($c); if ($file_attachments) { $file_attachments = '<ul class="AttachmentsList"> '.$file_attachments.' </ul>'; /* Append session to getfile. */ if ($o1 & 128 && !isset($_COOKIE[$GLOBALS['COOKIE_NAME']])) { $msg_body = str_replace('<img src="index.php?t=getfile', '<img src="index.php?t=getfile&S='. s, $msg_body); $tap = 1; } if ($o2 & 32768 && (isset($tap) || $o2 & 8192)) { $pos = 0; while (($pos = strpos($msg_body, '<img src="index.php/fa/', $pos)) !== false) { $pos = strpos($msg_body, '"', $pos + 11); $msg_body = substr_replace($msg_body, _rsid, $pos, 0); } } } } return '<tr> <td> <table cellspacing="0" cellpadding="0" class="MsgTable"> <tr> <td class="MsgR1 al vt expanded">'.(!$mini && $obj->icon ? '<img src="[[relativeurl]]/images/message_icons/'.$obj->icon.'" alt="" /> ' : '' ) .'<span class="MsgSubText">'.$obj->subject.'</span></td> <td class="MsgR1 vt ar DateText">'.print_date('%a, %d %B %Y %H:%M', $obj->post_stamp).'</td> </tr> <tr class="MsgR2"><td class="MsgR2" colspan="2"> <table cellspacing="0" cellpadding="0" class="ContentTable"> <tr class="MsgR2"> '.$avatar.' <td class="msgud">'.$online_indicator.(!$mini ? '<a href="[[relativeurl]]/index.php?t=usrinfo&id='.$obj->user_id.'&'._rsid.'">'.htmlspecialchars($obj->alias, ENT_QUOTES | ENT_SUBSTITUTE | ENT_HTML5, null, false).'</a>' : ''.htmlspecialchars($obj->alias, ENT_QUOTES | ENT_SUBSTITUTE | ENT_HTML5, null, false).'' ) .(!$mini ? '<br /><b>Messages:</b> '.$obj->posted_msg_count.'<br /><b>Registered:</b> '.print_date('%B %Y', $obj->join_date).' '.$location.'' : '' ) .'</td> <td class="msgud">'.$dmsg_tags.'</td> <td class="msgot">'.$buddy_link.$dmsg_im_row.(!$mini && $obj->host_name && $o1 & 268435456 ? '<b>From:</b> '.$obj->host_name.'<br />' : '' ) .'</td> </tr> </table> </tr> <tr> <td class="MsgR3" colspan="2"> '.$msg_body.' '.$file_attachments.' '.(($obj->sig && $o1 & 32768 && $obj->pmsg_opt & 1 && $b & 4096) ? '<br /><br /><div class="signature">'.$obj->sig.'</div>' : '' ) .' </td> </tr> '.$msg_toolbar.' <tr> <td class="MsgR2 ac" colspan="2">'.$GLOBALS['dpmsg_prev_message'].' '.$GLOBALS['dpmsg_next_message'].'</td> </tr> </table> </td> </tr>'; } ?>