Sha256: 4f74b4d010202026b82c31f52e4f7f9ee53abff647afc437a7e03a24152d822d

Contents?: true

Size: 1.06 KB

Versions: 6

Compression:

Stored size: 1.06 KB

Contents

module PrimeNumberGenerator
  class ApplicationController < ActionController::Base
    
    protect_from_forgery with: :exception
    before_filter :set_locale

    def set_locale
      locale = extract_locale_from_accept_language_header
      I18n.locale =
        if locale_valid?(locale)
          locale
        else
          :en
      	end
  	end

  	def extract_locale_from_accept_language_header
      @employee ||= Java::HarbingerSdkData::Employee.withUserName(session[:username], @entity_manager)
      query = Java::HarbingerSdkData::EmployeeDemo.createQuery(@entity_manager)
      query_where = query.equal({".employeeId" => @employee.id, ".demographicType.demographicType" => 'language' })
      result = query.where(query_where).join(".demographicType").select([".demographicType.demographicType", ".demographic"]).list.first.to_a
      result[1].downcase if result.any? # check result empty array or not (if user language is not there in DB empty array)
  	end

  	def locale_valid?(locale)
    	I18n.available_locales.map(&:to_s).include?(locale)
  	end
  end	
end

Version data entries

6 entries across 6 versions & 1 rubygems

Version Path
prime_number_generator-0.0.8 app/controllers/prime_number_generator/application_controller.rb
prime_number_generator-0.0.7 app/controllers/prime_number_generator/application_controller.rb
prime_number_generator-0.0.6 app/controllers/prime_number_generator/application_controller.rb
prime_number_generator-0.0.5 app/controllers/prime_number_generator/application_controller.rb
prime_number_generator-0.0.4 app/controllers/prime_number_generator/application_controller.rb
prime_number_generator-0.0.3 app/controllers/prime_number_generator/application_controller.rb