ich habe einen Chat in mein forum eingebaut, und der funktioniert auch.
Nun möchte ich in der viewonline_body.tpl anzeigen lassen, wer in dem Chat gerade online ist.
Hierzu füge ich den code der chat_body.tpl und der chat.php mit ein.
mit den tpl datein komme ich ja zurecht, und kann mir auch denken was ich wohin einfügen muss. Nur nehme ich auch an, dass ich in der viewonline.php etwas ändern muss. Und da ich mit php nicht wirklich zurecht komme, muss ich hier nachfragen.
Vielleicht könnt Ihr anhand dessen mir ja weiterhelfen.
chat_body.tpl
Code: Alles auswählen
<table class="forumline" width="100%" cellspacing="1" cellpadding="3" border="0" align="center">
<tr>
<th class="thHead">Chat</th>
</tr>
<!-- BEGIN chat_room -->
<tr>
<td class="{chat_room.CLASS}">
<span class="gen"><b><a href="{chat_room.LINK}" onclick="{chat_room.ONCLICK}">{chat_room.NAME}</a></b> {chat_room.TOPIC}</span><br />
<!-- BEGIN chat_room_user -->
<span class="gen"><a href="{chat_room.chat_room_user.LINK}" class="postlink" style="color:{chat_room.chat_room_user.COLOR}">{chat_room.chat_room_user.NAME}</A> {chat_room.chat_room_user.PRIVILEGE}</span><br />
<!-- END chat_room_user -->
<br />
</td>
</tr>
<!-- END chat_room -->
<tr>
<td class="catBottom" height="28"> </td>
</tr>
</table>
<br clear="all" />
Powered by <a href="http://de.omnichat.net">Omnichat phpbb chat</a>
<table width="100%" cellspacing="2" border="0" align="center">
<tr>
<td align="right" valign="middle" nowrap="nowrap"><span class="gensmall">{S_TIMEZONE}</span><br /><br />{JUMPBOX}</td>
</tr>
</table>
chat.php
Code: Alles auswählen
<?php
define('IN_PHPBB', true);
$phpbb_root_path = './';
include($phpbb_root_path . 'extension.inc');
include($phpbb_root_path . 'common.'.$phpEx);
include($phpbb_root_path . 'omnichat/config.inc.php');
include($phpbb_root_path . 'omnichat/omnichat.class.php');
//
// Start session management
//
$userdata = session_pagestart($user_ip, PAGE_FAQ);
init_userprefs($userdata);
//
// End session management
//
$l_title = "Chat";
$page_title = $l_title;
$status = new omnichatStatus($omnichatConfig['chatid'],$omnichatConfig['apikey']);
$status->load();
//
// Lets build a page ...
//
include($phpbb_root_path . 'includes/page_header.'.$phpEx);
$template->set_filenames(array(
'body' => 'chat_body.tpl')
);
make_jumpbox('viewforum.'.$phpEx);
$template->assign_vars(array(
'L_FAQ_TITLE' => $l_title,
'L_BACK_TO_TOP' => $lang['Back_to_top'])
);
$i=0;
// iterate rooms
foreach($status->rooms as $room){
if($userdata['session_logged_in']){
$link = "http://chat.omnichat.net/frameset?cid=$status->chat_id&room=".urlencode($room->name)."&nick=".urlEncode($userdata['username'])."&sid=$userdata[session_id]";
$click = "window.open(this.href,'chat','width=600,height=600,toolbar=no,menubar=no,location=no');return false";
}else{
$link = "javascript:alert('nicht eingeloggt!')";
$click = "";
}
$row_class = ( !($i % 2) ) ? $theme['td_class1'] : $theme['td_class2'];
$template->assign_block_vars('chat_room', array(
'NAME' => htmlentities($room->name),
'TOPIC' => htmlentities($room->topic ? "($room->topic)" : ''),
'LINK' => $link,
'ONCLICK' => $click,
'CLASS' => $row_class
));
$j=0;
// iterate users
foreach($room->users as $user)
{
$row_color = ( !($j % 2) ) ? $theme['td_color1'] : $theme['td_color2'];
$row_class = ( !($j % 2) ) ? $theme['td_class1'] : $theme['td_class2'];
$db->sql_query('SELECT * FROM '.USERS_TABLE.' WHERE user_name="'.addSlashes($user->name).'" LIMIT 1');
$user_id = $db->sql_fetchfield('user_id');
$user_link = append_sid("profile.$phpEx?mode=viewprofile&" . POST_USERS_URL . "=$user_id");
$template->assign_block_vars('chat_room.chat_room_user', array(
'NAME' => htmlentities($user->name),
'COLOR' => $user->color,
'PRIVILEGE' => htmlentities($user->privilege ? "[$user->privilege]" : ''),
'LINK' => $user_link
));
$j++;
}
$i++;
}
$template->pparse('body');
include($phpbb_root_path . 'includes/page_tail.'.$phpEx);
?>
Solltet Ihr dazu weitere codes benötigen, bitte fragt danach.
Danke und Grüsse