gonzakpo/recaptcha-bundle

Recaptcha Bundle creates a form element form Google NoCaptcha Recaptcha v2

Installs: 16

Dependents: 0

Suggesters: 0

Security: 0

Stars: 0

Watchers: 0

Forks: 5

Type:symfony-bundle

1.0.1 2020-07-13 12:59 UTC

This package is auto-updated.

Last update: 2024-11-13 22:58:43 UTC


README

Symfony2 Bundle for Google reCaptcha v2. It provides a form type to include in your forms and a specific validator.

Installation

Install with composer :

composer require gonzakpo/recaptcha-bundle

Enable the bundle in your project

// app/AppKernel.php
public function registerBundles()
{
    $bundles = array(
        // ...
        new Pv\RecaptchaBundle\PvRecaptchaBundle(),
        // ...
    );
}

Config

Add the following line to your config.yml :

# app/config/config.yml

# Include the recaptcha widget
twig:
    form:
        resources:
            # ...
            - 'PvRecaptchaBundle:Form:recaptcha_widget.html.twig'
            # ...

# Recaptcha Configuration
pv_recaptcha:
    recaptcha_public_key: 'your-public-key'
    recaptcha_private_key: 'your-private-key'

Usage

Recaptcha V2

Add the following code to your form class :

public function buildForm(FormBuilderInterface $builder, array $options)
{
    $builder
        // ...
        ->add('recaptcha', 'pv_recaptcha', array(
            'label' => 'Your label',
            'mapped' => false,
        ))
        // ...
    ;
}

Then, display the widget in your twig view like

    {{ form_label(form.recaptcha) }}
    {{ form_widget(form.recaptcha) }}
    {{ form_errors(form.recaptcha) }}

Invisible Recaptcha

Add the following code to your form class :

public function buildForm(FormBuilderInterface $builder, array $options)
{
    $builder
        // ...
        ->add('recaptcha', 'pv_recaptcha', array(
            'label' => false,
            'mapped' => false,
            'invisible' => true,
            'form_id' => 'your-form-element-id'
        ))
        // ...
    ;
}

TODO

  • Create a tag