mirror of
https://github.com/aykhans/slash-e.git
synced 2025-07-04 20:28:00 +00:00
refactor: update user setting keys
This commit is contained in:
@ -163,7 +163,7 @@ func audienceContains(audience jwt.ClaimStrings, token string) bool {
|
||||
return false
|
||||
}
|
||||
|
||||
func validateAccessToken(accessTokenString string, userAccessTokens []*storepb.AccessTokensUserSetting_AccessToken) bool {
|
||||
func validateAccessToken(accessTokenString string, userAccessTokens []*storepb.UserSettingAccessTokens_AccessToken) bool {
|
||||
for _, userAccessToken := range userAccessTokens {
|
||||
if accessTokenString == userAccessToken.AccessToken {
|
||||
return true
|
||||
|
@ -251,7 +251,7 @@ func (s *APIV1Service) DeleteUserAccessToken(ctx context.Context, request *v1pb.
|
||||
if err != nil {
|
||||
return nil, status.Errorf(codes.Internal, "failed to list access tokens: %v", err)
|
||||
}
|
||||
updatedUserAccessTokens := []*storepb.AccessTokensUserSetting_AccessToken{}
|
||||
updatedUserAccessTokens := []*storepb.UserSettingAccessTokens_AccessToken{}
|
||||
for _, userAccessToken := range userAccessTokens {
|
||||
if userAccessToken.AccessToken == request.AccessToken {
|
||||
continue
|
||||
@ -262,7 +262,7 @@ func (s *APIV1Service) DeleteUserAccessToken(ctx context.Context, request *v1pb.
|
||||
UserId: user.ID,
|
||||
Key: storepb.UserSettingKey_ACCESS_TOKENS,
|
||||
Value: &storepb.UserSetting_AccessTokens{
|
||||
AccessTokens: &storepb.AccessTokensUserSetting{
|
||||
AccessTokens: &storepb.UserSettingAccessTokens{
|
||||
AccessTokens: updatedUserAccessTokens,
|
||||
},
|
||||
},
|
||||
@ -278,7 +278,7 @@ func (s *APIV1Service) UpsertAccessTokenToStore(ctx context.Context, user *store
|
||||
if err != nil {
|
||||
return errors.Wrap(err, "failed to get user access tokens")
|
||||
}
|
||||
userAccessToken := storepb.AccessTokensUserSetting_AccessToken{
|
||||
userAccessToken := storepb.UserSettingAccessTokens_AccessToken{
|
||||
AccessToken: accessToken,
|
||||
Description: description,
|
||||
}
|
||||
@ -287,7 +287,7 @@ func (s *APIV1Service) UpsertAccessTokenToStore(ctx context.Context, user *store
|
||||
UserId: user.ID,
|
||||
Key: storepb.UserSettingKey_ACCESS_TOKENS,
|
||||
Value: &storepb.UserSetting_AccessTokens{
|
||||
AccessTokens: &storepb.AccessTokensUserSetting{
|
||||
AccessTokens: &storepb.UserSettingAccessTokens{
|
||||
AccessTokens: userAccessTokens,
|
||||
},
|
||||
},
|
||||
|
@ -32,22 +32,15 @@ func (s *APIV1Service) UpdateUserSetting(ctx context.Context, request *v1pb.Upda
|
||||
return nil, status.Errorf(codes.Unauthenticated, "failed to get current user: %v", err)
|
||||
}
|
||||
for _, path := range request.UpdateMask.Paths {
|
||||
if path == "locale" {
|
||||
if path == "general" {
|
||||
if _, err := s.Store.UpsertUserSetting(ctx, &storepb.UserSetting{
|
||||
UserId: user.ID,
|
||||
Key: storepb.UserSettingKey_LOCALE,
|
||||
Value: &storepb.UserSetting_Locale{
|
||||
Locale: request.UserSetting.Locale,
|
||||
},
|
||||
}); err != nil {
|
||||
return nil, status.Errorf(codes.Internal, "failed to update user setting: %v", err)
|
||||
}
|
||||
} else if path == "color_theme" {
|
||||
if _, err := s.Store.UpsertUserSetting(ctx, &storepb.UserSetting{
|
||||
UserId: user.ID,
|
||||
Key: storepb.UserSettingKey_COLOR_THEME,
|
||||
Value: &storepb.UserSetting_ColorTheme{
|
||||
ColorTheme: request.UserSetting.ColorTheme,
|
||||
Key: storepb.UserSettingKey_GENERAL,
|
||||
Value: &storepb.UserSetting_General{
|
||||
General: &storepb.UserSettingGeneral{
|
||||
Locale: request.UserSetting.General.Locale,
|
||||
ColorTheme: request.UserSetting.General.ColorTheme,
|
||||
},
|
||||
},
|
||||
}); err != nil {
|
||||
return nil, status.Errorf(codes.Internal, "failed to update user setting: %v", err)
|
||||
@ -75,15 +68,18 @@ func getUserSetting(ctx context.Context, s *store.Store, userID int32) (*v1pb.Us
|
||||
}
|
||||
|
||||
userSetting := &v1pb.UserSetting{
|
||||
Id: userID,
|
||||
Locale: "EN",
|
||||
ColorTheme: "SYSTEM",
|
||||
Id: userID,
|
||||
General: &v1pb.UserSettingGeneral{
|
||||
Locale: "EN",
|
||||
ColorTheme: "SYSTEM",
|
||||
},
|
||||
}
|
||||
for _, setting := range userSettings {
|
||||
if setting.Key == storepb.UserSettingKey_LOCALE {
|
||||
userSetting.Locale = setting.GetLocale()
|
||||
} else if setting.Key == storepb.UserSettingKey_COLOR_THEME {
|
||||
userSetting.ColorTheme = setting.GetColorTheme()
|
||||
if setting.Key == storepb.UserSettingKey_GENERAL {
|
||||
userSetting.General = &v1pb.UserSettingGeneral{
|
||||
Locale: setting.GetGeneral().Locale,
|
||||
ColorTheme: setting.GetGeneral().ColorTheme,
|
||||
}
|
||||
}
|
||||
}
|
||||
return userSetting, nil
|
||||
|
Reference in New Issue
Block a user