Exam create with 10 random questions

This commit is contained in:
Kilian Hofmann 2021-08-15 23:05:46 +02:00
parent 3302d89057
commit 0bdba12a0e
2 changed files with 36 additions and 2 deletions

View File

@ -65,6 +65,24 @@ class ExamMemberRank extends Model
});
}
public static function createNew($member_id, $member_rank_id)
{
$exam = new ExamMemberRank();
$exam->member_id = $member_id;
$exam->typerating_id = $typerating_id;
$entry = [];
$questions = ExamMemberRankQuestion::where('member_rank_id', $member_rank_id)
->get()
->random(10);
foreach ($questions as $question) {
array_push($entry, ['exam_question_id' => $question->id]);
}
$exam->exam_questions = $entry;
$exam->save();
}
public function grade()
{
$this->load([

View File

@ -27,8 +27,6 @@ class ExamTyperating extends Model
public $rules = [
'member_id' => 'required',
'typerating_id' => 'required',
'start' => 'required',
'status' => 'required',
];
public $belongsTo = [
@ -65,6 +63,24 @@ class ExamTyperating extends Model
});
}
public static function createNew($member_id, $typerating_id)
{
$exam = new ExamTyperating();
$exam->member_id = $member_id;
$exam->typerating_id = $typerating_id;
$entry = [];
$questions = ExamTyperatingQuestion::where('typerating_id', $typerating_id)
->get()
->random(10);
foreach ($questions as $question) {
array_push($entry, ['exam_question_id' => $question->id]);
}
$exam->exam_questions = $entry;
$exam->save();
}
public function grade()
{
$this->load([