Added permissions to internal BuildingApi

This commit is contained in:
Frank Schubert
2022-11-29 18:15:18 +01:00
parent 9a87c00abb
commit a15545d552
7 changed files with 36 additions and 7 deletions

View File

@@ -372,8 +372,27 @@ class BuildingController extends mfBaseController {
private function getFilteredBuildingsApi() {
$buildings = [];
$filter = $this->request->filter;
$filter = [];
if(is_array($this->request->filter)) {
$filter = $this->request->filter;
}
if(!$this->me->is("Admin")) {
$my_networks = $this->me->myNetworks(['netowner','salespartner']);
$network_ids = [];
foreach($my_networks as $net) {
$network_ids[] = $net->id;
}
if(array_key_exists("network_id", $filter)) {
if(!in_array($filter['network_id'], $network_ids)) {
$filter['network_id'] = $network_ids;
}
} else {
$filter['network_id'] = $network_ids;
}
}
$results = BuildingModel::search($filter);