Sha256: f6479c3c80733b159924b9802e64a80717a81f762cede32bc0f5f5d1764bd8a6

Contents?: true

Size: 499 Bytes

Versions: 5

Compression:

Stored size: 499 Bytes

Contents

# frozen_string_literal: true

module Decidim
  # A command to remove a role from a given User.
  class RemoveUserRole < Rectify::Command
    # Public: Initializes the command.
    #
    # form - A form object with the params.
    def initialize(user, role)
      @user = user
      @role = role
    end

    def call
      return broadcast(:invalid) unless user

      user.roles.delete(role.to_s)
      user.save!

      broadcast(:ok)
    end

    private

    attr_reader :user, :role
  end
end

Version data entries

5 entries across 5 versions & 1 rubygems

Version Path
decidim-core-0.4.0 app/commands/decidim/remove_user_role.rb
decidim-core-0.3.2 app/commands/decidim/remove_user_role.rb
decidim-core-0.3.1 app/commands/decidim/remove_user_role.rb
decidim-core-0.3.0 app/commands/decidim/remove_user_role.rb
decidim-core-0.2.0 app/commands/decidim/remove_user_role.rb