-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathadmin.go
103 lines (75 loc) · 2.37 KB
/
admin.go
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
package directadmin
import "net/http"
// Admin inherits Reseller which inherits User
type Admin struct {
Reseller
}
type AdminContext struct {
ResellerContext
}
type convertAccount struct {
Account string `json:"account,omitempty"`
Creator string `json:"creator,omitempty"`
}
func (c *AdminContext) ConvertResellerToUser(username string, reseller string) error {
if _, err := c.makeRequestNew(http.MethodPost, "convert-reseller-to-user", convertAccount{Account: username, Creator: reseller}, nil); err != nil {
return err
}
return nil
}
func (c *AdminContext) ConvertUserToReseller(username string) error {
if _, err := c.makeRequestNew(http.MethodPost, "convert-user-to-reseller", convertAccount{Account: username}, nil); err != nil {
return err
}
return nil
}
func (c *AdminContext) DisableRedis() error {
var response apiGenericResponseN
if _, err := c.makeRequestNew(http.MethodPost, "redis/disable", nil, &response); err != nil {
return err
}
return nil
}
func (c *AdminContext) EnableRedis() error {
var response apiGenericResponseN
if _, err := c.makeRequestNew(http.MethodPost, "redis/enable", nil, &response); err != nil {
return err
}
return nil
}
// GetAllUsers (admin) returns an array of all users
func (c *AdminContext) GetAllUsers() ([]string, error) {
var users []string
if _, err := c.makeRequestOld(http.MethodGet, "API_SHOW_ALL_USERS", nil, &users); err != nil {
return nil, err
}
return users, nil
}
// GetResellers (admin) returns an array of all resellers
func (c *AdminContext) GetResellers() ([]string, error) {
var users []string
if _, err := c.makeRequestOld(http.MethodGet, "API_SHOW_RESELLERS", nil, &users); err != nil {
return nil, err
}
return users, nil
}
func (c *AdminContext) MoveUserToReseller(username string, reseller string) error {
if _, err := c.makeRequestNew(http.MethodPost, "change-user-creator", convertAccount{Account: username, Creator: reseller}, nil); err != nil {
return err
}
return nil
}
func (c *AdminContext) RestartDirectAdmin() error {
var response apiGenericResponseN
if _, err := c.makeRequestNew(http.MethodPost, "restart", nil, &response); err != nil {
return err
}
return nil
}
func (c *AdminContext) UpdateDirectAdmin() error {
var response apiGenericResponseN
if _, err := c.makeRequestNew(http.MethodPost, "version/update", nil, &response); err != nil {
return err
}
return nil
}