Seite 1 von 2

chat in viewonline_body.tpl

Verfasst: 17.12.2007 10:14
von Magou77
Hallo,

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">&nbsp;</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);

?>
Es wäre super, wenn ich hier hilfe bekommen würde.

Solltet Ihr dazu weitere codes benötigen, bitte fragt danach.

Danke und Grüsse

Verfasst: 22.12.2007 10:32
von Magou77
kann mir hierbei keiner helfen?

Verfasst: 02.03.2008 11:56
von Magou77
noch ein Versuch?

Ich hätte das gerne unten, wo auch steht, Wer ist online.

Danke im voraus.

Gruss Ulf

Verfasst: 11.03.2008 09:29
von blacksoul_
Ich benutze die Chatbox von Smartor, da ist das automatisch in dem Mod schon drin. Du meinst eine Chat-Online-Anzeige unter der normalen "Wer ist online?-Anzeige" im Index?

Verfasst: 11.03.2008 09:41
von Magou77
hi blacksoul,
ja genau, das meinte ich.

Verfasst: 11.03.2008 09:50
von blacksoul_
Ok, wenn ich daheim bin werde ich mal posten wie das ganze bei mir aussieht. Oder du probiert die Chatbox von Smartor:

http://www.phpbbhacks.com/download/510

Läuft übrigens mit version 2.0.23 einwandfrei!

Verfasst: 11.03.2008 09:51
von Magou77
ich teste sie mal aus. Ich danke dir
ICh kann aber auch erst heute abend.
Bis denne

Verfasst: 11.03.2008 20:28
von blacksoul_

Code: Alles auswählen

	<!-- BEGIN switch_user_logged_out -->
	[ {L_LOGIN_TO_JOIN_CHAT} ]
	<!-- END switch_user_logged_out -->
	<!-- BEGIN switch_user_logged_in -->
	[ <a href="javascript:void(0);" onClick="window.open('{S_JOIN_CHAT}','{CHATBOX_NAME}','scrollbars=no,width=540,height=450')">{L_CLICK_TO_JOIN_CHAT}</a> ]
	<!-- END switch_user_logged_in -->
	<br />{CHATTERS_LIST}
So sieht der entsprechende Teil bei mir aus. Der für die Anzeige der eingeloggten User zuständige Teil ist "{CHATTERS_LIST}". Bei dem von dir benutzten Chat dürfte das "chat_room.chat_room_user" sein wenn ich mir den Code anschaue. Du musst zusätzlich den entsprechenden Code aus der chat.php auch in der index.php einfügen damit es funktioniert. Hast Du vielleicht einen Link zu deinem Mod? Die Einbauanleitung wäre interessant und welche Dateien noch verändert werden müssen.

Verfasst: 11.03.2008 20:32
von Magou77
das problem ist, dass ich mich mit php fast null auskenne.
danke trotzdem

Verfasst: 11.03.2008 20:33
von blacksoul_
Magou77 hat geschrieben:das problem ist, dass ich mich mit php fast null auskenne.
danke trotzdem
Poste mal den Link wo du den Mod her hast. Du hast es ja immerhin geschafft den Chat funktionstüchtig einzubauen, also geht das andere auch :)