fix policies

This commit is contained in:
Saeed Vaziry
2024-11-23 10:38:36 +01:00
parent 5aac48b942
commit bc2e421128
4 changed files with 57 additions and 29 deletions

View File

@ -13,32 +13,39 @@ class SitePolicy
public function viewAny(User $user, Server $server): bool
{
return ($user->isAdmin() || $server->project->users->contains($user)) && $server->isReady();
return ($user->isAdmin() || $server->project->users->contains($user))
&& $server->isReady()
&& $server->webserver();
}
public function view(User $user, Site $site, Server $server): bool
{
return ($user->isAdmin() || $site->server->project->users->contains($user)) &&
$site->server_id === $server->id &&
$site->server->isReady();
return ($user->isAdmin() || $site->server->project->users->contains($user))
&& $site->server_id === $server->id
&& $site->server->isReady()
&& $site->server->webserver();
}
public function create(User $user, Server $server): bool
{
return ($user->isAdmin() || $server->project->users->contains($user)) && $server->isReady();
return ($user->isAdmin() || $server->project->users->contains($user))
&& $server->isReady()
&& $server->webserver();
}
public function update(User $user, Site $site, Server $server): bool
{
return ($user->isAdmin() || $site->server->project->users->contains($user)) &&
$site->server_id === $server->id &&
$site->server->isReady();
return ($user->isAdmin() || $site->server->project->users->contains($user))
&& $site->server_id === $server->id
&& $site->server->isReady()
&& $site->server->webserver();
}
public function delete(User $user, Site $site, Server $server): bool
{
return ($user->isAdmin() || $site->server->project->users->contains($user)) &&
$site->server_id === $server->id &&
$site->server->isReady();
return ($user->isAdmin() || $site->server->project->users->contains($user))
&& $site->server_id === $server->id
&& $site->server->isReady()
&& $site->server->webserver();
}
}