Spaces:
No application file
No application file
| use Mautic\FormBundle\Event\Service\FieldValueTransformer; | |
| use Mautic\FormBundle\Form\Type\FieldType; | |
| use Mautic\FormBundle\Form\Type\SubmitActionEmailType; | |
| use Mautic\FormBundle\Form\Type\SubmitActionRepostType; | |
| use Mautic\FormBundle\Helper\FormFieldHelper; | |
| use Mautic\FormBundle\Helper\FormUploader; | |
| use Mautic\FormBundle\Helper\TokenHelper; | |
| use Mautic\FormBundle\Validator\Constraint\FileExtensionConstraintValidator; | |
| use Mautic\FormBundle\Validator\UploadFieldValidator; | |
| return [ | |
| 'routes' => [ | |
| 'main' => [ | |
| 'mautic_formaction_action' => [ | |
| 'path' => '/forms/action/{objectAction}/{objectId}', | |
| 'controller' => 'Mautic\FormBundle\Controller\ActionController::executeAction', | |
| ], | |
| 'mautic_formfield_action' => [ | |
| 'path' => '/forms/field/{objectAction}/{objectId}', | |
| 'controller' => 'Mautic\FormBundle\Controller\FieldController::executeAction', | |
| ], | |
| 'mautic_form_index' => [ | |
| 'path' => '/forms/{page}', | |
| 'controller' => 'Mautic\FormBundle\Controller\FormController::indexAction', | |
| ], | |
| 'mautic_form_results' => [ | |
| 'path' => '/forms/results/{objectId}/{page}', | |
| 'controller' => 'Mautic\FormBundle\Controller\ResultController::indexAction', | |
| ], | |
| 'mautic_form_export' => [ | |
| 'path' => '/forms/results/{objectId}/export/{format}', | |
| 'controller' => 'Mautic\FormBundle\Controller\ResultController::exportAction', | |
| 'defaults' => [ | |
| 'format' => 'csv', | |
| ], | |
| ], | |
| 'mautic_form_results_action' => [ | |
| 'path' => '/forms/results/{formId}/{objectAction}/{objectId}', | |
| 'controller' => 'Mautic\FormBundle\Controller\ResultController::executeAction', | |
| 'defaults' => [ | |
| 'objectId' => 0, | |
| ], | |
| ], | |
| 'mautic_form_action' => [ | |
| 'path' => '/forms/{objectAction}/{objectId}', | |
| 'controller' => 'Mautic\FormBundle\Controller\FormController::executeAction', | |
| ], | |
| ], | |
| 'api' => [ | |
| 'mautic_api_formstandard' => [ | |
| 'standard_entity' => true, | |
| 'name' => 'forms', | |
| 'path' => '/forms', | |
| 'controller' => Mautic\FormBundle\Controller\Api\FormApiController::class, | |
| ], | |
| 'mautic_api_formresults' => [ | |
| 'path' => '/forms/{formId}/submissions', | |
| 'controller' => 'Mautic\FormBundle\Controller\Api\SubmissionApiController::getEntitiesAction', | |
| ], | |
| 'mautic_api_formresult' => [ | |
| 'path' => '/forms/{formId}/submissions/{submissionId}', | |
| 'controller' => 'Mautic\FormBundle\Controller\Api\SubmissionApiController::getEntityAction', | |
| ], | |
| 'mautic_api_contactformresults' => [ | |
| 'path' => '/forms/{formId}/submissions/contact/{contactId}', | |
| 'controller' => 'Mautic\FormBundle\Controller\Api\SubmissionApiController::getEntitiesForContactAction', | |
| ], | |
| 'mautic_api_formdeletefields' => [ | |
| 'path' => '/forms/{formId}/fields/delete', | |
| 'controller' => 'Mautic\FormBundle\Controller\Api\FormApiController::deleteFieldsAction', | |
| 'method' => 'DELETE', | |
| ], | |
| 'mautic_api_formdeleteactions' => [ | |
| 'path' => '/forms/{formId}/actions/delete', | |
| 'controller' => 'Mautic\FormBundle\Controller\Api\FormApiController::deleteActionsAction', | |
| 'method' => 'DELETE', | |
| ], | |
| ], | |
| 'public' => [ | |
| 'mautic_form_file_download' => [ | |
| 'path' => '/forms/results/file/{submissionId}/{field}', | |
| 'controller' => 'Mautic\FormBundle\Controller\ResultController::downloadFileAction', | |
| ], | |
| 'mautic_form_file_download_by_name' => [ | |
| 'path' => '/forms/results/file/{fieldId}/filename/{fileName}', | |
| 'controller' => 'Mautic\FormBundle\Controller\ResultController::downloadFileByFileNameAction', | |
| ], | |
| 'mautic_form_postresults' => [ | |
| 'path' => '/form/submit', | |
| 'controller' => 'Mautic\FormBundle\Controller\PublicController::submitAction', | |
| ], | |
| 'mautic_form_generateform' => [ | |
| 'path' => '/form/generate.js', | |
| 'controller' => 'Mautic\FormBundle\Controller\PublicController::generateAction', | |
| ], | |
| 'mautic_form_postmessage' => [ | |
| 'path' => '/form/message', | |
| 'controller' => 'Mautic\FormBundle\Controller\PublicController::messageAction', | |
| ], | |
| 'mautic_form_preview' => [ | |
| 'path' => '/form/{id}', | |
| 'controller' => 'Mautic\FormBundle\Controller\PublicController::previewAction', | |
| 'defaults' => [ | |
| 'id' => '0', | |
| ], | |
| ], | |
| 'mautic_form_embed' => [ | |
| 'path' => '/form/embed/{id}', | |
| 'controller' => 'Mautic\FormBundle\Controller\PublicController::embedAction', | |
| ], | |
| 'mautic_form_postresults_ajax' => [ | |
| 'path' => '/form/submit/ajax', | |
| 'controller' => 'Mautic\FormBundle\Controller\AjaxController::submitAction', | |
| ], | |
| ], | |
| ], | |
| 'menu' => [ | |
| 'main' => [ | |
| 'items' => [ | |
| 'mautic.form.forms' => [ | |
| 'route' => 'mautic_form_index', | |
| 'access' => ['form:forms:viewown', 'form:forms:viewother'], | |
| 'parent' => 'mautic.core.components', | |
| 'priority' => 200, | |
| ], | |
| ], | |
| ], | |
| ], | |
| 'categories' => [ | |
| 'form' => null, | |
| ], | |
| 'services' => [ | |
| 'forms' => [ | |
| 'mautic.form.type.field' => [ | |
| 'class' => FieldType::class, | |
| 'arguments' => [ | |
| 'translator', | |
| 'mautic.form.collector.object', | |
| 'mautic.form.collector.field', | |
| 'mautic.form.collector.already.mapped.field', | |
| ], | |
| 'methodCalls' => [ | |
| 'setFieldModel' => ['mautic.form.model.field'], | |
| 'setFormModel' => ['mautic.form.model.form'], | |
| ], | |
| ], | |
| 'mautic.form.type.form_submitaction_sendemail' => [ | |
| 'class' => SubmitActionEmailType::class, | |
| 'arguments' => [ | |
| 'translator', | |
| 'mautic.helper.core_parameters', | |
| ], | |
| 'methodCalls' => [ | |
| 'setFieldModel' => ['mautic.form.model.field'], | |
| 'setFormModel' => ['mautic.form.model.form'], | |
| ], | |
| ], | |
| 'mautic.form.type.form_submitaction_repost' => [ | |
| 'class' => SubmitActionRepostType::class, | |
| 'methodCalls' => [ | |
| 'setFieldModel' => ['mautic.form.model.field'], | |
| 'setFormModel' => ['mautic.form.model.form'], | |
| ], | |
| ], | |
| ], | |
| 'other' => [ | |
| 'mautic.form.collector.object' => [ | |
| 'class' => Mautic\FormBundle\Collector\ObjectCollector::class, | |
| 'arguments' => ['event_dispatcher'], | |
| ], | |
| 'mautic.form.collector.field' => [ | |
| 'class' => Mautic\FormBundle\Collector\FieldCollector::class, | |
| 'arguments' => ['event_dispatcher'], | |
| ], | |
| 'mautic.form.collector.mapped.object' => [ | |
| 'class' => Mautic\FormBundle\Collector\MappedObjectCollector::class, | |
| 'arguments' => ['mautic.form.collector.field'], | |
| ], | |
| 'mautic.form.collector.already.mapped.field' => [ | |
| 'class' => Mautic\FormBundle\Collector\AlreadyMappedFieldCollector::class, | |
| 'arguments' => ['mautic.cache.provider'], | |
| ], | |
| 'mautic.helper.form.field_helper' => [ | |
| 'class' => FormFieldHelper::class, | |
| 'arguments' => [ | |
| 'translator', | |
| 'validator', | |
| ], | |
| ], | |
| 'mautic.form.helper.form_uploader' => [ | |
| 'class' => FormUploader::class, | |
| 'arguments' => [ | |
| 'mautic.helper.file_uploader', | |
| 'mautic.helper.core_parameters', | |
| ], | |
| ], | |
| 'mautic.form.helper.token' => [ | |
| 'class' => TokenHelper::class, | |
| 'arguments' => [ | |
| 'mautic.form.model.form', | |
| 'mautic.security', | |
| ], | |
| ], | |
| 'mautic.form.service.field.value.transformer' => [ | |
| 'class' => FieldValueTransformer::class, | |
| 'arguments' => [ | |
| 'router', | |
| ], | |
| ], | |
| 'mautic.form.helper.properties.accessor' => [ | |
| 'class' => Mautic\FormBundle\Helper\PropertiesAccessor::class, | |
| 'arguments' => [ | |
| 'mautic.form.model.form', | |
| ], | |
| ], | |
| ], | |
| 'validator' => [ | |
| 'mautic.form.validator.upload_field_validator' => [ | |
| 'class' => UploadFieldValidator::class, | |
| 'arguments' => [ | |
| 'mautic.core.validator.file_upload', | |
| ], | |
| ], | |
| 'mautic.form.validator.constraint.file_extension_constraint_validator' => [ | |
| 'class' => FileExtensionConstraintValidator::class, | |
| 'arguments' => [ | |
| 'mautic.helper.core_parameters', | |
| ], | |
| 'tags' => [ | |
| 'name' => 'validator.constraint_validator', | |
| 'alias' => 'file_extension_constraint_validator', | |
| ], | |
| ], | |
| ], | |
| 'fixtures' => [ | |
| 'mautic.form.fixture.form' => [ | |
| 'class' => Mautic\FormBundle\DataFixtures\ORM\LoadFormData::class, | |
| 'tag' => Doctrine\Bundle\FixturesBundle\DependencyInjection\CompilerPass\FixturesCompilerPass::FIXTURE_TAG, | |
| 'arguments' => ['mautic.form.model.form', 'mautic.form.model.field', 'mautic.form.model.action', 'event_dispatcher'], | |
| ], | |
| 'mautic.form.fixture.form_result' => [ | |
| 'class' => Mautic\FormBundle\DataFixtures\ORM\LoadFormResultData::class, | |
| 'tag' => Doctrine\Bundle\FixturesBundle\DependencyInjection\CompilerPass\FixturesCompilerPass::FIXTURE_TAG, | |
| 'arguments' => ['mautic.page.model.page', 'mautic.form.model.submission'], | |
| ], | |
| ], | |
| ], | |
| 'parameters' => [ | |
| 'form_upload_dir' => '%mautic.application_dir%/media/files/form', | |
| 'blacklisted_extensions' => ['php', 'sh'], | |
| 'do_not_submit_emails' => [], | |
| 'form_results_data_sources' => false, | |
| 'successful_submit_action' => 'top', | |
| ], | |
| ]; | |