app/forms/decidim/accountability/admin/result_form.rb in decidim-accountability-0.22.0 vs app/forms/decidim/accountability/admin/result_form.rb in decidim-accountability-0.23.0
- old
+ new
@@ -26,17 +26,17 @@
validates :title, translatable_presence: true
validates :progress, numericality: { greater_than_or_equal_to: 0, less_than_or_equal_to: 100 }, if: ->(form) { form.progress.present? }
validates :scope, presence: true, if: ->(form) { form.decidim_scope_id.present? }
+ validates :decidim_scope_id, scope_belongs_to_component: true, if: ->(form) { form.decidim_scope_id.present? }
+
validates :category, presence: true, if: ->(form) { form.decidim_category_id.present? }
validates :parent, presence: true, if: ->(form) { form.parent_id.present? }
validates :status, presence: true, if: ->(form) { form.decidim_accountability_status_id.present? }
- validate :scope_belongs_to_participatory_space_scope
-
delegate :categories, to: :current_component
def map_model(model)
self.proposal_ids = model.linked_resources(:proposals, "included_proposals").pluck(:id)
self.project_ids = model.linked_resources(:projects, "included_projects").pluck(:id)
@@ -57,11 +57,11 @@
# Finds the Scope from the given decidim_scope_id, uses participatory space scope if missing.
#
# Returns a Decidim::Scope
def scope
- @scope ||= @decidim_scope_id ? current_participatory_space.scopes.find_by(id: @decidim_scope_id) : current_participatory_space.scope
+ @scope ||= @decidim_scope_id ? current_component.scopes.find_by(id: @decidim_scope_id) : current_component.scope
end
# Scope identifier
#
# Returns the scope identifier related to the result
@@ -77,15 +77,9 @@
@parent ||= Decidim::Accountability::Result.find_by(component: current_component, id: parent_id)
end
def status
@status ||= Decidim::Accountability::Status.find_by(component: current_component, id: decidim_accountability_status_id)
- end
-
- private
-
- def scope_belongs_to_participatory_space_scope
- errors.add(:decidim_scope_id, :invalid) if current_participatory_space.out_of_scope?(scope)
end
end
end
end
end