Skip to content

Commit e601a9e

Browse files
author
markus-moser
committed
Make customer merging via object merger work again
1 parent de33442 commit e601a9e

File tree

2 files changed

+37
-0
lines changed

2 files changed

+37
-0
lines changed
Lines changed: 27 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,27 @@
1+
<?php
2+
3+
/**
4+
* Pimcore Customer Management Framework Bundle
5+
* Full copyright and license information is available in
6+
* License.md which is distributed with this source code.
7+
*
8+
* @copyright Copyright (C) Elements.at New Media Solutions GmbH
9+
* @license GPLv3
10+
*/
11+
12+
namespace CustomerManagementFrameworkBundle\Event;
13+
14+
class CustomerMergerEventListener
15+
{
16+
17+
public function onPostMerge(\Symfony\Component\EventDispatcher\GenericEvent $e)
18+
{
19+
$sourceCustomer = \Pimcore::getContainer()->get('cmf.customer_provider')->getById($e->getArgument('sourceId'));
20+
$targetCustomer = \Pimcore::getContainer()->get('cmf.customer_provider')->getById($e->getArgument('targetId'));
21+
22+
if($sourceCustomer && $targetCustomer) {
23+
\Pimcore::getContainer()->get('cmf.customer_merger')->mergeCustomers($sourceCustomer, $targetCustomer, false);
24+
}
25+
}
26+
27+
}

src/Resources/config/services_events.yml

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,9 @@
11
services:
2+
_defaults:
3+
public: true
4+
autowire: true
5+
autoconfigure: true
6+
27
pimcore.event_listener.frontend.activity_url_tracker:
38
class: CustomerManagementFrameworkBundle\EventListener\Frontend\UrlActivityTracker
49
calls:
@@ -16,6 +21,11 @@ services:
1621
- { name: kernel.event_listener, event: pimcore.object.preDelete, method: onPreDelete }
1722
- { name: kernel.event_listener, event: pimcore.object.postDelete, method: onPostDelete }
1823

24+
cmf.event_listener.object_merger:
25+
class: CustomerManagementFrameworkBundle\Event\CustomerMergerEventListener
26+
tags:
27+
- { name: kernel.event_listener, event: plugin.ObjectMerger.postMerge, method: onPostMerge }
28+
1929
cmf.event_listener.maintenance:
2030
class: CustomerManagementFrameworkBundle\Event\MaintenanceEventListener
2131
tags:

0 commit comments

Comments
 (0)