network_user.go 1.7 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344
  1. package functions
  2. import (
  3. "fmt"
  4. "net/http"
  5. "github.com/gravitl/netmaker/ee/ee_controllers"
  6. "github.com/gravitl/netmaker/models/promodels"
  7. )
  8. // GetAllNetworkUsers - fetch all network users
  9. func GetAllNetworkUsers() *map[string][]promodels.NetworkUser {
  10. return request[map[string][]promodels.NetworkUser](http.MethodGet, "/api/networkusers", nil)
  11. }
  12. // GetNetworkUsers - fetch network users belonging to a particular network
  13. func GetNetworkUsers(networkName string) *promodels.NetworkUserMap {
  14. return request[promodels.NetworkUserMap](http.MethodGet, "/api/networkusers/"+networkName, nil)
  15. }
  16. // GetNetworkUser - fetch a single network user
  17. func GetNetworkUser(networkName, networkUserName string) *promodels.NetworkUser {
  18. return request[promodels.NetworkUser](http.MethodGet, fmt.Sprintf("/api/networkusers/%s/%s", networkName, networkUserName), nil)
  19. }
  20. // CreateNetworkUser - create a network user
  21. func CreateNetworkUser(networkName string, payload *promodels.NetworkUser) {
  22. request[any](http.MethodPost, "/api/networkusers/"+networkName, payload)
  23. }
  24. // UpdateNetworkUser - update a network user
  25. func UpdateNetworkUser(networkName string, payload *promodels.NetworkUser) {
  26. request[any](http.MethodPut, "/api/networkusers/"+networkName, payload)
  27. }
  28. // GetNetworkUserData - fetch a network user's complete data
  29. func GetNetworkUserData(networkUserName string) *ee_controllers.NetworkUserDataMap {
  30. return request[ee_controllers.NetworkUserDataMap](http.MethodGet, fmt.Sprintf("/api/networkusers/data/%s/me", networkUserName), nil)
  31. }
  32. // DeleteNetworkUser - delete a network user
  33. func DeleteNetworkUser(networkName, networkUserName string) {
  34. request[any](http.MethodDelete, fmt.Sprintf("/api/networkusers/%s/%s", networkName, networkUserName), nil)
  35. }