* VRFS-3261 add link to let sendgrid pull our users email info down for emailing out good unsubscribe links

This commit is contained in:
Seth Call 2015-06-10 15:14:15 -05:00
parent 0dbbfc0ee7
commit 622f750b2d
4 changed files with 26 additions and 0 deletions

View File

@ -0,0 +1,20 @@
require 'csv'
class EmailController < ApplicationController
respond_to :csv
def dump_emailables
if params[:code] != Rails.application.config.email_dump_code
render :text => "", :status => 404
return
end
headers['Content-Disposition'] = "attachment; filename=\"user-list.csv\""
headers['Content-Type'] ||= 'text/csv'
@users = User.all
end
end

View File

@ -0,0 +1,2 @@
<%- headers = ['email', 'name', 'unsubscribe_token'] -%>
<%= CSV.generate_line headers %><%- @users.each do |user| -%><%= CSV.generate_line([user.email, user.name, user.unsubscribe_token]) %><%- end -%>

View File

@ -151,5 +151,7 @@ module JamAdmin
config.jamtracks_dir = ENV['JAMTRACKS_DIR'] || File.expand_path(File.join(File.dirname(__FILE__), "..", "..", "..", "jamtracks"))
config.jmep_dir = ENV['JMEP_DIR'] || File.expand_path(File.join(File.dirname(__FILE__), "..", "..", "..", "jmep"))
config.email_dump_code = 'rcAUyC3TZCbgGx4YQpznBRbNnQMXW5iKTzf9NSBfzMLsnw9dRQ'
end
end

View File

@ -34,6 +34,8 @@ JamAdmin::Application.routes.draw do
match '/api/mix/:id/enqueue' => 'admin/mixes#mix_again', :via => :post
match '/api/checks/latency_tester' => 'checks#check_latency_tester', :via => :get
match '/api/users/emailables/:code' => 'email#dump_emailables', :via => :get
mount Resque::Server.new, :at => "/resque"