Sha256: 3ad1d17011d471b71b4c6066cdd55ffb7f7a75912a551d570fcae3d2f902000a
Contents?: true
Size: 808 Bytes
Versions: 15
Compression:
Stored size: 808 Bytes
Contents
# frozen_string_literal: true module Decidim class ExportJob < ApplicationJob queue_as :exports # rubocop:disable Metrics/ParameterLists def perform(user, component, name, format, resource_id = nil, filters = nil) export_manifest = component.manifest.export_manifests.find do |manifest| manifest.name == name.to_sym end collection = export_manifest.collection.call(component, user, resource_id) collection = collection.ransack(filters).result if collection.respond_to?(:ransack) && filters serializer = export_manifest.serializer export_data = Decidim::Exporters.find_exporter(format).new(collection, serializer).export ExportMailer.export(user, name, export_data).deliver_now end # rubocop:enable Metrics/ParameterLists end end
Version data entries
15 entries across 15 versions & 1 rubygems