theme_chatroom_chat_archive($chat)
contributions/modules/chatroom/chatroom.module, line 1496
Get HTML for chat archive page.
| Name | Description |
|---|---|
| Themeable functions | Functions that display HTML, and which can be customized by themes. |
function theme_chatroom_chat_archive($chat) {
$html = '';
if (isset($chat->when_archived)) {
$html = '<p>'. t('Archived on !date.', array('!date' => format_date($chat->when_archived, 'medium'))) .'</p>';
}
else {
$html = '<p>'. l(t('Join !chat', array('!chat' => $chat->chatname)), "chatrooms/chat/$chat->ccid") .'</p>';
}
if ($msgs = chatroom_get_all_msgs($chat->ccid)) {
$html .= '<div id="chatroom-container-archive"><table><tbody valign="top">';
foreach ($msgs as $msg) {
$name = $msg->name ? $msg->name : variable_get('chatroom_guest_user_prefix', t('guest-')) . $msg->guest_id;
$html .= '<tr><td><span class="chatroom-archive-date">'. format_date($msg->modified, 'small') .'</span></td>';
if ($msg->msg_type == 'me') {
$html .= '<td><p class="chatroom-old-me-msg">';
$html .= "* $name {$msg->msg}</p></td>";
}
else {
$html .= '<td><p class="chatroom-old-msg">';
if (empty($msg->recipient)) {
if ($previous != $name) {
$html .= '<span class="header">'."$name:</span>";
$previous = $name;
}
}
else {
$html .= '<span class="header">'."$name ";
$recipient = db_result(db_query("
SELECT u.name FROM {chatroom_online_list} col
LEFT JOIN {users} u ON u.uid = col.uid
WHERE col.ccid = %d AND col.guest_id = %d
", $msg->ccid, $msg->guest_id));
$recipient = empty($recipient) ? variable_get('chatroom_guest_user_prefix', t('guest-')) . $msg->recipient : $recipient;
if ($msg->session_id == session_id() && $recipient != $name) {
$html .= '<span class="chatroom-private">(privately to '. $recipient .')</span>:</span> ';
}
else {
$html .= '<span class="chatroom-private">(privately)</span>:</span> ';
}
}
$html .= "{$msg->msg}</p></td>";
}
}
$html .= '</tbody></table></div>';
$limit = chatroom_chat_old_msg_limit($chat->ccid);
$html .= theme('pager', array(), $limit);
}
else {
$html .= '<p>'. t('This chat contains no messages.') .'</p>';
}
return $html;
}