aboutsummaryrefslogtreecommitdiff
path: root/lib/models/Questionnaire.php
diff options
context:
space:
mode:
authorFinn Schneider <schneider@data-quest.de>2026-03-12 16:16:25 +0100
committerFinn Schneider <schneider@data-quest.de>2026-03-13 17:25:01 +0000
commitff2ecd2d090402a5a30eb675c1d3165d44fbf912 (patch)
tree3978ec0f94b01acda25b737eebaa4fa91b36cd29 /lib/models/Questionnaire.php
parent0b5a0d2805bb0af6adb1fb454642fc80e291d52e (diff)
answer & evaluate in course
Diffstat (limited to 'lib/models/Questionnaire.php')
-rw-r--r--lib/models/Questionnaire.php18
1 files changed, 16 insertions, 2 deletions
diff --git a/lib/models/Questionnaire.php b/lib/models/Questionnaire.php
index 083ddeb..62f7b82 100644
--- a/lib/models/Questionnaire.php
+++ b/lib/models/Questionnaire.php
@@ -141,6 +141,12 @@ class Questionnaire extends SimpleORMap implements PrivacyObject
}
}
}
+
+ if ($this->eval_assignment) {
+ return User::findCurrent()
+ ->hasPermissionLevel('autor', Course::find($this->eval_assignment->course_id));
+ }
+
return false;
}
@@ -234,12 +240,20 @@ class Questionnaire extends SimpleORMap implements PrivacyObject
public function isStarted()
{
- return $this['startdate'] && ($this['startdate'] <= time());
+ if ($this->eval_assignment) {
+ return $this->eval_assignment->startdate && $this->eval_assignment->startdate <= time();
+ } else {
+ return $this['startdate'] && ($this['startdate'] <= time());
+ }
}
public function isStopped()
{
- return $this['stopdate'] && ($this['stopdate'] <= time());
+ if ($this->eval_assignment) {
+ return $this->eval_assignment->stopdate && $this->eval_assignment->stopdate <= time();
+ } else {
+ return $this['stopdate'] && ($this['stopdate'] <= time());
+ }
}
public function isRunning()