mirror of
https://github.com/torrentpier/torrentpier
synced 2025-08-20 21:33:54 -07:00
reCAPTCHA и другое
Удаляем старую капчу и заменяем ее на рекапчу второй версии; заменяеем подключение языковых файлов, и связанных с ними параметров; исправление ошибки с путем к карктинке званий в админке; исправление ошибки с неверной английской локалью. После обновления необходимо выполнить следующие запросы к базе: DROP TABLE IF EXISTS `bb_captcha`; DELETE FROM `bb_cron` WHERE `cron_script` = 'captcha_gen_gc.php';
This commit is contained in:
parent
f8d0238f5b
commit
5745161a54
58 changed files with 281 additions and 584 deletions
|
@ -2588,20 +2588,6 @@ function set_pr_die_append_msg ($pr_uid)
|
|||
');
|
||||
}
|
||||
|
||||
function CAPTCHA ()
|
||||
{
|
||||
static $captcha_obj = null;
|
||||
|
||||
if ($captcha_obj === null)
|
||||
{
|
||||
global $bb_cfg;
|
||||
require(INC_DIR .'captcha/captcha.php');
|
||||
$captcha_obj = new captcha_kcaptcha($bb_cfg['captcha']);
|
||||
}
|
||||
|
||||
return $captcha_obj;
|
||||
}
|
||||
|
||||
function send_pm ($user_id, $subject, $message, $poster_id = BOT_UID)
|
||||
{
|
||||
global $userdata;
|
||||
|
@ -2788,4 +2774,54 @@ function hash_search ($hash)
|
|||
{
|
||||
bb_die(sprintf($lang['HASH_NOT_FOUND'], $hash));
|
||||
}
|
||||
}
|
||||
|
||||
function bb_captcha ($mode, $callback = '')
|
||||
{
|
||||
global $bb_cfg, $userdata;
|
||||
|
||||
require_once(CLASS_DIR .'recaptcha.php');
|
||||
|
||||
$secret = $bb_cfg['captcha']['secret_key'];
|
||||
$public = $bb_cfg['captcha']['public_key'];
|
||||
$theme = $bb_cfg['captcha']['theme'];
|
||||
$lang = $bb_cfg['lang'][$userdata['user_lang']]['captcha'];
|
||||
|
||||
$reCaptcha = new ReCaptcha($secret);
|
||||
|
||||
switch ($mode)
|
||||
{
|
||||
case 'get':
|
||||
return "
|
||||
<script type=\"text/javascript\">
|
||||
var onloadCallback = function() {
|
||||
grecaptcha.render('tp-captcha', {
|
||||
'sitekey' : '" . $public . "',
|
||||
'theme' : '" . $theme . "',
|
||||
'callback' : '" . $callback . "'
|
||||
});
|
||||
};
|
||||
</script>
|
||||
<div id=\"tp-captcha\"></div>
|
||||
<script src=\"https://www.google.com/recaptcha/api.js?onload=onloadCallback&hl=" . $lang . "&render=explicit\" async defer></script>";
|
||||
break;
|
||||
|
||||
case 'check':
|
||||
$resp = null;
|
||||
$error = null;
|
||||
$g_resp = request_var('g-recaptcha-response', '');
|
||||
if ($g_resp) {
|
||||
$resp = $reCaptcha->verifyResponse($_SERVER["REMOTE_ADDR"], $g_resp);
|
||||
}
|
||||
if ($resp != null && $resp->success) {
|
||||
return true;
|
||||
} else {
|
||||
return false;
|
||||
}
|
||||
break;
|
||||
|
||||
default:
|
||||
bb_simple_die(__FUNCTION__ .": invalid mode '$mode'");
|
||||
}
|
||||
return false;
|
||||
}
|
Loading…
Add table
Add a link
Reference in a new issue