Пример #1
0
 /**
  * Add message to dialog
  *
  * @param integer $senderId
  * @param string $message
  * @return bool
  */
 public function addMessageToDialog($senderId, $message)
 {
     if (!$this->isAllowed($senderId)) {
         return false;
     }
     $poprigunChat = new PoprigunChatMessage(['dialog_id' => $this->id, 'message' => $message, 'author_id' => $senderId]);
     if ($poprigunChat->save()) {
         foreach ($this->poprigunChatUsers as $user) {
             $rel = new PoprigunChatUserRel(['message_id' => $poprigunChat->id, 'chat_user_id' => $user->id, 'is_view' => PoprigunChatUserRel::NEW_MESSAGE, 'status' => PoprigunChatUserRel::STATUS_ACTIVE]);
             if ($senderId == $user->user_id) {
                 $rel->is_view = PoprigunChatUserRel::OLD_MESSAGE;
             }
             if (!$rel->save()) {
                 error_log($rel->errors);
             }
         }
         return $poprigunChat;
     }
     return false;
 }