Уважаемые пользователи!
C 7 ноября 2020 года phpBB Group прекратила выпуск обновлений и завершила дальнейшее развитие phpBB версии 3.2.
С 1 августа 2024 года phpBB Group прекращает поддержку phpBB 3.2 на официальном сайте.
Сайт официальной русской поддержки phpBB Guru продолжит поддержку phpBB 3.2 до 31 декабря 2024 года.
С учетом этого, настоятельно рекомендуется обновить конференции до версии 3.3.

Как "простимулировать" несознательных писать на форуме?

У вас есть идея для расширения функциональности phpBB 3.0.x? Расскажите о ней здесь!
Правила форума
Местная Конституция | Шаблон запроса | Документация (phpBB3) | Переход на 3.0.6 и выше | FAQ-3 (phpbb3) | Как задавать вопросы | Как устанавливать моды

Ваш вопрос может быть удален без объяснения причин, если на него есть ответы по приведённым ссылкам (а вы рискуете получить предупреждение ;) ).
Аватара пользователя
alcash
phpBB 1.4.4
Сообщения: 184
Стаж: 11 лет 10 месяцев
Откуда: примосковье
Благодарил (а): 83 раза
Поблагодарили: 1 раз
Контактная информация:
Забанен: Бессрочно

Как "простимулировать" несознательных писать на форуме?

Сообщение alcash »

Здравствуйте, уважаемые ГУРУ!
Назрела у меня одна проблемка, я начинающий админ первого в своей практике форума и в свое время сильно лоханулся, прикрутив к форуму чатик, при чем чатик закрытый для определенного круга лиц со "стажем", эта идея была живо подхвачена и сейчас мы пришли к тому, что 90% завсегдатаев форума сидит в чатике и ни в какую не хочет писать в форуме, новички приходят и недоумевают, народу в сети многа, а общаться никто не общается. Чатик открывать для всех нельзя по некоторым соображениям этики, там мат и прочие базары, закрывать его совсем - тоже.
Выход из создавшегося положения для себя вижу только один: простимулировать товарищей писать в форуме, прикрутить перед чатбоксом условный оператор, который бы проверял оставлял ли сегодня данный юзер сообщения в форуме, то есть проверка сообщений по имени пользователя и дате сообщений.
Блок схема такая, если юзер оставил 2 сообщения на форуме и дата этих сообщений соответствует сегодняшней дате то показать чатбокс, если сообщений 0 или 1 - то вывести ошибку: "у вас недостаточно сообщений для пользования чатом".
Скажите, можно ли реализовать эти условия? Или может быть есть готовый мод?
Аватара пользователя
Garret_Dark
phpBB 2.0.16
Сообщения: 1096
Стаж: 15 лет 2 месяца
Откуда: root/world/russia/
Благодарил (а): 126 раз
Поблагодарили: 206 раз
Контактная информация:

Re: Как "простимулировать" несознательных писать на форуме?

Сообщение Garret_Dark »

Вообще чат для форума это зло.
Меня уже давно дергают мои, что бы чат поставил, но это сразу огромный минус к активности на форуме.
Потому решено было не вестись и держать оборону :)

Как начинающему админу, скажу: Что бы ты ни сделал на форуме, насколько крутую фишку бы не прикрутил - всегда будут недовольные.

Потому лучше просто развивай "оффтопный" раздел, у нас есть тема на форуме "Болтология", там народ как в чате общается. За чат иногда поднимаются темы, но так же и утихают.

В общем, если чат наносит больше вреда, чем пользы, то лучше его убрать и никого не слушать.
er107
phpBB 2.0.14
Сообщения: 973
Стаж: 13 лет
Благодарил (а): 285 раз
Поблагодарили: 57 раз

Re: Как "простимулировать" несознательных писать на форуме?

Сообщение er107 »

А у меня на форуме три чата, один общий и два приватных. И наоборот весь флуф ушел из форума в чаты.
er107
phpBB 2.0.14
Сообщения: 973
Стаж: 13 лет
Благодарил (а): 285 раз
Поблагодарили: 57 раз

