Ajax Chat v2.0.0B8
Мини чат - БАР. Можно переписываться на "горячую". Полная форма на весь монитор вызывается отдельной кнопочкой. Дает не очень ощутимую нагрузку.
Ajax Chat v2.0.0B8
styles/prosilver/template/index_body.html
<!-- IF S_DISPLAY_ONLINE_LIST -->
<!-- INCLUDE chat_body.html -->
styles/prosilver/template/index_body.html
<!-- IF S_DISPLAY_SEARCH or (S_USER_LOGGED_IN and not S_IS_BOT) -->
<!-- INCLUDE chat_body.html -->
stylesprosilvertemplatechat_body.html
перемести участок <!-- IF S_USER_LOGGED_IN -->
<div class="forabg">
<div class="inner">
<span class="corners-top"><span></span></span>
<div class="chatform" align="center">
<form name="text" id="text" method="post" action="javascript:void(0);" onsubmit="handle_send('add', this)" autocomplete="off">
<strong style="color: white;">{L_MESSAGE}:</strong> <input type="text" tabindex="1" name="message" id="message" class="inputbox chatinput" />
<input type="submit" class="button1" value="{L_SUBMIT}" name="submit" tabindex="6" accesskey="s"/><br />
</form>
</div>
<span class="corners-bottom"><span></span></span>
</div>
</div>
<!-- ENDIF -->
<div class="forabg" align="center">
<div class="inner">
<span class="corners-top"><span></span></span>
<div class="post">
<div id="author">{L_DETAILS}
chat.php
$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);
$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' => 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);
Вернуться в 450 модов движка форумов phpBB (до версии 3.0.14)