lib/saasable/middleware.rb in saasable-4.0.2 vs lib/saasable/middleware.rb in saasable-5.0.0
- old
+ new
@@ -1,21 +1,16 @@
class Saasable::Middleware
def initialize app
@app = app
-
- # Loads all models so we know how to apply the scopes on Rails
- Rails::Mongoid.load_models(Rails.application) if defined?(Rails::Mongoid)
end
def call env
return @app.call(env) if env['PATH_INFO'].start_with?('/assets')
- env[:saasable] = {:current_saas => saas_for_host(env['SERVER_NAME'])}
- env[:saasable][:current_saas].activate! if env[:saasable][:current_saas]
+ saas = saas_for_host(env['SERVER_NAME'])
+ saas.activate! if saas
- @app.call(env).tap do
- env[:saasable][:current_saas].deactivate! if env[:saasable][:current_saas]
- end
+ @app.call(env).tap { saas.deactivate! if saas }
end
private
def saas_for_host hostname
Saasable::Mongoid::SaasDocument.saas_document.find_by_host!(hostname)