jekyll-theme-open-project-helpers 1.1.21 → 1.1.22

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
- SHA256:
3
- metadata.gz: 90b1f3aa02d83e9f800cedd56b72f61fe734764b6474ee4e635b14ebc7faaaa9
4
- data.tar.gz: 82615472bac6bf0c80fdcf0f28aa915a7505c438acfbb30519f5b86cb959f80c
2
+ SHA1:
3
+ metadata.gz: 44ab60e46dff08150bfc9bcb8ce4ccf955fc08de
4
+ data.tar.gz: be475f6e30393ea3bbb11873b4701aa1d3b3c373
5
5
  SHA512:
6
- metadata.gz: 51f7d2b350597ad6879479eae51beb007bdd5792bf578931930a03f70baa768cc69ddc6cf3590fbacd9e8e742846a073236b63b9974fdc10c3819c13b560c26a
7
- data.tar.gz: 410dee0831e16d0b1b98bf5c780a46092a41d29b1f3808ba6be55a7aa5fb976ed38b6f917af035b04c96a8c1a5bd8d8e1014dd69f5e8a8df8332f758fcbeeb19
6
+ metadata.gz: 22d00a9dea1ed6585e9b367e0b7ce23c1b6342448ca2344cd5186e169431f20ff02d2db60c69eb43e0cc00d760a2232702606dd03c75429ea3796a8c76d1048e
7
+ data.tar.gz: 317e2e9431a9c33ff93f06bcface19549f96ad06670ccbe67caef5f5c3795f10b44767bb30fdff5605e84ceecf9134ba3721e929ddb537c8132179026fa0247c
@@ -2,7 +2,7 @@
2
2
 
3
3
  Gem::Specification.new do |s|
4
4
  s.name = 'jekyll-theme-open-project-helpers'
5
- s.version = '1.1.21'
5
+ s.version = '1.1.22'
6
6
  s.authors = ['Ribose Inc.']
7
7
  s.email = ['open.source@ribose.com']
8
8
 
@@ -7,6 +7,7 @@ require 'jekyll-theme-open-project-helpers/site_type'
7
7
  require 'jekyll-theme-open-project-helpers/project_data_reader'
8
8
  require 'jekyll-theme-open-project-helpers/filterable_index'
9
9
  require 'jekyll-theme-open-project-helpers/blog_index'
10
+ require 'jekyll-theme-open-project-helpers/external_links'
10
11
 
11
12
 
12
13
  module Jekyll
@@ -0,0 +1,27 @@
1
+ require 'nokogiri'
2
+ require 'uri'
3
+
4
+ def process_content(site_hostname, content)
5
+ content = Nokogiri::HTML(content)
6
+ content.css('body.site--project main a, body.site--hub.layout--post main a').each do |a|
7
+ next unless a.get_attribute('href') =~ /\Ahttp/i
8
+ next if a.get_attribute('href').include? site_hostname
9
+ a.set_attribute('rel', 'external')
10
+ a.inner_html = "#{a.inner_html}<span class='ico-ext'><i class='fas fa-external-link-square'></i></span>"
11
+ end
12
+ return content.to_s
13
+ end
14
+
15
+ Jekyll::Hooks.register :documents, :post_render do |doc|
16
+ site_hostname = URI(doc.site.config['url']).host
17
+ unless doc.asset_file?
18
+ doc.output = process_content(site_hostname, doc.output)
19
+ end
20
+ end
21
+
22
+ Jekyll::Hooks.register :pages, :post_render do |page|
23
+ site_hostname = URI(page.site.config['url']).host
24
+ unless page.asset_file?
25
+ page.output = process_content(site_hostname, page.output)
26
+ end
27
+ end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: jekyll-theme-open-project-helpers
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.1.21
4
+ version: 1.1.22
5
5
  platform: ruby
6
6
  authors:
7
7
  - Ribose Inc.
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2018-10-31 00:00:00.000000000 Z
11
+ date: 2018-11-05 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: jekyll
@@ -79,6 +79,7 @@ files:
79
79
  - jekyll-theme-open-project-helpers.gemspec
80
80
  - lib/jekyll-theme-open-project-helpers.rb
81
81
  - lib/jekyll-theme-open-project-helpers/blog_index.rb
82
+ - lib/jekyll-theme-open-project-helpers/external_links.rb
82
83
  - lib/jekyll-theme-open-project-helpers/filterable_index.rb
83
84
  - lib/jekyll-theme-open-project-helpers/project_data_reader.rb
84
85
  - lib/jekyll-theme-open-project-helpers/site_type.rb
@@ -102,7 +103,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
102
103
  version: '0'
103
104
  requirements: []
104
105
  rubyforge_project:
105
- rubygems_version: 2.7.6
106
+ rubygems_version: 2.6.14.1
106
107
  signing_key:
107
108
  specification_version: 4
108
109
  summary: Helpers for the Open Project Jekyll theme