Sha256: f36ababd7ad40eae9776c4d0fc28d72a8becd43e013b5b595522782ceee796cb
Contents?: true
Size: 1.46 KB
Versions: 6
Compression:
Stored size: 1.46 KB
Contents
# frozen_string_literal: true module Decidim module MultipleAttachmentsMethods private def build_attachments @documents = [] @form.add_documents.each do |file| @documents << Attachment.new( title: { I18n.locale => file.original_filename }, attached_to: @attached_to || documents_attached_to, file: file ) end end def attachments_invalid? @documents.each do |document| next if document.valid? || !document.errors.has_key?(:file) document.errors[:file].each do |error| @form.errors.add(:add_documents, error) end return true end false end def create_attachments @documents.map! do |document| document.attached_to = documents_attached_to document.save! @form.documents << document end end def document_cleanup! documents_attached_to.documents.each do |document| document.destroy! if @form.documents.map(&:id).exclude? document.id end documents_attached_to.reload documents_attached_to.instance_variable_set(:@documents, nil) end def process_attachments? @form.add_documents.any? end def documents_attached_to return @attached_to if @attached_to.present? return form.current_organization if form.respond_to?(:current_organization) form.current_component.organization if form.respond_to?(:current_component) end end end
Version data entries
6 entries across 6 versions & 1 rubygems