/** * * @param ProjectModel $projectModel * @param string $questionId * @param string $answerId * @param AnswerModel $answerModel * @return string activity id */ public static function updateAnswer($projectModel, $questionId, $answerModel, $mode = "update") { $activity = new ActivityModel($projectModel); $question = new QuestionModel($projectModel, $questionId); $text = new TextModel($projectModel, $question->textRef->asString()); $user = new UserModel($answerModel->userRef->asString()); $activity->action = $mode == "update" ? ActivityModel::UPDATE_ANSWER : ActivityModel::ADD_ANSWER; $activity->userRef->id = $answerModel->userRef->asString(); $activity->textRef->id = $text->id->asString(); $activity->questionRef->id = $questionId; $activity->addContent(ActivityModel::TEXT, $text->title); $activity->addContent(ActivityModel::QUESTION, $question->getTitleForDisplay()); $activity->addContent(ActivityModel::ANSWER, $answerModel->content); $activity->addContent(ActivityModel::USER, $user->username); $activityId = $activity->write(); UnreadActivityModel::markUnreadForProjectMembers($activityId, $projectModel); UnreadAnswerModel::markUnreadForProjectMembers($answerModel->id->asString(), $projectModel, $questionId, $answerModel->userRef->asString()); return $activityId; }