Commit da1968e4352a8ce4628b75c2872f8e84430e0587
1 parent
486d7513
Exists in
ratings_minor_fixes
and in
4 other branches
Cleanup initialization
Showing
8 changed files
with
55 additions
and
87 deletions
Show diff stats
app/models/application_record.rb
1 | class ApplicationRecord < ActiveRecord::Base | 1 | class ApplicationRecord < ActiveRecord::Base |
2 | 2 | ||
3 | - self.abstract_class = true | ||
4 | - | 3 | + self.abstract_class = true |
4 | + self.store_full_sti_class = true | ||
5 | 5 | ||
6 | # an ActionView instance for rendering views on models | 6 | # an ActionView instance for rendering views on models |
7 | def self.action_view | 7 | def self.action_view |
config/application.rb
1 | -require File.expand_path('../boot', __FILE__) | 1 | +require_relative 'boot' |
2 | 2 | ||
3 | require 'rails/all' | 3 | require 'rails/all' |
4 | require 'active_support/dependencies' | 4 | require 'active_support/dependencies' |
5 | 5 | ||
6 | -# FIXME this silences the warnings about Rails 2.3-style plugins under | ||
7 | -# vendor/plugins, which are deprecated. Hiding those warnings makes it easier | ||
8 | -# to work for now, but we should really look at putting those plugins away. | 6 | +# Silence Rails 5 deprecation warnings |
9 | ActiveSupport::Deprecation.silenced = true | 7 | ActiveSupport::Deprecation.silenced = true |
10 | 8 | ||
11 | Bundler.require(:default, :assets, Rails.env) | 9 | Bundler.require(:default, :assets, Rails.env) |
10 | +$: << File.expand_path('../lib', File.dirname(__FILE__)) | ||
11 | + | ||
12 | +require_dependency 'noosfero' | ||
13 | +require_dependency 'noosfero/plugin' | ||
14 | +require_dependency 'noosfero/multi_tenancy' | ||
12 | 15 | ||
13 | module Noosfero | 16 | module Noosfero |
14 | class Application < Rails::Application | 17 | class Application < Rails::Application |
15 | 18 | ||
16 | - require 'noosfero/plugin' | ||
17 | - | ||
18 | # The plugin xss_terminator(located in vendor/plugins/xss_terminator) and the helper | 19 | # The plugin xss_terminator(located in vendor/plugins/xss_terminator) and the helper |
19 | # SanitizeHelper(located in app/helpers/sanitize_helper.rb) use | 20 | # SanitizeHelper(located in app/helpers/sanitize_helper.rb) use |
20 | # ALLOWED_TAGS and ALLOWED_ATTRIBUTES to make a sanitize with html. | 21 | # ALLOWED_TAGS and ALLOWED_ATTRIBUTES to make a sanitize with html. |
@@ -30,9 +31,6 @@ module Noosfero | @@ -30,9 +31,6 @@ module Noosfero | ||
30 | config.action_view.sanitized_allowed_tags = ALLOWED_TAGS | 31 | config.action_view.sanitized_allowed_tags = ALLOWED_TAGS |
31 | config.action_view.sanitized_allowed_attributes = ALLOWED_ATTRIBUTES | 32 | config.action_view.sanitized_allowed_attributes = ALLOWED_ATTRIBUTES |
32 | 33 | ||
33 | - require 'noosfero/multi_tenancy' | ||
34 | - config.middleware.use Noosfero::MultiTenancy::Middleware | ||
35 | - | ||
36 | config.action_controller.include_all_helpers = false | 34 | config.action_controller.include_all_helpers = false |
37 | 35 | ||
38 | # Settings in config/environments/* take precedence over those specified here. | 36 | # Settings in config/environments/* take precedence over those specified here. |
@@ -40,10 +38,11 @@ module Noosfero | @@ -40,10 +38,11 @@ module Noosfero | ||
40 | # -- all .rb files in that directory are automatically loaded. | 38 | # -- all .rb files in that directory are automatically loaded. |
41 | 39 | ||
42 | # Custom directories with classes and modules you want to be autoloadable. | 40 | # Custom directories with classes and modules you want to be autoloadable. |
43 | - config.autoload_paths += %W( #{config.root.join('app', 'sweepers')} ) | ||
44 | - config.autoload_paths += Dir["#{config.root}/lib"] | ||
45 | - config.autoload_paths += Dir["#{config.root}/app/controllers/**/"] | ||
46 | - config.autoload_paths += %W( #{config.root.join('test', 'mocks', Rails.env)} ) | 41 | + config.autoload_paths << config.root.join('lib') |
42 | + config.autoload_paths << config.root.join('app/jobs') | ||
43 | + config.autoload_paths << config.root.join('app/sweepers') | ||
44 | + config.autoload_paths.concat Dir["#{config.root}/app/controllers/**/"] | ||
45 | + config.autoload_paths << config.root.join('test', 'mocks', Rails.env) | ||
47 | 46 | ||
48 | # Only load the plugins named here, in the order given (default is alphabetical). | 47 | # Only load the plugins named here, in the order given (default is alphabetical). |
49 | # :all can be used as a placeholder for all plugins not explicitly named. | 48 | # :all can be used as a placeholder for all plugins not explicitly named. |
@@ -119,7 +118,8 @@ module Noosfero | @@ -119,7 +118,8 @@ module Noosfero | ||
119 | 118 | ||
120 | config.eager_load = true | 119 | config.eager_load = true |
121 | 120 | ||
122 | - Noosfero::Plugin.setup(config) | 121 | + config.middleware.use Noosfero::MultiTenancy::Middleware |
123 | 122 | ||
123 | + Noosfero::Plugin.setup(config) | ||
124 | end | 124 | end |
125 | end | 125 | end |
config/environment.rb
1 | -# Load the rails application | ||
2 | -require File.expand_path('../application', __FILE__) | 1 | +require_relative 'application' |
3 | 2 | ||
4 | -#FIXME Necessary hack to avoid the need of downgrading rubygems on rails 2.3.5 | ||
5 | -# http://stackoverflow.com/questions/5564251/uninitialized-constant-activesupportdependenciesmutex | ||
6 | -require 'thread' | ||
7 | - | ||
8 | -# Uncomment below to force Rails into production mode when | ||
9 | -# you don't control web/app server and can't set it the proper way | ||
10 | -#ENV['RAILS_ENV'] ||= 'production' | ||
11 | - | ||
12 | -# extra directories for controllers organization | ||
13 | -extra_controller_dirs = %w[ | ||
14 | -].map {|item| Rails.root.join(item) } | ||
15 | - | ||
16 | -# Add new inflection rules using the following format | ||
17 | -# (all these examples are active by default): | ||
18 | -# Inflector.inflections do |inflect| | ||
19 | -# inflect.plural /^(ox)$/i, '\1en' | ||
20 | -# inflect.singular /^(ox)en/i, '\1' | ||
21 | -# inflect.irregular 'person', 'people' | ||
22 | -# inflect.uncountable %w( fish sheep ) | ||
23 | -# end | ||
24 | - | ||
25 | -# Include your application configuration below | ||
26 | - | ||
27 | -ActiveRecord::Base.store_full_sti_class = true | ||
28 | - | ||
29 | -#FIXME: Probably act_as_taggable_on is not being loaded or this should be on another place | ||
30 | -#Tag.hierarchical = true | ||
31 | - | ||
32 | -# several local libraries | ||
33 | -require_dependency 'noosfero' | ||
34 | -#FIXME: error when call lib/sqlite_extention | ||
35 | -#require 'sqlite_extension' | 3 | +Noosfero::Application.initialize! |
36 | 4 | ||
37 | # load a local configuration if present, but not under test environment. | 5 | # load a local configuration if present, but not under test environment. |
38 | -if !['test', 'cucumber'].include?(ENV['RAILS_ENV']) | 6 | +if ENV['RAILS_ENV'].in? %w[test cucumber] |
39 | localconfigfile = Rails.root.join('config', 'local.rb') | 7 | localconfigfile = Rails.root.join('config', 'local.rb') |
40 | - if File.exists?(localconfigfile) | ||
41 | - require localconfigfile | ||
42 | - end | 8 | + require localconfigfile if File.exists? localconfigfile |
43 | end | 9 | end |
44 | 10 | ||
45 | -Noosfero::Application.initialize! |
@@ -0,0 +1,31 @@ | @@ -0,0 +1,31 @@ | ||
1 | +require 'pp' | ||
2 | + | ||
3 | +# third-party libraries | ||
4 | +require 'will_paginate' | ||
5 | +require 'will_paginate/array' | ||
6 | +require 'nokogiri' | ||
7 | + | ||
8 | +# dependencies at vendor, firstly loaded on Gemfile | ||
9 | +vendor = Dir.glob('vendor/{,plugins/}*') - ['vendor/plugins'] | ||
10 | +vendor.each do |dir| | ||
11 | + init_rb = "#{Rails.root}/#{dir}/init.rb" | ||
12 | + require init_rb if File.file? init_rb | ||
13 | +end | ||
14 | + | ||
15 | +# extensions | ||
16 | +require 'extensions' | ||
17 | + | ||
18 | +# locally-developed modules | ||
19 | +require 'acts_as_filesystem' | ||
20 | +require 'acts_as_having_settings' | ||
21 | +require 'acts_as_having_boxes' | ||
22 | +require 'acts_as_having_image' | ||
23 | +require 'acts_as_having_posts' | ||
24 | +require 'acts_as_customizable' | ||
25 | +require 'route_if' | ||
26 | +require 'maybe_add_http' | ||
27 | +require 'set_profile_region_from_city_state' | ||
28 | +require 'authenticated_system' | ||
29 | +require 'needs_profile' | ||
30 | +require 'white_list_filter' | ||
31 | + |
config/initializers/dependencies.rb
@@ -1,28 +0,0 @@ | @@ -1,28 +0,0 @@ | ||
1 | -require 'pp' | ||
2 | - | ||
3 | -# third-party libraries | ||
4 | -require 'will_paginate' | ||
5 | -require 'will_paginate/array' | ||
6 | -require 'nokogiri' | ||
7 | - | ||
8 | -# dependencies at vendor, firstly loaded on Gemfile | ||
9 | -vendor = Dir.glob('vendor/{,plugins/}*') - ['vendor/plugins'] | ||
10 | -vendor.each do |dir| | ||
11 | - init_rb = "#{Rails.root}/#{dir}/init.rb" | ||
12 | - require init_rb if File.file? init_rb | ||
13 | -end | ||
14 | - | ||
15 | -# locally-developed modules | ||
16 | -require 'acts_as_filesystem' | ||
17 | -require 'acts_as_having_settings' | ||
18 | -require 'acts_as_having_boxes' | ||
19 | -require 'acts_as_having_image' | ||
20 | -require 'acts_as_having_posts' | ||
21 | -require 'acts_as_customizable' | ||
22 | -require 'route_if' | ||
23 | -require 'maybe_add_http' | ||
24 | -require 'set_profile_region_from_city_state' | ||
25 | -require 'authenticated_system' | ||
26 | -require 'needs_profile' | ||
27 | -require 'white_list_filter' | ||
28 | - |
config/initializers/plugins.rb
@@ -5,3 +5,4 @@ require 'noosfero/plugin/mailer_base' | @@ -5,3 +5,4 @@ require 'noosfero/plugin/mailer_base' | ||
5 | require 'noosfero/plugin/settings' | 5 | require 'noosfero/plugin/settings' |
6 | require 'noosfero/plugin/spammable' | 6 | require 'noosfero/plugin/spammable' |
7 | Noosfero::Plugin.initialize! | 7 | Noosfero::Plugin.initialize! |
8 | + |
lib/noosfero.rb
1 | -# encoding: utf-8 | 1 | +require_relative 'noosfero/version' |
2 | +require_relative 'noosfero/constants' | ||
2 | 3 | ||
3 | module Noosfero | 4 | module Noosfero |
4 | 5 | ||
@@ -106,6 +107,3 @@ module Noosfero | @@ -106,6 +107,3 @@ module Noosfero | ||
106 | 107 | ||
107 | end | 108 | end |
108 | 109 | ||
109 | -require 'noosfero/version' | ||
110 | -require 'noosfero/constants' | ||
111 | -require 'noosfero/core_ext' |
lib/noosfero/multi_tenancy.rb