app/services/manage_donation.rb
# frozen_string_literal: true
class ManageDonation
def self.create(params:, extra_params: {})
page = Page.find(params[:page_id])
akit_donation_page_id = page.ak_donation_resource_uri.to_s.gsub(%r{/$}, '').split('/').last
source = params[:source] || 'website'
if page.petition_page? && akit_donation_page_id.present?
source = "post-action-#{akit_donation_page_id}-#{source}"
params[:source] = source
end
ManageAction.create(params, extra_params: { donation: true }.merge(extra_params.clone))
end
end