Suspend users if their spam score gets too high
[rails.git] / config / environment.rb
1 # Be sure to restart your server when you modify this file
2
3 # Uncomment below to force Rails into production mode when
4 # you don't control web/app server and can't set it the proper way
5 ENV['RAILS_ENV'] ||= 'production'
6
7 # Specifies gem version of Rails to use when vendor/rails is not present
8 RAILS_GEM_VERSION = '2.3.5' unless defined? RAILS_GEM_VERSION
9
10 # Set the server URL
11 SERVER_URL = ENV['OSM_SERVER_URL'] || 'www.openstreetmap.org'
12
13 # Set the generator
14 GENERATOR = ENV['OSM_SERVER_GENERATOR'] || 'OpenStreetMap server'
15
16 # Settings for generated emails (e.g. signup confirmation
17 EMAIL_FROM = ENV['OSM_EMAIL_FROM'] || 'OpenStreetMap <webmaster@openstreetmap.org>'
18 EMAIL_RETURN_PATH = ENV['OSM_EMAIL_RETURN_PATH'] || 'bounces@openstreetmap.org'
19
20 # Application constants needed for routes.rb - must go before Initializer call
21 API_VERSION = ENV['OSM_API_VERSION'] || '0.6'
22
23 # Set application status - possible settings are:
24 #
25 #   :online - online and operating normally
26 #   :api_readonly - site online but API in read-only mode
27 #   :api_offline - site online but API offline
28 #   :database_readonly - database and site in read-only mode
29 #   :database_offline - database offline with site in emergency mode
30 #   :gpx_offline - gpx storage offline
31 #
32 OSM_STATUS = :online
33
34 # Bootstrap the Rails environment, frameworks, and default configuration
35 require File.join(File.dirname(__FILE__), 'boot')
36
37 Rails::Initializer.run do |config|
38   # Settings in config/environments/* take precedence over those specified here.
39   # Application configuration should go into files in config/initializers
40   # -- all .rb files in that directory are automatically loaded.
41   # See Rails::Configuration for more options.
42
43   # Skip frameworks you're not going to use (only works if using vendor/rails).
44   # To use Rails without a database, you must remove the Active Record framework
45   if OSM_STATUS == :database_offline
46     config.frameworks -= [ :active_record ]
47   end
48
49   # Specify gems that this application depends on.
50   # They can then be installed with "rake gems:install" on new installations.
51   # config.gem "bj"
52   # config.gem "hpricot", :version => '0.6', :source => "http://code.whytheluckystiff.net"
53   # config.gem "aws-s3", :lib => "aws/s3"
54   config.gem 'composite_primary_keys', :version => '2.2.2'
55   config.gem 'libxml-ruby', :version => '>= 1.1.1', :lib => 'libxml'
56   config.gem 'rmagick', :lib => 'RMagick'
57   config.gem 'oauth', :version => '>= 0.3.6'
58   config.gem 'httpclient'
59   config.gem 'SystemTimer', :version => '>= 1.1.3', :lib => 'system_timer'
60   config.gem 'sanitize'
61
62   # Only load the plugins named here, in the order given. By default, all plugins
63   # in vendor/plugins are loaded in alphabetical order.
64   # :all can be used as a placeholder for all plugins not explicitly named
65   # config.plugins = [ :exception_notification, :ssl_requirement, :all ]
66
67   # Add additional load paths for your own custom dirs
68   # config.load_paths += %W( #{RAILS_ROOT}/extras )
69
70   # Force all environments to use the same logger level
71   # (by default production uses :info, the others :debug)
72   # config.log_level = :debug
73
74   # Configure cache
75   config.cache_store = :file_store, "#{RAILS_ROOT}/tmp/cache"
76
77   # Your secret key for verifying cookie session data integrity.
78   # If you change this key, all old sessions will become invalid!
79   # Make sure the secret is at least 30 characters and all random,
80   # no regular words or you'll be exposed to dictionary attacks.
81   config.action_controller.session = {
82     :session_key => '_osm_session',
83     :secret      => 'd886369b1e709c61d1f9fcb07384a2b96373c83c01bfc98c6611a9fe2b6d0b14215bb360a0154265cccadde5489513f2f9b8d9e7b384a11924f772d2872c2a1f'
84   }
85
86   # Use the database for sessions instead of the cookie-based default,
87   # which shouldn't be used to store highly confidential information
88   # (create the session table with 'rake db:sessions:create')
89   config.action_controller.session_store = :sql_session_store
90
91   # We will use the old style of migrations, rather than the newer
92   # timestamped migrations that were introduced with Rails 2.1, as
93   # it will be confusing to have the numbered and timestamped migrations
94   # together in the same folder.
95   config.active_record.timestamped_migrations = false
96
97   # Use SQL instead of Active Record's schema dumper when creating the test database.
98   # This is necessary if your schema can't be completely dumped by the schema dumper,
99   # like if you have constraints or database-specific column types
100   config.active_record.schema_format = :sql
101
102   # Activate observers that should always be running
103   config.active_record.observers = :spam_observer
104
105   # Make Active Record use UTC-base instead of local time
106   config.active_record.default_timezone = :utc
107 end