Files
ch420/app/controllers/supporters_controller.rb
T

35 lines
1.1 KiB
Ruby
Raw Normal View History

2015-10-03 06:38:11 +02:00
class SupportersController < ApplicationController
2015-10-06 09:16:07 +02:00
before_filter :set_form_timestamp, only: :new
2015-10-03 06:38:11 +02:00
def new
@supporter = Supporter.new
end
2015-10-05 12:40:08 +02:00
def create
2015-11-09 10:33:26 +01:00
@supporter = Supporter.new supporter_form_params.merge(language: I18n.locale)
@supporter.password = random_password = SecureRandom.hex(5)
2015-10-06 09:16:07 +02:00
if !input_to_fast? && @supporter.save
SupporterMailer.welcome_email(@supporter, random_password).deliver_now
2017-04-18 14:41:35 +02:00
sendy_registraion
2015-10-05 12:40:08 +02:00
redirect_to thanks_path
else
2017-02-26 18:18:37 +01:00
flash.now[:danger] = input_to_fast? ? t('.timeout') : t('input_error')
2015-10-05 12:40:08 +02:00
render :new
end
end
private
def supporter_form_params
2016-03-29 21:57:14 +02:00
params.require(:supporter).permit(:first_name, :last_name, :street, :zip, :email, :support, :li_membership, :age_category, :city, :comments)
2015-10-05 12:40:08 +02:00
end
2016-11-15 10:05:53 +01:00
2017-04-18 14:41:35 +02:00
# We use sendy for newsletters atm
def sendy_registraion
uri = URI('http://newsletter.cannabis-initiative.ch/subscribe')
Net::HTTP.post_form(uri, list: ENV["SENDY_LIST_#{I18n.locale.upcase}"],
email: @supporter.email,
name: "#{@supporter.first_name} #{@supporter.last_name}")
2016-11-15 10:05:53 +01:00
end
2015-10-03 06:38:11 +02:00
end