<?php

namespace App;

use Illuminate\Database\Eloquent\Model;

class Semester extends Model
{
    public $primaryKey = 'code';
    public $incrementing = false;
    public $timestamps = false;

    protected $keyType = 'string';


    public function courses() {
        return $this->belongsToMany(Course::class, 'sections');
    }

    public function sections() {
        return $this->hasMany(Section::class);
    }

    public function professors() {
        return $this->belongsToMany(Professor::class)->withPivot('admin_load', 'investigative_load');
    }

    public function getIsFutureAttribute() {
        return Semester::orderBy('code', 'desc')->take(6)->get()->contains('code', $this->code);
    }


}
