Skip to content
Snippets Groups Projects
application.rb 2.83 KiB
Newer Older
Arnaud Levy's avatar
Arnaud Levy committed
require_relative "boot"

require "rails"
# Pick the frameworks you want:
require "active_model/railtie"
require "active_job/railtie"
require "active_record/railtie"
require "active_storage/engine"
require "action_controller/railtie"
require "action_mailer/railtie"
Sébastien Gaya's avatar
Sébastien Gaya committed
# require "action_mailbox/engine"
Arnaud Levy's avatar
Arnaud Levy committed
require "action_view/railtie"
# require "action_cable/engine"
require "sprockets/railtie"
require "rails/test_unit/railtie"

# Require the gems listed in Gemfile, including any gems
# you've limited to :test, :development, or :production.
Bundler.require(*Rails.groups)

module Osuny
  class Application < Rails::Application
Sébastien Gaya's avatar
Sébastien Gaya committed
    # Initialize configuration defaults for originally generated Rails version.
    config.load_defaults 7.1
Arnaud Levy's avatar
Arnaud Levy committed

Sébastien Gaya's avatar
Sébastien Gaya committed
    # Please, add to the `ignore` list any other `lib` subdirectories that do
    # not contain `.rb` files, or that should not be reloaded or eager loaded.
    # Common ones are `templates`, `generators`, or `middleware`, for example.
    config.autoload_lib(ignore: %w(assets tasks templates))

    config.active_support.cache_format_version = 7.1

Arnaud Levy's avatar
Arnaud Levy committed
    config.time_zone = 'Europe/Paris'

    config.active_job.queue_adapter = :delayed_job

    config.active_storage.service_urls_expire_in = 1.hour
Sébastien Gaya's avatar
Sébastien Gaya committed
    config.active_storage.variant_processor = :mini_magick
Arnaud Levy's avatar
Arnaud Levy committed

    config.sass.preferred_syntax = :sass

Arnaud Levy's avatar
Arnaud Levy committed
    config.i18n.available_locales = [:fr, :en]
Arnaud Levy's avatar
Arnaud Levy committed
    config.i18n.default_locale = :fr
Sébastien Gaya's avatar
Sébastien Gaya committed
    config.i18n.fallbacks = [::I18n.default_locale]
    config.i18n.enforce_available_locales = false
Arnaud Levy's avatar
Arnaud Levy committed
    config.i18n.load_path += Dir["#{Rails.root.to_s}/config/locales/**/*.yml"]
Arnaud Levy's avatar
Arnaud Levy committed

Sébastien Gaya's avatar
Sébastien Gaya committed
    config.internal_domains = ['@noesya.coop'].freeze

    config.action_mailer.delivery_method = :smtp
    config.action_mailer.smtp_settings = {
pabois's avatar
pabois committed
        address: "smtp-relay.brevo.com",
Sébastien Gaya's avatar
Sébastien Gaya committed
        port: 587,
        user_name: ENV['SMTP_USER'],
        password: ENV['SMTP_PASSWORD'],
        authentication: :plain
    }

Sébastien Gaya's avatar
Sébastien Gaya committed
    # Need for +repage, because of https://github.com/rails/rails/commit/b2ab8dd3a4a184f3115e72b55c237c7b66405bd9
    config.active_storage.supported_image_processing_methods = ["+"]

    # TEMP TODO: Corriger le problème des nbsp avec le sanitizer HTML5
    config.action_view.sanitizer_vendor = Rails::HTML4::Sanitizer
    config.action_view.sanitized_allowed_tags = [
Arnaud Levy's avatar
Arnaud Levy committed
      "a", "b", "br", "em", "i", "img", "li", "ol", "p", "strong", "sub", "sup", "ul"
    ]
    config.action_view.sanitized_allowed_attributes = [
Arnaud Levy's avatar
Arnaud Levy committed
      "href", "target", "title"
pabois's avatar
pabois committed

pabois's avatar
pabois committed
    config.allowed_special_chars = '#?!,_@$%^&*+:;£µ-'
pabois's avatar
pabois committed
    config.default_file_max_size = 100.megabytes
    config.default_image_max_size = 5.megabytes
    config.default_images_formats = ['.jpg', '.jpeg', '.png', '.svg']
pabois's avatar
pabois committed
    config.default_audio_formats = ['.mp3']
pabois's avatar
pabois committed

Arnaud Levy's avatar
Arnaud Levy committed
    config.generators do |g|
      g.orm :active_record, primary_key_type: :uuid
    end
  end
end