Sha256: d95bb26ed0037dca015264ecd7188902da14de24c75268734e454445e5a56150
Contents?: true
Size: 1.22 KB
Versions: 1
Compression:
Stored size: 1.22 KB
Contents
# frozen_string_literal: true module Decidim module Lausanne module Budgets module Admin # This command is executed when the user creates an Budget # from the admin panel. class CreateBudget < Decidim::Lausanne::Budgets::Command def initialize(form) @form = form end # Creates the budget if valid. # # Broadcasts :ok if successful, :invalid otherwise. def call return broadcast(:invalid) if form.invalid? create_budget! broadcast(:ok, budget) end private attr_reader :form, :budget def create_budget! attributes = { component: form.current_component, scope: form.scope, title: form.title, weight: form.weight, description: form.description, total_budget: form.total_budget } @budget = Decidim.traceability.create!( LausanneBudget, form.current_user, attributes, visibility: "all" ) end end end end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
decidim-lausanne-budgets-0.1.0 | app/commands/decidim/lausanne/budgets/admin/create_budget.rb |