feat: add pagination for users & verification_requests
This commit is contained in:
@@ -12,24 +12,21 @@ import (
|
||||
|
||||
// UsersResolver is a resolver for users query
|
||||
// This is admin only query
|
||||
func UsersResolver(ctx context.Context) ([]*model.User, error) {
|
||||
func UsersResolver(ctx context.Context, params *model.PaginatedInput) (*model.Users, error) {
|
||||
gc, err := utils.GinContextFromContext(ctx)
|
||||
var res []*model.User
|
||||
if err != nil {
|
||||
return res, err
|
||||
return nil, err
|
||||
}
|
||||
|
||||
if !token.IsSuperAdmin(gc) {
|
||||
return res, fmt.Errorf("unauthorized")
|
||||
return nil, fmt.Errorf("unauthorized")
|
||||
}
|
||||
|
||||
users, err := db.Provider.ListUsers()
|
||||
pagination := utils.GetPagination(params)
|
||||
|
||||
res, err := db.Provider.ListUsers(pagination)
|
||||
if err != nil {
|
||||
return res, err
|
||||
}
|
||||
|
||||
for i := 0; i < len(users); i++ {
|
||||
res = append(res, users[i].AsAPIUser())
|
||||
return nil, err
|
||||
}
|
||||
|
||||
return res, nil
|
||||
|
@@ -12,32 +12,21 @@ import (
|
||||
|
||||
// VerificationRequestsResolver is a resolver for verification requests query
|
||||
// This is admin only query
|
||||
func VerificationRequestsResolver(ctx context.Context) ([]*model.VerificationRequest, error) {
|
||||
func VerificationRequestsResolver(ctx context.Context, params *model.PaginatedInput) (*model.VerificationRequests, error) {
|
||||
gc, err := utils.GinContextFromContext(ctx)
|
||||
var res []*model.VerificationRequest
|
||||
if err != nil {
|
||||
return res, err
|
||||
return nil, err
|
||||
}
|
||||
|
||||
if !token.IsSuperAdmin(gc) {
|
||||
return res, fmt.Errorf("unauthorized")
|
||||
return nil, fmt.Errorf("unauthorized")
|
||||
}
|
||||
|
||||
verificationRequests, err := db.Provider.ListVerificationRequests()
|
||||
pagination := utils.GetPagination(params)
|
||||
|
||||
res, err := db.Provider.ListVerificationRequests(pagination)
|
||||
if err != nil {
|
||||
return res, err
|
||||
}
|
||||
|
||||
for i := 0; i < len(verificationRequests); i++ {
|
||||
res = append(res, &model.VerificationRequest{
|
||||
ID: fmt.Sprintf("%v", verificationRequests[i].ID),
|
||||
Email: &verificationRequests[i].Email,
|
||||
Token: &verificationRequests[i].Token,
|
||||
Identifier: &verificationRequests[i].Identifier,
|
||||
Expires: &verificationRequests[i].ExpiresAt,
|
||||
CreatedAt: &verificationRequests[i].CreatedAt,
|
||||
UpdatedAt: &verificationRequests[i].UpdatedAt,
|
||||
})
|
||||
return nil, err
|
||||
}
|
||||
|
||||
return res, nil
|
||||
|
Reference in New Issue
Block a user