예제 #1
0
 /**
  * Create a message.
  *
  * @param $content      The message content
  * @param $object       The message object
  * @param User[] $users  The users receiving the message
  * @param null   $sender The user sending the message
  * @param null   $parent The message parent (is it's a discussion)
  *
  * @return Message
  */
 public function create($content, $object, array $users, $sender = null, $parent = null)
 {
     $message = new Message();
     $message->setContent($content);
     $message->setParent($parent);
     $message->setObject($object);
     $message->setSender($sender);
     $stringTo = '';
     foreach ($users as $user) {
         $stringTo .= $user->getUsername() . ';';
     }
     $message->setTo($stringTo);
     return $message;
 }
예제 #2
0
 protected static function createMessage($alias, User $sender, array $receivers, $object, $content, Message $parent = null, $removed = false)
 {
     $message = new Message();
     $message->setSender($sender);
     $message->setObject($object);
     $message->setContent($content);
     $message->setDate(self::$time);
     $message->setTo('x1;x2;x3');
     if ($parent) {
         $message->setParent($parent);
     }
     self::$om->startFlushSuite();
     self::create($alias, $message);
     $userMessage = new UserMessage();
     $userMessage->setIsSent(true);
     $userMessage->setUser($sender);
     $userMessage->setMessage($message);
     if ($removed) {
         $userMessage->markAsRemoved($removed);
     }
     self::create($alias . '/' . $sender->getUsername(), $userMessage);
     foreach ($receivers as $receiver) {
         $userMessage = new UserMessage();
         $userMessage->setUser($receiver);
         $userMessage->setMessage($message);
         self::create($alias . '/' . $receiver->getUsername(), $userMessage);
     }
     self::$om->endFlushSuite();
 }