mirror of
https://github.com/SecurityBrewery/catalyst.git
synced 2025-12-06 23:32:47 +01:00
@@ -6,35 +6,34 @@ import (
|
||||
"sort"
|
||||
|
||||
"github.com/SecurityBrewery/catalyst/database/busdb"
|
||||
"github.com/SecurityBrewery/catalyst/generated/models"
|
||||
"github.com/SecurityBrewery/catalyst/generated/restapi/api"
|
||||
"github.com/SecurityBrewery/catalyst/generated/model"
|
||||
"github.com/SecurityBrewery/catalyst/role"
|
||||
)
|
||||
|
||||
func (s *Service) GetSettings(ctx context.Context) *api.Response {
|
||||
func (s *Service) GetSettings(ctx context.Context) (*model.Settings, error) {
|
||||
user, ok := busdb.UserFromContext(ctx)
|
||||
if !ok {
|
||||
return s.response(ctx, "GetSettings", nil, nil, errors.New("no user in context"))
|
||||
return nil, errors.New("no user in context")
|
||||
}
|
||||
|
||||
setting, err := s.database.UserDataGet(ctx, user.ID)
|
||||
if err != nil {
|
||||
return s.response(ctx, "GetSettings", nil, nil, err)
|
||||
return nil, err
|
||||
}
|
||||
|
||||
settings := mergeSettings(s.settings, setting)
|
||||
|
||||
ticketTypeList, err := s.database.TicketTypeList(ctx)
|
||||
if err != nil {
|
||||
return s.response(ctx, "GetSettings", nil, nil, err)
|
||||
return nil, err
|
||||
}
|
||||
|
||||
settings.TicketTypes = ticketTypeList
|
||||
|
||||
return s.response(ctx, "GetSettings", nil, settings, nil)
|
||||
return settings, nil
|
||||
}
|
||||
|
||||
func mergeSettings(globalSettings *models.Settings, user *models.UserDataResponse) *models.Settings {
|
||||
func mergeSettings(globalSettings *model.Settings, user *model.UserDataResponse) *model.Settings {
|
||||
if user.Timeformat != nil {
|
||||
globalSettings.Timeformat = *user.Timeformat
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user