Sha256: a975eb112351b25df87593cff48319731f423a417b8b38ea267b3cae984b2641
Contents?: true
Size: 1.1 KB
Versions: 1
Compression:
Stored size: 1.1 KB
Contents
# frozen_string_literal: true module Decidim module Votings module Census module Admin # A command to launch the access codes generation class LaunchAccessCodesGeneration < Decidim::Command def initialize(dataset, user) @dataset = dataset @user = user end # Executes the command. Broadcast this events: # - :ok when everything is valid # - :invalid when the user is not present # # Returns nothing. def call return broadcast(:invalid) unless valid? update_dataset_status(dataset, :generating_codes, user) GenerateAccessCodesJob.perform_later(dataset, user) broadcast(:ok) end attr_reader :user, :dataset private def valid? user.present? && dataset&.data&.present? && dataset.data_created? end def update_dataset_status(dataset, status, user) UpdateDataset.call(dataset, { status: status }, user) end end end end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
decidim-elections-0.27.0.rc1 | app/commands/decidim/votings/census/admin/launch_access_codes_generation.rb |