<?php

namespace App\Models;

use Illuminate\Database\Eloquent\Model;

class TimeCapsule extends Model
{
    protected $fillable = ['user_id', 'anime_id', 'message', 'unlock_at', 'opened_at'];

    protected $casts = [
        'unlock_at' => 'datetime',
        'opened_at' => 'datetime',
    ];

    public function user()  { return $this->belongsTo(User::class); }
    public function anime() { return $this->belongsTo(Anime::class); }

    public function isUnlocked(): bool
    {
        return now()->gte($this->unlock_at);
    }

    public function isOpened(): bool
    {
        return !is_null($this->opened_at);
    }
}
