|
@@ -263,6 +263,7 @@ func getNetworkNodes(w http.ResponseWriter, r *http.Request) {
|
|
|
var nodes []models.Node
|
|
|
var params = mux.Vars(r)
|
|
|
networkName := params["network"]
|
|
|
+
|
|
|
nodes, err := logic.GetNetworkNodes(networkName)
|
|
|
if err != nil {
|
|
|
returnErrorResponse(w, r, formatError(err, "internal"))
|
|
@@ -299,9 +300,9 @@ func getAllNodes(w http.ResponseWriter, r *http.Request) {
|
|
|
}
|
|
|
}
|
|
|
//Return all the nodes in JSON format
|
|
|
- logger.Log(2, r.Header.Get("user"), "fetched nodes")
|
|
|
+ logger.Log(3, r.Header.Get("user"), "fetched all nodes they have access to")
|
|
|
w.WriteHeader(http.StatusOK)
|
|
|
- json.NewEncoder(w).Encode(nodes)
|
|
|
+ json.NewEncoder(w).Encode(filterCommsNodes(nodes))
|
|
|
}
|
|
|
|
|
|
func getUsersNodes(user models.User) ([]models.Node, error) {
|
|
@@ -329,6 +330,10 @@ func getNode(w http.ResponseWriter, r *http.Request) {
|
|
|
returnErrorResponse(w, r, formatError(err, "internal"))
|
|
|
return
|
|
|
}
|
|
|
+ if logic.IsNodeInComms(&node) {
|
|
|
+ returnErrorResponse(w, r, formatError(err, "internal"))
|
|
|
+ return
|
|
|
+ }
|
|
|
logger.Log(2, r.Header.Get("user"), "fetched node", params["nodeid"])
|
|
|
w.WriteHeader(http.StatusOK)
|
|
|
json.NewEncoder(w).Encode(node)
|
|
@@ -659,3 +664,13 @@ func runServerUpdate(node *models.Node, ifaceDelta bool) error {
|
|
|
}
|
|
|
return nil
|
|
|
}
|
|
|
+
|
|
|
+func filterCommsNodes(nodes []models.Node) []models.Node {
|
|
|
+ var filterdNodes []models.Node
|
|
|
+ for i := range nodes {
|
|
|
+ if !logic.IsNodeInComms(&nodes[i]) {
|
|
|
+ filterdNodes = append(filterdNodes, nodes[i])
|
|
|
+ }
|
|
|
+ }
|
|
|
+ return filterdNodes
|
|
|
+}
|