gravier_app/app/controllers/public/registrants_controller.rb
2017-09-21 12:37:53 +02:00

56 lines
1.2 KiB
Ruby

# -*- encoding : utf-8 -*-
class Public::RegistrantsController < ApplicationController
layout "public"
def create
@registrant = Registrant.new(params.require(:registrant).permit(:surname, :email))
@registrant.provenance_id = cookies[:provenance_id] if cookies[:provenance_id]
@registrant.lang_site = @lang
test = Registrant.find_by_email(@registrant.email)
if test and !test.enabled
@registrant = test
General.confirm_email(@registrant).deliver
else
if @registrant.save
General.confirm_email(@registrant).deliver
else
render :action => :new
end
end
end
def destroy_e
@registrant = Registrant.find_by_token(params[:id])
if @registrant
@registrant.destroy
@message = "<p>Vous avez bien été désinscrit.</p>"
else
@message = "Votre adresse mail ne figure pas dans notre fichier."
end
end
def email_validation
@registrant = Registrant.find_by_token(params[:id])
if @registrant
@registrant.enabled = true
@registrant.save
@message = "<p>Merci, votre inscription a bien été prise en compte.</p> "
else
@message = "Votre adresse mail ne figure pas dans le fichier."
end
redirect_to "/"
end
end