public function validate($key, $captcha_id = null)
{
if ($key == false) {
return false;
}
$old_array = mw()->user_manager->session_get('captcha_recent');
if (is_array($old_array) and in_array($key, $old_array)) {
$found_key = array_search($key, $old_array);
if ($found_key !== false) {
unset($old_array[$found_key]);
mw()->user_manager->session_set('captcha_recent', $old_array);
}
return true;
}
if ($captcha_id == false) {
$existing = mw()->user_manager->session_get('captcha');
} else {
$existing = mw()->user_manager->session_get('captcha_' . $captcha_id);
}
if ($existing == $key) {
return true;
} else {
return false;
}
}