mirror of
https://github.com/alchemy-fr/Phraseanet.git
synced 2025-10-17 06:53:15 +00:00
add some element in message
This commit is contained in:
@@ -13,4 +13,40 @@ namespace Alchemy\Phrasea\Core\Event\Record;
|
||||
|
||||
class CollectionChangedEvent extends RecordEvent
|
||||
{
|
||||
/** @var array */
|
||||
private $beforeCollection;
|
||||
|
||||
/** @var array */
|
||||
private $afterCollection;
|
||||
|
||||
public function __construct(\record_adapter $record, \collection $beforeCol, \collection $afterCol)
|
||||
{
|
||||
parent::__construct($record);
|
||||
|
||||
$this->beforeCollection = [
|
||||
'collection_name' => $beforeCol->get_name(),
|
||||
'collection_id' => $beforeCol->get_coll_id()
|
||||
];
|
||||
|
||||
$this->afterCollection = [
|
||||
'collection_name' => $afterCol->get_name(),
|
||||
'collection_id' => $afterCol->get_coll_id()
|
||||
];
|
||||
}
|
||||
|
||||
/**
|
||||
* @return array
|
||||
*/
|
||||
public function getBeforeCollection()
|
||||
{
|
||||
return $this->beforeCollection;
|
||||
}
|
||||
|
||||
/**
|
||||
* @return array
|
||||
*/
|
||||
public function getAfterCollection()
|
||||
{
|
||||
return $this->afterCollection;
|
||||
}
|
||||
}
|
||||
|
@@ -3,6 +3,7 @@
|
||||
namespace Alchemy\Phrasea\Core\Event\Subscriber;
|
||||
|
||||
use Alchemy\Phrasea\Application;
|
||||
use Alchemy\Phrasea\Core\Event\Record\CollectionChangedEvent;
|
||||
use Alchemy\Phrasea\Core\Event\Record\RecordEvent;
|
||||
use Alchemy\Phrasea\Core\Event\Record\RecordEvents;
|
||||
use Alchemy\Phrasea\Core\LazyLocator;
|
||||
@@ -54,9 +55,30 @@ class WebhookRecordEventSubscriber implements EventSubscriberInterface
|
||||
$this->createWebhookEvent($event, WebhookEvent::RECORD_MEDIA_SUBSTITUTED);
|
||||
}
|
||||
|
||||
public function onRecordCollectionChanged(RecordEvent $event)
|
||||
public function onRecordCollectionChanged(CollectionChangedEvent $event)
|
||||
{
|
||||
$this->createWebhookEvent($event, WebhookEvent::RECORD_COLLECTION_CHANGED);
|
||||
$record = $this->convertToRecordAdapter($event->getRecord());
|
||||
|
||||
if ($record !== null) {
|
||||
$eventData = [
|
||||
'databox_id' => $event->getRecord()->getDataboxId(),
|
||||
'record_id' => $event->getRecord()->getRecordId(),
|
||||
'collection_name' => $record->getCollection()->get_name(),
|
||||
'record_type' => $event->getRecord()->isStory() ? "story" : "record",
|
||||
'before' => $event->getBeforeCollection(),
|
||||
'after' => $event->getAfterCollection()
|
||||
];
|
||||
|
||||
$this->app['manipulator.webhook-event']->create(
|
||||
WebhookEvent::RECORD_COLLECTION_CHANGED,
|
||||
WebhookEvent::RECORD_TYPE,
|
||||
$eventData,
|
||||
[$event->getRecord()->getBaseId()]
|
||||
);
|
||||
} else {
|
||||
$this->app['logger']->error("Record not found when wanting to create webhook data!");
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
public function onRecordStatusChanged(RecordEvent $event)
|
||||
|
Reference in New Issue
Block a user