lib/saasable/railties/helpers.rb in saasable-0.2.2 vs lib/saasable/railties/helpers.rb in saasable-0.3.0

- old
+ new

@@ -1,10 +1,37 @@ module Saasable::Railties module Helpers def self.included klass + klass.extend ClassMethods klass.send(:include, InstanceMethods) klass.class_eval do helper_method :current_saas + + before_filter :_redirect_if_saas_not_found + saas_not_found_redirect_to "/404.html" + + private + def _skip_saasable + current_saas.deactivate! if current_saas + end + end + end + + module ClassMethods + def saas_not_found_redirect_to path_or_url + self.class_eval <<-METHOD, __FILE__, __LINE__ + 1 + private + def _redirect_if_saas_not_found + unless current_saas + redirect_to "#{path_or_url}" + end + end + METHOD + end + + def skip_saasable options + skip_before_filter :_redirect_if_saas_not_found, options + before_filter :_skip_saasable, options end end module InstanceMethods def current_saas \ No newline at end of file