Skip to content

Commit ee30af0

Browse files
committed
add delete user endpoint
1 parent 4a180e7 commit ee30af0

23 files changed

Lines changed: 986 additions & 412 deletions

client/src/components/Toast.vue

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -8,12 +8,14 @@ import { createToast, clearToasts } from "mosha-vue-toastify";
88
export default {
99
setup() {
1010
const toast = (title, color = "#217dbb") => {
11+
if (title.length > 0) {
1112
createToast(title.charAt(0).toUpperCase() + title.slice(1), {
1213
position: "bottom-right",
1314
hideProgressBar: true,
1415
toastBackgroundColor: color,
1516
timeout: 8000,
1617
});
18+
}
1719
};
1820
const clear = () => {
1921
clearToasts();

server/app/admin_handler.go

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -18,31 +18,31 @@ import (
1818

1919
// AdminAnnouncement struct for data needed when admin sends new announcement
2020
type AdminAnnouncement struct {
21-
Subject string `json:"subject" binding:"required"`
22-
Body string `json:"announcement" binding:"required"`
21+
Subject string `json:"subject" validate:"nonzero" binding:"required"`
22+
Body string `json:"announcement" validate:"nonzero" binding:"required"`
2323
}
2424

2525
// EmailUser struct for data needed when admin sends new email to a user
2626
type EmailUser struct {
27-
Subject string `json:"subject" binding:"required"`
28-
Body string `json:"body" binding:"required"`
27+
Subject string `json:"subject" validate:"nonzero" binding:"required"`
28+
Body string `json:"body" validate:"nonzero" binding:"required"`
2929
Email string `json:"email" binding:"required" validate:"mail"`
3030
}
3131

3232
// UpdateMaintenanceInput struct for data needed when user update maintenance
3333
type UpdateMaintenanceInput struct {
34-
ON bool `json:"on" binding:"required"`
34+
ON bool `json:"on" validate:"nonzero" binding:"required"`
3535
}
3636

3737
// SetAdminInput struct for setting users as admins
3838
type SetAdminInput struct {
39-
Email string `json:"email" binding:"required"`
40-
Admin bool `json:"admin" binding:"required"`
39+
Email string `json:"email" binding:"required" validate:"mail"`
40+
Admin bool `json:"admin" validate:"nonzero" binding:"required"`
4141
}
4242

4343
// UpdateNextLaunchInput struct for data needed when updating next launch state
4444
type UpdateNextLaunchInput struct {
45-
Launched bool `json:"launched" binding:"required"`
45+
Launched bool `json:"launched" validate:"nonzero" binding:"required"`
4646
}
4747

4848
// SetPricesInput struct for setting prices as admins
@@ -556,7 +556,7 @@ func (a *App) CreateNewAnnouncementHandler(req *http.Request) (interface{}, Resp
556556
// @Failure 401 {object} Response
557557
// @Failure 404 {object} Response
558558
// @Failure 500 {object} Response
559-
// @Router /announcement [post]
559+
// @Router /email [post]
560560
func (a *App) SendEmailHandler(req *http.Request) (interface{}, Response) {
561561
var emailUser EmailUser
562562
err := json.NewDecoder(req.Body).Decode(&emailUser)

server/app/app.go

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -137,12 +137,14 @@ func (a *App) registerHandlers() {
137137
unAuthUserRouter.HandleFunc("/signup/verify_email", WrapFunc(a.VerifySignUpCodeHandler)).Methods("POST", "OPTIONS")
138138
unAuthUserRouter.HandleFunc("/signin", WrapFunc(a.SignInHandler)).Methods("POST", "OPTIONS")
139139
unAuthUserRouter.HandleFunc("/refresh_token", WrapFunc(a.RefreshJWTHandler)).Methods("POST", "OPTIONS")
140+
// TODO: rename it
140141
unAuthUserRouter.HandleFunc("/forgot_password", WrapFunc(a.ForgotPasswordHandler)).Methods("POST", "OPTIONS")
141142
unAuthUserRouter.HandleFunc("/forget_password/verify_email", WrapFunc(a.VerifyForgetPasswordCodeHandler)).Methods("POST", "OPTIONS")
142143

143144
userRouter.HandleFunc("/change_password", WrapFunc(a.ChangePasswordHandler)).Methods("PUT", "OPTIONS")
144145
userRouter.HandleFunc("", WrapFunc(a.UpdateUserHandler)).Methods("PUT", "OPTIONS")
145146
userRouter.HandleFunc("", WrapFunc(a.GetUserHandler)).Methods("GET", "OPTIONS")
147+
userRouter.HandleFunc("", WrapFunc(a.DeleteUserHandler)).Methods("DELETE", "OPTIONS")
146148
userRouter.HandleFunc("/apply_voucher", WrapFunc(a.ApplyForVoucherHandler)).Methods("POST", "OPTIONS")
147149
userRouter.HandleFunc("/activate_voucher", WrapFunc(a.ActivateVoucherHandler)).Methods("PUT", "OPTIONS")
148150
userRouter.HandleFunc("/charge_balance", WrapFunc(a.ChargeBalance)).Methods("PUT", "OPTIONS")
@@ -196,7 +198,7 @@ func (a *App) registerHandlers() {
196198
voucherRouter.HandleFunc("", WrapFunc(a.ListVouchersHandler)).Methods("GET", "OPTIONS")
197199
voucherRouter.HandleFunc("/{id}", WrapFunc(a.UpdateVoucherHandler)).Methods("PUT", "OPTIONS")
198200
voucherRouter.HandleFunc("", WrapFunc(a.ApproveAllVouchersHandler)).Methods("PUT", "OPTIONS")
199-
voucherRouter.HandleFunc("/reset", WrapFunc(a.ResetUsersVoucherBalanceHandler)).Methods("PUT", "OPTIONS")
201+
voucherRouter.HandleFunc("/all/reset", WrapFunc(a.ResetUsersVoucherBalanceHandler)).Methods("PUT", "OPTIONS")
200202

201203
// middlewares
202204
r.Use(middlewares.LoggingMW)

0 commit comments

Comments
 (0)