Re: Как "простимулировать" несознательных писать на форуме?

Сообщение er107 »

Полностью согласен. Хотел даже сделать оговорку выше по этому поводу:)
Аватара пользователя
alcash
phpBB 1.4.4
Сообщения: 184
Стаж: 11 лет 10 месяцев
Откуда: примосковье
Благодарил (а): 83 раза
Поблагодарили: 1 раз
Контактная информация:
Забанен: Бессрочно

Re: Как "простимулировать" несознательных писать на форуме?

Сообщение alcash »

Товарищи, закрыть чатег не могу, нужно как-то ограничить доступ, как бы сделать проверку: существуют ли на форуме сообщения данного канкретного аффтара за сегодняшнюю дату. Вот есть же например поиск по аффтару, найти сообщения пользователя в просмотре профиля, можно ли запилить еще и поиск сообщений по дате каким-то образом, и если сообщений больше или равно 2, то открыть доступ к чатбоксу. Я в пхп полнейший ноль, еще в хтмл или цсс могу сваять ченить по учебнику, но здесь ваще темный лес! :oops: :(
Аватара пользователя
angst66
phpBB 3.0.0 RC1
Сообщения: 1469
Стаж: 12 лет 2 месяца
Благодарил (а): 86 раз
Поблагодарили: 149 раз

Re: Как "простимулировать" несознательных писать на форуме?

Сообщение angst66 »

alcashКомрад, что за чат?
Аватара пользователя
alcash
phpBB 1.4.4
Сообщения: 184
Стаж: 11 лет 10 месяцев
Откуда: примосковье
Благодарил (а): 83 раза
Поблагодарили: 1 раз
Контактная информация:
Забанен: Бессрочно

Re: Как "простимулировать" несознательных писать на форуме?

Сообщение alcash »

http://startrekguide.com/community/view ... 127&t=8675 Вот этот чат на айяксе.
Аватара пользователя
angst66
phpBB 3.0.0 RC1
Сообщения: 1469
Стаж: 12 лет 2 месяца
Благодарил (а): 86 раз
Поблагодарили: 149 раз

Re: Как "простимулировать" несознательных писать на форуме?

Сообщение angst66 »

Ну на примере чата от VEG можно добавить права и для вашего чато (наверно)
Аватара пользователя
alcash
phpBB 1.4.4
Сообщения: 184
Стаж: 11 лет 10 месяцев
Откуда: примосковье
Благодарил (а): 83 раза
Поблагодарили: 1 раз
Контактная информация:
Забанен: Бессрочно

Re: Как "простимулировать" несознательных писать на форуме?

Сообщение alcash »

Да не, ты не понял, у меня и так он открыт для одной-единственной группы чат:

Код: Выделить всё

<!-- IF S_GROUP_8 -->
				<!-- INCLUDE chat_body.html -->
<!-- ENDIF -->
Хотелось бы пускать в чат того, кто пишет хотя бы одно сообщение в день на форуме, я на словах просил людей, мол помогайте новичкам, ну пару слов напишут и опять между собой чатятся!
Аватара пользователя
Garret_Dark
phpBB 2.0.16
Сообщения: 1096
Стаж: 15 лет 2 месяца
Откуда: root/world/russia/
Благодарил (а): 126 раз
Поблагодарили: 206 раз
Контактная информация:

Re: Как "простимулировать" несознательных писать на форуме?

Сообщение Garret_Dark »

alcash, можно попробовать так, но это не "сообщения за сегодня", а если нет сообщений за последние 24 часа:

Открыть includes/functions.php
Найти Добавить перед

Код: Выделить всё

function chat_get_posts_day($user_id)
{
	global $db;
	$sql = 'SELECT COUNT(post_id) AS count
        FROM ' . POSTS_TABLE . '
        WHERE poster_id = '.$user_id.' 
        AND post_time > '.(time() - 86400);
	$result = $db->sql_query($sql);
	$count = (int) $db->sql_fetchfield('count');
	$db->sql_freeresult($result);
	
	if($count < 2)
	{
		return true;
	}
	else
	{
		return false;
	}
}
Открыть index.php
Найти

Код: Выделить всё

include($phpbb_root_path . 'shout.' . $phpEx);
Заменить на (Не знаю как в этом чате устанавливаются права доступа, но на всякий случай закрываю от гостей, ботов ну и тех кто оставил менее 2х постов за последние 24ч)

Код: Выделить всё

if($user->data['user_id'] != ANONYMOUS && !$user->data['is_bot'] && !chat_get_posts_day($user->data['user_id']))
{
	include($phpbb_root_path . 'shout.' . $phpEx);
}
Открыть chat.php
Найти

Код: Выделить всё

$user->setup('chat');
Добавить ниже (Вообще желательно для этого сообщения добавить языковую переменную, но думаю с этим справитесь сами, либо сохраняйте PHP файл в UTF8)

Код: Выделить всё

if($user->data['user_id'] == ANONYMOUS || $user->data['is_bot'] || chat_get_posts_day($user->data['user_id']))
{
	trigger_error('Для доступа к чату необходимо оставить не менее 2х сообщений на форуме за последние 24 часа!');
}
P.S. Не проверял, сделано на коленке, этот чат вообще вижу впервые :)
Аватара пользователя
alcash
phpBB 1.4.4
Сообщения: 184
Стаж: 11 лет 10 месяцев
Откуда: примосковье
Благодарил (а): 83 раза
Поблагодарили: 1 раз
Контактная информация:
Забанен: Бессрочно

