Sha256: b07c498c467f84b318027c8d0a633a23010edeab7f7e944375d7527870280654

Contents?: true

Size: 784 Bytes

Versions: 1

Compression:

Stored size: 784 Bytes

Contents

# frozen_string_literal: true

module Decidim
  module ReportingProposals
    module Admin
      module UpdateCategoryOverride
        extend ActiveSupport::Concern

        included do
          def call
            return broadcast(:invalid) if form.invalid?

            transaction do
              update_category
              update_valuators
            end
            broadcast(:ok)
          end

          private

          def update_valuators
            category.category_valuators.destroy_all
            category.participatory_space.user_roles.where(id: form.valuator_ids).each do |valuator|
              Decidim::ReportingProposals::CategoryValuator.create!(category:, valuator_role: valuator)
            end
          end
        end
      end
    end
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
decidim-reporting_proposals-0.6.0 app/commands/concerns/decidim/reporting_proposals/admin/update_category_override.rb