ExBB Community ExBB Community
 Сайт проекта ExBB Общение объединяет!
Войдите на форум при помощиВойти через loginza
 Чат на форуме      Помощь      Поиск      Пользователи     BanList BanList


 Страниц (2): [1] 2 »   

> Без описания
yura3d
Отправлено: 30 июля 2009 — 18:38
Post Id


Пользователь
ExBB Team
ExBB Developer
ExBB Mods Author


Покинул форум
Сообщений всего: 3394
Дата рег-ции: Февр. 2009  
Откуда: Минск, Беларусь
Репутация: 353




В продолжение начинания пользователя altjo решил выложить доработанный вариант модуля антиспама для гостей, который требует от гостей ввода защитного кода с картинки (каптчи) при создании тем или написании сообщений. Для установки необходимо проделать следующие изменения
Откройте файл post.php, найдите строки:
CODE:
function addnewthread() {
global $fm;

И под ними вставьте строку:
CODE:
check_captcha();

Далее в этом же файле найдите строки:
CODE:
function addreply() {
global $fm;

И под ними вставьте строку:
CODE:
check_captcha();

Затем в этом же файле найдите последнюю строку:
CODE:
?>

И над ней вставьте строки:
CODE:
function check_captcha() {
global $fm;

if ($fm->exbb['anti_bot'] && !$fm->user['id'] && (!isset($_SESSION['captcha']) || $fm->_String('captcha') !== $_SESSION['captcha']))
$fm->_Message($fm->LANG['Captcha'], $fm->LANG['CaptchaMes']);
}

Теперь откройте файл language/russian/lang_front_forums.php, найдите строку:
CODE:
$this->LANG['MoveInExistsOk'] = 'Выбранные сообщения успешно выделены в тему "%s"!';

И под ней вставьте строки:
CODE:
/*
captcha
*/
$this->LANG['Captcha'] = 'Защитный код';
$this->LANG['CaptchaDesc'] = 'Введите код, изображённый на картинке<br /><br />Зарегистрируйтесь, чтобы избавиться от необходимости ввода защитного кода';
$this->LANG['CaptchaReload'] = 'Если Вы не видите код на картинке, попробуйте <a href="#" onClick="reload_captcha(); return false;"><b>обновить картинку</b></a>';
$this->LANG['CaptchaMes'] = 'Введён неверный защитный код!<br />Зарегистрируйтесь, чтобы избавиться от необходимости ввода защитного кода.';

Далее откройте файлы post_addnew.tpl и post_reply.tpl (они располагаются в папке templates/InvisionExBB), в каждом из них найдите строки:
CODE:
if ($upload !== 0) {
echo <<<DATA
<tr valign="top">
<td class="pformleft">
{$fm->LANG['FileUpload']}
</td>
<td class="pformright">
{$fm->LANG['FileUploadMax']}{$upload}
<br />
{$fm->LANG['UploadExts']} {$fm->exbb['file_type']}
<br />
<input type="hidden" name="MAX_FILE_SIZE" value="{$upload}">
<input class="input" type="file" size="30" name="FILE_UPLOAD">
</td>
</tr>\n
DATA;
}

И под ними вставьте строки:
CODE:
if ($fm->exbb['anti_bot'] && !$fm->user['id'])
echo <<<DATA
<tr>
<td class="pformleft" valign="top"><b>{$fm->LANG['Captcha']}</b><br />{$fm->LANG['CaptchaDesc']}</td>
<td class="pformright" valign="top">{$fm->LANG['CaptchaReload']}<br /><br />
<img id="captcha" src="regimage.php" alt="Captcha" /><br /><br />
<input type="text" name="captcha" size="20" maxlength="10" />
<script language="JavaScript" src="javascript/reload_captcha.js"></script></td>
</tr>
DATA;

Затем откройте файл templates/InvisionExBB/post_form.tpl, найдите строки:
CODE:
if ($upload !== 0) {
$post_form .= <<<DATA
<tr valign="top">
<td class="pformleft">
{$fm->LANG['FileUpload']}
</td>
<td class="pformright">
{$fm->LANG['FileUploadMax']}{$upload}
<br />
{$fm->LANG['UploadExts']} {$fm->exbb['file_type']}
<br />
<input type="hidden" name="MAX_FILE_SIZE" value="{$upload}">
<input class="input" type="file" size="30" name="FILE_UPLOAD">
</td>
</tr>
DATA;
}

И под ними вставьте строки:
CODE:
if ($fm->exbb['anti_bot'] && !$fm->user['id'])
$post_form .= <<<DATA
<tr>
<td class="pformleft" valign="top"><b>{$fm->LANG['Captcha']}</b><br />{$fm->LANG['CaptchaDesc']}</td>
<td class="pformright" valign="top">{$fm->LANG['CaptchaReload']}<br /><br />
<img id="captcha" src="regimage.php" alt="Captcha" /><br /><br />
<input type="text" name="captcha" size="20" maxlength="10" />
<script language="JavaScript" src="javascript/reload_captcha.js"></script></td>
</tr>
DATA;


Осталось только скачать из прикреплённого архива файл reload_captcha.js и закачать его в папку javascript

На этом всё. Данный мод работает в том случае, если в админке включена защита от регистрации ботов (Админцентр -> Общие настройки -> Безопасность -> Активировать защиту от регистрации ботов? -> да). Все Ваши пожелания и предложения по этому моду оставляйте в данной теме Улыбка

Скачать файл: (для скачивания файла Войдите или зарегистрируйтесь)
Скачан раз: 1189
 
 
luigi
Отправлено: 31 июля 2009 — 10:39
Post Id


Пользователь
Newbie


Покинул форум
Сообщений всего: 10
Дата рег-ции: Март 2009  
Репутация: 2




with this code:

CODE:

<script language="javascript">
function reloadimage() {
var currentTime = new Date()
document.getElementById('captcha').src='regimage.php?ss='+currentTime.getTime();
}
</script>


and

CODE:

<div style="float:left;"><img id="captcha" src="regimage.php" border="0" alt="captcha"></div><div style="vertical-align:middle;" class="button"><input type="button" value="{$fm->LANG['CaptchaReload']}" onClick="reloadimage()" /></div>
<br><br><br><input type="text" name="captcha" size="13" maxlength="10">



it's possible to reload only the Captcha image and not all page
Прикреплено изображение
captcha.png

(Отредактировано автором: 31 июля 2009 — 10:42)

 
 
yura3d
Отправлено: 31 июля 2009 — 11:42
Post Id


Пользователь
ExBB Team
ExBB Developer
ExBB Mods Author


Покинул форум
Сообщений всего: 3394
Дата рег-ции: Февр. 2009  
Откуда: Минск, Беларусь
Репутация: 353




luigi
That's good idea Улыбка

Предложенный luigi вариант позволяет перезагружать картинку с кодом (каптчу) без необходимости перезагрузки всей страницы, а это особенно актуально, если картинка сформировалась таким образом, что некоторые символы плохо видны. В первом сообщении уже выложена усовершенствованная версия этого мода, для тех же, кто уже устанавливал данный мод необходимо проделать следующие изменения
Откройте файл language/russian/lang_front_forums.php, найдите строку:
CODE:
$this->LANG['CaptchaDesc'] = 'Введите код, изображённый на картинке<br /><br />Зарегистрируйтесь, чтобы избавиться от необходимости ввода защитного кода';

И под ней разместите строку:
CODE:
$this->LANG['CaptchaReload'] = 'Если Вы не видите код на картинке, попробуйте <a href="#" onClick="reload_captcha(); return false;"><b>обновить картинку</b></a>';

Далее откройте файлы post_addnew.tpl, post_reply.tpl и post_form.tpl (все они находятся в папке templates/InvisionExBB), в каждом из них найдите строки:
CODE:
<tr>
<td class="pformleft" valign="top"><b>{$fm->LANG['Captcha']}</b><br />{$fm->LANG['CaptchaDesc']}</td>
<td class="pformright" valign="top"><img src="regimage.php" alt="Captcha" /><br /><br />
<input type="text" name="captcha" size="20" maxlength="10" /></td>
</tr>

И замените их строками:
CODE:
<tr>
<td class="pformleft" valign="top"><b>{$fm->LANG['Captcha']}</b><br />{$fm->LANG['CaptchaDesc']}</td>
<td class="pformright" valign="top">{$fm->LANG['CaptchaReload']}<br /><br />
<img id="captcha" src="regimage.php" alt="Captcha" /><br /><br />
<input type="text" name="captcha" size="20" maxlength="10" />
<script language="JavaScript" src="javascript/reload_captcha.js"></script></td>
</tr>

Останется только разместить файл reload_captcha.js (скачать его можно здесь) в папке javascript

Как выглядит вариант мода с обновлением картинки, Вы можете видеть на скриншоте ниже
Прикреплено изображение
captcha.PNG

 
 
electron
Отправлено: 31 июля 2009 — 14:18
Post Id



Администратор
ExBB Team


Покинул форум
Сообщений всего: 3917
Дата рег-ции: Февр. 2009  
Репутация: 341




а можно нечто подобное и в окне регистрации сделать? я понимаю, что это не очень сложно и попробовал бы сам, но не соображу куда лезть... Закатив глазки
 
 
yura3d
Отправлено: 31 июля 2009 — 18:08
Post Id


Пользователь
ExBB Team
ExBB Developer
ExBB Mods Author


Покинул форум
Сообщений всего: 3394
Дата рег-ции: Февр. 2009  
Откуда: Минск, Беларусь
Репутация: 353




electron пишет:
а можно нечто подобное и в окне регистрации сделать? я понимаю, что это не очень сложно и попробовал бы сам, но не соображу куда лезть... Закатив глазки

Можно. В файле language/russian/lang_front_register.php нужно найти строку:
CODE:
$this->LANG['CaptchaBroken'] = 'Если Вы не видете код на картинке, то перегрузите окно браузера (Ctrl+R)';

И заменить её строкой:
CODE:
$this->LANG['CaptchaBroken'] = 'Если Вы не видете код на картинке, то <a href="#" onClick="reload_captcha(); return false;"><b>обновите картинку с кодом</b></a>';

Далее в файле templates/InvisionExBB/agreed.tpl найти строку:
CODE:
<td class="profilright"><img src="regimage.php" border="0" alt="captcha"></td>

И заменит её строкой:
CODE:
<td class="profilright"><img src="regimage.php" id="captcha" border="0" alt="captcha"></td>

И, наконец, в этом же файле чуть ниже ищем строку:
CODE:
<td class="profilright"><input type="text" style="width: 130px" name="captcha" size="13" maxlength="10"></td>

И заменяем её строками:
CODE:
<td class="profilright"><input type="text" style="width: 130px" name="captcha" size="13" maxlength="10">
<script language="JavaScript" src="javascript/reload_captcha.js"></script></td>

Чтобы обновление каптчи работало, в папке javascript должен размещаться скрипт reload_captcha.js, выложенный в первом сообщении темы
 
 
electron
Отправлено: 31 июля 2009 — 18:33
Post Id



Администратор
ExBB Team


Покинул форум
Сообщений всего: 3917
Дата рег-ции: Февр. 2009  
Репутация: 341




теперь регилка - то что надо. супер! Круто спасибо!

(Отредактировано автором: 1 августа 2009 — 03:46)

 
 
Zeg
Отправлено: 31 июля 2009 — 23:21
Post Id



Пользователь
Super Member


Покинул форум
Сообщений всего: 891
Дата рег-ции: Март 2009  
Откуда: Беларусь
Репутация: 89




За последний вариант (капча при регистрации) - спасибо!
 
 
altjo
Отправлено: 1 августа 2009 — 15:53
Post Id


Пользователь
ExBB Skins Creator


Покинул форум
Сообщений всего: 277
Дата рег-ции: Февр. 2009  
Репутация: 86




спс за мод и luigi за идейку, все отлишно работает, пока капча не пробиваема...

ps. интересно, у кого-то еще гости могут отписыватся на форуме, сколько форумов понаходил.. или это у меня только так ))...
 
 
Borman
Отправлено: 1 августа 2009 — 16:24
Post Id


