diff --git a/Layout/default/Building/Form.php b/Layout/default/Building/Form.php index 88d218bc7..0d719960f 100644 --- a/Layout/default/Building/Form.php +++ b/Layout/default/Building/Form.php @@ -40,13 +40,14 @@ if($building->network_id == $network->id): echo "selected='selected'"; endif; - else: + elseif($request_network_id): if($request_network_id == $network->id): echo "selected='selected'"; endif; + elseif(count($networks) == 1): + echo "selected='selected'"; endif; ?>>name)?> - endif; diff --git a/Layout/default/menu.php b/Layout/default/menu.php index 643e03288..de282cb6b 100644 --- a/Layout/default/menu.php +++ b/Layout/default/menu.php @@ -30,7 +30,7 @@ - is(["Admin", "netowner"])): ?> + is(["Admin"]) || ($me->is("netowner") && $me->hasGwrNetworks())): ?>
  • Stammdaten
    @@ -51,7 +51,7 @@
  • "> Benutzer
  • Grundstammdaten
  • - is(["Admin", "netowner"])): ?> + is(["Admin"]) || ($me->is("netowner") && $me->hasGwrNetworks())): ?>
  • "> GWR / AddressDB
  • is(["Admin"])): ?> diff --git a/application/User/User.php b/application/User/User.php index 62aa16132..21841afe1 100644 --- a/application/User/User.php +++ b/application/User/User.php @@ -260,6 +260,14 @@ class User extends mfBaseModel { return $typenets; } + public function hasGwrNetworks() { + $my_networks = $this->myNetworks(["netowner"]); + foreach($my_networks as $network) { + if($network->adb_netzgebiet_id) return true; + } + return false; + } + private function getMyNetworks() { if(!$this->id) { return false;