Only show Network Admin if the user is a ZC of a network

This commit is contained in:
Deon George 2022-12-11 21:46:08 +11:00
parent c4169248ff
commit eca9f257eb
2 changed files with 24 additions and 12 deletions

View File

@ -79,4 +79,14 @@ class User extends Authenticatable implements MustVerifyEmail
{
return FALSE;
}
/**
* Is this user a ZC of a domain?
*
* @return bool
*/
public function isZC(): bool
{
return $this->systems->pluck('addresses')->flatten()->where('role',Address::NODE_ZC)->count() > 0;
}
}

View File

@ -11,19 +11,21 @@
</dl>
@auth
<dl>
<dt>Network Admin</dt>
<dd><a href="{{ url('ftn/domain') }}">Domains</a></dd>
<dd><a href="{{ url('ftn/system') }}">Systems</a></dd>
<dd><a href="{{ url('ftn/zone') }}">Zones</a></dd>
<dd><a href="{{ url('ftn/echoarea') }}">Echoareas</a></dd>
<dd><a href="{{ url('ftn/filearea') }}">Fileareas</a></dd>
</dl>
@if ($user->isZC())
<dl>
<dt>Network Admin</dt>
<dd><a href="{{ url('ftn/domain') }}">Domains</a></dd>
<dd><a href="{{ url('ftn/system') }}">Systems</a></dd>
<dd><a href="{{ url('ftn/zone') }}">Zones</a></dd>
<dd><a href="{{ url('ftn/echoarea') }}">Echoareas</a></dd>
<dd><a href="{{ url('ftn/filearea') }}">Fileareas</a></dd>
</dl>
<dl>
<dt>System Admin</dt>
<dd><a href="{{ url('ftn/our_systems') }}">This Host Systems</a></dd>
</dl>
<dl>
<dt>System Admin</dt>
<dd><a href="{{ url('ftn/our_systems') }}">This Host Systems</a></dd>
</dl>
@endif
@can('admin')
<dl>