Страница 1 из 1

Как добавить Google No Captcha reCaptcha 2.0 на phpbb 3.0.14

Добавлено: 03.12.2015 14:57
sunny_lotos
Здравствуйте, уважаемые форумчане! Прошу поделиться опытом или советом, как добавить к стандартным анти-спам модулям reCaptcha 2.0 на phpbb 3.0.14. Здесь на форуме обсуждалось, что для 3.1.х есть расширение на phpbb.com, но для 3.0 официального мода нет. Удалось найти такой мод для 3.0.х (возможно, кому-то будет полезен): https://github.com/vinny/recaptcha-2-phpbbmod

У меня стоит стиль subsilver 2, а в этом моде template только для prosilver, поэтому возникает ошибка:
template->_tpl_load_file(): File ./styles/subsilver2/template/captcha_recaptcha_new.html does not exist or is empty
Буду благодарна за наводку на информацию, как можно модифицировать prosilver template для того, чтобы он подошел subsilver 2. Или за иные способы внедрения новой рекапчи на phpbb 3.0.

Заранее спасибо!

Re: Как добавить Google No Captcha reCaptcha 2.0 на phpbb 3.0.14

Добавлено: 03.12.2015 17:00
владимир1983
А если положить файл /styles/prosilver/template/captcha_recaptcha_new.html > /styles/subsilver2/template/ то что?

Re: Как добавить Google No Captcha reCaptcha 2.0 на phpbb 3.0.14

Добавлено: 03.12.2015 18:39
sunny_lotos
Большое спасибо! Копирование просильверского шаблона помогло! Единственная проблема - рекапча отображается сверху над формой регистрации. Могли бы Вы меня сориентировать, куда смотреть, чтобы поместить рекапчу вниз формы регистрации?
Содержимое файла рекапчи /styles/subsilver2/template/captcha_recaptcha_new.html 
<!-- IF S_TYPE == 1 -->
<div class="panel">
<div class="inner"><span class="corners-top"><span></span></span>

<h3>{L_CONFIRMATION}</h3>
<p>{L_CONFIRM_EXPLAIN}</p>

<fieldset class="fields2">
<!-- ENDIF -->

<!-- IF S_RECAPTCHA_NEW_AVAILABLE -->
<dl>
<dt><label>{L_CONFIRM_CODE}</label>:<br /><span>{L_RECAPTCHA_NEW_EXPLAIN}</span></dt>
<dd>
<script src="https://www.google.com/recaptcha/api.js ... "></script>
<div class="g-recaptcha" data-sitekey="{RECAPTCHA_NEW_PUBKEY}"></div>
</dd>
</dl>
<!-- ELSE -->
{L_RECAPTCHA_NEW_NOT_AVAILABLE}
<!-- ENDIF -->

<!-- IF S_TYPE == 1 -->
</fieldset>
<span class="corners-bottom"><span></span></span></div>
</div>
<!-- ENDIF -->
Содержимое файла формы регистрации /styles/subsilver2/template/ucp_register.html 
<!-- INCLUDE overall_header.html -->

<script type="text/javascript">
// <![CDATA[
/**
* Change language
*/
function change_language(lang_iso)
{
document.forms['register'].change_lang.value = lang_iso;
document.forms['register'].submit.click();
}

<!-- IF CAPTCHA_TEMPLATE and S_CONFIRM_REFRESH -->
onload_functions.push('apply_onkeypress_event()');
<!-- ENDIF -->

// ]]>
</script>

<form method="post" action="{S_UCP_ACTION}" id="register">

<div class="panel">
<div class="inner"><span class="corners-top"><span></span></span>

<h2>{SITENAME} - {L_REGISTRATION}</h2>