Re: Как "простимулировать" несознательных писать на форуме?

Сообщение alcash »

Работает! Но не совсем! На индексной странице виден пустой шаблон чата:

Изображение

А вот если открыть chat.php в отдельном окне, то все чотка! :D

Изображение
Shredder
Former team member
Сообщения: 2217
Стаж: 15 лет 3 месяца
Благодарил (а): 236 раз
Поблагодарили: 561 раз
Контактная информация:

Re: Как "простимулировать" несознательных писать на форуме?

Сообщение Shredder »

alcash писал(а):На индексной странице виден пустой шаблон чата:
Потому что это не чат.php, а shout.php. Туда нужно вставлять то же самое, что и для chat.
Аватара пользователя
Garret_Dark
phpBB 2.0.16
Сообщения: 1096
Стаж: 15 лет 2 месяца
Откуда: root/world/russia/
Благодарил (а): 126 раз
Поблагодарили: 206 раз
Контактная информация:

Re: Как "простимулировать" несознательных писать на форуме?

Сообщение Garret_Dark »

Shredder, тогда, по идее, главная страница выпадет вообще :)

alcash, нет времени разбираться как там устроена проверка работы чата, так что так:
В index.php (учитывая уже проведенные правки!)
Найти

Код: Выделить всё

include($phpbb_root_path . 'shout.' . $phpEx);
Добавить ниже

Код: Выделить всё

	$template->assign_vars(array('S_CHAT_ALLW' => true));
и в index_body.html
Там где добавлял

Код: Выделить всё

<!-- IF S_GROUP_8 -->
Заменить на

Код: Выделить всё

<!-- IF S_GROUP_8 and S_CHAT_ALLW -->
Аватара пользователя
alcash
phpBB 1.4.4
Сообщения: 184
Стаж: 11 лет 10 месяцев
Откуда: примосковье
Благодарил (а): 83 раза
Поблагодарили: 1 раз
Контактная информация:
Забанен: Бессрочно

Re: Как "простимулировать" несознательных писать на форуме?

Сообщение alcash »

Garret_Dark писал(а):Shredder, тогда, по идее, главная страница выпадет вообще
Абсолютно верно!!
Garret_Dark писал(а):и в index_body.html
Даааа!!!! Все работает!!! Спасибо огромное!
Закрыто

Вернуться в «Запросы модов для phpBB 3.0.x»