From 7680fb42cc67804d5118c794b8d05d6b2fce8b02 Mon Sep 17 00:00:00 2001 From: Manuel Raynaud Date: Sat, 21 Sep 2013 15:24:44 +0200 Subject: [PATCH] dispatch event in pre/post crud method for content model --- core/lib/Thelia/Model/Content.php | 33 +++++++++++++++++++++++++++++++ 1 file changed, 33 insertions(+) diff --git a/core/lib/Thelia/Model/Content.php b/core/lib/Thelia/Model/Content.php index ca1978e65..0f57742c2 100755 --- a/core/lib/Thelia/Model/Content.php +++ b/core/lib/Thelia/Model/Content.php @@ -2,6 +2,8 @@ namespace Thelia\Model; +use Thelia\Core\Event\Content\ContentEvent; +use Thelia\Core\Event\TheliaEvents; use Thelia\Model\Base\Content as BaseContent; use Thelia\Tools\URL; use Propel\Runtime\Connection\ConnectionInterface; @@ -43,6 +45,37 @@ class Content extends BaseContent { $this->setPosition($this->getNextPosition()); + $this->dispatchEvent(TheliaEvents::BEFORE_CREATECONTENT, new ContentEvent($this)); + return true; } + + public function postInsert(ConnectionInterface $con = null) + { + $this->dispatchEvent(TheliaEvents::AFTER_CREATECONTENT, new ContentEvent($this)); + } + + public function preUpdate(ConnectionInterface $con = null) + { + $this->dispatchEvent(TheliaEvents::BEFORE_UPDATECONTENT, new ContentEvent($this)); + + return true; + } + + public function postUpdate(ConnectionInterface $con = null) + { + $this->dispatchEvent(TheliaEvents::AFTER_UPDATECONTENT, new ContentEvent($this)); + } + + public function preDelete(ConnectionInterface $con = null) + { + $this->dispatchEvent(TheliaEvents::BEFORE_DELETECONTENT, new ContentEvent($this)); + + return true; + } + + public function postDelete(ConnectionInterface $con = null) + { + $this->dispatchEvent(TheliaEvents::AFTER_DELETECONTENT, new ContentEvent($this)); + } }