Sha256: d9911db3c5ff497f41b63ac790d347d4fb6c8e58398ec6be8585d9e976af250d

Contents?: true

Size: 1.08 KB

Versions: 26

Compression:

Stored size: 1.08 KB

Contents

begin
  # First check if algolia config is set as an env variable. If so, use it.
  # Otherwise try to load algolia.yml from the config directory.
  if ENV['ALGOLIA_CONFIG']
    ALGOLIA_CONFIG = YAML.safe_load(ENV['ALGOLIA_CONFIG'])
  else
    ALGOLIA_CONFIG = YAML.load_file("#{Rails.configuration.docs_base_path}/config/algolia.yml")
  end
rescue Errno::ENOENT
  Rails.logger.info('No Algolia config found. Search is now disabled')
end

if defined?(ALGOLIA_CONFIG) && ENV['ALGOLIA_SEARCH_KEY']
  filters = ALGOLIA_CONFIG.flat_map do |_, config|
    next unless config && config['filters']

    config['filters'].flat_map do |facet, values|
      values.map { |value| "#{facet}: #{value}" }
    end
  end

  algolia_search_parameters = {
    filters: filters.compact.join(' AND NOT ').prepend('NOT '),
    attributesToSnippet: ['body', 'body_safe', 'description', 'title'],
  }

  ALGOLIA_SECURED_SEARCH_KEY = Algolia.generate_secured_api_key(ENV['ALGOLIA_SEARCH_KEY'], algolia_search_parameters)

  Algolia.init(application_id: ENV['ALGOLIA_APPLICATION_ID'], api_key: ALGOLIA_SECURED_SEARCH_KEY)
end

Version data entries

26 entries across 26 versions & 1 rubygems

Version Path
station-0.5.16 lib/nexmo_developer/config/initializers/algolia.rb
station-0.5.15 lib/nexmo_developer/config/initializers/algolia.rb
station-0.5.14 lib/nexmo_developer/config/initializers/algolia.rb
station-0.5.13 lib/nexmo_developer/config/initializers/algolia.rb
station-0.5.12 lib/nexmo_developer/config/initializers/algolia.rb
station-0.5.11 lib/nexmo_developer/config/initializers/algolia.rb
station-0.5.10 lib/nexmo_developer/config/initializers/algolia.rb
station-0.5.9 lib/nexmo_developer/config/initializers/algolia.rb
station-0.5.8 lib/nexmo_developer/config/initializers/algolia.rb
station-0.5.7 lib/nexmo_developer/config/initializers/algolia.rb
station-0.5.6 lib/nexmo_developer/config/initializers/algolia.rb
station-0.5.5 lib/nexmo_developer/config/initializers/algolia.rb
station-0.5.4 lib/nexmo_developer/config/initializers/algolia.rb
station-0.5.3 lib/nexmo_developer/config/initializers/algolia.rb
station-0.5.2 lib/nexmo_developer/config/initializers/algolia.rb
station-0.5.1 lib/nexmo_developer/config/initializers/algolia.rb
station-0.5.0 lib/nexmo_developer/config/initializers/algolia.rb
station-0.4.9 lib/nexmo_developer/config/initializers/algolia.rb
station-0.4.8 lib/nexmo_developer/config/initializers/algolia.rb
station-0.4.7 lib/nexmo_developer/config/initializers/algolia.rb