/** * Enregistrement d'une action * @param object $object [description] * @param string $action [description] * @param mixed $from_user [description] * @param mixed $to_user [description] * @param mixed $child_object Peut être un objet enfant ou juste le type de cet objet * @return [type] [description] */ public function record($object, $action, $from_user = null, $child_object = null, $to_user = null) { $instantiator = new \Doctrine\Instantiator\Instantiator(); $activity = $instantiator->instantiate($this->activity_class); $activity->setDate(new \DateTime()); $activity->setObject($object); $activity->setObjectType($this->getClassBasename($object)); $activity->setAction($action); if (!is_null($from_user) && $from_user instanceof AdvancedUserInterface) { $activity->setFromUser($from_user); } if (!is_null($to_user) && $to_user instanceof AdvancedUserInterface) { $activity->setToUser($to_user); } if (!is_null($child_object)) { if (is_object($child_object)) { $activity->setChildObject($child_object); $activity->setChildObjectType($this->getClassBasename($child_object)); } else { $activity->setChildObjectType($child_object); } } $this->dm->persist($activity); $this->dm->flush(); }
/** * Gestion des messages apres leur envoi * @param Swift_Events_SendEvent $event [description] * @return [type] [description] */ public function sendPerformed(\Swift_Events_SendEvent $evt) { if ($evt->getResult() === \Swift_Events_SendEvent::RESULT_SUCCESS && $this->enabled == true) { // Création de l'activity $activity = $this->createActivity($evt->getMessage()); $this->dm->persist($activity); $this->dm->flush(); } }