diff --git a/app/http/controllers/plugins/mysql_controller.go b/app/http/controllers/plugins/mysql_controller.go index b5e70a9c..86ae141c 100644 --- a/app/http/controllers/plugins/mysql_controller.go +++ b/app/http/controllers/plugins/mysql_controller.go @@ -260,6 +260,10 @@ func (r *MySQLController) DatabaseList(ctx http.Context) http.Response { } pagedDatabases := databases[startIndex:endIndex] + if pagedDatabases == nil { + pagedDatabases = []database{} + } + return controllers.Success(ctx, http.Json{ "total": len(databases), "items": pagedDatabases, @@ -512,6 +516,10 @@ func (r *MySQLController) UserList(ctx http.Context) http.Response { } pagedUserGrants := userGrants[startIndex:endIndex] + if pagedUserGrants == nil { + pagedUserGrants = []user{} + } + return controllers.Success(ctx, http.Json{ "total": len(userGrants), "items": pagedUserGrants, diff --git a/app/http/controllers/plugins/postgresql_controller.go b/app/http/controllers/plugins/postgresql_controller.go index 26666808..bc0a7ca7 100644 --- a/app/http/controllers/plugins/postgresql_controller.go +++ b/app/http/controllers/plugins/postgresql_controller.go @@ -200,6 +200,10 @@ func (r *PostgreSQLController) DatabaseList(ctx http.Context) http.Response { } pagedDatabases := databases[startIndex:endIndex] + if pagedDatabases == nil { + pagedDatabases = []database{} + } + return controllers.Success(ctx, http.Json{ "total": len(databases), "items": pagedDatabases, @@ -441,6 +445,10 @@ func (r *PostgreSQLController) RoleList(ctx http.Context) http.Response { } pagedRoles := roles[startIndex:endIndex] + if pagedRoles == nil { + pagedRoles = []role{} + } + return controllers.Success(ctx, http.Json{ "total": len(roles), "items": pagedRoles, diff --git a/app/http/controllers/plugins/pureftpd_controller.go b/app/http/controllers/plugins/pureftpd_controller.go index fa87fec2..75f2a751 100644 --- a/app/http/controllers/plugins/pureftpd_controller.go +++ b/app/http/controllers/plugins/pureftpd_controller.go @@ -58,6 +58,10 @@ func (r *PureFtpdController) List(ctx http.Context) http.Response { } pagedUsers := users[startIndex:endIndex] + if pagedUsers == nil { + pagedUsers = []types.PureFtpdUser{} + } + return controllers.Success(ctx, http.Json{ "total": len(users), "items": pagedUsers, diff --git a/app/http/controllers/safe_controller.go b/app/http/controllers/safe_controller.go index f2ab3fcc..65e9b160 100644 --- a/app/http/controllers/safe_controller.go +++ b/app/http/controllers/safe_controller.go @@ -125,6 +125,10 @@ func (r *SafeController) GetFirewallRules(ctx http.Context) http.Response { } pagedRules := rules[startIndex:endIndex] + if pagedRules == nil { + pagedRules = []map[string]string{} + } + return Success(ctx, http.Json{ "total": len(rules), "items": pagedRules, diff --git a/scripts/fail2ban/install.sh b/scripts/fail2ban/install.sh index 69cfad1a..0aacfbc0 100644 --- a/scripts/fail2ban/install.sh +++ b/scripts/fail2ban/install.sh @@ -80,4 +80,4 @@ systemctl unmask fail2ban systemctl enable fail2ban systemctl start fail2ban -panel writePlugin fail2ban 1.0.0 +panel writePlugin fail2ban 1.0.2 diff --git a/scripts/fail2ban/update.sh b/scripts/fail2ban/update.sh index e72c1a52..ec9b57fe 100644 --- a/scripts/fail2ban/update.sh +++ b/scripts/fail2ban/update.sh @@ -38,3 +38,5 @@ if [ "$?" != "0" ]; then fi systemctl restart fail2ban + +panel writePlugin fail2ban 1.0.2