/** * @return \yii\db\ActiveQuery */ public function getMessage() { return $this->hasOne(InnerMessage::className(), ['id' => 'message_id']); }
/** * Get new message count * * @return int|string */ public function getNewCount() { return $this->hasMany(InnerMessage::className(), ['dialog_id' => 'id'])->where(['view' => InnerMessage::tableName()])->count(); }
/** * Set messages status viewed * * @param $userId * @param $dialogId * @param $messageId */ public static function setReadMessage($userId, $dialogId, $messageId) { if (InnerMessageDialog::idDialogAllowed($dialogId, $userId)) { InnerMessage::updateAll(['view' => self::viewed], ['dialog_id' => $dialogId, 'id' => $messageId]); } }