1
0
mirror of https://github.com/LaCasemate/fab-manager.git synced 2024-11-28 09:24:24 +01:00
fab-manager/config/application.rb
2024-11-13 11:44:45 +01:00

94 lines
3.3 KiB
Ruby

# frozen_string_literal: true
require_relative 'boot'
require 'csv'
require 'active_record/railtie'
require 'active_storage/engine'
require 'action_controller/railtie'
require 'action_view/railtie'
require 'action_mailer/railtie'
require 'active_job/railtie'
# require 'action_cable/engine'
require 'rails/test_unit/railtie'
# require 'sprockets/railtie'
require 'elasticsearch/rails/instrumentation'
require 'elasticsearch/persistence/model'
# Require the gems listed in Gemfile, including any gems
# you've limited to :test, :development, or :production.
Bundler.require(*Rails.groups)
# module declaration
module FabManager; end
# Fab-Manager is the FabLab management solution. It provides a comprehensive, web-based, open-source tool to simplify your
# administrative tasks and your marker's projects.
class FabManager::Application < Rails::Application
require 'fab_manager'
# Initialize configuration defaults for originally generated Rails version.
config.load_defaults 7.0
config.active_support.cache_format_version = 7.0
config.active_record.verify_foreign_keys_for_fixtures = false
# prevent this new behavior with rails >= 5.0
# see https://edgeguides.rubyonrails.org/upgrading_ruby_on_rails.html#active-record-belongs-to-required-by-default-option
config.active_record.belongs_to_required_by_default = false
config.active_record.schema_format = :sql
config.active_record.yaml_column_permitted_classes = [Symbol, Date, Time]
# Settings in config/environments/* take precedence over those specified here.
# Application configuration should go into files in config/initializers
# -- all .rb files in that directory are automatically loaded.
# Set Time.zone default to the specified zone and make Active Record auto-convert to this zone.
# Run "rake -D time" for a list of tasks for finding time zone names. Default is UTC.
config.time_zone = Rails.application.secrets.time_zone
config.to_prepare do
Devise::Mailer.layout 'notifications_mailer'
end
config.active_job.queue_adapter = :sidekiq
config.generators do |g|
g.orm :active_record
g.test_framework :mini_test
end
# load locales for subdirectories
config.i18n.load_path += Dir[Rails.root.join('config/locales/**/*.yml').to_s]
# enable the app to find locales in plugins locales directory
config.i18n.load_path += Dir[Rails.root.join('plugins/*/config/locales/*.yml').to_s]
# Enable locale fallbacks for I18n (makes lookups for any locale fall back to
# the I18n.default_locale when a translation cannot be found).
config.i18n.fallbacks = true
# enable the app to find views in plugins views directory
Dir[Rails.root.join('plugins/*/views').to_s].each do |path|
Rails.application.config.paths['app/views'] << path
end
# disable ANSI color escape codes in active_record if NO_COLOR is defined.
config.colorize_logging = ENV['NO_COLOR'] ? false : true
require 'provider_config'
config.auth_provider = ProviderConfig.new
FabManager.activate_plugins!
config.action_view.sanitized_allowed_tags = %w[a acronym hr pre table b strong i em li ul ol h1 h2 h3 h4 h5 h6 blockquote br cite sub sup ins p
image iframe style]
config.after_initialize do
plugins = FabManager.plugins
plugins&.each(&:notify_after_initialize)
require 'version'
Version.check
end
end