ESheahan/espolea

View on GitHub
app/controllers/application_controller.rb

Summary

Maintainability
A
0 mins
Test Coverage
class ApplicationController < ActionController::Base
  # Prevent CSRF attacks by raising an exception.
  # For APIs, you may want to use :null_session instead.
  protect_from_forgery with: :exception
  
  before_action :set_locale
  before_action :configure_permitted_parameters, if: :devise_controller?
  
  def set_locale
    I18n.locale = session[:locale] || 'en'
  end
  
  def after_sign_in_path_for(resource)
      "/profile/#{current_user().id}"
  end
  
  def set_english
    session[:locale] = 'en'
    I18n.locale = 'en'
    the_redirect = (request.referer or "/")
    redirect_to the_redirect
  end  
  
  def set_spanish
    session[:locale] = 'es'
    I18n.locale = 'es'
    the_redirect = (request.referer or "/")
    redirect_to the_redirect
  end 
  
  # def default_url_options(options = {})
  #   { locale: I18n.locale }.merge options
  # end
  
  def configure_permitted_parameters
   devise_parameter_sanitizer.for(:sign_up) do |u|
     u.permit(:first_name, :last_name, :gender, :birthdate, :email, :password, :password_confirmation)
   end
    devise_parameter_sanitizer.for(:edit) do |u|
      u.permit(:first_name, :last_name, :gender, :birthdate, :email, :password, :password_confirmation, :current_password)
   end
  end
end