ExBB Community » Файловый ExBB » Модификации и дополнения » Дополнение: Каптча на странице восстановления пароля

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

1. yura3d - 5 июля 2010 — 12:38 - перейти к сообщению
В последнее время на нашем форуме стали появляться случаи использования системы восстановления забытого пароля не по назначению. В частности, речь идёт о имевших в последнее время место, множественных попытках восстановления пароля одного и того же или нескольких пользователей, из-за чего пользователям приходило большое число писем, сгенерированных форумом, с соответствующими инструкциями по активации нового пароля. Установлено, что подобные попытки производились до нескольких раз в секунду (возможно, с использованием бота), при этом задействовались китайские прокси-серверы

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

Реализация каптчи на странице восстановления пароля (Отобразить)

Каптча будет выводиться при условии, что в админке включена данная функция (страница Безопасность, пункт Активировать защиту от регистрации ботов?)
Все Ваши предложения и замечания оставляйте в этой теме Улыбка
2. Defenderyk - 6 июля 2010 — 08:20 - перейти к сообщению
а вот я не помню, если для гостей доступ открыт в форум, то был мод каптчи для гостей?
3. yura3d - 6 июля 2010 — 15:58 - перейти к сообщению
Defenderyk пишет:
а вот я не помню, если для гостей доступ открыт в форум, то был мод каптчи для гостей?

Возможно, имеется в виду Мод: Антиспам для гостей при создании тем и сообщений
4. Defenderyk - 7 июля 2010 — 16:20 - перейти к сообщению
yura3d пишет:
Возможно, имеется в виду Мод: Антиспам для гостей при создании тем и сообщений

кстати, может тогда и в эту каптчу поставить скрипт релоад? чтобы уж везде она была
5. alexx - 17 июля 2010 — 09:00 - перейти к сообщению
Установил, все работает, но выскакивает вот такая ошибка.
Цитата:
Notice: Undefined index: CaptchaРЎonfirm in /var/www/vhosts/xxxxxxxxx.ru/httpdocs/templates/InvisionExBB/sen d_pass.tpl on line 26
>

Сделал все по инструкции.
Может проблема с тем, что у меня еще стоит дополнительно дополнение "Вопрос-Ответ"?
Если да, то как решить?
6. yura3d - 17 июля 2010 — 09:28 - перейти к сообщению
alexx
У Вас скорее всего побился файл templates/ваш_скин/send_pass.tpl при закачке по FTP. Судя по сообщению об ошибке, в строке:
Цитата:
<td class="profilleft"><b>{$fm->LANG['CaptchaСonfirm']}</b><br /><span class="desc">{$fm->LANG['CaptchaNote']}</span></td>

выделенная красным буква C является кириллической, хотя для правильной работы она должна быть латинской
7. alexx - 17 июля 2010 — 09:48 - перейти к сообщению
yura3d, спасибо, исправил, но все по прежнему. ( кстати кириллическая С в оригинальном файле установочного архива форума, проверил)
Цитата:
Notice: Undefined index: CaptchaConfirm in /var/www/vhosts/xxxxxxx.ru/httpdocs/templates/InvisionExBB/send_ pass.tpl on line 26

Может кто-нибудь выложит свой файл send_pass.tpl, попробую его и отпишусь.
8. yura3d - 17 июля 2010 — 10:55 - перейти к сообщению
alexx
Как оказалось, ошибка закралась в языковом файле language/russian/lang_front_register.php, где описанная выше буква C как раз кириллическая:
Цитата:
$this->LANG['CaptchaСonfirm'] = 'Подтвердите защитный код';

Для начала, Вам необходимо исправить ошибку в этом файле, заменив букву латинской, а также повторить изменения для переменных {$fm->LANG['CaptchaСonfirm']} в файлах templates/ваш_скин/send_pass.tpl и templates/ваш_скин/agreed.tpl
9. alexx - 17 июля 2010 — 12:17 - перейти к сообщению
yura3d
Исправил, ошибка пропала. Улыбка
10. BON - 22 мая 2011 — 19:03 - перейти к сообщению
Нашел один глюк с этим модом. Если установлено дополнение обновления капчи без перезагрузки страницы, то на странице восстановления пароля эта фишка не работает. Чтобы это поправить делаем следующее:
Теперь откройте файл templates/ваш_скин/send_pass.tpl, найдите блок:
CODE:
<tr>
<td class="profilleft"><b>{$fm->LANG['CaptchaCode']}</b><br /><span class="desc">{$fm->LANG['CaptchaBroken']}</span></td>
<td class="profilright"><img src="regimage.php" border="0" alt="captcha"></td>
</tr>

