Skip to content

Instantly share code, notes, and snippets.

@gen1321
Forked from siraz-provectus/send file
Created January 26, 2018 17:05
Show Gist options
  • Save gen1321/07f676005884c849754b07a6c002ee0f to your computer and use it in GitHub Desktop.
Save gen1321/07f676005884c849754b07a6c002ee0f to your computer and use it in GitHub Desktop.
users-export.rb
module Exports
class UserExcelExport < ApplicationExcelExport
BATCH_SIZE = 500
private
def default_headers
{
name: "Имя",
email: 'email',
demi_link: 'cсылка с автологином (на Demi пост)',
dron_link: 'cсылка с автологином (на пост про дроны)',
unsubscribe: 'отписка'
}
end
def map_data(data)
auto_demi_link = ''
auto_dron_link = ''
unsubscribe_link = ''
base_url = Rails.application.config.action_mailer.asset_host + '/l/'
user = User.find_by(smartcore_id: data.id)
if user.present?
AutoLoginLink.generate_link(user: user, path_to: '/articles/demi', activity_code: 'demi') if user.auto_login_links.find_by(activity_code: "demi", used: false).blank?
AutoLoginLink.generate_link(user: user, path_to: '/articles/drons', activity_code: 'dron') if user.auto_login_links.find_by(activity_code: "dron", used: false).blank?
auto_demi_link = user.auto_login_links.find_by(activity_code: "demi", used: false).slug
auto_dron_link = user.auto_login_links.find_by(activity_code: "dron", used: false).slug
# token = Digest::MD5.hexdigest(['5153dac4c1d6b45', data.email, '70f202b12972d09b9'].join(''))
# params = { email: data.email, token: token }
# unsubscribe_link = "#{base_url}/unsubscribe?#{params.to_query}"
end
demi_link = base_url + auto_demi_link
dron_link = base_url + auto_dron_link
{
name: "#{data.first_name} #{data.last_name}",
email: data.email,
demi_link: demi_link,
dron_link: dron_link,
unsubscribe: unsubscribe_link
}
end
end
end
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment