Browse Source

IsRelayed off on relayed node when deleting relay

Signed-off-by: Matthew R. Kasun <[email protected]>
Matthew R. Kasun 3 years ago
parent
commit
24c58913eb
1 changed files with 4 additions and 10 deletions
  1. 4 10
      logic/relay.go

+ 4 - 10
logic/relay.go

@@ -50,7 +50,7 @@ func CreateRelay(relay models.RelayRequest) ([]models.Node, models.Node, error)
 // SetRelayedNodes- set relayed nodes
 // SetRelayedNodes- set relayed nodes
 func SetRelayedNodes(setRelayed bool, networkName string, addrs []string) ([]models.Node, error) {
 func SetRelayedNodes(setRelayed bool, networkName string, addrs []string) ([]models.Node, error) {
 	var returnnodes []models.Node
 	var returnnodes []models.Node
-	collections, err := database.FetchRecords(database.NODES_TABLE_NAME)
+	networkNodes, err := GetNetworkNodes(networkName)
 	if err != nil {
 	if err != nil {
 		return returnnodes, err
 		return returnnodes, err
 	}
 	}
@@ -58,15 +58,8 @@ func SetRelayedNodes(setRelayed bool, networkName string, addrs []string) ([]mod
 	if err != nil {
 	if err != nil {
 		return returnnodes, err
 		return returnnodes, err
 	}
 	}
-
-	for _, value := range collections {
-
-		var node models.Node
-		err := json.Unmarshal([]byte(value), &node)
-		if err != nil {
-			return returnnodes, err
-		}
-		if node.Network == networkName && !(node.IsServer == "yes") {
+	for _, node := range networkNodes {
+		if !(node.IsServer == "yes") {
 			for _, addr := range addrs {
 			for _, addr := range addrs {
 				if addr == node.Address || addr == node.Address6 {
 				if addr == node.Address || addr == node.Address6 {
 					if setRelayed {
 					if setRelayed {
@@ -74,6 +67,7 @@ func SetRelayedNodes(setRelayed bool, networkName string, addrs []string) ([]mod
 						node.IsRelayed = "yes"
 						node.IsRelayed = "yes"
 					} else {
 					} else {
 						node.UDPHolePunch = network.DefaultUDPHolePunch
 						node.UDPHolePunch = network.DefaultUDPHolePunch
+						node.IsRelayed = "no"
 					}
 					}
 					data, err := json.Marshal(&node)
 					data, err := json.Marshal(&node)
 					if err != nil {
 					if err != nil {