From 0325795bf253f2fb780fc94bce698858dc76d2e8 Mon Sep 17 00:00:00 2001 From: 0xdcarns Date: Fri, 18 Feb 2022 19:47:20 -0500 Subject: [PATCH] created comms filter --- controllers/network.go | 16 ++++++++++++---- logic/nodes.go | 2 +- 2 files changed, 13 insertions(+), 5 deletions(-) diff --git a/controllers/network.go b/controllers/network.go index d350ec00..47c1ad42 100644 --- a/controllers/network.go +++ b/controllers/network.go @@ -57,9 +57,7 @@ func getNetworks(w http.ResponseWriter, r *http.Request) { for _, network := range networksSlice { netObject, parentErr := logic.GetParentNetwork(network) if parentErr == nil { - if netObject.IsComms != "yes" { - allnetworks = append(allnetworks, netObject) - } + allnetworks = append(allnetworks, netObject) } } } @@ -71,7 +69,7 @@ func getNetworks(w http.ResponseWriter, r *http.Request) { } logger.Log(2, r.Header.Get("user"), "fetched networks.") w.WriteHeader(http.StatusOK) - json.NewEncoder(w).Encode(allnetworks) + json.NewEncoder(w).Encode(filterCommsNetwork(allnetworks)) } // Simple get network function @@ -361,3 +359,13 @@ func isCommsEdit(w http.ResponseWriter, r *http.Request, netname string) bool { } return false } + +func filterCommsNetwork(networks []models.Network) []models.Network { + var filterdNets []models.Network + for i := range networks { + if networks[i].IsComms != "yes" && networks[i].NetID != servercfg.GetCommsID() { + filterdNets = append(filterdNets, networks[i]) + } + } + return filterdNets +} diff --git a/logic/nodes.go b/logic/nodes.go index ea721191..70339cb4 100644 --- a/logic/nodes.go +++ b/logic/nodes.go @@ -573,7 +573,7 @@ func IsLocalServer(node *models.Node) bool { // IsNodeInComms returns if node is in comms network or not func IsNodeInComms(node *models.Node) bool { - return node.Network == servercfg.GetCommsID() + return node.Network == servercfg.GetCommsID() && node.IsServer != "yes" } // validateServer - make sure servers dont change port or address