Module: Subdomainitis::RouteSetMethods
- Defined in:
- lib/subdomainitis.rb
Instance Method Summary collapse
- #add_subdomain_route(name, subdomain_key) ⇒ Object
- #host_name(subdomain_parameter, host) ⇒ Object
- #subdomain_url_for(subdomain_key, args) ⇒ Object
- #url_for_with_subdomains(args) ⇒ Object
Instance Method Details
#add_subdomain_route(name, subdomain_key) ⇒ Object
114 115 116 |
# File 'lib/subdomainitis.rb', line 114 def add_subdomain_route(name, subdomain_key) subdomain_routes[name] = subdomain_key end |
#host_name(subdomain_parameter, host) ⇒ Object
118 119 120 121 122 123 124 125 126 127 128 |
# File 'lib/subdomainitis.rb', line 118 def host_name(subdomain_parameter, host) raise HostRequired.new unless host index = -1 - tld_length subdomain_parameter = if subdomain_parameter.respond_to?(:to_param) subdomain_parameter.to_param else subdomain_parameter end ([subdomain_parameter] + host.split(".")[index..-1]).join(".") end |
#subdomain_url_for(subdomain_key, args) ⇒ Object
102 103 104 105 106 107 108 109 110 111 112 |
# File 'lib/subdomainitis.rb', line 102 def subdomain_url_for(subdomain_key, args) raise HostRequired.new if args[:only_path] subdomain_parameter = args.delete(subdomain_key) raise HostRequired.new unless subdomain_parameter url_for_without_subdomains(if use_fake_subdomains args.merge SUBDOMAIN_KEY => subdomain_parameter else args.merge :host => host_name(subdomain_parameter, args[:host]) end) end |
#url_for_with_subdomains(args) ⇒ Object
94 95 96 97 98 99 100 |
# File 'lib/subdomainitis.rb', line 94 def url_for_with_subdomains(args) if subdomain_key = subdomain_routes[args[:use_route]] subdomain_url_for(subdomain_key, args.dup) else url_for_without_subdomains args end end |