Пользователь
Full Member


Покинул форум
Сообщений всего: 182
Дата рег-ции: Февр. 2009  
Откуда: Украина, Донецк
Репутация: 3





altjo пишет:
у кого-то еще гости могут отписыватся на форуме,
Отписывание гостями не благодарное дело и плохо для развития и статистики форума. Надо народ приучать к культуре общения, где каждый юзвер должен быть представлен хотябы ником, или я не прав!? При имении дела с гостями на форуме он просто превращается в помойку, но это мое мнение Растерялся
 
 
electron
Отправлено: 1 августа 2009 — 17:01
Post Id



Администратор
ExBB Team


Покинул форум
Сообщений всего: 3917
Дата рег-ции: Февр. 2009  
Репутация: 341




altjo пишет:
интересно, у кого-то еще гости могут отписыватся на форуме, сколько форумов понаходил.. или это у меня только так ))..

у меня все форумы для гостей - только рид-онли. раньше была открыта тема "предложения по улучшению форума", но когда ее начали засирать рекламой спамеры - и ее закрыл.
 
 
mastersound
Отправлено: 1 августа 2009 — 22:50
Post Id



Пользователь
Super Member


Покинул форум
Сообщений всего: 604
Дата рег-ции: Март 2009  
Откуда: Ё-бург
Репутация: 23