и замените его следующим блоком:
CODE:
<tr>
<td class="profilleft"><b>{$fm->LANG['CaptchaCode']}</b><br /><span class="desc">{$fm->LANG['CaptchaBroken']}</span></td>
<td class="profilleft"><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="Обновить картинку" onClick="reload_captcha(); return false;" /></div></td>
<script language="JavaScript" src="javascript/reload_captcha.js"></script></td>
</tr>

Так же если у вас установлен мод Динамической проверки регистрационной формы (на Ajax) то он не работает на странице восстановления пароля. Чинится это просто. В том же фаиле что и выше находим блок:
CODE:
<tr>
<td class="profilleft"><b>{$fm->LANG['CaptchaСonfirm']}</b><br /><span class="desc">{$fm->LANG['CaptchaNote']}</span></td>
<td class="profilright"><input type="text" style="width: 130px" name="captcha" size="13" maxlength="10"></td>
</tr>

и заменяем его блоком:
CODE:
<tr>
<td class="profilleft"><b>{$fm->LANG['CaptchaСonfirm']}</b><br /><span class="desc">{$fm->LANG['CaptchaNote']}</span></td>
<td class="profilright"><input type="text" style="width: 130px" name="captcha" size="13" maxlength="10" onblur="verify_register(this);" />
<span id="verify_captcha"></span>
<script language="JavaScript" src="javascript/verify_forms.js"></script>
</tr>

как получается смотри скриншот.
11. alexx - 22 мая 2011 — 20:34 - перейти к сообщению
BON, спасибо, поправил у себя, а как убрать саму кнопку, что б ничего не повредить?
Думаю выделенной клик-ссылки на обновление достаточно. Улыбка
12. BON - 22 мая 2011 — 21:39 - перейти к сообщению
alexx, ничего сложного. Вот этот блок:
CODE:
<tr>
<td class="profilleft"><b>{$fm->LANG['CaptchaCode']}</b><br /><span class="desc">{$fm->LANG['CaptchaBroken']}</span></td>
<td class="profilleft"><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="Обновить картинку" onClick="reload_captcha(); return false;" /></div></td>
<script language="JavaScript" src="javascript/reload_captcha.js"></script></td>
</tr>

меняете на этот
CODE:
<tr>
<td class="profilleft"><b>{$fm->LANG['CaptchaCode']}</b><br /><span class="desc">{$fm->LANG['CaptchaBroken']}</span></td>
<td class="profilleft"><div style="float:left;"><img id="captcha" src="regimage.php" border="0" alt="captcha"></div></td>
</tr>

если что не так пишите поправлю
13. Віктор Максименко - 17 апреля 2012 — 13:10 - перейти к сообщению
BON пишет:
alexx, ничего сложного. Вот этот блок меняете на этот, если что не так пишите поправлю

Я заменил и вместе с кнопкой исчезла перерисовка капчи, установленная ранее.
Хотелось бы сохранить функцию и убрать кнопку.
14. BON - 17 апреля 2012 — 13:50 - перейти к сообщению
поменяйте на вот это:

CODE:
<tr>
<td class="profilleft"><b>{$fm->LANG['CaptchaCode']}</b><br /><span class="desc">{$fm->LANG['CaptchaBroken']}</span></td>
<td class="profilleft"><div style="float:left;"><img id="captcha" src="regimage.php" border="0" alt="captcha"></div></td>
<script language="JavaScript" src="javascript/reload_captcha.js"></script>
</tr>

чет у меня выше с косяками написано
(Добавление)
вот так хотели http://habar.bsaa.info/profile.p...ion=lostpassword ????

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

Powered by ExBB
[Script Execution time: 0.0518]     [ ]