|
Форум torrenpier который уже живет
это сообщество владельцев форумов на phphBB2, торрент-трекеров на движках torrentpier и SVN всех версий.
Здесь можно найти решение своих проблем на своем сайта. Здесь можно скачать полезные и нужные моды torrenpier, phpBB2 и svn. Наш форум - это место для общения и обмена опытом между любителей движков, создателей модов на заказ и владельцев сайтов!
|
Автор |
Сообщение |
adelka Зарегистрирован: 2011-01-30 Сообщ.: 60
|
28-Мар-11 23:33 |
#1 |
################################################################
## Название мода: Мини Чат на аякс / Mini Chat [ajax]
## Автор мода:Roman (vkuzne)
## Описание: это миничат который написанн на PHP и JavaScript , с использованием технологий Ajax для обмена данными,
## без необходимости перезагружать страницу.
## Используется база MySQL. Минимальная нагрузка на сервер (всё кешируется) поддержка смайлов ,
## всех ббкодов и прочие функции..
## Внешне похож на чат с анимешки
## Сложность: легко
## Время установки: 3 мин
################################################################ Выполните SQL Запрос в БД
Код: | CREATE TABLE IF NOT EXISTS `bb_shout` (
`shout_id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT,
`shout_username` varchar(25) CHARACTER SET cp1251 NOT NULL DEFAULT '',
`shout_user_id` mediumint(8) NOT NULL DEFAULT '0',
`shout_group_id` mediumint(8) NOT NULL DEFAULT '0',
`shout_session_time` int(11) NOT NULL DEFAULT '0',
`shout_ip` char(8) CHARACTER SET cp1251 NOT NULL DEFAULT '',
`shout_text` varchar(1000) CHARACTER SET cp1251 NOT NULL,
`shout_active` mediumint(8) NOT NULL DEFAULT '0',
`shout_bbcode_uid` varchar(10) NOT NULL DEFAULT '',
KEY `shout_id` (`shout_id`)
); |
Откройте ajax.php
Найти
Код: | case 'view_post':
require(INC_DIR .'bbcode.'. PHP_EXT);
break;
|
ПОСЛЕ ДОБАВЬТЕ
Код: |
case 'chat_message':
require(INC_DIR .'functions_post.'. PHP_EXT);
require(INC_DIR .'bbcode.'. PHP_EXT);
break; |
НАЙТИ
Код: | 'view_post' => array('guest'), |
ПОСЛЕ ДОБАВЬТЕ
Код: | 'chat_message' => array('user'), |
НАЙТИ ПОСЛЕДНЮЮ КОВЫЧКУ }
ПЕРЕД НЕЙ ДОБАВИТЬ
Код: |
function chat_message()
{
global $db, $bb_cache, $userdata, $bb_cfg, $lang;
$mode = (int) $this->request['mode'];
$message = (string) $this->request['message'];
$shoutbox_date = 'H:i:s';
if($mode==1)
{
if(!$message) ajax_die($lang['shoutbox_err']);
$bbcode_on = $bb_cfg['allow_bbcode'];
$smilies_on = $bb_cfg['allow_smilies'];
if(!IS_ADMIN)
{
$chk = $db->fetch_row('SELECT MAX(shout_session_time) AS last_post_time FROM bb_shout WHERE shout_user_id = '.$userdata['user_id']);
if ( $chk['last_post_time'] > 0 && ( time() - $chk['last_post_time'] ) < $bb_cfg['flood_interval'] ) ajax_die($lang['Flood_Error']);
}
if (!empty($message))
{
$bbcode_uid = ( $bbcode_on ) ? make_bbcode_uid() : '';
$html_entities_match = array('#&(?!(\#[0-9]+;))#', '#<#', '#>#', '#"#');
$html_entities_replace = array('&', '<', '>', '"');
$message = str_replace("\r", '', trim($message));
$message = preg_replace("#\n{3,}#", "\n\n", $message);
$message = preg_replace($html_entities_match, $html_entities_replace, $message);
$message = stripslashes(prepare_message(addslashes(unprepare_message($message)), $bbcode_on, $smilies_on, $bbcode_uid));
$message = bbencode_first_pass($message, $bbcode_uid);
$message = bbencode_second_pass($message, $bbcode_uid);
$message = make_clickable($message);
$message = smilies_pass($message);
$message = nl2br($message);
$db->query('INSERT INTO bb_shout (shout_text, shout_session_time, shout_user_id, shout_ip, shout_username, shout_bbcode_uid) VALUES ("'.$db->escape($message).'", '.time().', '.$userdata['user_id'].', "'.USER_IP.'", "'.$db->escape($userdata['username']).'", "'.$bbcode_uid.'")');
$bb_cache->rm('shout_data');
}
}
if(!$shout_data = $bb_cache->get('shout_data'))
{
$shout_rows = $db->fetch_rowset("SELECT s.*, u.username, u.user_level, u.user_rank, u.user_avatar, u.user_avatar_type, u.user_allowavatar
FROM bb_shout s, ".USERS_TABLE." u
WHERE s.shout_user_id=u.user_id AND u.user_id = u.user_id
ORDER BY s.shout_session_time DESC LIMIT 50");
$i=0;
$shout_data = '';
foreach ($shout_rows AS $shout_row)
{
$row_class = !($i % 2) ? 'row1' : 'row2';
$user_level = $shout_row['user_level'];
if($user_level == ADMIN) $username = '<span class="colorAdmin">'.$shout_row['username'].'</span>' ;
else if($user_level == MOD) $username = '<span class="colorMod">'.$shout_row['username'].'</span>';
else if($user_level == GROUP_MEMBER) $username = '<span class="colorGroup">'.$shout_row['username'].'</span>';
else $username = '<span class="colorNick">'.$shout_row['username'].'</span>';
$avatar_img = '';
if ($shout_row['user_avatar_type'] && $shout_row['user_allowavatar'] )
{
switch($shout_row['user_avatar_type'] )
{
case USER_AVATAR_UPLOAD:
$avatar_img = ( $bb_cfg['allow_avatar_upload'] ) ? '<img align="left" style="max-height:35px;max-width:35px;padding-right: 3px;" src="' . $bb_cfg['avatar_path'] . '/' . $shout_row['user_avatar'] . '" alt="" border="0" />' : '';
break;
case USER_AVATAR_REMOTE:
$avatar_img = ( $bb_cfg['allow_avatar_remote'] ) ? '<img align="left" style="max-height:35px;max-width:35px;padding-right: 3px;" src="' . $shout_row['user_avatar'] . '" alt="" border="0" />' : '';
break;
case USER_AVATAR_GALLERY:
$avatar_img = ( $bb_cfg['allow_avatar_local'] ) ? '<img align="left" style="max-height:35px;max-width:35px;padding-right: 3px;" src="' . $bb_cfg['avatar_gallery_path'] . '/' . $shout_row['user_avatar'] . '" alt="" border="0" />' : '';
break;
}
}
$shout = (!$shout_row['shout_active']) ? $shout_row['shout_text'] : $lang['Shout_censor'];
//if ( $bb_cfg['allow_smilies'] != 0 ) $shout = smilies_pass($shout);
$shout_new = bbencode_second_pass($shout, $shout_row['shout_bbcode_uid']);
$shout = str_replace("\n", "\n<br />\n", $shout);
$shout = ($user_level == ADMIN) ? '<span class="colorAdmin">'.$shout.'</span>' : $shout;
$shout_data .= '<div id="shout_'.$shout_row['shout_id'].'" class="chat-comment '.$row_class.'"><div style="min-height: 32px;"><a href="http://unionpeer.org/profile.php?mode=viewprofile&u='.$shout_row['shout_user_id'].'" target="_blank">'.$avatar_img.' </a> <a class="bold" title="'.$lang['shoutbox_insert_name'].'" style="text-decoration: none;" href="javascript:add_nick(\'[b]'.addslashes($shout_row['shout_username']).'[/b],\')">'.$username.'</a><div class="small">'.create_date($shoutbox_date, $shout_row['shout_session_time'],3).'</div></div><div class="spacer_2"></div><span style="font-size: 11px;">'.$shout.'</span></div>';
++$i;
}
$bb_cache->set('shout_data', $shout_data);
}
$this->response['message'] = $shout_data;
} |
ОТКРОЙТЕ page_header.tpl
НАЙДИТЕ
Код: | <!-- IF SHOW_BT_USERDATA --><div id="user_ratio"> |
ПЕРЕД ДОБАВЬТЕ
Код: |
<script type="text/javascript">
ajax.chat_message = function(mode) {
ajax.exec({
action : 'chat_message',
mode : mode,
message : $('#message').val()
});
};
ajax.callback.chat_message = function(data) {
if(data.message)
{
$('#chat').show();
$('#message').attr('value', '');
$('#chat').html(data.message);
initPostBBCode('#chat');
}
};
function submit_click(e) {
e = e || window.event;
if (e.keyCode == 13 && e.ctrlKey) {
submit_chat();
};
}
function add_nick(text){
$('#message').attr('value', $('#message').val() + text +' ');
$('#message').focus();
}
$(document).ready(function(){ajax.chat_message(2);});
setInterval(function(){ajax.chat_message(2);}, 30000);
</script>
<style type="text/css">
#chat { overflow: auto; width: 200px; height: 300px; }
.chat-comment {
margin: 3px;
padding: 4px;
border: solid 1px #AED7FF;
background-color: #F9FCFF;
}
textarea.chat_message {
height: 40px; width: 200px;
border-radius: 0px;
-moz-border-radius: 0px;
font-size: 11px;
}
.chat_btn {
border: 1px solid #0080FF;
padding: 2px;
background-color: #F9FCFF;
font-size: 10px;
font-weight: bold;
}
.chat_btn:hover { color: #0080FF; }
</style>
<div class="category">
<h3 class="cat_title">Мини чат</h3>
<div class="cat_footer"></div>
<div class="f_tbl_wrap pad_4 tCenter">
<form name="post">
<textarea onkeydown="submit_click(event)" id="message" class="chat_message"></textarea>
<div class="floatR pad_4">
<span onclick="ajax.chat_message(1); return false;" class="chat_btn">Отправить</span>
<span onclick="$('#message').attr('value', ''); $('#message').focus();" class="chat_btn"> X </span>
<span onclick="window.open('posting.php?mode=smilies', '_phpbbsmilies', 'height=540, resizable=yes, scrollbars=yes ,width=620'); return false;" class="chat_btn"> :) </span>
<span onclick="ajax.chat_message(2); return false;" class="chat_btn">Обновить</span>
</div>
<div class="clear"></div>
<div class="spacer_2"></div>
<div id="chat" class="tLeft hidden"></div>
</form>
</div>
<div class="cat_footer"></div>
</div>
|
ОТКРОЙТЕ index.php
НАЙДИТЕ
Код: | $page_cfg['load_tpl_vars'] = array(
'post_icons',
);
|
ДОБАВЬТЕ ПОСЛЕ
Код: |
$page_cfg['include_bbcode_js'] = true; |
ОТКРОЙТЕ main.css
НАЙДИТЕ
Код: | .none { display: none; } |
ДОБАВЬТЕ ПОСЛЕ
Код: | .hidden { display: none; } |
ОТКРОЙТЕ lang_russian.php
ДОБАВЬТЕ В КОНЕЦ
Код: | $lang['shoutbox_insert_name'] = 'Мини-Чат';
$lang['shoutbox_err'] = 'Нужно ввести сообщение';
|
|
|
Вернуться к началу
|
|
GaZz-BenziN Зарегистрирован: 2010-11-04 Сообщ.: 204
|
|
Вернуться к началу
|
|
adelka Зарегистрирован: 2011-01-30 Сообщ.: 60
|
|
Вернуться к началу
|
|
Admin Администратор Зарегистрирован: 2010-07-27 Сообщ.: 777
|
04-Апр-11 10:53 |
#4 |
подошло на 261.единственное -поставили на движке по середине после лого с индивидуальным меню
переправить вот это ОТКРОЙТЕ page_header.tpl
НАЙДИТЕ
< Код: | !-- IF SHOW_BT_USERDATA --><div id="user_ratio"> |
ПЕРЕД ДОБАВЬТЕ
Код: | <script type="text/javascript">
ajax.chat_message = function(mode) {
ajax.exec({
action : 'chat_message',
mode : mode,
message : $('#message').val()
});
};
ajax.callback.chat_message = function(data) {
if(data.message)
{
$('#chat').show();
$('#message').attr('value', '');
$('#chat').html(data.message);
initPostBBCode('#chat');
}
};
function submit_click(e) {
e = e || window.event;
if (e.keyCode == 13 && e.ctrlKey) {
submit_chat();
};
}
function add_nick(text){
$('#message').attr('value', $('#message').val() + text +' ');
$('#message').focus();
}
$(document).ready(function(){ajax.chat_message(2);});
setInterval(function(){ajax.chat_message(2);}, 30000);
</script>
<style type="text/css">
#chat { overflow: auto; width: 200px; height: 300px; }
.chat-comment {
margin: 3px;
padding: 4px;
border: solid 1px #AED7FF;
background-color: #F9FCFF;
}
textarea.chat_message {
height: 40px; width: 200px;
border-radius: 0px;
-moz-border-radius: 0px;
font-size: 11px;
}
.chat_btn {
border: 1px solid #0080FF;
padding: 2px;
background-color: #F9FCFF;
font-size: 10px;
font-weight: bold;
}
.chat_btn:hover { color: #0080FF; }
</style>
<div class="category">
<h3 class="cat_title">Мини чат</h3>
<div class="cat_footer"></div>
<div class="f_tbl_wrap pad_4 tCenter">
<form name="post">
<textarea onkeydown="submit_click(event)" id="message" class="chat_message"></textarea>
<div class="floatR pad_4">
<span onclick="ajax.chat_message(1); return false;" class="chat_btn">Отправить</span>
<span onclick="$('#message').attr('value', ''); $('#message').focus();" class="chat_btn"> X </span>
<span onclick="window.open('posting.php?mode=smilies', '_phpbbsmilies', 'height=540, resizable=yes, scrollbars=yes ,width=620'); return false;" class="chat_btn"> :) </span>
<span onclick="ajax.chat_message(2); return false;" class="chat_btn">Обновить</span>
</div>
<div class="clear"></div>
<div class="spacer_2"></div>
<div id="chat" class="tLeft hidden"></div>
</form>
</div>
<div class="cat_footer"></div>
</div> | на вот это
открыть /templates/default/page_header.tpl
найти Код: | <!-- IF SHOW_IMPORTANT_INFO -->
<!--important_info-->
<!--<div id="important_info">
important_info
</div>-->
<!--/important_info-->
<!-- ENDIF -->
</div>
<!--/page_header-->
<!--menus--> | и после этого кода ставим
Код: |
<br/>
<script type="text/javascript">
ajax.chat_message = function(mode) {
ajax.exec({
action : 'chat_message',
mode : mode,
message : $('#message').val()
});
};
ajax.callback.chat_message = function(data) {
if(data.message)
{
$('#chat').show();
$('#message').attr('value', '');
$('#chat').html(data.message);
initPostBBCode('#chat');
}
};
function submit_click(e) {
e = e || window.event;
if (e.keyCode == 13 && e.ctrlKey) {
submit_chat();
};
}
function add_nick(text){
$('#message').attr('value', $('#message').val() + text +' ');
$('#message').focus();
}
$(document).ready(function(){ajax.chat_message(2);});
setInterval(function(){ajax.chat_message(2);}, 30000);
</script>
<style type="text/css">
#chat { overflow: auto; width: 1200px; height: 300px; }
.chat-comment {
margin: 3px;
padding: 4px;
border: solid 1px #AED7FF;
background-color: #F9FCFF;
}
textarea.chat_message {
height: 20px; width: 800px;
border-radius: 0px;
-moz-border-radius: 0px;
font-size: 11px;
}
.chat_btn {
border: 1px solid #0080FF;
padding: 2px;
background-color: #F9FCFF;
font-size: 10px;
font-weight: bold;
}
.chat_btn:hover { color: #0080FF; }
</style>
<div class="category">
<h3 class="cat_title"><center>Мини чат</center></h3>
<div class="cat_footer"></div>
<div class="f_tbl_wrap pad_4 tCenter"> <center>
<form name="post">
<textarea onkeydown="submit_click(event)" id="message" class="chat_message"></textarea>
<div class="floatR pad_4">
<span onclick="ajax.chat_message(1); return false;" class="chat_btn">Отправить</span>
<span onclick="$('#message').attr('value', ''); $('#message').focus();" class="chat_btn"> X </span>
<span onclick="window.open('posting.php?mode=smilies', '_phpbbsmilies', 'height=540, resizable=yes, scrollbars=yes ,width=620'); return false;" class="chat_btn"> :) </span>
<span onclick="ajax.chat_message(2); return false;" class="chat_btn">Обновить</span>
</div>
<div class="clear"></div>
<div class="spacer_2"></div>
<div id="chat" class="tLeft hidden"></div>
</form> </center>
</div>
<div class="cat_footer"></div>
</div>
| скриншот
Описание файла: |
|
Размер файла: |
44.82 KB |
Просмотров: |
1048 раз(а) |
|
|
|
Вернуться к началу
|
|
** *Cibertro*N* ** Зарегистрирован: 2011-04-25 Сообщ.: 63 Откуда: Dushanbe
|
14-Июл-11 08:41 |
#5 |
в main.css нету этого кода что делать?
Код: | .none { display: none; } |
|
|
Вернуться к началу
|
|
Maf Зарегистрирован: 2011-04-07 Сообщ.: 17
|
|
Вернуться к началу
|
|
** *Cibertro*N* ** Зарегистрирован: 2011-04-25 Сообщ.: 63 Откуда: Dushanbe
|
14-Июл-11 21:32 |
#7 |
Maf я те выложу ты мне поишеш емли ты такой FINDER -exper
?
|
|
Вернуться к началу
|
|
** *Cibertro*N* ** Зарегистрирован: 2011-04-25 Сообщ.: 63 Откуда: Dushanbe
|
14-Июл-11 21:45 |
#8 |
Maf я те выложу ты мне поишеш емли ты такой FINDER -exper
?
или ты свое выложи если не беспоуою, я посмотрю где он должын стоять и поколдую
думаю что он гдето тут должын стоять
Код: | .subforums em { display: none; }
.subforums + .moderators { margin-top: 0; }
.dot-sf { color: #417998 !important; font-size: 11px; margin-right: 4px; }
.new .dot-sf { color: #CA4200 !important; }
.sf_title { white-space: normal; }
.sf_icon { margin-right: 1px; }
.sf_separator {}
.sf_title a { text-decoration: none; } |
|
|
Вернуться к началу
|
|
Damp1 Зарегистрирован: 2011-05-21 Сообщ.: 3
|
15-Июл-11 15:12 |
#9 |
** *Cibertro*N* **
вставь в main.css в любое место :
.none { display: none; }
.hidden { display: none; }
у меня стоит в самом конце и всё работает
|
|
Вернуться к началу
|
|
** *Cibertro*N* ** Зарегистрирован: 2011-04-25 Сообщ.: 63 Откуда: Dushanbe
|
|
Вернуться к началу
|
|
Admin Администратор Зарегистрирован: 2010-07-27 Сообщ.: 777
|
15-Июл-11 19:22 |
#11 |
права присвой файлам.777 или 755
и проверь все что делал!
|
|
Вернуться к началу
|
|
** *Cibertro*N* ** Зарегистрирован: 2011-04-25 Сообщ.: 63 Откуда: Dushanbe
|
|
Вернуться к началу
|
|
Damp Зарегистрирован: 2011-01-15 Сообщ.: 91
|
|
Вернуться к началу
|
|
** *Cibertro*N* ** Зарегистрирован: 2011-04-25 Сообщ.: 63 Откуда: Dushanbe
|
|
Вернуться к началу
|
|
Damp Зарегистрирован: 2011-01-15 Сообщ.: 91
|
17-Июл-11 16:09 |
#15 |
** *Cibertro*N* **
возможно проблема с кодировкой,это чисто моё мнение
|
|
Вернуться к началу
|
|
|
Страница 1 из 2 |
Страницы: 1, 2 След. |
|
|
|
Вы не можете начинать темы Вы не можете отвечать на сообщения Вы не можете редактировать свои сообщения Вы не можете удалять свои сообщения Вы не можете голосовать в опросах Вы не можете прикреплять файлы к сообщениям Вы можете скачивать файлы
|
Все материалы сайта представлены только для ознакомления. При копировании материала ссылка на torrentpier-download.ru
обязательна!
sitemap карта форума | Статистика визитов поисковых ботов | Выдача в поисковиках
Powered by phpBB © 2001, 2011 phpBB Group | ©2011-2024 - Воронеж |
|