6 Commits

Author SHA1 Message Date
5e434e1859 gregwar/captcha version bump 2021-01-09 01:01:13 +01:00
df6915eb5e README details 2020-04-28 10:45:36 +02:00
b7685e63a1 README indentation 2020-04-28 10:44:39 +02:00
15bee25e9c Indentation in README 2020-04-28 10:43:03 +02:00
3a4e31473a Adding some note about session_key option for multiple captcha on same
page
2020-04-17 16:13:37 +02:00
fec0ebb2f1 Autowire controller 2020-04-09 10:18:10 +02:00
3 changed files with 30 additions and 26 deletions

View File

@ -45,9 +45,9 @@ Configuration
If you need to customize the global bundle configuration, you can create a `/config/packages/gregwar_captcha.yaml` file with your configuration:
``` yaml
gregwar_captcha:
width: 160
height: 50
gregwar_captcha:
width: 160
height: 50
```
Usage
@ -57,10 +57,10 @@ You can use the "captcha" type in your forms this way:
``` php
<?php
use Gregwar\CaptchaBundle\Type\CaptchaType;
// ...
$builder->add('captcha', CaptchaType::class); // That's all !
// ...
use Gregwar\CaptchaBundle\Type\CaptchaType;
// ...
$builder->add('captcha', CaptchaType::class); // That's all !
// ...
```
Note that the generated image will, by default, be embedded in the HTML document
@ -101,27 +101,28 @@ number of lines depends on the size of the image). (default=null)
* **background_images**: Sets custom user defined images as the captcha background (1 image is selected randomly). It is recommended to turn off all the effects on the image (ignore_all_effects). The full paths to the images must be passed.
* **interpolation**: enable or disable the interpolation on the captcha
* **ignore_all_effects**: Recommended to use when setting background images, will disable all image effects.
* **session_key**, if you want to host multiple CAPTCHA on the same page, you might have different session keys to ensure proper storage of the clear phrase for those different forms
Example :
``` php
<?php
use Gregwar\CaptchaBundle\Type\CaptchaType;
// ...
$builder->add('captcha', CaptchaType::class, array(
'width' => 200,
'height' => 50,
'length' => 6,
));
use Gregwar\CaptchaBundle\Type\CaptchaType;
// ...
$builder->add('captcha', CaptchaType::class, array(
'width' => 200,
'height' => 50,
'length' => 6,
));
```
You can also set these options for your whole application using the `gregwar_captcha`
configuration entry in your `config.yml` file:
``` yaml
gregwar_captcha:
width: 200
height: 50
length: 6
gregwar_captcha:
width: 200
height: 50
length: 6
```
Translation
@ -131,17 +132,19 @@ The messages are using the translator, you can either change the `invalid_messag
As URL
============
To use a URL to generate a captcha image, you must add the bundle's routing configuration to your app/routing.yml file:
To use a URL to generate a captcha image, you must add the bundle's routing configuration to your `config/routes.yaml` file:
``` yaml
gregwar_captcha_routing:
resource: "@GregwarCaptchaBundle/Resources/config/routing/routing.yml"
gregwar_captcha_routing:
resource: "@GregwarCaptchaBundle/Resources/config/routing/routing.yml"
```
This will use the bundle's route of "/generate-captcha/{key}" to handle the generation. If this route conflicts with an application route, you can prefix the bundle's routes when you import:
This will use the bundle's route of `/generate-captcha/{key}` to handle the generation. If this route conflicts with an application route, you can prefix the bundle's routes when you import:
``` yaml
gregwar_captcha_routing:
resource: "@GregwarCaptchaBundle/Resources/config/routing/routing.yml"
prefix: /_gcb
gregwar_captcha_routing:
resource: "@GregwarCaptchaBundle/Resources/config/routing/routing.yml"
prefix: /_gcb
```
Since the session key is transported in the URL, it's also added in another session array, under the `whitelist_key` key, for security reasons

View File

@ -17,6 +17,7 @@ services:
arguments:
- '@gregwar_captcha.generator'
- '%gregwar_captcha.config%'
autowire: true
# captcha.type:
gregwar_captcha.type:

View File

@ -19,7 +19,7 @@
"require": {
"php": "^7.1.3",
"ext-gd": "*",
"gregwar/captcha": "~1.1",
"gregwar/captcha": "^1.1.9",
"symfony/form": "~4.0|~5.0",
"symfony/framework-bundle": "~4.0|~5.0",
"symfony/translation": "~4.0|^5.0",