require File.expand_path('../boot', __FILE__) require 'rails/all' # initialize ActiveRecord's db connection # why? Because user.rb uses validates :acceptance, which needs a connection to the database. if there is better way... ActiveRecord::Base.establish_connection(YAML::load(File.open('config/database.yml'))[Rails.env]) 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 include JamRuby User = JamRuby::User Band = JamRuby::Band module JamAdmin class Application < Rails::Application # 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. # Custom directories with classes and modules you want to be autoloadable. config.autoload_paths += %W(#{config.root}/lib) # Only load the plugins named here, in the order given (default is alphabetical). # :all can be used as a placeholder for all plugins not explicitly named. # config.plugins = [ :exception_notification, :ssl_requirement, :all ] # Activate observers that should always be running. config.active_record.observers = "JamRuby::InvitedUserObserver" config.assets.prefix = "#{ENV['RAILS_RELATIVE_URL_ROOT']}/assets" # 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 = 'Central Time (US & Canada)' # The default locale is :en and all translations from config/locales/*.rb,yml are auto loaded. # config.i18n.load_path += Dir[Rails.root.join('my', 'locales', '*.{rb,yml}').to_s] # config.i18n.default_locale = :de # Configure the default encoding used in templates for Ruby 1.9. config.encoding = "utf-8" # Configure sensitive parameters which will be filtered from the log file. config.filter_parameters += [:password] # Enable escaping HTML in JSON. config.active_support.escape_html_entities_in_json = true # suppress locale complaint: http://stackoverflow.com/questions/20361428/rails-i18n-validation-deprecation-warning config.i18n.enforce_available_locales = false # Use SQL instead of Active Record's schema dumper when creating the database. # This is necessary if your schema can't be completely dumped by the schema dumper, # like if you have constraints or database-specific column types # config.active_record.schema_format = :sql # Enforce whitelist mode for mass assignment. # This will create an empty whitelist of attributes available for mass-assignment for all models # in your app. As such, your models will need to explicitly whitelist or blacklist accessible # parameters by using an attr_accessible or attr_protected declaration. config.active_record.whitelist_attributes = true # Enable the asset pipeline config.assets.enabled = true # Version of your assets, change this if you want to expire all your assets config.assets.version = '1.0' # to make active_admin assets precompile config.assets.precompile += ['active_admin.css', 'active_admin.js', 'active_admin/print.css'] ###### THESE ARE JAM-WEB VALUES config.external_hostname = ENV['EXTERNAL_HOSTNAME'] || 'localhost' config.external_port = ENV['EXTERNAL_PORT'] || 3000 config.external_protocol = ENV['EXTERNAL_PROTOCOL'] || 'http://' config.external_root_url = "#{config.external_protocol}#{config.external_hostname}#{(config.external_port == 80 || config.external_port == 443) ? '' : ':' + config.external_port.to_s}" config.recurly_root_url = 'https://jamkazam-development.recurly.com' # where is rabbitmq? config.rabbitmq_host = "localhost" config.rabbitmq_port = 5672 # set to false to instead use amazon. You will also need to supply amazon secrets config.store_artifacts_to_disk = false config.storage_type = :fog # these only need to be set if store_artifact_to_files = false config.aws_access_key_id = ENV['AWS_KEY'] config.aws_secret_access_key = ENV['AWS_SECRET'] config.aws_region = 'us-east-1' config.aws_bucket_public = 'jamkazam-dev-public' config.aws_bucket = 'jamkazam-dev' config.aws_cache = '315576000' config.aws_fullhost = "#{config.aws_bucket_public}.s3.amazonaws.com" # cloudfront host config.cloudfront_host = "d34f55ppvvtgi3.cloudfront.net" # for carrierwave_direct config.action_controller.allow_forgery_protection = false config.redis_host = "localhost:6379" config.email_social_alias = 'social@jamkazam.com' config.email_alerts_alias = 'alerts@jamkazam.com' # should be used for 'oh no' server down/service down sorts of emails config.email_generic_from = 'nobody@jamkazam.com' config.email_smtp_address = 'smtp.sendgrid.net' config.email_smtp_port = 587 config.email_smtp_domain = 'www.jamkazam.com' config.email_smtp_authentication = :plain config.email_smtp_user_name = 'jamkazam' config.email_smtp_password = 'snorkeltoesniffyfarce1' config.email_smtp_starttls_auto = true config.facebook_app_id = ENV['FACEBOOK_APP_ID'] || '468555793186398' config.facebook_app_secret = ENV['FACEBOOK_APP_SECRET'] || '546a5b253972f3e2e8b36d9a3dd5a06e' config.twitter_app_id = ENV['TWITTER_APP_ID'] || 'nQj2oEeoJZxECC33tiTuIg' config.twitter_app_secret = ENV['TWITTER_APP_SECRET'] || 'Azcy3QqfzYzn2fsojFPYXcn72yfwa0vG6wWDrZ3KT8' config.ffmpeg_path = ENV['FFMPEG_PATH'] || (File.exist?('/usr/local/bin/ffmpeg') ? '/usr/local/bin/ffmpeg' : '/usr/bin/ffmpeg') config.normalize_ogg_path = ENV['NORMALIZE_OGG_PATH'] || (File.exist?('/usr/local/bin/normalize-ogg') ? '/usr/local/bin/normalize-ogg' : '/usr/bin/normalize-ogg') config.normalize_mp3_path = ENV['NORMALIZE_MP3_PATH'] || (File.exist?('/usr/local/bin/normalize-mp3') ? '/usr/local/bin/normalize-mp3' : '/usr/bin/normalize-mp3') config.max_audio_downloads = 100 # recording upload/download configs config.max_track_upload_failures = 10 config.max_track_part_upload_failures = 3 # Use Private API Keys to communicate with Recurly's API v2. See https://docs.recurly.com/api/basics/authentication to learn more. config.recurly_private_api_key = '7d623daabfc2434fa2a893bb008eb3e6' # Use Public Keys to identify your site when using Recurly.js. See https://docs.recurly.com/js/#include to learn more. config.recurly_public_api_key = 'sc-SZlO11shkeA1WMGuISLGg5' # these values work out of the box with default settings of an influx install (you do have to add a development database by hand though) config.influxdb_database = "development" config.influxdb_username = "root" config.influxdb_password = "root" config.influxdb_hosts = ["localhost"] config.influxdb_port = 8086 config.influxdb_ignored_environments = ENV["INFLUXDB_ENABLED"] == '1' ? ['test', 'cucumber'] : ['test', 'cucumber', 'development'] config.jamtracks_dir = ENV['JAMTRACKS_DIR'] || File.expand_path(File.join(File.dirname(__FILE__), "..", "..", "..", "jamtracks")) config.jmep_dir = ENV['JMEP_DIR'] || File.expand_path(File.join(File.dirname(__FILE__), "..", "..", "..", "jmep")) config.email_dump_code = 'rcAUyC3TZCbgGx4YQpznBRbNnQMXW5iKTzf9NSBfzMLsnw9dRQ' config.admin_port = ENV['ADMIN_PORT'] || 3333 config.admin_root_url = "#{config.external_protocol}#{config.external_hostname}#{(config.admin_port == 80 || config.admin_port == 443) ? '' : ':' + config.admin_port.to_s}" config.download_tracker_day_range = 30 config.max_user_ip_address = 10 config.max_multiple_users_same_ip = 2 end end