9 Commits

Author SHA1 Message Date
c221d9cb42 Merge branch 'master' of github.com:Gregwar/CaptchaBundle 2015-05-13 08:42:05 +02:00
7574ad33f1 Updating to 1.1 2015-05-13 08:41:47 +02:00
d80ff1959b Merge pull request #125 from cordoval/minor-improvement
minor updates
2015-05-13 08:40:54 +02:00
694994c3c2 Fixing composer.json (broken in #126) 2015-05-13 08:39:21 +02:00
01429c4486 Merge pull request #126 from cordoval/move-to-psr4
move to psr4
2015-05-13 08:34:02 +02:00
6032e5df52 move to psr4 2015-05-12 20:16:59 -05:00
d77e0b1f2a minor updates 2015-05-12 20:12:49 -05:00
a4176fcf74 Merge pull request #116 from kuborgh/patch-404
fixed uncached 404
2015-02-04 16:57:21 +01:00
909d1a3773 fixed uncached 404 2015-02-04 09:29:14 +01:00
5 changed files with 43 additions and 19 deletions

View File

@ -2,8 +2,8 @@
namespace Gregwar\CaptchaBundle\Controller;
use Symfony\Component\HttpFoundation\Response;
use Symfony\Bundle\FrameworkBundle\Controller\Controller;
use Symfony\Component\HttpFoundation\Response;
use Symfony\Component\HttpKernel\Exception\NotFoundHttpException;
/**
@ -37,7 +37,7 @@ class CaptchaController extends Controller
}
if (!$isOk) {
throw $this->createNotFoundException('Unable to generate a captcha via an URL with this session key.');
return $this->error($options);
}
/* @var \Gregwar\CaptchaBundle\Generator\CaptchaGenerator $generator */
@ -54,7 +54,29 @@ class CaptchaController extends Controller
$response = new Response($generator->generate($options));
$response->headers->set('Content-type', 'image/jpeg');
$response->headers->set('Pragma', 'no-cache');
$response->headers->set('Cache-Control','no-cache');
$response->headers->set('Cache-Control', 'no-cache');
return $response;
}
/**
* Returns an empty image with status code 428 Precondition Required
*
* @param array $options
*
* @return Response
*/
protected function error($options)
{
/* @var \Gregwar\CaptchaBundle\Generator\CaptchaGenerator $generator */
$generator = $this->container->get('gregwar_captcha.generator');
$generator->setPhrase('');
$response = new Response($generator->generate($options));
$response->setStatusCode(428);
$response->headers->set('Content-type', 'image/jpeg');
$response->headers->set('Pragma', 'no-cache');
$response->headers->set('Cache-Control', 'no-cache');
return $response;
}

View File

@ -16,7 +16,7 @@ class GregwarCaptchaExtension extends Extension
{
/**
* @param array $configs
* @param \Symfony\Component\DependencyInjection\ContainerBuilder $container
* @param ContainerBuilder $container
*/
public function load(array $configs, ContainerBuilder $container)
{

View File

@ -2,7 +2,8 @@
namespace Gregwar\CaptchaBundle\Generator;
use Symfony\Component\Finder\Finder;
use Gregwar\Captcha\CaptchaBuilder;
use Gregwar\Captcha\PhraseBuilder;
use Symfony\Component\HttpFoundation\Session\SessionInterface;
use Symfony\Component\Routing\RouterInterface;
@ -18,7 +19,7 @@ use Gregwar\Captcha\PhraseBuilderInterface;
class CaptchaGenerator
{
/**
* @var \Symfony\Component\Routing\RouterInterface
* @var RouterInterface
*/
protected $router;
@ -38,12 +39,17 @@ class CaptchaGenerator
protected $imageFileHandler;
/**
* @param \Symfony\Component\Routing\RouterInterface $router
* @param RouterInterface $router
* @param CaptchaBuilderInterface $builder
* @param ImageFileHandlerInterface $imageFileHandler
* @param PhraseBuilderInterface $phraseBuilder
* @param ImageFileHandler $imageFileHandler
*/
public function __construct(RouterInterface $router, CaptchaBuilderInterface $builder, PhraseBuilderInterface $phraseBuilder, ImageFileHandler $imageFileHandler)
{
public function __construct(
RouterInterface $router,
CaptchaBuilderInterface $builder,
PhraseBuilderInterface $phraseBuilder,
ImageFileHandler $imageFileHandler
) {
$this->router = $router;
$this->builder = $builder;
$this->phraseBuilder = $phraseBuilder;
@ -53,7 +59,6 @@ class CaptchaGenerator
/**
* Get the captcha URL, stream, or filename that will go in the image's src attribute
*
* @param $key
* @param array $options
*
* @return array
@ -86,7 +91,6 @@ class CaptchaGenerator
}
/**
* @param string $key
* @param array $options
*
* @return string
@ -142,7 +146,6 @@ class CaptchaGenerator
}
/**
* @param string $key
* @param array $options
*
* @return string

View File

@ -1,4 +1,4 @@
Copyright (c) <2011-2013> Grégoire Passault
Copyright (c) <2011-2015> Grégoire Passault
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal

View File

@ -18,14 +18,13 @@
],
"require": {
"php": ">=5.3.0",
"gregwar/captcha": "~1.0.12",
"gregwar/captcha": "~1.1",
"symfony/framework-bundle": "~2.1",
"symfony/form": "~2.1"
},
"autoload": {
"psr-0": {
"Gregwar\\CaptchaBundle": ""
"psr-4": {
"Gregwar\\CaptchaBundle\\": "/"
}
},
"target-dir": "Gregwar/CaptchaBundle"
}
}