я оставил "курилку", но с цензурой на www и http (не помню - кто это отметил... electron or vipraskrutka?...) и всякие секасы. Всё.. За месяц пара постов, и то... как бы информативно незлых, полезных...
 
 
chex01
Отправлено: 22 октября 2009 — 10:40
Post Id



Пользователь
Newbie


Покинул форум
Сообщений всего: 27
Дата рег-ции: Сент. 2009  
Откуда: Россия, Нижний Новгород
Репутация: 1




Большое спасибо! Всё работает на ура!
 
 
altjo
Отправлено: 18 февраля 2010 — 16:28
Post Id


Пользователь
ExBB Skins Creator


Покинул форум
Сообщений всего: 277
Дата рег-ции: Февр. 2009  
Репутация: 86




*пожалуй, поделюсь своими маразмами=)
Упрощённая текстовая альтернатива мода "Антиспам для гостей при создании тем и сообщений" (возможно кого-то заинтересует)



Включение/Отключение мода возможно в Админцентре, в разделе "Управление" Модулями

*****
Недостатки:
- пользователи с выключенным JavaScript не смогут оставлять сообщения/создавать темы
- пока не тестировалось в боевых условиях (собственно остановит ли это спам-бота неизвестно=)) *в процессе тестирования

*****
Обновление от 26.02.2010 (только для тех, кто ранее устанавливал этот текстовый мод)
Спойлер (Отобразить)

