novactive / formbuilder
A bundle to create dynamic symfony form
Installs: 7 614
Dependents: 0
Suggesters: 0
Security: 0
Stars: 1
Watchers: 22
Forks: 5
Open Issues: 3
Type:ezplatform-bundle
Requires
- php: ^7.1
- ext-json: *
- ext-simplexml: *
- phpoffice/phpspreadsheet: ^1.5
Requires (Dev)
- friendsofphp/php-cs-fixer: ^2.13
- phpmd/phpmd: ^2.6
- roave/security-advisories: dev-master
- sebastian/phpcpd: ^3
- squizlabs/php_codesniffer: ^3.3
- dev-master
- v1.7.5
- v1.7.4
- v1.7.3
- v1.7.2
- v1.7.1
- v1.7.0
- v1.6.0
- v1.5.1
- v1.5.0
- 1.4.0
- v1.3.1
- v1.3.0
- v1.2.0
- v1.1.0
- v1.0.4
- v1.0.3
- v1.0.2
- v1.0.1
- v1.0.0
- dev-dev-feat-auto-fill-fields-as-1.0.0
- dev-feat-auto-fill-fields
- dev-feat-richtext-field
- dev-feature-add-url-fieldType
- dev-feat-display-field-type
- dev-feat-69440-add_possibility_change_subject_name
This package is auto-updated.
Last update: 2024-10-23 11:11:07 UTC
README
A bundle to create dynamic symfony form.
This bundle aims to provide a lib to help generating dynamic form in a symfony app.
It provides 2 bundles:
bundle
the symfony bundleezbundle
the bridge to use bundle in eZ Platform
Note that eZ Platform is a pure symfony app then the bridge is just about wiring the IHM
Installation
Requirements
- eZ Platform 2+
- PHP 7.1+
- MySQL 5.7.8+ / Maria DB 10.1+
Installation steps
Run composer require novactive/formbuilder
to install the bundle and its dependencies:
Register the bundles
Activate the bundle in app\AppKernel.php
file.
// app\AppKernel.php public function registerBundles() { ... $bundles = array( new FrameworkBundle(), ... // FormBuilder bundles new Novactive\Bundle\FormBuilderBundle\FormBuilderBundle(), new Novactive\Bundle\eZFormBuilderBundle\NovaeZFormBuilderBundle() ); ... }
Add routes
_novaezformbuilder_routes: resource: '@NovaeZFormBuilderBundle/Resources/config/routing.yml'
Install the database schema
bin/console novaformbuilder:install
Troubleshooting
If the bundle web assets (css, js etc.) are missing in the public directory it can be fixed by running the following commands:
bin/console assets:install --symlink --relative bin/console assetic:dump
That will install bundles web assets under a public directory and dump them to the filesystem.
Also if the translations are not loaded at once clearing the Symfony cache folder must help.
Migrate DB from Ez Survey
The database of the old Ez Survey Bundle can be migrated to this Novactive Form Builder Bundle. To do that run the following commands inside ezplatform folder:
php bin/console novaformbuilder:migrate --export
php bin/console novaformbuilder:migrate --import
The first one exports the data from the old database to json files. The second one imports the data from json files to the new database. After that the dumped data is still in the json files inside web/var/site/storage/files/forms folder. They can be removed manually if they are not needed anymore.
What the migration script does is: It takes all surveys to convert them into forms. Each of them is related to particular Ez content. If more than one record have the same content_id the script takes the latest one due to the ID value. Then it takes all questions to convert into fields and results + questions results to convert into submissions.
There is also the option to truncate the current Novactive Form Builder Bundle tables in the database:
php bin/console novaformbuilder:migrate --clean
After running the Migrate scripts you might need to clear the Redis Cache if it's used on the project to apply the changes that have been made to the database.
The migration doesn't support the cases if there are more than one ezsurvey fields in any particular Content Type.
To apply the custom Form design on the Front End the bundle template fields/ezcustomform_show_front.html.twig should be overridden with another template inside Ez Platform.
Contributing
Change and License
Made with <3 by novactive.