<fieldset class="fields2">
<!-- IF ERROR --><dl><dd class="error">{ERROR}</dd></dl><!-- ENDIF -->
<!-- IF L_REG_COND -->
<dl><dd><strong>{L_REG_COND}</strong></dd></dl>
<!-- ENDIF -->
<dl>
<dt><label for="username">{L_USERNAME}:</label><br /><span>{L_USERNAME_EXPLAIN}</span></dt>
<dd><input type="text" tabindex="1" name="username" id="username" size="25" value="{USERNAME}" class="inputbox autowidth" title="{L_USERNAME}" /></dd>
</dl>
<dl>
<dt><label for="email">{L_EMAIL_ADDRESS}:</label></dt>
<dd><input type="text" tabindex="2" name="email" id="email" size="25" maxlength="100" value="{EMAIL}" class="inputbox autowidth" title="{L_EMAIL_ADDRESS}" /></dd>
</dl>
<dl>
<dt><label for="email_confirm">{L_CONFIRM_EMAIL}:</label></dt>
<dd><input type="text" tabindex="3" name="email_confirm" id="email_confirm" size="25" maxlength="100" value="{EMAIL_CONFIRM}" class="inputbox autowidth" title="{L_CONFIRM_EMAIL}" /></dd>
</dl>
<dl>
<dt><label for="new_password">{L_PASSWORD}:</label><br /><span>{L_PASSWORD_EXPLAIN}</span></dt>
<dd><input type="password" tabindex="4" name="new_password" id="new_password" size="25" value="{PASSWORD}" class="inputbox autowidth" title="{L_NEW_PASSWORD}" /></dd>
</dl>
<dl>
<dt><label for="password_confirm">{L_CONFIRM_PASSWORD}:</label></dt>
<dd><input type="password" tabindex="5" name="password_confirm" id="password_confirm" size="25" value="{PASSWORD_CONFIRM}" class="inputbox autowidth" title="{L_CONFIRM_PASSWORD}" /></dd>
</dl>

<hr />

<dl>
<dt><label for="lang">{L_LANGUAGE}:</label></dt>
<dd><select name="lang" id="lang" onchange="change_language(this.value); return false;" tabindex="6" title="{L_LANGUAGE}">{S_LANG_OPTIONS}</select></dd>
</dl>
<dl>
<dt><label for="tz">{L_TIMEZONE}:</label></dt>
<dd><select name="tz" id="tz" tabindex="7" class="autowidth">{S_TZ_OPTIONS}</select></dd>
</dl>

<!-- IF .profile_fields -->
<dl><dd><strong>{L_ITEMS_REQUIRED}</strong></dd></dl>

<!-- BEGIN profile_fields -->
<dl>
<dt><label<!-- IF profile_fields.FIELD_ID --> for="{profile_fields.FIELD_ID}"<!-- ENDIF -->>{profile_fields.LANG_NAME}:<!-- IF profile_fields.S_REQUIRED --> *<!-- ENDIF --></label>
<!-- IF profile_fields.LANG_EXPLAIN --><br /><span>{profile_fields.LANG_EXPLAIN}</span><!-- ENDIF -->
<!-- IF profile_fields.ERROR --><br /><span class="error">{profile_fields.ERROR}</span><!-- ENDIF --></dt>
<dd>{profile_fields.FIELD}</dd>
</dl>
<!-- END profile_fields -->
<!-- ENDIF -->

</fieldset>
<span class="corners-bottom"><span></span></span></div>
</div>
<!-- IF CAPTCHA_TEMPLATE -->
<!-- DEFINE $CAPTCHA_TAB_INDEX = 8 -->
<!-- INCLUDE {CAPTCHA_TEMPLATE} -->
<!-- ENDIF -->

<!-- IF S_COPPA -->


<div class="panel">
<div class="inner"><span class="corners-top"><span></span></span>

<h4>{L_COPPA_COMPLIANCE}</h4>

<p>{L_COPPA_EXPLAIN}</p>
<span class="corners-bottom"><span></span></span></div>
</div>
<!-- ENDIF -->

<div class="panel">
<div class="inner"><span class="corners-top"><span></span></span>

<fieldset class="submit-buttons">
{S_HIDDEN_FIELDS}
<input type="reset" value="{L_RESET}" name="reset" class="button2" />&nbsp;
<input type="submit" tabindex="9" name="submit" id="submit" value="{L_SUBMIT}" class="button1 default-submit-action" />
{S_FORM_TOKEN}
</fieldset>

<span class="corners-bottom"><span></span></span></div>
</div>
</form>

<!-- INCLUDE overall_footer.html -->

Re: Как добавить Google No Captcha reCaptcha 2.0 на phpbb 3.0.14

Добавлено: 17.02.2016 20:29
cianid
У меня после установки возникла проблема. При входе в меню "Средства против спам ботов" выдается ошибка:

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

Warning: Unexpected character in input: '\' (ASCII=92) state=1 in /var/www/.../forum/includes/captcha/plugins/phpbb_recaptcha_new_plugin.php on line 294

Warning: Unexpected character in input: '\' (ASCII=92) state=1 in /var/www/.../forum/includes/captcha/plugins/phpbb_recaptcha_new_plugin.php on line 294

