HEX
Server: Apache
System: Linux server1.ariadata.co 4.18.0-553.120.1.el8_10.x86_64 #1 SMP Mon Apr 20 18:04:27 EDT 2026 x86_64
User: nepi (1051)
PHP: 7.4.33
Disabled: exec,passthru,shell_exec,system,show_source,popen,proc_open
Upload Files
File: /home/nepi/file.nepi.ir/app/Policies/ShareableLinkPolicy.php
<?php

namespace App\Policies;

use App\Services\Links\ValidatesLinkPassword;
use App\ShareableLink;
use App\User;
use Illuminate\Auth\Access\HandlesAuthorization;

class ShareableLinkPolicy
{
    use HandlesAuthorization, ValidatesLinkPassword;

    public function show(User $user, ShareableLink $link)
    {
        if ($link->user_id === $user->id) {
            return true;
        }

        return $user->hasPermission('links.view') &&
            $this->passwordIsValid($link);
    }

    public function create(User $user)
    {
        return $user->hasPermission('links.create');
    }

    public function update(User $user, ShareableLink $link)
    {
        return $user->hasPermission('links.update') ||
            $link->user_id === $user->id;
    }

    public function destroy(User $user, ShareableLink $link)
    {
        return $user->hasPermission('links.delete') ||
            $link->user_id === $user->id;
    }
}