<?php

use Jaga\Models\BaseModel;
use Jaga\Traits\JagaTimestamp;
use Jaga\Traits\SoftDelete;

/**
 * Class PancekQuizExam
 * @property PancekQuiz $quiz
 * @property PancekQuizExamAnswer[] $answers
 */
class PancekQuizExam extends BaseModel {
    use JagaTimestamp, SoftDelete;

    public $id;
    public $quiz_id;
    public $nama;
    public $email;
    public $provinsi_id;
    public $score;
    public $created_at;
    public $updated_at;
    public $deleted_at;

    public static $throwableModelName = 'PancekQuizExam';

    public function initialize()
    {
        $this->setSchema("jaga");
        $this->setSource("pancek_quiz_exam");
        $this->belongsTo(
            "quiz_id",
            \PancekQuiz::class,
            "id",
            [
                'reusable' => true, // cache related data
                'alias'    => 'quiz',
            ]
        );
        $this->hasMany(
            "id",
            \PancekQuizExamAnswer::class,
            "exam_id",
            [
                'reusable' => true, // cache related data
                'alias'    => 'answers',
                'order' => 'id ASC',
                'params'   => [
                    'conditions' => 'deleted_at IS NULL'
                ],
            ]
        );
    }
}