Parse error: syntax error, unexpected T_STRING in /var/www/prizolovy/data/www/.../forum/includes/captcha/plugins/phpbb_recaptcha_new_plugin.php on line 294
Как это можно исправить?

Re: Как добавить Google No Captcha reCaptcha 2.0 на phpbb 3.0.14

Добавлено: 09.03.2016 13:26
Baiker
Установил reCaptcha 2.0 на 3.0.14. Пошел следующим путем:
1. Скачал мод NOT a Robot Recaptcha V2 отсюда
2. Установил данный мод на форум с помощью AutoMOD.
3. Перевел captcha_recaptcha_v2.php и закинул его в language/ru (скачать мой перевод можно здесь).
4. Profit! :)

Re: Как добавить Google No Captcha reCaptcha 2.0 на phpbb 3.0.14

Добавлено: 12.04.2016 21:44
Erlang
Здравствуйте.
Поставил через Автомод в 1-й раз.

А где теперь искать и как настраивать Рекаптчу от Гугла?

Отправлено спустя 18 минут 55 секунд:
Ой!
Разобрался. Просто называется Recaptcha и её нужно настроить.

Проверим...

Re: Как добавить Google No Captcha reCaptcha 2.0 на phpbb 3.0.14

Добавлено: 13.04.2016 0:12
apollion
И зачем она нужна если есть антибот?

Re: Как добавить Google No Captcha reCaptcha 2.0 на phpbb 3.0.14

Добавлено: 23.04.2016 13:55
DieAleX
phpbb 3.0.14
ставлю captcha 2.0 и после этого в разделе средства против спамботов - пустая страница

если ставлю через automod то после удаления captcha2.0 раздел средства против спамботов снова доступен

поставил вручную через install_recaptcha_new.php раздел также пустой
удаление через install_recaptcha_new.php не помог
заработало вновь только после удаления всех файлов

куда копать?

Re: Как добавить Google No Captcha reCaptcha 2.0 на phpbb 3.0.14

Добавлено: 27.08.2016 18:08
Erlang
Похоже и этот Мод сломали, стали сыпаться регистрации спамеров.

Re: Как добавить Google No Captcha reCaptcha 2.0 на phpbb 3.0.14

