heliopsis/ezforms-bundle

Symfony forms handling within eZPublish contents

Installs: 363

Dependents: 0

Stars: 11

Watchers: 7

Forks: 10

Open Issues: 2

Language: PHP

1.2.0 2015-04-24 12:59 UTC

README

This bundle provides a flexible way to associate Symfony forms to eZPublish contents.

Features:

  • Form controller extending eZPublish's view controller
  • Facade pattern for flexible form handling
  • Separate interfaces for form instanciation, data handling and response generation
  • Abstract classes for content related data handling
  • Unit tests

NB: this bundle does not provide out of the box forms in eZPublish, it rather gives you tools to easily define custom forms and leverage eZPublish's content tree to access or configure those forms.

License

This bundle is released under GPL2

Installation

1. Download bundle using composer

{
    require: {
        "heliopsis/ezforms-bundle": "~1.2"
    }
}

2. Enable bundle in EzPublishKernel.php

<?php
// ezpublish/EzPublishKernel.php

public function registerBundles()
{
    $bundles = array(
        // ...
        new Heliopsis\eZFormsBundle\HeliopsiseZFormsBundle(),
    );
}

3. Configure providers

# ezpublish/config/config.yml

heliopsis_ezforms:
  providers:
    form: acme_forms.custom_form_provider
    handler: acme_forms.custom_handler_provider

NB: see Usage section for service definitions

4. Use form controller to render your locations views

# ezpublish/config/ezpublish.yml

ezpublish:
  system:
    frontend_group:
      location_view:
        full:
          form:
            controller: heliopsis_ezforms.controller:formAction
            template: AcmeDesignBundle:full:form.html.twig
            match:
              Identifier\ContentType: 'form'
        confirm:
          template: AcmeDesignBundle:confirm:form.html.twig
          match:
            Identifier\ContentType: 'form'

Documentation

Detailed documentation is available in the Resources/doc folder When upgrading, don't forget to take a look at the notes on backwards compatibility