Pagina 1 din 2

Chat

Scris: 19-Iul-2008, 22:35:05
de Iuliu
Imi puteti recomanda un chat bun pentru phpBB3?

Scris: 20-Iul-2008, 11:14:46
de Myky
Parerea mea... Ori ai chat, ori ai forum.

Scris: 20-Iul-2008, 12:15:42
de Muzet
Eu recomand MODul lui Handyman, AJAX Chat.

Classification: Add-on
phpBB Part: Forum
MOD Name: AJAX Chat
MOD Version: 2.0.0 Beta 8
Author: Handyman
MOD Description: This Mod Adds AJAX Chat to your forum.

Installation Level: Easy
Installation Time: ~3 Minutes
Download: ajax_chat.zip

Scris: 20-Iul-2008, 12:34:13
de megeo
inca ceva. daca o sa ai chat, lumea o sa stea mai mult pe chat... iar forumul o sa cam pice.

spun din experienta

Scris: 20-Iul-2008, 12:45:36
de spiridusu_l1
Sustin afirmatiile lui Myky si megeo.Am avut si eu un forum despre diverse,am pus chat si cam toate discutiile de pe forum s-au mutat acolo.Pe forum nu se mai posta mai deloc.Daca aveau ceva de spus,spuneau pe chat.

Scris: 20-Iul-2008, 12:52:20
de Muzet
Depinde de utilizatori, nu de chat. :lol:
Atâta timp cât omul a cerut MOD pentru chat cred că se gândise înainte la posibilele probleme.

Scris: 02-Aug-2008, 22:52:41
de Rikonen
Nici eu nu mi-as pune chat....Decat sa pierd posturi pe forum.....

Scris: 22-Ian-2009, 20:46:30
de proof_ro
Am si eu 2 intrebari:

1. am instalat ajax, merge ok, dar vreau sa-i scot din "chat" variabila de timp, adica sa ramana numai numele celui care posteaza si mesajul. Cum fac asta? Ca am umblat pe undeva insa acum dupa ce trimit un mesaj nu-mi apare nicio data insa daca dau refresh imi apare data de 1970 ian si ora nu stiu cat. In ce fisier trebe sa modific si ce anume?

2. Cand cineva intra pe site, am setat sa apara direct pagina de login, insa sus in dreapta imi apare casuta cu {CHAT} si in felul asta pot fi vazute mesajele din chat (fara sa te loghezi). cum pot sa scot butonul de chat de acolo?

Multumesc !

EDIT: pct 2 l-am rezolvat! :D

Scris: 23-Ian-2009, 00:24:17
de chessh
Arata-ne continutul fisierului de template de la chat (ala cu .html din arhiva). :)

Scris: 23-Ian-2009, 08:47:02
de proof_ro

Cod: Selectaţi tot

<!-- IF S_GET_CHAT -->
	<!-- IF S_READ or S_ADD -->
		<!-- BEGIN chatrow -->
			<div id="p{chatrow.MESSAGE_ID}">
				<table class="tablebg" cellpadding="6" cellspacing="0" width="100%">
					<tr class="row{chatrow.CLASS}">
						<td>
							<!-- 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} » &nbsp; <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[1])
				{
					if (last_id == 0)
					{
						document.getElementById(fieldname).innerHTML = results[0];
					}
					else
					{
						document.getElementById(fieldname).innerHTML = results[0] + document.getElementById(fieldname).innerHTML;
					}
					last_id = results[1];
					if (results[2])
					{
						document.getElementById('whois_online').innerHTML = results[2];
						last_time = results[3];
						if (results[4] != read_interval * 1000)
						{
							window.clearInterval(interval);
							read_interval = results[4] * 1000;
							interval = setInterval('handle_send("read", last_id);', read_interval);
							document.getElementById('update_seconds').innerHTML = results[4];
						}
						post_time = results[5];
					}
				}
			}
			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: 95%;
			margin-left: auto;
			margin-right: auto;
		}
		.shouts {
			width: 100%;
			height:300px;
			overflow:auto;
		}
		#chat {
			width: 100%;
			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">
		<table class="tablebg" cellspacing="1" width="100%">
				<tr>
					<th align="center" colspan="2">{SITENAME} {L_CHAT}</th>
				</tr>
			<!-- IF S_USER_LOGGED_IN -->
				<tr>
					<td align="center" class="cat nav" width="85%">
						<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="button1" type="submit" name="submit" value="{L_SUBMIT}" />
						</form>
					</td>
					<td align="center" class="cat nav" width="15%">{L_ONLINE_LIST}</td>
			<!-- ENDIF -->
			<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" cellpadding="6" cellspacing="0" width="100%">
										<tr class="row{chatrow.CLASS}">
											<td>
												<!-- 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} » &nbsp; <span class="postbody">{chatrow.MESSAGE}</span>
											</td>
										</tr>
										
									</table>
								</div>
							<!-- END chatrow -->
						</div>
					</div>
				</td>
				<td class="row1" 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" align="center">
					{L_DETAILS}
					<img src="{T_IMAGESET_PATH}/act_indicator.gif" id="act_indicator" />
					<strong>• {L_UPDATES} <span id="update_seconds">{DELAY}</span> {L_UNIT}</strong>
				</td>
			</tr>
		</table>
	</div>
	<!-- IF S_CHAT -->
		<!-- INCLUDE overall_footer.html -->
	<!-- ENDIF -->
<!-- ENDIF -->
M-am gandit ca e variabila time din primele randuri, dar n-am incercat :)