Добавлено: 07.01.2017 7:55
Erlang
Baiker писал(а): 3. Перевел captcha_recaptcha_v2.php и закинул его в language/ru (скачать мой перевод можно здесь).
Можно перезалить?
Сейчас файл не доступен :(

Re: Как добавить Google No Captcha reCaptcha 2.0 на phpbb 3.0.14

Добавлено: 07.01.2017 10:48
LONER
Erlang писал(а): Можно перезалить?
RU.zip
(2.1 КБ) 210 скачиваний

Re: Как добавить Google No Captcha reCaptcha 2.0 на phpbb 3.0.14

Добавлено: 07.01.2017 23:48
Baiker
По просьбе желающих выкладываю свой перевод.
captcha_recaptcha.php

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

<?php
/**
*
* recaptcha [Russian]
*
* @package language
* @version $Id: captcha_recaptcha.php 9933 2009-08-06 09:12:21Z marshalrusty $
* @copyright (c) 2009 phpBB Group
* @license http://opensource.org/licenses/gpl-license.php GNU Public License
*
*/

/**
* DO NOT CHANGE
*/
if (!defined('IN_PHPBB'))
{
	exit;
}

if (empty($lang) || !is_array($lang))
{
	$lang = array();
}

// DEVELOPERS PLEASE NOTE
//
// All language files should use UTF-8 as their encoding and the files must not contain a BOM.
//
// Placeholders can now contain order information, e.g. instead of
// 'Page %s of %s' you can (and should) write 'Page %1$s of %2$s', this allows
// translators to re-order the output of data while ensuring it remains correct
//
// You do not need this where single placeholders are used, e.g. 'Message %d' is fine
// equally where a string contains only two placeholders which are used to wrap text
// in a url you again do not need to specify an order e.g., 'Click %sHERE%s' is fine

$lang = array_merge($lang, array(
	'RECAPTCHA_LANG'				=> 'ru',
	'RECAPTCHA_NOT_AVAILABLE'		=> 'Для использования reCaptcha необходимо создать учётную запись на сайте <a href="http://www.google.com/recaptcha">www.google.com/recaptcha</a>.',
	'CAPTCHA_RECAPTCHA'				=> 'reCaptcha',
	'RECAPTCHA_INCORRECT'			=> 'Неверный код визуального подтверждения',

	'RECAPTCHA_PUBLIC'				=> 'Публичный ключ reCaptcha (Public Key)',
	'RECAPTCHA_PUBLIC_EXPLAIN'		=> 'Ваш публичный ключ reCaptcha. Ключи можно получить на сайте <a href="http://www.google.com/recaptcha">www.google.com/recaptcha</a>.',
	'RECAPTCHA_PRIVATE'				=> 'Закрытый ключ reCaptcha (Private Key)',
	'RECAPTCHA_PRIVATE_EXPLAIN'		=> 'Ваш закрытый ключ reCaptcha. Ключи можно получить на сайте <a href="http://www.google.com/recaptcha">www.google.com/recaptcha</a>.',

	'RECAPTCHA_EXPLAIN'				=> 'В целях предотвращения автоматической отправки форм, введите оба отображённых слова в текстовое поле ниже.',
));

?>

captcha_recaptcha_v2.php

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

<?php
/**
*
* recaptcha [Russian]
*
* @package language
* @version $Id$
* @copyright (c) 2009 phpBB Group
* @license http://opensource.org/licenses/gpl-license.php GNU Public License
*
*/

/**
* DO NOT CHANGE
*/
if (!defined('IN_PHPBB'))
{
	exit;
}

if (empty($lang) || !is_array($lang))
{
	$lang = array();
}

// DEVELOPERS PLEASE NOTE
//
// All language files should use UTF-8 as their encoding and the files must not contain a BOM.
//
// Placeholders can now contain order information, e.g. instead of
// 'Page %s of %s' you can (and should) write 'Page %1$s of %2$s', this allows
// translators to re-order the output of data while ensuring it remains correct
//
// You do not need this where single placeholders are used, e.g. 'Message %d' is fine
// equally where a string contains only two placeholders which are used to wrap text
// in a url you again do not need to specify an order e.g., 'Click %sHERE%s' is fine

$lang = array_merge($lang, array(
	'RECAPTCHA_LANG'				=> 'ru',
	'RECAPTCHA_NOT_AVAILABLE'		=> 'Для использования reCaptcha необходимо создать учётную запись на сайте <a href="http://www.google.com/recaptcha">www.google.com/recaptcha</a>.',
	'CAPTCHA_RECAPTCHA_v2'			=> 'reCaptcha v2 NOT Robot',
	'RECAPTCHA_INCORRECT'			=> 'Пожалуйста подтвердите что вы НЕ робот.',

	'RECAPTCHA_PUBLIC'				=> 'Публичный ключ reCaptcha (Public Key)',
	'RECAPTCHA_PUBLIC_EXPLAIN'		=> 'Ваш публичный ключ reCaptcha. Ключи можно получить на сайте <a href="http://www.google.com/recaptcha">www.google.com/recaptcha</a>.',
	'RECAPTCHA_PRIVATE'				=> 'Закрытый ключ reCaptcha (Private Key)',
	'RECAPTCHA_PRIVATE_EXPLAIN'		=> 'Ваш закрытый ключ reCaptcha. Ключи можно получить на сайте <a href="http://www.google.com/recaptcha">www.google.com/recaptcha</a>.',

	'RECAPTCHA_EXPLAIN'				=> 'В целях предотвращения автоматической отправки форм, вам нужно будет поставить галочку рядом с надписью "Я не робот".',
	'GV2_CONFIRM_EXPLAIN'		=> 'В целях предотвращения автоматической отправки форм, поставьте галочку рядом с надписью "Я не робот".',
	'GV2_CONFIRM_CODE'			=> 'Подтвердите что вы НЕ робот',
));

?>

Re: Как добавить Google No Captcha reCaptcha 2.0 на phpbb 3.0.14

Добавлено: 08.01.2017 22:32
Erlang
А для 3.1.х есть аналогичное расширение?

Re: Как добавить Google No Captcha reCaptcha 2.0 на phpbb 3.0.14

Добавлено: 08.01.2017 22:36
Татьяна5
Да

Re: Как добавить Google No Captcha reCaptcha 2.0 на phpbb 3.0.14

Добавлено: 08.01.2017 23:02
Erlang
Erlang писал(а): А для 3.1.х есть аналогичное расширение?
Re: recaptcha 2.0