- Add avatar upload functionality with public URL access. - Implement user login with email and password authentication. - Create endpoints for fetching and updating the authenticated user's profile. - Set up database migrations for user profiles, including email and role management. - Introduce personal data management linked to user profiles. - Add email verification process with welcome email templates.
25 lines
637 B
Go
25 lines
637 B
Go
package admin
|
|
|
|
import (
|
|
"context"
|
|
|
|
authsvc "encore.app/auth"
|
|
profilessvc "encore.app/profiles"
|
|
)
|
|
|
|
type SystemOptionsResponse struct {
|
|
Roles []authsvc.RoleOption `json:"roles"`
|
|
Statuses []profilessvc.StatusOption `json:"statuses"`
|
|
}
|
|
|
|
// GetSystemOptions returns the valid roles and profile statuses, each with a
|
|
// display name and underlying value, for use in admin UI dropdowns.
|
|
//
|
|
//encore:api auth method=GET path=/admin/system/options
|
|
func GetSystemOptions(ctx context.Context) (*SystemOptionsResponse, error) {
|
|
return &SystemOptionsResponse{
|
|
Roles: authsvc.Roles(),
|
|
Statuses: profilessvc.Statuses(),
|
|
}, nil
|
|
}
|