*****

УСТАНОВКА:
- перенесите папку /txtcode/ из архива, в каталог /modules/ форума.
- следуйте инструкциям, описанным ниже.

Спойлер (Отобразить)


Скачать файл: (для скачивания файла Войдите или зарегистрируйтесь)
Скачан раз: 291

(Отредактировано автором: 27 февраля 2010 — 10:00)

 
 
altjo
Отправлено: 27 февраля 2010 — 10:08
Post Id


Пользователь
ExBB Skins Creator


Покинул форум
Сообщений всего: 277
Дата рег-ции: Февр. 2009  
Репутация: 86




Для тех, кто устанавливал оригинальный мод "Антиспам для гостей при создании тем и сообщений" (с графическим защитным кодом)
т.к. отключить этот мод возможно только выключив защиту от регистрации ботов (чего делать не желательно), то можно вынести управление этим модом в "Админцентр"

Спойлер (Отобразить)


-----
В результате если установить оба эти варианта мода (текстовый и графический), то получим такое :'-)


Собственно можно оставить любой один вариант или отключить/включить всё %)
 
 
Rutir123
Отправлено: 10 марта 2010 — 19:16
Post Id



Пользователь
Newbie


Покинул форум
Сообщений всего: 32
Дата рег-ции: Февр. 2010  
Репутация: 0

[+]


Полезная вещь! спасибо
 
 
Страниц (2): [1] 2 »
Сейчас эту тему просматривают: 1 (гостей: 1, зарегистрированных: 0)
« Модификации и дополнения »

> Похожие темы: Мод: Антиспам для гостей при создании тем и сообщений
Темы Форум Информация о теме Обновление
Неправильный переход на последнюю страницу
при наличии прикрепленных сообщений
Решение проблем Ответов: 19
Автор темы: cynical2207
27 сентября 2013 — 15:15
Автор: CAB
При переносе сообщения в действующую ветку пропали прикрепленные файлы в исходной ветке
Перенос сообщений и пропажа прикрепленных файлов
Решение проблем Ответов: 7
Автор темы: alexx
13 ноября 2010 — 02:46
Автор: alexx
Не открываются смайлы!!!
При создании сообщений не могу посмотреть все доступные смайлы...
Решение проблем Ответов: 7
Автор темы: CHE
8 мая 2009 — 13:22
Автор: KingS
после установки Спойлера возникает ошибка
ошибка при создании темы,сообщения и опроса
Решение проблем Ответов: 8
Автор темы: triad
19 декабря 2010 — 22:46
Автор: triad
Выделение цветом "новые сообщения"
или подсчет и вывод кол-ва новых сообщений...
Обсуждение Ответов: 10
Автор темы: mastersound
19 марта 2010 — 05:15
Автор: Kleorhion
 



Все гости форума могут просматривать этот раздел.
Только администраторы и модераторы могут создавать новые темы в этом разделе.
Только администраторы и модераторы могут отвечать на сообщения в этом разделе.
 




Яндекс.Метрика   

Powered by ExBB
ExBB FM 1.0 RC1 by TvoyWeb.ru
InvisionExBB Style converted by Markus®

[Script Execution time: 0.081]     [ ]