ssl_routes 0.0.3 → 0.0.4

Sign up to get free protection for your applications and to get access to all the features.
@@ -10,9 +10,9 @@ module SslRoutes::Controller
10
10
 
11
11
  def enforce_protocols(&block)
12
12
  cattr_accessor :parameter, :secure_session, :enable_ssl
13
- self.parameter = :protocol
14
- self.secure_session = false
15
- self.enable_ssl = false
13
+ self.parameter = :protocol
14
+ self.secure_session = false
15
+ self.enable_ssl = false
16
16
  yield self if block_given?
17
17
  before_filter :ensure_protocol if self.enable_ssl
18
18
  end
@@ -26,7 +26,7 @@ module SslRoutes::Controller
26
26
  case options
27
27
  when Hash
28
28
  current = request.protocol.split(':').first
29
- target = extract_protocol(options, 'http')
29
+ target = extract_protocol(options)
30
30
  if current != target
31
31
  options.merge!({ :protocol => target, :only_path => false })
32
32
  end
@@ -43,19 +43,19 @@ module SslRoutes::Controller
43
43
  ActionController::Routing::Routes.extract_request_environment(request)
44
44
  )
45
45
  current = request.protocol.split(':').first
46
- target = extract_protocol(options, current)
47
- if current != target
46
+ target = extract_protocol(options)
47
+ if current != target && request.get?
48
48
  flash.keep
49
49
  redirect_to "#{target}://#{request.host_with_port + request.request_uri}"
50
50
  return false
51
51
  end
52
52
  end
53
53
 
54
- def extract_protocol(options, default_protocol)
54
+ def extract_protocol(options)
55
55
  protocol = case options[self.parameter]
56
56
  when String then options[self.parameter]
57
57
  when TrueClass then 'https'
58
- else default_protocol
58
+ else 'http'
59
59
  end
60
60
  protocol = 'https' if self.secure_session && current_user
61
61
  protocol = options[:protocol] if options[:protocol]
@@ -1,5 +1,5 @@
1
1
  module SslRoutes
2
2
 
3
- VERSION = '0.0.3'
3
+ VERSION = '0.0.4'
4
4
 
5
5
  end
metadata CHANGED
@@ -1,13 +1,13 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: ssl_routes
3
3
  version: !ruby/object:Gem::Version
4
- hash: 25
4
+ hash: 23
5
5
  prerelease: false
6
6
  segments:
7
7
  - 0
8
8
  - 0
9
- - 3
10
- version: 0.0.3
9
+ - 4
10
+ version: 0.0.4
11
11
  platform: ruby
12
12
  authors:
13
13
  - Cedric Howe
@@ -15,7 +15,7 @@ autorequire:
15
15
  bindir: bin
16
16
  cert_chain: []
17
17
 
18
- date: 2010-12-03 00:00:00 -05:00
18
+ date: 2010-12-13 00:00:00 -05:00
19
19
  default_executable:
20
20
  dependencies:
21
21
  - !ruby/object:Gem::Dependency