diff options
| author | Rasmus Fuhse <fuhse@data-quest.de> | 2023-07-19 14:23:04 +0000 |
|---|---|---|
| committer | Rasmus Fuhse <fuhse@data-quest.de> | 2023-07-19 14:23:04 +0000 |
| commit | 413c5b998bf8884bb658e7311e772945fd1edb2d (patch) | |
| tree | 3b906b23bd6156c5812862fa549db9c95f804bf2 /lib/models/Questionnaire.php | |
| parent | 2bce6f6afe7b037855387dcfc3d2dbd150a535b1 (diff) | |
Resolve "Eventuell falsche Anzahl an abgegebenen Antworten in Fragebögen angezeigt"
Closes #2942
Merge request studip/studip!1982
Diffstat (limited to 'lib/models/Questionnaire.php')
| -rw-r--r-- | lib/models/Questionnaire.php | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/lib/models/Questionnaire.php b/lib/models/Questionnaire.php index f221ca1..d69068d 100644 --- a/lib/models/Questionnaire.php +++ b/lib/models/Questionnaire.php @@ -31,17 +31,20 @@ class Questionnaire extends SimpleORMap implements PrivacyObject public function countAnswers() { $statement = DBManager::get()->prepare(" - SELECT COUNT(*) + SELECT COUNT(*) as `count_answers` FROM questionnaire_answers INNER JOIN questionnaire_questions ON (questionnaire_answers.question_id = questionnaire_questions.question_id) WHERE questionnaire_id = :questionnaire_id + GROUP BY questionnaire_answers.question_id + ORDER BY `count_answers` DESC + LIMIT 1 "); $statement->execute([ 'questionnaire_id' => $this->getId() ]); $answers_total = $statement->fetch(PDO::FETCH_COLUMN, 0); - return count($this->questions) ? $answers_total / count($this->questions) : 0; + return $answers_total; } public function isAnswered($user_id = null) |
