Форумы / National / Russian / Модули и плагины / Mathcapcha & Recapcha

Версии под Siena (Было: Конфликт плагинов под Siena)

Macik
#31542 22.11.2011 13:20

mcapcha стояла по умолчанию из "дистрибутива".

Доустановил плагины capcha_manager и recapcha. (сконвертировал их из вариантов для Genoa, т.к. под Siena не нашел.)

Получилось, что при регистрации пользователя (на этапе валидации) вызываются оба плагина:  mcaptcha.register.validate.php и recaptcha.validate.php

И т.к.  в коде mcapcha нет проверки какой плагин выбран в capchamanager ($cfg['plugin']['captchamanager']['main']), то отрабатывая блок:

	if (!cot_captcha_validate($rverify))
	{
		cot_error('captcha_verification_failed', 'rverify');
	}

mcapcha устанавливает ошибку. Далее вызов recapcha уже погоды не делает.

 

Для себя поправил логику в валидирующих частях плагинов следующим образом:

Если функция cot_captcha_validate не существует { // плагин капчи в системе установлен один и capcha_manager не установлен
   задаем функцию
} else { // полагаем установленым capcha_manager
   проверяем этот ли плагин выбран в настройках capcha_manager
}
Если выбран этот плагин проводим проверку валидности капчи, если нет просто выходим.

 

 

 

 

 

https://github.com/macik
правильный хостинг — https://goo.gl/fjCa1F