subdomainitis 0.9.3 → 0.9.21

Sign up to get free protection for your applications and to get access to all the features.
Files changed (2) hide show
  1. data/lib/subdomainitis.rb +6 -57
  2. metadata +6 -6
data/lib/subdomainitis.rb CHANGED
@@ -28,7 +28,7 @@ module Subdomainitis
28
28
 
29
29
 
30
30
  class SubdomainRouteSet < ActionDispatch::Routing::RouteSet
31
- def initialize(parent_route_set, subdomain_key)
31
+ def initialize(parent_route_set, subdomain_key)
32
32
  @parent_route_set, @subdomain_key = parent_route_set, subdomain_key
33
33
  super *[]
34
34
  end
@@ -45,31 +45,7 @@ module Subdomainitis
45
45
  [IsSubdomain.new(parent_route_set)],
46
46
  request_class
47
47
  )
48
-
49
48
  end
50
-
51
- end
52
-
53
- class MainDomainRouteSet < ActionDispatch::Routing::RouteSet
54
-
55
- def initialize(parent_route_set)
56
- @parent_route_set = parent_route_set
57
- super *[]
58
- end
59
- attr_reader :parent_route_set
60
-
61
- def add_route(app, conditions = {}, requirements = {}, defaults = {}, name = nil, anchor = true)
62
- parent_route_set.add_maindomain_route name
63
- parent_route_set.add_route wrap(app), conditions, requirements, defaults, name, anchor
64
- end
65
- def wrap(app)
66
- ActionDispatch::Routing::Mapper::Constraints.new(
67
- app,
68
- [IsMaindomain.new(parent_route_set)],
69
- request_class
70
- )
71
- end
72
-
73
49
  end
74
50
 
75
51
  def subdomain_as(subdomain_key, &block)
@@ -79,9 +55,7 @@ module Subdomainitis
79
55
  end
80
56
 
81
57
  def main_domain(&block)
82
- @set.maindomain_routes ||= {}
83
- maindomain_routeset = MainDomainRouteSet.new @set
84
- maindomain_routeset.draw &block
58
+ constraints IsMaindomain.new(@set), &block
85
59
  end
86
60
 
87
61
  def use_fake_subdomains!
@@ -118,11 +92,8 @@ module Subdomainitis
118
92
 
119
93
  module RouteSetMethods
120
94
  def url_for_with_subdomains(args)
121
- route_name = args[:use_route]
122
- if subdomain_key = subdomain_routes[route_name]
95
+ if subdomain_key = subdomain_routes[args[:use_route]]
123
96
  subdomain_url_for(subdomain_key, args.dup)
124
- elsif maindomain_routes[route_name]
125
- maindomain_url_for(args.dup)
126
97
  else
127
98
  url_for_without_subdomains args
128
99
  end
@@ -140,42 +111,20 @@ module Subdomainitis
140
111
  end)
141
112
  end
142
113
 
143
- def maindomain_url_for(args)
144
- raise HostRequired.new if args[:only_path]
145
-
146
- url_for_without_subdomains(if use_fake_subdomains
147
- args
148
- else
149
- args.merge :host => main_domain_host(args[:host])
150
- end)
151
- end
152
-
153
114
  def add_subdomain_route(name, subdomain_key)
154
115
  subdomain_routes[name] = subdomain_key
155
116
  end
156
117
 
157
- def add_maindomain_route(name)
158
- maindomain_routes[name] = true
159
- end
160
-
161
118
  def host_name(subdomain_parameter, host)
162
119
  raise HostRequired.new unless host
163
-
120
+ index = -1 - tld_length
164
121
  subdomain_parameter = if subdomain_parameter.respond_to?(:to_param)
165
122
  subdomain_parameter.to_param
166
123
  else
167
124
  subdomain_parameter
168
125
  end
169
126
 
170
- ([subdomain_parameter] + host.split(".")[subdomain_index..-1]).join(".")
171
- end
172
-
173
- def main_domain_host(host)
174
- host.split(".")[subdomain_index..-1].join(".")
175
- end
176
-
177
- def subdomain_index
178
- -1 - tld_length
127
+ ([subdomain_parameter] + host.split(".")[index..-1]).join(".")
179
128
  end
180
129
 
181
130
  end
@@ -184,7 +133,7 @@ module Subdomainitis
184
133
  mapper.instance_variable_get(:@set).class_eval do
185
134
  include RouteSetMethods
186
135
  alias_method_chain :url_for, :subdomains
187
- attr_accessor :subdomain_routes, :maindomain_routes, :use_fake_subdomains, :tld_length
136
+ attr_accessor :subdomain_routes, :use_fake_subdomains, :tld_length
188
137
  end
189
138
 
190
139
  delegate :tld_length=, :to => :@set
metadata CHANGED
@@ -5,8 +5,8 @@ version: !ruby/object:Gem::Version
5
5
  segments:
6
6
  - 0
7
7
  - 9
8
- - 3
9
- version: 0.9.3
8
+ - 21
9
+ version: 0.9.21
10
10
  platform: ruby
11
11
  authors:
12
12
  - Stephen Judkins
@@ -14,7 +14,7 @@ autorequire:
14
14
  bindir: bin
15
15
  cert_chain: []
16
16
 
17
- date: 2011-02-01 00:00:00 -08:00
17
+ date: 2010-10-25 00:00:00 -07:00
18
18
  default_executable:
19
19
  dependencies:
20
20
  - !ruby/object:Gem::Dependency
@@ -36,13 +36,13 @@ dependencies:
36
36
  requirement: &id002 !ruby/object:Gem::Requirement
37
37
  none: false
38
38
  requirements:
39
- - - ">="
39
+ - - "="
40
40
  - !ruby/object:Gem::Version
41
41
  segments:
42
42
  - 3
43
43
  - 0
44
- - 3
45
- version: 3.0.3
44
+ - 1
45
+ version: 3.0.1
46
46
  type: :runtime
47
47
  version_requirements: *id002
48
48
  description: subdomainitis provides easy, simple support for using wildcard subdomains as controller parameters in Rails 3