/** * Marks a message as seen for given userId * * @param int $userId */ public function seen($userId) { // Update User Message Entry $userMessage = ServicesUserMessage::findOne(array('user_id' => $userId, 'message_id' => $this->id)); if ($userMessage !== null) { $userMessage->last_viewed = new \yii\db\Expression('NOW()'); $userMessage->save(); } }
/** * Returns the Message Model by given Id * Also an access check will be performed. * * If insufficed privileges or not found null will be returned. * * @param int $id */ private function getMessage($id) { $message = ServicesMessage::findOne(['id' => $id]); if ($message != null) { $userMessage = ServicesUserMessage::findOne(['user_id' => Yii::$app->user->id, 'message_id' => $message->id]); if ($userMessage != null) { return $message; } } return null; }