]> cat aescling's git repositories - mastodon.git/blob - config/application.rb
Use more robust hook for loading timestamp_id function into database (#15919)
[mastodon.git] / config / application.rb
1 require_relative 'boot'
2
3 require 'rails/all'
4
5 # Require the gems listed in Gemfile, including any gems
6 # you've limited to :test, :development, or :production.
7 Bundler.require(*Rails.groups)
8
9 require_relative '../lib/exceptions'
10 require_relative '../lib/enumerable'
11 require_relative '../lib/sanitize_ext/sanitize_config'
12 require_relative '../lib/redis/namespace_extensions'
13 require_relative '../lib/paperclip/url_generator_extensions'
14 require_relative '../lib/paperclip/attachment_extensions'
15 require_relative '../lib/paperclip/media_type_spoof_detector_extensions'
16 require_relative '../lib/paperclip/transcoder_extensions'
17 require_relative '../lib/paperclip/lazy_thumbnail'
18 require_relative '../lib/paperclip/gif_transcoder'
19 require_relative '../lib/paperclip/video_transcoder'
20 require_relative '../lib/paperclip/type_corrector'
21 require_relative '../lib/paperclip/response_with_limit_adapter'
22 require_relative '../lib/mastodon/snowflake'
23 require_relative '../lib/mastodon/version'
24 require_relative '../lib/devise/two_factor_ldap_authenticatable'
25 require_relative '../lib/devise/two_factor_pam_authenticatable'
26 require_relative '../lib/chewy/strategy/custom_sidekiq'
27 require_relative '../lib/webpacker/manifest_extensions'
28 require_relative '../lib/webpacker/helper_extensions'
29 require_relative '../lib/action_dispatch/cookie_jar_extensions'
30 require_relative '../lib/rails/engine_extensions'
31 require_relative '../lib/active_record/database_tasks_extensions'
32
33 Dotenv::Railtie.load
34
35 Bundler.require(:pam_authentication) if ENV['PAM_ENABLED'] == 'true'
36
37 require_relative '../lib/mastodon/redis_config'
38
39 module Mastodon
40 class Application < Rails::Application
41 # Initialize configuration defaults for originally generated Rails version.
42 config.load_defaults 5.2
43
44 # Settings in config/environments/* take precedence over those specified here.
45 # Application configuration should go into files in config/initializers
46 # -- all .rb files in that directory are automatically loaded.
47
48 # Set Time.zone default to the specified zone and make Active Record auto-convert to this zone.
49 # Run "rake -D time" for a list of tasks for finding time zone names. Default is UTC.
50 # config.time_zone = 'Central Time (US & Canada)'
51
52 # All translations from config/locales/*.rb,yml are auto loaded.
53 # config.i18n.load_path += Dir[Rails.root.join('my', 'locales', '*.{rb,yml}').to_s]
54 config.i18n.available_locales = [
55 :ar,
56 :ast,
57 :bg,
58 :bn,
59 :br,
60 :ca,
61 :co,
62 :cs,
63 :cy,
64 :da,
65 :de,
66 :el,
67 :en,
68 :eo,
69 :es,
70 :'es-AR',
71 :et,
72 :eu,
73 :fa,
74 :fi,
75 :fr,
76 :ga,
77 :gl,
78 :he,
79 :hi,
80 :hr,
81 :hu,
82 :hy,
83 :id,
84 :io,
85 :is,
86 :it,
87 :ja,
88 :ka,
89 :kab,
90 :kk,
91 :kn,
92 :ko,
93 :ku,
94 :lt,
95 :lv,
96 :mk,
97 :ml,
98 :mr,
99 :ms,
100 :nl,
101 :nn,
102 :no,
103 :oc,
104 :pl,
105 :'pt-BR',
106 :'pt-PT',
107 :ro,
108 :ru,
109 :sa,
110 :sc,
111 :sk,
112 :sl,
113 :sq,
114 :sr,
115 :'sr-Latn',
116 :sv,
117 :ta,
118 :te,
119 :th,
120 :tr,
121 :uk,
122 :ur,
123 :vi,
124 :zgh,
125 :'zh-CN',
126 :'zh-HK',
127 :'zh-TW',
128 ]
129
130 config.i18n.default_locale = ENV['DEFAULT_LOCALE']&.to_sym
131
132 unless config.i18n.available_locales.include?(config.i18n.default_locale)
133 config.i18n.default_locale = :en
134 end
135
136 # config.paths.add File.join('app', 'api'), glob: File.join('**', '*.rb')
137 # config.autoload_paths += Dir[Rails.root.join('app', 'api', '*')]
138
139 config.active_job.queue_adapter = :sidekiq
140
141 config.middleware.use Rack::Attack
142 config.middleware.use Rack::Deflater
143
144 config.to_prepare do
145 Doorkeeper::AuthorizationsController.layout 'modal'
146 Doorkeeper::AuthorizedApplicationsController.layout 'admin'
147 Doorkeeper::Application.send :include, ApplicationExtension
148 Doorkeeper::AccessToken.send :include, AccessTokenExtension
149 Devise::FailureApp.send :include, AbstractController::Callbacks
150 Devise::FailureApp.send :include, HttpAcceptLanguage::EasyAccess
151 Devise::FailureApp.send :include, Localized
152 end
153 end
154 end
This page took 0.129806 seconds and 5 git commands to generate.