# Copyright (C) 2012-2024 Zammad Foundation, https://zammad-foundation.org/ module Gql::Mutations class User::Current::Appearance < BaseMutation description 'Update user profile appearance settings' argument :theme, Gql::Types::Enum::AppearanceThemeType, description: 'Theme to set' field :success, Boolean, null: false, description: 'Profile appearance settings updated successfully?' def self.authorize(_obj, ctx) ctx.current_user.permissions?('user_preferences.appearance') end def resolve(theme:) user = context.current_user user.preferences['theme'] = theme user.save! { success: true } end end end