diff --git a/Gemfile b/Gemfile index f79350d7c..706ddd566 100644 --- a/Gemfile +++ b/Gemfile @@ -1,10 +1,14 @@ source 'https://rubygems.org' gem 'rails', '4.0.3' -gem 'redhillonrails_core', git: 'git://github.com/rosa-abf/redhillonrails_core.git', branch: 'rails31' # '~> 2.0.0.pre' # deprecated +gem 'rails-observers' +#gem 'redhillonrails_core', git: 'git://github.com/rosa-abf/redhillonrails_core.git', branch: 'rails31' # '~> 2.0.0.pre' # deprecated gem 'pg', '~> 0.17.1' - +gem 'schema_plus', '~> 1.4.0' +######## +gem 'protected_attributes' +######## gem 'devise', '~> 3.2.3' gem 'omniauth' gem 'omniauth-facebook' @@ -32,7 +36,7 @@ gem 'github-linguist', '~> 2.10', require: 'linguist' gem 'diff-display', '~> 0.0.1' # Wiki -gem "gollum", '~> 2.7.0' +gem "gollum-lib", '~> 2.0' gem "redcarpet", '~> 3.1.1' gem 'creole' gem 'rdiscount' diff --git a/Gemfile.lock b/Gemfile.lock index 90bc627e8..ab0debe83 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -23,14 +23,6 @@ GIT mime-types (~> 1.15) posix-spawn (~> 0.3.6) -GIT - remote: git://github.com/rosa-abf/redhillonrails_core.git - revision: c0945a4c6ad4bae4ca2750b105efcff162408b15 - branch: rails31 - specs: - redhillonrails_core (2.0.0.pre) - activerecord (>= 3.1.0.rc) - GEM remote: https://rubygems.org/ specs: @@ -149,7 +141,6 @@ GEM escape_utils (>= 0.3.1) mime-types (~> 1.19) pygments.rb (~> 0.5.4) - github-markdown (0.5.5) github-markup (0.7.5) gitlab-grit (2.6.0) charlock_holmes (~> 0.6.9) @@ -157,12 +148,6 @@ GEM mime-types (~> 1.15) posix-spawn (~> 0.3.6) gli (2.9.0) - gollum (2.7.0) - github-markdown (~> 0.5.5) - gollum-lib (~> 2.0) - mustache (>= 0.99.4, < 1.0.0) - sinatra (~> 1.4, >= 1.4.3) - useragent (~> 0.8.2) gollum-lib (2.0.0) github-markup (>= 0.7.5, < 1.0.0) gitlab-grit (= 2.6.0) @@ -231,7 +216,6 @@ GEM multi_json (1.8.4) multi_xml (0.5.5) multipart-post (2.0.0) - mustache (0.99.5) nest (1.1.2) redis net-scp (1.1.2) @@ -282,6 +266,8 @@ GEM pg (0.17.1) polyglot (0.3.4) posix-spawn (0.3.8) + protected_attributes (1.0.5) + activemodel (>= 4.0.1, < 5.0) puma (2.7.1) rack (>= 1.1, < 2.0) pygments.rb (0.5.4) @@ -304,6 +290,8 @@ GEM bundler (>= 1.3.0, < 2.0) railties (= 4.0.3) sprockets-rails (~> 2.0.0) + rails-observers (0.1.2) + activemodel (~> 4.0) rails3-generators (1.0.0) railties (>= 3.0.0) rails3-jquery-autocomplete (1.0.12) @@ -382,6 +370,9 @@ GEM railties (>= 4.0.0, < 5.0) sass (>= 3.1.10) sprockets-rails (~> 2.0.0) + schema_plus (1.4.0) + rails (>= 3.2) + valuable scrivener (0.0.3) shotgun (0.9) rack (>= 1.0) @@ -434,7 +425,7 @@ GEM execjs (>= 0.3.0) json (>= 1.8.0) underscore-rails (1.5.2) - useragent (0.8.3) + valuable (0.9.8) vegas (0.1.11) rack (>= 1.0.0) warden (1.2.3) @@ -478,7 +469,7 @@ DEPENDENCIES friendly_id (~> 5.0.3) gemoji (~> 1.2.1) github-linguist (~> 2.10) - gollum (~> 2.7.0) + gollum-lib (~> 2.0) grack! grit! haml-rails (~> 0.5) @@ -505,15 +496,16 @@ DEPENDENCIES paperclip (~> 4.1.1) perform_later! pg (~> 0.17.1) + protected_attributes puma rack-throttle (~> 0.3.0) rails (= 4.0.3) + rails-observers rails3-generators rails3-jquery-autocomplete (~> 1.0) rake rdiscount redcarpet (~> 3.1.1) - redhillonrails_core! redis-rails (~> 4.0) resque (~> 1.25) resque-scheduler (~> 2.5.4) @@ -526,6 +518,7 @@ DEPENDENCIES russian (~> 0.6.0) rvm-capistrano sass-rails (~> 4.0.1) + schema_plus (~> 1.4.0) shotgun shoulda soundmanager-rails diff --git a/config/application.rb b/config/application.rb index e59074d7e..1b845ac9c 100644 --- a/config/application.rb +++ b/config/application.rb @@ -3,21 +3,15 @@ require File.expand_path('../boot', __FILE__) require 'rails/all' require './lib/api_defender' -# If you have a Gemfile, require the gems listed there, including any gems +# Require the gems listed in Gemfile, including any gems # you've limited to :test, :development, or :production. -if defined?(Bundler) - # If you precompile assets before deploying to production, use this line - Bundler.require *Rails.groups(assets: %w(development test)) - # If you want your assets lazily compiled in production, use this line - # Bundler.require(:default, :assets, Rails.env) -end +Bundler.require(:default, Rails.env) module Rosa class Application < Rails::Application # Rate limit config.middleware.insert_after Rack::Lock, ApiDefender - config.action_view.javascript_expansions[:defaults] = %w(jquery rails) config.autoload_paths += %W(#{config.root}/lib) # Settings in config/environments/* take precedence over those specified here. @@ -44,8 +38,6 @@ module Rosa config.i18n.load_path += Dir[Rails.root.join('config', 'locales', '**', '*.{rb,yml}').to_s] config.i18n.default_locale = :en - config.action_view.javascript_expansions[:defaults] = %w() - # Configure the default encoding used in templates for Ruby 1.9. config.encoding = "utf-8" @@ -57,5 +49,7 @@ module Rosa # Version of your assets, change this if you want to expire all your assets config.assets.version = '1.0' + + I18n.enforce_available_locales = false end end diff --git a/config/environments/development.rb b/config/environments/development.rb index ad34b8834..9c364ad9f 100644 --- a/config/environments/development.rb +++ b/config/environments/development.rb @@ -24,9 +24,6 @@ Rosa::Application.configure do config.cache_store = :redis_store, 'redis://localhost:6379/0/cache', { expires_in: 10.minutes } - # Log error messages when you accidentally call methods on nil. - config.whiny_nils = true - # Show full error reports and disable caching config.consider_all_requests_local = true config.action_controller.perform_caching = false @@ -55,8 +52,7 @@ Rosa::Application.configure do # Raise exception on mass assignment protection for Active Record models config.active_record.mass_assignment_sanitizer = :strict - # Log the query plan for queries taking more than this (works with SQLite, MySQL, and PostgreSQL) - config.active_record.auto_explain_threshold_in_seconds = 0.5 - config.middleware.insert_before Rails::Rack::Logger, DisableAssetsLogger + + config.eager_load = false end diff --git a/config/environments/production.rb b/config/environments/production.rb index 0d300816e..ff123a3df 100644 --- a/config/environments/production.rb +++ b/config/environments/production.rb @@ -64,4 +64,6 @@ Rosa::Application.configure do # Precompile additional assets (application.js, application.css, and all non-JS/CSS are already added) config.assets.precompile += %w(login.css login.js reg_session.css tour.css tour.js gollum/editor/langs/*.js moment/ru.js) + + config.eager_load = true end diff --git a/config/environments/staging.rb b/config/environments/staging.rb index a3af4306c..b0711b5f3 100644 --- a/config/environments/staging.rb +++ b/config/environments/staging.rb @@ -63,4 +63,6 @@ Rosa::Application.configure do # Precompile additional assets (application.js, application.css, and all non-JS/CSS are already added) config.assets.precompile += %w(login.css login.js reg_session.css tour.css tour.js gollum/editor/langs/*.js moment/ru.js) + + config.eager_load = true end diff --git a/config/environments/test.rb b/config/environments/test.rb index b899ccdcd..0ef24cb69 100644 --- a/config/environments/test.rb +++ b/config/environments/test.rb @@ -40,4 +40,6 @@ Rosa::Application.configure do # Allow pass debug_assets=true as a query parameter to load pages with unpackaged assets config.assets.allow_debugging = true + + config.eager_load = false end