<?php

namespace App\Models;

use CodeIgniter\Model;

class SubjectCurriculumModel extends Model
{
    protected $table = 'subject_curriculum_items';
    protected $primaryKey = 'id';
    protected $allowedFields = [
        'class_id',
        'subject',
        'unit_number',
        'unit_title',
        'chapter_name',
        'created_at',
        'updated_at',
    ];
    protected $returnType = 'array';
    protected $useTimestamps = true;
    protected $createdField  = 'created_at';
    protected $updatedField  = 'updated_at';

    public function getOptionsForClass(int $classId, string $subject): array
    {
        return $this->where('class_id', $classId)
            ->where('subject', $subject)
            ->orderBy('unit_number', 'ASC')
            ->orderBy("CAST(SUBSTRING_INDEX(chapter_name, '.', 1) AS UNSIGNED)", 'ASC', false)
            ->orderBy('chapter_name', 'ASC')
            ->findAll();
    }
}
