Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
47 changes: 12 additions & 35 deletions Config/config.php
Original file line number Diff line number Diff line change
Expand Up @@ -5,60 +5,45 @@
'description' => 'User can add multiple tracking domains for emails.',
'author' => 'Abdullah Kiser / Friendly Automate',
'version' => '1.0.1',
'routes' => [
'routes' => [
'main' => [
'mautic_multidomain_index' => [
'path' => '/multidomain/{page}',
'controller' => 'MauticMultiDomainBundle:Multidomain:index',
'controller' => 'MauticPlugin\MauticMultiDomainBundle\Controller\MultidomainController:indexAction',
],
'mautic_multidomain_action' => [
'path' => '/multidomain/{objectAction}/{objectId}',
'controller' => 'MauticMultiDomainBundle:Multidomain:execute',
'controller' => 'MauticPlugin\MauticMultiDomainBundle\Controller\MultidomainController:executeAction',
],
],
'api' => [
'mautic_api_multidomainstandard' => [
'standard_entity' => true,
'name' => 'multidomain',
'path' => '/multidomain',
'controller' => 'MauticMultiDomainBundle:Api\MultidomainApi',
'name' => 'multidomain',
'path' => '/multidomain',
'controller' => 'MauticPlugin\MauticMultiDomainBundle\Controller\Api\MultidomainApiController',
],
],
],
'menu' => [
'main' => [
'mautic.multidomain.menu' => [
'route' => 'mautic_multidomain_index',
'priority' => 10,
'route' => 'mautic_multidomain_index',
'priority' => 10,
'iconClass' => 'fa-globe',
],
],
],
'services' => [
'forms' => [
'mautic.form.type.multidomain' => [
'class' => \MauticPlugin\MauticMultiDomainBundle\Form\Type\MultidomainType::class,
],
],
'models' => [
'mautic.multidomain.model.multidomain' => [
'class' => \MauticPlugin\MauticMultiDomainBundle\Model\MultidomainModel::class,
'arguments' => [
'mautic.form.model.form',
'mautic.page.model.trackable',
'mautic.helper.templating',
'event_dispatcher',
'mautic.lead.model.field',
'mautic.tracker.contact',
'doctrine.orm.entity_manager',
],
//'public' => true,
'alias' => 'model.multidomain.multidomain'
'class' => MauticPlugin\MauticMultiDomainBundle\Form\Type\MultidomainType::class,
],
],
'models' => [],
'events' => [
'mautic.multidomain.subscriber.multidomain' => [
'class' => \MauticPlugin\MauticMultiDomainBundle\EventListener\MultidomianSubscriber::class,
'class' => MauticPlugin\MauticMultiDomainBundle\EventListener\MultidomianSubscriber::class,
'arguments' => [
'router',
'mautic.helper.ip_lookup',
Expand All @@ -71,7 +56,7 @@
],
],
'mautic.multidomain.subscriber.emailbuilder' => [
'class' => \MauticPlugin\MauticMultiDomainBundle\EventListener\BuilderSubscriber::class,
'class' => MauticPlugin\MauticMultiDomainBundle\EventListener\BuilderSubscriber::class,
'arguments' => [
'mautic.helper.core_parameters',
'mautic.email.model.email',
Expand All @@ -83,14 +68,6 @@
'router',
],
],
'mautic.multidomain.subscriber.buildjssubscriber' => [
'class' => \MauticPlugin\MauticMultiDomainBundle\EventListener\BuildJsSubscriber::class,
'arguments' => [
'templating.helper.assets',
'request_stack',
'router',
],
],
],
],
];
34 changes: 34 additions & 0 deletions Config/services.php
Original file line number Diff line number Diff line change
@@ -0,0 +1,34 @@
<?php

declare(strict_types=1);

use Mautic\CoreBundle\DependencyInjection\MauticCoreExtension;
use Symfony\Component\DependencyInjection\Loader\Configurator\ContainerConfigurator;

return function (ContainerConfigurator $configurator) {
$services = $configurator->services()
->defaults()
->autowire()
->autoconfigure()
->public();

$excludes = [
'Permissions',
];

$services->load(
'MauticPlugin\\MauticMultiDomainBundle\\',
__DIR__.'/../'
)
->exclude('../{'.implode(',', array_merge(MauticCoreExtension::DEFAULT_EXCLUDES, $excludes)).'}');

$services->load(
'MauticPlugin\\MauticMultiDomainBundle\\Entity\\',
__DIR__.'/../Entity/*Repository.php'
);

$services->alias(
'mautic.multidomain.model.multidomain',
MauticPlugin\MauticMultiDomainBundle\Model\MultidomainModel::class
);
};
4 changes: 2 additions & 2 deletions Controller/Api/MultidomainApiController.php
Original file line number Diff line number Diff line change
Expand Up @@ -3,8 +3,8 @@
namespace MauticPlugin\MauticMultiDomainBundle\Controller\Api;

