/**
* get captcha image and store key to session
* @param \Base $f3
*/
public function getCaptcha(\Base $f3)
{
$data = $f3->get('POST');
$return = (object) [];
$return->error = [];
// check if reason for captcha generation is valid
if (isset($data['reason']) && in_array($data['reason'], self::$captchaReason)) {
$reason = $data['reason'];
$im = imagecreatetruecolor(1, 1);
$colorText = imagecolorallocate($im, 102, 200, 79);
$colorBG = imagecolorallocate($im, 49, 51, 53);
$img = new \Image();
$imgDump = $img->captcha('fonts/oxygen-bold-webfont.ttf', 14, 6, $reason, '', $colorText, $colorBG)->dump();
$return->img = $f3->base64($imgDump, 'image/png');
} else {
$captchaError = (object) [];
$captchaError->type = 'error';
$captchaError->message = 'Could not create captcha image';
$return->error[] = $captchaError;
}
echo json_encode($return);
}