public static function checkSolution(WC_Challenge $chall, $random, $letters_only = false, $lowercase = false, $length = 12) { if (false === ($answer = Common::getPostString('answer', false))) { return; } $solution = self::generateSolution($random, $letters_only, $lowercase, $length); if ($lowercase) { $answer = strtolower($answer); } $chall->setVar('chall_solution', WC_Challenge::hashSolution($solution, $lowercase)); $chall->onSolve(GWF_Session::getUser(), $answer); }
function ttr2_submit(WC_Challenge $chall) { if ('' === ($answer = Common::getPostString('answer', ''))) { return; } $sessid = GWF_Session::getSessSID(); # First check all "custom" solutions $solutions = TTR2_Tokens::getSolutions($sessid); foreach ($solutions as $solution) { if ($solution['ttr_token'] === $answer) { echo GWF_HTML::message($chall->lang('title'), $chall->lang('msg_reset_own', array(htmlspecialchars($solution['ttr_email'])))); return; } } # Now lets check "THE" solution $solution = TTR2_Tokens::getSolution($sessid); $chall->setSolution($solution['ttr_token']); $chall->onSolve(GWF_User::getStaticOrGuest(), $answer); }