Initial commit: CloudOps infrastructure platform
This commit is contained in:
@@ -0,0 +1,272 @@
|
||||
<?php
|
||||
|
||||
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_add_segment' => [
|
||||
'path' => '/forms/results/{objectId}/add-to-segment',
|
||||
'controller' => 'Mautic\FormBundle\Controller\ResultController::addToSegmentAction',
|
||||
],
|
||||
'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',
|
||||
],
|
||||
'mautic_form_company_lookup' => [
|
||||
'path' => '/form/company-lookup/autocomplete',
|
||||
'controller' => 'Mautic\FormBundle\Controller\PublicController::lookupCompanyAction',
|
||||
'method' => 'POST',
|
||||
],
|
||||
],
|
||||
],
|
||||
|
||||
'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' => [
|
||||
'class' => Mautic\FormBundle\Entity\Form::class,
|
||||
],
|
||||
],
|
||||
|
||||
'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_tag_aware'],
|
||||
],
|
||||
'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',
|
||||
],
|
||||
];
|
||||
@@ -0,0 +1,33 @@
|
||||
<?php
|
||||
|
||||
declare(strict_types=1);
|
||||
|
||||
use Mautic\CoreBundle\DependencyInjection\MauticCoreExtension;
|
||||
use Symfony\Component\DependencyInjection\Loader\Configurator\ContainerConfigurator;
|
||||
|
||||
return function (ContainerConfigurator $configurator): void {
|
||||
$services = $configurator->services()
|
||||
->defaults()
|
||||
->autowire()
|
||||
->autoconfigure()
|
||||
->public();
|
||||
|
||||
$excludes = [
|
||||
'ProgressiveProfiling/DisplayCounter.php',
|
||||
'ProgressiveProfiling/DisplayManager.php',
|
||||
];
|
||||
|
||||
$services->load('Mautic\\FormBundle\\', '../')
|
||||
->exclude('../{'.implode(',', array_merge(MauticCoreExtension::DEFAULT_EXCLUDES, $excludes)).'}');
|
||||
|
||||
$services->load('Mautic\\FormBundle\\Entity\\', '../Entity/*Repository.php')
|
||||
->tag(Doctrine\Bundle\DoctrineBundle\DependencyInjection\Compiler\ServiceRepositoryCompilerPass::REPOSITORY_SERVICE_TAG);
|
||||
|
||||
$services->alias('mautic.form.model.action', Mautic\FormBundle\Model\ActionModel::class);
|
||||
$services->alias('mautic.form.model.field', Mautic\FormBundle\Model\FieldModel::class);
|
||||
$services->alias('mautic.form.model.form', Mautic\FormBundle\Model\FormModel::class);
|
||||
$services->alias('mautic.form.model.submission', Mautic\FormBundle\Model\SubmissionModel::class);
|
||||
$services->alias('mautic.form.model.submission_result_loader', Mautic\FormBundle\Model\SubmissionResultLoader::class);
|
||||
$services->alias('mautic.form.repository.form', Mautic\FormBundle\Entity\FormRepository::class);
|
||||
$services->alias('mautic.form.repository.submission', Mautic\FormBundle\Entity\SubmissionRepository::class);
|
||||
};
|
||||
Reference in New Issue
Block a user