canonical-rails 0.2.3 → 0.2.9

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
- SHA1:
3
- metadata.gz: fa4362adb7bca7471140f68ea3a41ba9c7f60cdd
4
- data.tar.gz: 82fd190e01d161736c55e7499581aea05cfe90f8
2
+ SHA256:
3
+ metadata.gz: 0ab1e0b7b6f0b2ab95ac94692939a74ade7bd8a2cb744bec7c6762ae04a1dfe7
4
+ data.tar.gz: 8091321b37d368601c5242496bade7282fc2e7a31a4d7ee547cddae8eaa116a6
5
5
  SHA512:
6
- metadata.gz: 33118788a0d9ade0589936426ff67b47bff47e833696a9f96dfb04a67e840b1e6665123d80d6077f1e664f7a61bafd6c328582d2056c9bc3f9310481225a9a93
7
- data.tar.gz: 539ec70a3a69a559bd8acf0188ad4ab35a069b9394b29a0b9af47cffadbaf1f04745442856fda0267ee43ea1c13135f1723804e01ca3aa6d03bda4ea7bbf1bef
6
+ metadata.gz: 6015361191325a29ea441f6150277126ba216c59ac40f09954b6b178b497b84216e6783505dafab8b479d4264949836a98d6175101fd275d18b3c941ff7e8022
7
+ data.tar.gz: a6bf895a0626fb7dfd47e4bc88c19e2bd90d8671b42c95d5f0878a7578104e9b40af35662806abc442f53d4a2a54e7afea8baa7eca89a5f9e753ee16d8221e33
data/README.md CHANGED
@@ -1,6 +1,5 @@
1
1
  CanonicalRails
2
2
  ==============
3
- [![Dependency Status](https://gemnasium.com/jumph4x/canonical-rails.png)](https://gemnasium.com/jumph4x/canonical-rails)
4
3
  [![Build Status](https://travis-ci.org/jumph4x/canonical-rails.svg?branch=master)](https://travis-ci.org/jumph4x/canonical-rails)
5
4
 
6
5
  A number of articles exist explaining the issue concisely and at length:
@@ -4,11 +4,22 @@ module CanonicalRails
4
4
  request.params.key?('action') && CanonicalRails.sym_collection_actions.include?(request.params['action'].to_sym)
5
5
  end
6
6
 
7
+ # Leave force_trailing_slash as nil to get the original behavior of trailing_slash_if_needed
8
+ def trailing_slash_config(force_trailing_slash = nil)
9
+ if force_trailing_slash
10
+ "/"
11
+ elsif force_trailing_slash.nil?
12
+ trailing_slash_if_needed
13
+ end
14
+ end
15
+
7
16
  def trailing_slash_if_needed
8
- "/" if trailing_slash_needed? && request.path != '/'
17
+ "/" if trailing_slash_needed?
9
18
  end
10
19
 
11
20
  def path_without_html_extension
21
+ return '' if request.path == '/'
22
+
12
23
  request.path.sub(/\.html$/, '')
13
24
  end
14
25
 
@@ -24,18 +35,18 @@ module CanonicalRails
24
35
  (CanonicalRails.port || request.port).to_i
25
36
  end
26
37
 
27
- def canonical_href(host = canonical_host, port = canonical_port)
38
+ def canonical_href(host = canonical_host, port = canonical_port, force_trailing_slash = nil)
28
39
  default_ports = { 'https://' => 443, 'http://' => 80 }
29
40
  port = port.present? && port.to_i != default_ports[canonical_protocol] ? ":#{port}" : ''
30
- raw "#{canonical_protocol}#{host}#{port}#{path_without_html_extension}#{trailing_slash_if_needed}#{whitelisted_query_string}"
41
+ raw "#{canonical_protocol}#{host}#{port}#{path_without_html_extension}#{trailing_slash_config(force_trailing_slash)}#{whitelisted_query_string}"
31
42
  end
32
-
33
- def canonical_path
34
- raw "#{path_without_html_extension}#{trailing_slash_if_needed}#{whitelisted_query_string}"
43
+
44
+ def canonical_path(force_trailing_slash = nil)
45
+ raw "#{path_without_html_extension}#{trailing_slash_config(force_trailing_slash)}#{whitelisted_query_string}"
35
46
  end
36
47
 
37
- def canonical_tag(host = canonical_host, port = canonical_port)
38
- canonical_url = canonical_href(host, port)
48
+ def canonical_tag(host = canonical_host, port = canonical_port, force_trailing_slash = nil)
49
+ canonical_url = canonical_href(host, port, force_trailing_slash)
39
50
  capture do
40
51
  if CanonicalRails.opengraph_url
41
52
  concat tag(:meta, property: 'og:url', content: canonical_url)
@@ -1,9 +1,11 @@
1
+ require_relative '../../app/helpers/canonical_rails/tag_helper'
2
+
1
3
  module CanonicalRails
2
4
  class Engine < ::Rails::Engine
3
-
5
+
4
6
  initializer 'canonical_rails.add_helpers' do |app|
5
7
  ActionView::Base.send :include, CanonicalRails::TagHelper
6
8
  end
7
-
9
+
8
10
  end
9
11
  end
@@ -1,3 +1,3 @@
1
1
  module CanonicalRails
2
- VERSION = "0.2.3"
2
+ VERSION = "0.2.9"
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: canonical-rails
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.3
4
+ version: 0.2.9
5
5
  platform: ruby
6
6
  authors:
7
7
  - Denis Ivanov
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2018-04-12 00:00:00.000000000 Z
11
+ date: 2020-08-20 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rails
@@ -19,7 +19,7 @@ dependencies:
19
19
  version: '4.1'
20
20
  - - "<"
21
21
  - !ruby/object:Gem::Version
22
- version: '5.3'
22
+ version: '6.1'
23
23
  type: :runtime
24
24
  prerelease: false
25
25
  version_requirements: !ruby/object:Gem::Requirement
@@ -29,7 +29,7 @@ dependencies:
29
29
  version: '4.1'
30
30
  - - "<"
31
31
  - !ruby/object:Gem::Version
32
- version: '5.3'
32
+ version: '6.1'
33
33
  - !ruby/object:Gem::Dependency
34
34
  name: appraisal
35
35
  requirement: !ruby/object:Gem::Requirement
@@ -45,19 +45,19 @@ dependencies:
45
45
  - !ruby/object:Gem::Version
46
46
  version: '0'
47
47
  - !ruby/object:Gem::Dependency
48
- name: sqlite3
48
+ name: sprockets
49
49
  requirement: !ruby/object:Gem::Requirement
50
50
  requirements:
51
- - - ">="
51
+ - - "~>"
52
52
  - !ruby/object:Gem::Version
53
- version: '0'
53
+ version: '3.0'
54
54
  type: :development
55
55
  prerelease: false
56
56
  version_requirements: !ruby/object:Gem::Requirement
57
57
  requirements:
58
- - - ">="
58
+ - - "~>"
59
59
  - !ruby/object:Gem::Version
60
- version: '0'
60
+ version: '3.0'
61
61
  - !ruby/object:Gem::Dependency
62
62
  name: rspec-rails
63
63
  requirement: !ruby/object:Gem::Requirement
@@ -125,7 +125,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
125
125
  version: '0'
126
126
  requirements: []
127
127
  rubyforge_project:
128
- rubygems_version: 2.6.11
128
+ rubygems_version: 2.7.6.2
129
129
  signing_key:
130
130
  specification_version: 4
131
131
  summary: Simple and configurable Rails canonical ref tag helper