use Mautic\ApiBundle\Controller\CommonApiController;
use Symfony\Component\HttpKernel\Event\FilterControllerEvent;
use MauticPlugin\MauticMultiDomainBundle\Entity\Multidomain;
use Symfony\Component\HttpKernel\Event\FilterControllerEvent;

/**
* Class MultidomainApiController.
Expand All @@ -24,4 +24,4 @@ public function initialize(FilterControllerEvent $event)

parent::initialize($event);
}
}
}
54 changes: 21 additions & 33 deletions Controller/MultidomainController.php
Original file line number Diff line number Diff line change
Expand Up @@ -3,32 +3,24 @@
namespace MauticPlugin\MauticMultiDomainBundle\Controller;

use Mautic\CoreBundle\Controller\AbstractStandardFormController;
use Mautic\CoreBundle\Form\Type\DateRangeType;
use MauticPlugin\MauticSpintaxBundle\Model\EmailVariation;
use Symfony\Component\HttpFoundation\JsonResponse;
use Symfony\Component\HttpFoundation\RedirectResponse;
use Symfony\Component\HttpFoundation\Response;
use Symfony\Component\HttpFoundation\Request;
use Symfony\Component\HttpFoundation\Response;

/**
* Class MultidomainController.
*/
class MultidomainController extends AbstractStandardFormController
{
/**
* @return string
*/
protected function getControllerBase()
protected function getModelName(): string
{
return 'MauticMultiDomainBundle:Multidomain';
return 'multidomain';
}

/**
* @return string
*/
protected function getModelName()
protected function getTemplateBase()
{
return 'multidomain';
return '@MauticMultiDomain/Multidomain';
}

/**
Expand All @@ -44,19 +36,19 @@ protected function getDefaultOrderColumn()
*
* @return JsonResponse|RedirectResponse|Response
*/
public function indexAction($page = 1)
public function indexAction(Request $request, $page = 1)
{
return parent::indexStandard($page);
return parent::indexStandard($request, $page);
}

/**
* Generates new form and processes post data.
*
* @return JsonResponse|Response
*/
public function newAction()
public function newAction(Request $request)
{
return parent::newStandard();
return parent::newStandard($request);
}

/**
Expand All @@ -67,21 +59,19 @@ public function newAction()
*
* @return JsonResponse|Response
*/
public function editAction($objectId, $ignorePost = false)
public function editAction(Request $request, $objectId, $ignorePost = false)
{
return parent::editStandard($objectId, $ignorePost);
}
return parent::editStandard($request, $objectId, $ignorePost);
}

/**
* Displays details on a spintax.
*
* @param $objectId
*
* @return array|JsonResponse|RedirectResponse|Response
*/
public function viewAction($objectId)
public function viewAction(Request $request, $objectId)
{
return parent::viewStandard($objectId, 'maultidomain', 'plugin.maultidomain');
return parent::viewStandard($request, $objectId, 'maultidomain', 'plugin.maultidomain');
}

/**
Expand All @@ -91,9 +81,9 @@ public function viewAction($objectId)
*
* @return JsonResponse|RedirectResponse|Response
*/
public function cloneAction($objectId)
public function cloneAction(Request $request, $objectId)
{
return parent::cloneStandard($objectId);
return parent::cloneStandard($request, $objectId);
}

/**
Expand All @@ -103,20 +93,18 @@ public function cloneAction($objectId)
*
* @return JsonResponse|RedirectResponse
*/
public function deleteAction($objectId)
public function deleteAction(Request $request, $objectId)
{
return parent::deleteStandard($objectId);
return parent::deleteStandard($request, $objectId);
}

/**
* Deletes a group of entities.
*
* @return JsonResponse|RedirectResponse
*/
public function batchDeleteAction()
public function batchDeleteAction(Request $request)
{
return parent::batchDeleteStandard();
return parent::batchDeleteStandard($request);
}


}
}
22 changes: 22 additions & 0 deletions DependencyInjection/MauticMultiDomainExtension.php
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
<?php

declare(strict_types=1);

namespace MauticPlugin\MauticMultiDomainBundle\DependencyInjection;

use Symfony\Component\Config\FileLocator;
use Symfony\Component\DependencyInjection\ContainerBuilder;
use Symfony\Component\DependencyInjection\Extension\Extension;
use Symfony\Component\DependencyInjection\Loader\PhpFileLoader;

class MauticMultiDomainExtension extends Extension
{
/**
* @param mixed[] $configs
*/
public function load(array $configs, ContainerBuilder $container): void
{
$loader = new PhpFileLoader($container, new FileLocator(__DIR__.'/../Config'));
$loader->load('services.php');
}
}
Loading