Class: Decidim::Proposals::Admin::ProposalsImportForm

Inherits:
Form
  • Object
show all
Includes:
TranslatableAttributes
Defined in:
app/forms/decidim/proposals/admin/proposals_import_form.rb

Overview

A form object to be used when admin users want to import a collection of proposals from another component.

Instance Method Summary collapse

Instance Method Details

#origin_componentObject



38
39
40
# File 'app/forms/decidim/proposals/admin/proposals_import_form.rb', line 38

def origin_component
  @origin_component ||= origin_components.find_by(id: origin_component_id)
end

#origin_componentsObject



42
43
44
# File 'app/forms/decidim/proposals/admin/proposals_import_form.rb', line 42

def origin_components
  @origin_components ||= current_participatory_space.components.where.not(id: current_component.id).where(manifest_name: :proposals)
end

#origin_components_collectionObject



46
47
48
49
50
# File 'app/forms/decidim/proposals/admin/proposals_import_form.rb', line 46

def origin_components_collection
  origin_components.map do |component|
    [component.name[I18n.locale.to_s], component.id]
  end
end

#scopesObject



34
35
36
# File 'app/forms/decidim/proposals/admin/proposals_import_form.rb', line 34

def scopes
  Decidim::Scope.where(organization: current_organization, id: scope_ids)
end

#statesObject



30
31
32
# File 'app/forms/decidim/proposals/admin/proposals_import_form.rb', line 30

def states
  super.compact_blank
end

#states_collectionObject



23
24
25
26
27
28
# File 'app/forms/decidim/proposals/admin/proposals_import_form.rb', line 23

def states_collection
  @states_collection ||= ProposalState.where(component: current_component) + [ProposalState.new(token: "not_answered",
                                                                                                title: I18n.t(
                                                                                                  :not_answered, scope: "decidim.proposals.answers"
                                                                                                ))]
end