Sha256: 674bc24540b80f39ed202f68df1cea2b5369b96bd286549eeac3b6a091fd6ff5
Contents?: true
Size: 695 Bytes
Versions: 2
Compression:
Stored size: 695 Bytes
Contents
module Mutations module UserManager class AddUserRole < BaseMutation argument :target_user_id, String, required: true argument :user_roles, [String], required: true field :user, Types::UserType, null: true def resolve(**args) check_user_permissions(context[:user], context[:user], :update_user_role?) _, user_id = SoulsApiSchema.from_global_id(args[:target_user_id]) target_user = ::User.find(user_id) target_user.roles << args[:user_roles].map(&:to_sym) return { user: target_user } if target_user.save raise rescue StandardError => e GraphQL::ExecutionError.new(e.to_s) end end end end
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
souls-0.22.8 | hoy/app/graphql/mutations/user_manager/add_user_role.rb |
souls-0.22.7 | hoy/app/graphql/mutations/user_manager/add_user_role.rb |