<?php

namespace App\Policies;

use App\Models\CoachDocument;
use App\Models\User;

class CoachDocumentPolicy
{
    /**
     * فقط خودِ مربی صاحب مدرک یا Admin اجازه دارند فایل خصوصی را ببینند.
     * این دقیقاً همان چیزی‌ست که در بند ۵۰/۵۱ به‌عنوان اصل کلی خواسته شده،
     * اینجا برای فایل‌های حساس (نه فقط رکورد دیتابیس) اعمال می‌شود.
     */
    public function view(User $user, CoachDocument $document): bool
    {
        return $user->isAdmin() || $user->id === $document->coach->user_id;
    }

    public function delete(User $user, CoachDocument $document): bool
    {
        return $user->isAdmin() || $user->id === $document->coach->user_id;
    }

    public function upload(User $user, \App\Models\Coach $coach): bool
    {
        return $user->isAdmin() || $user->id === $coach->user_id;
    }
}
