Made multi coop installation available as an option in app_config.yml.
This commit is contained in:
parent
f4edfacd91
commit
fd97c1fc60
4 changed files with 16 additions and 9 deletions
1
MULTI_COOP_INSTALL
Normal file
1
MULTI_COOP_INSTALL
Normal file
|
@ -0,0 +1 @@
|
|||
TODO..
|
|
@ -1,8 +1,6 @@
|
|||
class ApplicationController < ActionController::Base
|
||||
|
||||
# If you wanna run multiple foodcoops on one installation uncomment next line.
|
||||
#before_filter :select_foodcoop
|
||||
before_filter :authenticate, :store_controller
|
||||
before_filter :select_foodcoop, :authenticate, :store_controller
|
||||
after_filter :remove_controller
|
||||
|
||||
# sends a mail, when an error occurs
|
||||
|
@ -140,11 +138,13 @@ class ApplicationController < ActionController::Base
|
|||
# It uses the subdomain to select the appropriate section in the config files
|
||||
# Use this method as a before filter (first filter!) in ApplicationController
|
||||
def select_foodcoop
|
||||
# Get subdomain
|
||||
subdomain = request.subdomains.first
|
||||
# Set Config
|
||||
Foodsoft.env = subdomain
|
||||
# Set database-connection
|
||||
ActiveRecord::Base.establish_connection(Foodsoft.database(subdomain))
|
||||
if Foodsoft.config[:multi_coop_install]
|
||||
# Get subdomain
|
||||
subdomain = request.subdomains.first
|
||||
# Set Config
|
||||
Foodsoft.env = subdomain
|
||||
# Set database-connection
|
||||
ActiveRecord::Base.establish_connection(Foodsoft.database(subdomain))
|
||||
end
|
||||
end
|
||||
end
|
||||
|
|
|
@ -1,6 +1,10 @@
|
|||
# Foodsoft configuration
|
||||
|
||||
development: &defaults
|
||||
# If you wanna serve more than one foodcoop with one installation
|
||||
# Don't forget to setup databases for each foodcoop. See also MULTI_COOP_INSTALL
|
||||
multi_coop_install: false
|
||||
|
||||
# name of this foodcoop
|
||||
name: FC Test
|
||||
# foodcoop contact information (used for FAX messages)
|
||||
|
|
|
@ -13,10 +13,12 @@ module Foodsoft
|
|||
end
|
||||
|
||||
def config(rails_env = @@env)
|
||||
raise "No config for this environment (or subdomain) available!" if @@configs[rails_env].nil?
|
||||
@@configs[rails_env].symbolize_keys
|
||||
end
|
||||
|
||||
def database(rails_env = @@env)
|
||||
raise "No database for this environment (or subdomain) available!" if @@databases[rails_env].nil?
|
||||
@@databases[rails_env].symbolize_keys
|
||||
end
|
||||
|
||||
|
|
Loading…
Reference in a new issue