Sha256: 404974b92e43e61880a2e37f35bc47594bf249556af2300345c6cd2547bafdad
Contents?: true
Size: 1.1 KB
Versions: 19
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 < Rectify::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
19 entries across 19 versions & 1 rubygems