Chat fürs Forum
Chat fürs Forum
Deine phpBB Version: 3.0.8
Typ Deines phpBB Forums: Standard phpBB (auch Vanilla (phpbb2) oder Olympus (phpBB3) genannt)
MODs installiert: Ja
Dein Wissensstand: Grundwissen
Link zu Deinem Forum: http://www.tierunddu.de
Was hast Du gemacht, bevor das Problem aufgetreten ist?
Was hast Du bereits versucht um das Problem zu lösen?
Fehlerbeschreibung und Nachricht
Hallo,
hatte im 2er den x7-Chat. Habe gelesen, dass dieser auch im 3er eingebaut werden kann. Wenn ich aber dem Link folge, komme ich auf die x7chat-Seite und dort dann folgende Meldung:
Error - 403
You do not have the proper authorization to access the requested page or directory.
Also hab ich mal nach einem anderen Chat geschaut und da fiel mir der von AJAX ins Auge.
Jetzt stellt sich mir die Frage, welcher Chat ist der bessere?
Ich brauche einen Chat, bei dem sich die User mit ihren Forennamen anmelden können und keine Gäste Zutritt haben. Und ich brauche auch nur einen Chat, keine Shoutbox dabei. Und er sollte schon vom Style her zum Forum passen (subsilver2).
Typ Deines phpBB Forums: Standard phpBB (auch Vanilla (phpbb2) oder Olympus (phpBB3) genannt)
MODs installiert: Ja
Dein Wissensstand: Grundwissen
Link zu Deinem Forum: http://www.tierunddu.de
Was hast Du gemacht, bevor das Problem aufgetreten ist?
Was hast Du bereits versucht um das Problem zu lösen?
Fehlerbeschreibung und Nachricht
Hallo,
hatte im 2er den x7-Chat. Habe gelesen, dass dieser auch im 3er eingebaut werden kann. Wenn ich aber dem Link folge, komme ich auf die x7chat-Seite und dort dann folgende Meldung:
Error - 403
You do not have the proper authorization to access the requested page or directory.
Also hab ich mal nach einem anderen Chat geschaut und da fiel mir der von AJAX ins Auge.
Jetzt stellt sich mir die Frage, welcher Chat ist der bessere?
Ich brauche einen Chat, bei dem sich die User mit ihren Forennamen anmelden können und keine Gäste Zutritt haben. Und ich brauche auch nur einen Chat, keine Shoutbox dabei. Und er sollte schon vom Style her zum Forum passen (subsilver2).
- Mahony
- Site Admin
- Beiträge: 792
- Registriert: 3. Dez 2006 22:09
- Hat sich bedankt: 22 Mal
- Danksagung erhalten: 6 Mal
Re: Chat fürs Forum
Hallo
Alles notwendige zum Ajax-Chat findest du hier http://sourceforge.net/apps/mediawiki/a ... =Main_Page
MOD-Download-Seite: https://blueimp.net/ajax/ bzw. http://sourceforge.net/projects/ajax-chat/files/
Grüße: Mahony
Alles notwendige zum Ajax-Chat findest du hier http://sourceforge.net/apps/mediawiki/a ... =Main_Page
MOD-Download-Seite: https://blueimp.net/ajax/ bzw. http://sourceforge.net/projects/ajax-chat/files/
Grüße: Mahony
Diejenigen, die lautstark darüber diskutieren, warum es nicht geht, mögen bitte jene nicht stören, die es gerade tun.
Klug ist, wer nur die Hälfte von dem glaubt, was er hört. Weise ist, wer erkennt, welche Hälfte richtig ist.
Klug ist, wer nur die Hälfte von dem glaubt, was er hört. Weise ist, wer erkennt, welche Hälfte richtig ist.
Re: Chat fürs Forum
Danke Mahony, der hört sich wirklich gut an. Werde ihn einfach mal ausprobieren und schauen was die User von halten
Re: Chat fürs Forum
Hallo,
bin jetzt auf einen anderen Chat umgeschwenkt, da ich den anderen einfach nicht eingebaut bekommen habe
Habe nun diesen hier eingebaut: http://startrekguide.com/community/view ... =27&t=1250
Integrierte Shoutbox hab ich rausgeschmissen. Hab auch den Chatlink im Header nur für Registrierte sichtbar, aber (musste ja jetzt kommen), wenn ein Nichtregistrierter jetzt so schlau wäre und einfach das .../chat.php manuell eingeben würde, könnte dieser munter mitlesen.
Könnte ich das auch durch lösen? Muss ich das dann in der chat.php eintragen? Wenn ja, wo genau?
Die Datei (chat.php) fängt ja so an
und hört so auf
Was mich noch stört. Wenn ich aus dem Chat gehe, bleiben alle Beiträge ehalten und jeder der auf Chat geht, kann diese lesen.
Würde mir das weiterhelfen? (steht auf der Seite bei der Modbeschreibung mit dabei)
Troubleshooting:
1. Can't post bbcode or smilies in the chat -- Run the sql statement in the upgrade from beta 7 below.
2. Forum header is included in the chat box when I make a post -- this is a problem with a few portals which annoyingly add their header/footer automatically to the template engine.
To fix it, replace the chat_body.html with this (subsilver2 style)
Roadmap
* Add smilies button
* Show smilies in chat room
* Multiple Rooms (Progress = 25%)
* Report Post/Users
* Add Quote Button
* Enable Author Delete
* Private Rooms
* Send Chat Requests
* Reset Chat button
* Avatar Thumbnails with Fullsize Rollovers.
* Chat Logs
Oder brauch ich das nur hier zu ändern (chat.php)
Ich glaube das wären meine Probleme fürs Erste
bin jetzt auf einen anderen Chat umgeschwenkt, da ich den anderen einfach nicht eingebaut bekommen habe
Habe nun diesen hier eingebaut: http://startrekguide.com/community/view ... =27&t=1250
Integrierte Shoutbox hab ich rausgeschmissen. Hab auch den Chatlink im Header nur für Registrierte sichtbar, aber (musste ja jetzt kommen), wenn ein Nichtregistrierter jetzt so schlau wäre und einfach das .../chat.php manuell eingeben würde, könnte dieser munter mitlesen.
Könnte ich das auch durch
Code: Alles auswählen
<!-- IF S_USER_LOGGED_IN --><!-- ENDIF -->
Die Datei (chat.php) fängt ja so an
Code: Alles auswählen
<?php
/**
*
* @package phpBB3
* @version $Id: chat.php 52 2007-11-04 05:56:17Z Handyman $
* @copyright (c) 2007 StarTrekGuide
* @license http://opensource.org/licenses/gpl-license.php GNU Public License
*
*/
/**
* @ignore
*/
define('IN_PHPBB', true);
$phpbb_root_path = './';
$phpEx = substr(strrchr(__FILE__, '.'), 1);
include($phpbb_root_path . 'common.' . $phpEx);
// Start session management
$user->session_begin();
$auth->acl($user->data);
$user->setup('chat');
.........
Code: Alles auswählen
return $user;
}
?>
Würde mir das weiterhelfen? (steht auf der Seite bei der Modbeschreibung mit dabei)
Troubleshooting:
1. Can't post bbcode or smilies in the chat -- Run the sql statement in the upgrade from beta 7 below.
2. Forum header is included in the chat box when I make a post -- this is a problem with a few portals which annoyingly add their header/footer automatically to the template engine.
To fix it, replace the chat_body.html with this (subsilver2 style)
Code: Alles auswählen
<!-- IF S_GET_CHAT -->
<!-- IF S_READ or S_ADD -->
--!--
<!-- BEGIN chatrow -->
<div id="p{chatrow.MESSAGE_ID}">
<table class="tablebg" cellspacing="1" width="100%">
<tr>
<td class="<!-- IF chatrow.CLASS is even -->row2<!-- ELSEIF chatrow.CLASS is odd -->row1<!-- ENDIF -->" width="100%" align="left"><!-- IF U_ACP or U_MCP --> <a href="javascript:void({chatrow.MESSAGE_ID})" title="{L_DELETE_POST}" onClick="delete_post('{chatrow.MESSAGE_ID}')"><img src="{T_IMAGESET_LANG_PATH}/icon_post_delete.gif" /></a> <!-- ENDIF --> <b class="postauthor">{chatrow.USERNAME_FULL}</b> « {chatrow.TIME} » <span class="postbody">{chatrow.MESSAGE}</span> </td>
</tr>
</table>
</div>
<!-- END chatrow -->--!--{LAST_ID}
<!-- IF S_WHOISONLINE -->--!--
<!-- BEGIN whoisrow -->
<div><img src="{T_IMAGESET_PATH}/{whoisrow.USER_STATUS}.png" class="online_img" /> {whoisrow.USERNAME_FULL}</div>
<!-- END whoisrow -->--!--{LAST_TIME}--!--{DELAY}--!--{LAST_POST}
<!-- ENDIF -->
<!-- ENDIF -->
<!-- ELSE -->
<!-- IF S_CHAT -->
<!-- INCLUDE overall_header.html -->
<!-- ENDIF -->
<script type="text/javascript">
<!--
var fieldname = 'chat';
var last_time = 0;
var xmlHttp = http_object();
var last_id = {LAST_ID};
var type = 'receive';
var post_time = {TIME};
var read_interval = 15000;
var interval = setInterval('handle_send("read", last_id);', read_interval);
function handle_send(mode, f)
{
if (xmlHttp.readyState == 4 || xmlHttp.readyState == 0)
{
indicator_switch('on');
type = 'receive';
param = 'mode=' + mode;
param += '&last_id=' + last_id;
param += '&last_time=' + last_time;
param += '&last_post=' + post_time;
param += '&read_interval=' + read_interval;
if (mode == 'add' && document.text.message.value != '')
{
type = 'send';
for(var i = 0; i < f.elements.length; i++)
{
elem = f.elements[i];
param += '&' + elem.name + '=' + encodeURIComponent(elem.value);
}
document.text.message.value = '';
}
else if (mode == 'delete')
{
type = 'delete';
param += '&chat_id=' + f;
}
xmlHttp.open("POST", '{FILENAME}', true);
xmlHttp.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
xmlHttp.onreadystatechange = handle_return;
xmlHttp.send(param);
}
}
function handle_return()
{
if (xmlHttp.readyState == 4)
{
if (type != 'delete')
{
results = xmlHttp.responseText.split('--!--');
if (results[2])
{
if (last_id == 0)
{
document.getElementById(fieldname).innerHTML = results[1];
}
else
{
document.getElementById(fieldname).innerHTML = results[1] + document.getElementById(fieldname).innerHTML;
}
last_id = results[2];
if (results[3])
{
document.getElementById('whois_online').innerHTML = results[3];
last_time = results[4];
if (results[5] != read_interval * 1000)
{
window.clearInterval(interval);
read_interval = results[5] * 1000;
interval = setInterval('handle_send("read", last_id);', read_interval);
document.getElementById('update_seconds').innerHTML = results[5];
}
post_time = results[6];
}
}
}
indicator_switch('off');
}
}
function delete_post(chatid)
{
document.getElementById('p' + chatid).style.display = 'none';
handle_send('delete', chatid);
}
function indicator_switch(mode)
{
if(document.getElementById("act_indicator"))
{
var img = document.getElementById("act_indicator");
if(img.style.visibility == "hidden" && mode == 'on')
{
img.style.visibility = "visible";
}
else if (mode == 'off')
{
img.style.visibility = "hidden"
}
}
}
function http_object()
{
if (window.XMLHttpRequest)
{
return new XMLHttpRequest();
}
else if(window.ActiveXObject)
{
return new ActiveXObject("Microsoft.XMLHTTP");
}
else
{
document.getElementById('p_status').innerHTML = 'Status: Cound not create XmlHttpRequest Object. Consider upgrading your browser.';
}
}
-->
</script>
<style type="text/css">
<!--
.box
{
width: 100%;
margin-left: auto;
margin-right: auto;
}
.shouts {
width: 100%;
height:300px;
overflow:auto;
}
#chat {
width: 99%;
text-align:left;
}
#message {
width: 65%;
}
#whois_online{
vertical-align:text-top;
text-align:left;
}
.online_img {
vertical-align:middle;
}
#act_indicator {
visibility:hidden;
}
-->
</style>
<div class="box">
<br />
<table class="tablebg" cellspacing="1" width="100%">
<tr>
<td class="cat" width="100%" height="28" nowrap="nowrap">
<h4 align="center">{SITENAME} {L_CHAT_EXPLAIN}</h4>
</td>
</tr>
</table>
<table class="tablebg" cellspacing="1" width="100%">
<tr>
<th align="center" width="85%">
<!-- IF S_USER_LOGGED_IN -->
<form name="text" id="text" method="post" action="javascript:void(0);" onSubmit="handle_send('add', this)" autocomplete="off">{L_MESSAGE}:
<input type="text" tabindex="1" name="message" id="message" class="inputbox" size="28" />
<input class="btnmain" type="submit" name="submit" value="{L_SUBMIT}" />
</form>
<!-- ENDIF -->
</th>
<th align="center" width="15%" nowrap="nowrap">
{L_ONLINE_LIST}
</th>
</tr>
<tr>
<td class="row3" style="text-align:left;" height="220">
<div class="shouts">
<div id="chat">
<!-- BEGIN chatrow -->
<div id="p{chatrow.MESSAGE_ID}">
<table class="tablebg" cellspacing="1" width="100%">
<tr>
<td class="<!-- IF chatrow.CLASS is even -->row2<!-- ELSE -->row1<!-- ENDIF -->" align="left">
<!-- IF U_ACP or U_MCP -->
<a href="javascript:void({chatrow.MESSAGE_ID})" title="{L_DELETE_POST}" onClick="delete_post('{chatrow.MESSAGE_ID}')"><img src="{T_IMAGESET_LANG_PATH}/icon_post_delete.gif" /></a>
<!-- ENDIF -->
<b class="postauthor">{chatrow.USERNAME_FULL}</b> « {chatrow.TIME} » <span class="postbody">{chatrow.MESSAGE}</span>
</td>
</tr>
</table>
</div>
<!-- END chatrow -->
</div>
</div>
</td>
<td class="row1" width="15%" nowrap="nowrap">
<div class="shouts">
<div id="whois_online">
<!-- BEGIN whoisrow -->
<div>
<img src="{T_IMAGESET_PATH}/{whoisrow.USER_STATUS}.png" class="online_img" /> {whoisrow.USERNAME_FULL}
</div>
<!-- END whoisrow -->
</div>
</div>
</td>
</tr>
<tr>
<td class="cat" colspan="2" width="100%" height="28">
<div style="float: left;"> <img src="{T_THEME_PATH}/images/icon_mini_chat.png"> <a href="http://startrekguide.com/community/viewtopic.php?p=16364#p16364"><strong>AJAX Chat</strong></a> © 2007 <strong style="color: #7B95B2;">StarTrek</strong><strong style="color: #D98303;">Guide</strong></div><div style="float: right;"><img src="{T_IMAGESET_PATH}/act_indicator.gif" id="act_indicator" /> <strong>{L_UPDATES} <span id="update_seconds"> {DELAY} </span> {L_UNIT}</strong> </div>
</td>
</tr>
</table>
</div>
<!-- IF S_CHAT -->
<!-- ENDIF -->
<!-- ENDIF -->
* Add smilies button
* Show smilies in chat room
* Multiple Rooms (Progress = 25%)
* Report Post/Users
* Add Quote Button
* Enable Author Delete
* Private Rooms
* Send Chat Requests
* Reset Chat button
* Avatar Thumbnails with Fullsize Rollovers.
* Chat Logs
Oder brauch ich das nur hier zu ändern (chat.php)
Code: Alles auswählen
/******************************************/
/* EDIT these for custom online settings */
/****************************************/
$session_time = 300;
$default_delay = 15;
//set status
$times = array(
'online' => 0,
'idle' => 300,
'offline' => 1800,
);
//set delay for each status
$delay = array(
'online' => 5,
'idle' => 60,
'offline' => 300,
);
- Mahony
- Site Admin
- Beiträge: 792
- Registriert: 3. Dez 2006 22:09
- Hat sich bedankt: 22 Mal
- Danksagung erhalten: 6 Mal
Re: Chat fürs Forum
Hallo
Damit die Gäste keinen Zugriff haben:
suche in der chat.php
Füge danach ein
Grüße: Mahony
Damit die Gäste keinen Zugriff haben:
suche in der chat.php
Code: Alles auswählen
// Start session management
$user->session_begin();
$auth->acl($user->data);
$user->setup('chat');
Code: Alles auswählen
if ($user->data['user_id'] == ANONYMOUS)
{
login_box();
}
Hm, da solltest du mal den Autor des MODs ansprechen, da ich den MOD nicht verwende kann ich nichts dazu sagen.Was mich noch stört. Wenn ich aus dem Chat gehe, bleiben alle Beiträge ehalten und jeder der auf Chat geht, kann diese lesen.
Grüße: Mahony
Diejenigen, die lautstark darüber diskutieren, warum es nicht geht, mögen bitte jene nicht stören, die es gerade tun.
Klug ist, wer nur die Hälfte von dem glaubt, was er hört. Weise ist, wer erkennt, welche Hälfte richtig ist.
Klug ist, wer nur die Hälfte von dem glaubt, was er hört. Weise ist, wer erkennt, welche Hälfte richtig ist.
Re: Chat fürs Forum
Supi Gäste können den Chat jetzt nicht mehr sehen
Was sagen diese Werte eigentlich aus, weißt du das?
Was sagen diese Werte eigentlich aus, weißt du das?
Code: Alles auswählen
/******************************************/
/* EDIT these for custom online settings */
/****************************************/
$session_time = 300;
$default_delay = 15;
//set status
$times = array(
'online' => 0,
'idle' => 300,
'offline' => 1800,
);
//set delay for each status
$delay = array(
'online' => 5,
'idle' => 60,
'offline' => 300,
);
- Mahony
- Site Admin
- Beiträge: 792
- Registriert: 3. Dez 2006 22:09
- Hat sich bedankt: 22 Mal
- Danksagung erhalten: 6 Mal
Re: Chat fürs Forum
Hallo
Diese Werte beziehen sich auf den Online-Status.
Grüße: Mahony
Diese Werte beziehen sich auf den Online-Status.
Grüße: Mahony
Diejenigen, die lautstark darüber diskutieren, warum es nicht geht, mögen bitte jene nicht stören, die es gerade tun.
Klug ist, wer nur die Hälfte von dem glaubt, was er hört. Weise ist, wer erkennt, welche Hälfte richtig ist.
Klug ist, wer nur die Hälfte von dem glaubt, was er hört. Weise ist, wer erkennt, welche Hälfte richtig ist.
Re: Chat fürs Forum
Mmh ok dann teste ich einfach mal, wenn ich da was veränder, ob dann die Beiträge nicht mehr zu sehen sind, wenn ich raus gehe...sind ja nicht viele Werte
,
,
Re: Chat fürs Forum
Nach zig Seiten englisch durchschauen (das war nicht einfach ) habe ich folgendes gefunden:
That will then delete all messages older than the last one displayed in the chat and will also only delete when you first view the chat.
http://startrekguide.com/community/view ... 675#p91220
Habs so ersetzt wie beschrieben und auch die zwei Dateien mit runtergeladen (wobei da nicht dabei stand, wo die hin sollen. Hab die chat_arch_body.htlm ins subsilver-template und die chat_archive.php direkt ins root gepackt).
Aber das will einfach nicht funktionieren. Kannst du am Code erkennen, ob das überhaupt klappen würde?
Smilies und BB-Code hab ich ohne Problem eingebaut bekommen. Nur das will nicht funzen
That will then delete all messages older than the last one displayed in the chat and will also only delete when you first view the chat.
http://startrekguide.com/community/view ... 675#p91220
Habs so ersetzt wie beschrieben und auch die zwei Dateien mit runtergeladen (wobei da nicht dabei stand, wo die hin sollen. Hab die chat_arch_body.htlm ins subsilver-template und die chat_archive.php direkt ins root gepackt).
Aber das will einfach nicht funktionieren. Kannst du am Code erkennen, ob das überhaupt klappen würde?
Smilies und BB-Code hab ich ohne Problem eingebaut bekommen. Nur das will nicht funzen
- Mahony
- Site Admin
- Beiträge: 792
- Registriert: 3. Dez 2006 22:09
- Hat sich bedankt: 22 Mal
- Danksagung erhalten: 6 Mal
Re: Chat fürs Forum
Hallo
Ja, die Änderung am Code sollte eigentlich funktionieren. Die Änderung musst du in der chat.php machen.
Suche
Ersetze mit
Grüße: Mahony
Ja, die Änderung am Code sollte eigentlich funktionieren. Die Änderung musst du in der chat.php machen.
Suche
Code: Alles auswählen
$sql = 'SELECT * FROM ' . CHAT_TABLE . ' ORDER BY message_id DESC';
$result = $db->sql_query_limit($sql, 25);
$rows = $db->sql_fetchrowset($result);
foreach ($rows as $row)
{
if ($count++ == 0)
{
$last_id = $row['message_id'];
}
$template->assign_block_vars('chatrow', array(
'MESSAGE_ID' => $row['message_id'],
'USERNAME_FULL' => clean_username(get_username_string('full', $row['user_id'], $row['username'], $row['user_colour'], $user->lang['GUEST'])),
'MESSAGE' => generate_text_for_display($row['message'], $row['bbcode_uid'], $row['bbcode_bitfield'], $row['bbcode_options']),
'TIME' => $user->format_date($row['time']),
'CLASS' => ($row['message_id'] % 2) ? 1 : 2,
));
}
$db->sql_freeresult($result);
Code: Alles auswählen
$sql = 'SELECT * FROM ' . CHAT_TABLE . ' ORDER BY message_id DESC';
$result = $db->sql_query_limit($sql, 25);
$rows = $db->sql_fetchrowset($result);
$db->sql_freeresult($result);
$delete_id = 0;
foreach ($rows as $row)
{
if ($count++ == 0)
{
$last_id = $row['message_id'];
}
$template->assign_block_vars('chatrow', array(
'MESSAGE_ID' => $row['message_id'],
'USERNAME_FULL' => clean_username(get_username_string('full', $row['user_id'], $row['username'], $row['user_colour'], $user->lang['GUEST'])),
'MESSAGE' => generate_text_for_display($row['message'], $row['bbcode_uid'], $row['bbcode_bitfield'], $row['bbcode_options']),
'TIME' => $user->format_date($row['time']),
'CLASS' => ($row['message_id'] % 2) ? 1 : 2,
));
$delete_id = $row['message_id'];
}
$sql = 'DELETE FROM ' . CHAT_TABLE . '
WHERE message_id < ' . $delete_id;
$db->sql_query($sql);
Grüße: Mahony
Diejenigen, die lautstark darüber diskutieren, warum es nicht geht, mögen bitte jene nicht stören, die es gerade tun.
Klug ist, wer nur die Hälfte von dem glaubt, was er hört. Weise ist, wer erkennt, welche Hälfte richtig ist.
Klug ist, wer nur die Hälfte von dem glaubt, was er hört. Weise ist, wer erkennt, welche Hälfte richtig ist.