| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273 | package functionsimport (	"encoding/json"	"strings"	"github.com/gravitl/netmaker/database"	"github.com/gravitl/netmaker/models")// NetworkExists - check if network existsfunc NetworkExists(name string) (bool, error) {	var network string	var err error	if network, err = database.FetchRecord(database.NETWORKS_TABLE_NAME, name); err != nil {		return false, err	}	return len(network) > 0, nil}// NameInDNSCharSet - name in dns char setfunc NameInDNSCharSet(name string) bool {	charset := "abcdefghijklmnopqrstuvwxyz1234567890-."	for _, char := range name {		if !strings.Contains(charset, strings.ToLower(string(char))) {			return false		}	}	return true}// NameInNodeCharSet - name in node char setfunc NameInNodeCharSet(name string) bool {	charset := "abcdefghijklmnopqrstuvwxyz1234567890-"	for _, char := range name {		if !strings.Contains(charset, strings.ToLower(string(char))) {			return false		}	}	return true}// RemoveDeletedNode - remove deleted nodefunc RemoveDeletedNode(nodeid string) bool {	return database.DeleteRecord(database.DELETED_NODES_TABLE_NAME, nodeid) == nil}// GetAllExtClients - get all ext clientsfunc GetAllExtClients() ([]models.ExtClient, error) {	var extclients []models.ExtClient	collection, err := database.FetchRecords(database.EXT_CLIENT_TABLE_NAME)	if err != nil {		return extclients, err	}	for _, value := range collection {		var extclient models.ExtClient		err := json.Unmarshal([]byte(value), &extclient)		if err != nil {			return []models.ExtClient{}, err		}		// add node to our array		extclients = append(extclients, extclient)	}	return extclients, nil}
 |