HEX
Server: LiteSpeed
System: Linux s1049.use1.mysecurecloudhost.com 4.18.0-477.27.2.lve.el8.x86_64 #1 SMP Wed Oct 11 12:32:56 UTC 2023 x86_64
User: xedaptot (3356)
PHP: 8.3.31
Disabled: NONE
Upload Files
File: /home/xedaptot/iphim.naniguide.com/app/Season.php
<?php

namespace App;

use App\Services\Traits\HasCreditableRelation;
use Carbon\Carbon;
use Illuminate\Database\Eloquent\Collection;
use Illuminate\Database\Eloquent\Model;

/**
 * @property-read Collection|Episode[] $episodes
 * @property Carbon $updated_at;
 * @property Carbon $created_at;
 * @property boolean $fully_synced;
 * @property integer $number;
 * @property-read integer $episode_count;
 * @property integer $id;
 * @property integer $title_id;
 * @property-read Title $tile
 * @method static Season findOrFail($id, $columns = ['*'])
 */
class Season extends Model
{
    use HasCreditableRelation;

    const MODEL_TYPE = 'season';

    protected $guarded = ['id'];
    protected $appends = ['model_type'];

    protected $casts = [
        'id' => 'integer',
        'fully_synced' => 'boolean',
        'episode_count' => 'integer',
        'number' => 'integer'
    ];

    /**
     * @return \Illuminate\Database\Eloquent\Relations\HasMany
     */
    public function episodes()
    {
        return $this->hasMany(Episode::class);
    }

    /**
     * @return \Illuminate\Database\Eloquent\Relations\BelongsTo
     */
    public function title()
    {
        return $this->belongsTo(Title::class);
    }

    public function getModelTypeAttribute()
    {
        return self::MODEL_TYPE;
    }
}