Module: Subdomainitis

Defined in:
lib/subdomainitis.rb,
lib/subdomainitis/spec_helpers.rb

Defined Under Namespace

Modules: RouteSetMethods, SpecHelpers Classes: HostRequired, IsMaindomain, IsSubdomain, MainDomainRouteSet, RouteSetMiddleware, SubdomainRouteSet

Constant Summary collapse

SUBDOMAIN_KEY =
"_subdomain"
DEFAULT_TLD_LENGTH =
1

Class Method Summary collapse

Instance Method Summary collapse

Class Method Details

.extended(mapper) ⇒ Object



183
184
185
186
187
188
189
190
191
192
193
# File 'lib/subdomainitis.rb', line 183

def self.extended(mapper)
  mapper.instance_variable_get(:@set).class_eval do
    include RouteSetMethods
    alias_method_chain :url_for, :subdomains
    attr_accessor :subdomain_routes, :maindomain_routes, :use_fake_subdomains, :tld_length
  end

  delegate :tld_length=, :to => :@set

  mapper.tld_length = DEFAULT_TLD_LENGTH
end

Instance Method Details

#main_domain(&block) ⇒ Object



81
82
83
84
85
# File 'lib/subdomainitis.rb', line 81

def main_domain(&block)
  @set.maindomain_routes ||= {}
  maindomain_routeset = MainDomainRouteSet.new @set
  maindomain_routeset.draw &block
end

#subdomain_as(subdomain_key, &block) ⇒ Object



75
76
77
78
79
# File 'lib/subdomainitis.rb', line 75

def subdomain_as(subdomain_key, &block)
  @set.subdomain_routes ||= {}
  subdomain_routeset = SubdomainRouteSet.new @set, subdomain_key
  subdomain_routeset.draw &block
end

#use_fake_subdomains!Object



87
88
89
# File 'lib/subdomainitis.rb', line 87

def use_fake_subdomains!
  @set.use_fake_subdomains = true
end