pageflow-external-links 2.1.0 → 2.3.0

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
2
  SHA256:
3
- metadata.gz: 346615b36f62575e6dbf43cf2237c045115587a4c5ce9a7de865e4687c21de06
4
- data.tar.gz: 53c3e0204212221068c292f7443bdc53d1a6e91543aa6716c0a751f7c64de35f
3
+ metadata.gz: 0c12b927a2072019bb2e7a9d9c9ea717ee56af93fa7703ede0d3233be892d1cf
4
+ data.tar.gz: b123367dc4d2075c96732cf654115f161da86e848b0415f28da9ac1988efa75e
5
5
  SHA512:
6
- metadata.gz: d2f7bbb58e4e469a3aca88fa8639752a71a06003fb9580c12313829cb89a5a8fe6a2cb95b5d95feb06662ea28381c8ebf7fa25e5df85e215d928a9cf40e4a0cf
7
- data.tar.gz: 752cb59f5cea9a2b9c938db024c24bc0b81f29fcd32a15871ce569b5db9dc6798e6ed15983f366bcb47ad8a8ab666ad056abbd8f7a948712e55b78ef4d457f74
6
+ metadata.gz: 6cc118d9fdbfcadd3c0ab1b2f20d0a6b8a316d1e7bdfb23688d60f433f5c3687e57b538a88c9c91516cd8877939c3fe9ef4b7f113de10a5cd3753f09c488066f
7
+ data.tar.gz: 9ecd9cbb770216ce76286b88529a69f0ce17359821cd50794abf6629580ab871db6497ba7bda8626b9934f5ab6963a9b0209404de81c4343e3df9decd41af715
data/.travis.yml CHANGED
@@ -15,3 +15,6 @@ before_install:
15
15
  script:
16
16
  - bin/rspec
17
17
  - bundle exec publish-pageflow-theme-doc
18
+
19
+ services:
20
+ - mysql
data/CHANGELOG.md CHANGED
@@ -1,16 +1,16 @@
1
1
  # CHANGELOG
2
2
 
3
- ### Version 2.1.0
3
+ ### Version 2.3.0
4
4
 
5
- 2019-04-04
5
+ 2022-03-29
6
6
 
7
- [Compare changes](https://github.com/codevise/pageflow-external-links/compare/2-0-stable...v2.1.0)
7
+ [Compare changes](https://github.com/codevise/pageflow-external-links/compare/2-2-stable...v2.3.0)
8
8
 
9
- - Adapt page dom for Pageflow 14
10
- ([#40](https://github.com/codevise/pageflow-external-links/pull/40))
11
- - Setup page type lint specs
12
- ([#39](https://github.com/codevise/pageflow-external-links/pull/39))
9
+ - Add border-radius theme option
10
+ ([#46](https://github.com/codevise/pageflow-external-links/pull/46))
11
+ - Prevent error with missing site urls in Pageflow 15.1
12
+ ([#44](https://github.com/codevise/pageflow-external-links/pull/44))
13
13
 
14
14
  See
15
- [2-0-stable branch](https://github.com/codevise/pageflow-external-links/blob/2-0-stable/CHANGELOG.md)
15
+ [2-2-stable branch](https://github.com/codevise/pageflow-external-links/blob/2-2-stable/CHANGELOG.md)
16
16
  for previous changes.
data/Gemfile CHANGED
@@ -2,3 +2,6 @@ source 'https://rubygems.org'
2
2
 
3
3
  # Specify your gem's dependencies in chart.gemspec
4
4
  gemspec
5
+
6
+ # Give a hint to Bundler to prevent endless loop
7
+ gem 'rails', '~> 5.2.0'
data/Gemfile.ci CHANGED
@@ -3,3 +3,6 @@ source 'https://rubygems.org'
3
3
  gemspec
4
4
 
5
5
  gem 'pageflow-theme-doc-publisher', git: 'https://github.com/tf/pageflow-theme-doc-publisher'
6
+
7
+ # Give a hint to Bundler to prevent endless loop
8
+ gem 'rails', '~> 5.2.0'
@@ -38,6 +38,9 @@ $external-links-item-hover-underline: true !default;
38
38
  /// Padding around the text inside an item.
39
39
  $external-links-item-padding: 20px !default;
40
40
 
41
+ /// Border radius of items.
42
+ $external-links-item-border-radius: null !default;
43
+
41
44
  @include pageflow-page-type-pictograms("external_links");
42
45
 
43
46
  .external-links-page {
@@ -45,6 +48,7 @@ $external-links-item-padding: 20px !default;
45
48
  background-color: $external-links-item-background-color;
46
49
  color: $external-links-item-text-color;
47
50
  text-decoration: none;
51
+ border-radius: $external-links-item-border-radius;
48
52
 
49
53
  &:hover {
50
54
  background-color: $external-links-item-active-background-color;
@@ -1,6 +1,8 @@
1
1
  module Pageflow
2
2
  module ExternalLinks
3
3
  module SitesHelper
4
+ include RevisionFileHelper
5
+
4
6
  def external_links_site_css_class(site)
5
7
  ['link-item', site.title.blank? && site.description.blank? ? 'no_text' : ''].compact.join(' ')
6
8
  end
@@ -9,7 +11,7 @@ module Pageflow
9
11
  def external_links_site_thumbnail_css_class(site)
10
12
  classes = ['link-thumbnail']
11
13
 
12
- if file = site.thumbnail_file
14
+ if file = find_file_in_entry(ImageFile, site.thumbnail)
13
15
  classes << file_thumbnail_css_class(file, :link_thumbnail_large)
14
16
  end
15
17
 
@@ -2,10 +2,6 @@ module Pageflow
2
2
  module ExternalLinks
3
3
  class Site < ActiveRecord::Base
4
4
  include RevisionComponent
5
-
6
- def thumbnail_file
7
- ImageFile.find_by_id(thumbnail)
8
- end
9
5
  end
10
6
  end
11
7
  end
@@ -1,4 +1,4 @@
1
- <%= link_to(site.url,
1
+ <%= link_to(site.url || '',
2
2
  class: external_links_site_css_class(site),
3
3
  target: site.open_in_new_tab? ? '_blank' : nil) do %>
4
4
 
@@ -1,5 +1,30 @@
1
1
  module PageflowExternalLinks
2
- class InstallGenerator < Pageflow::PageTypeInstallGenerator
2
+ class InstallGenerator < Rails::Generators::Base
3
+ desc 'Install the Pageflow plugin and the necessary migrations.'
4
+
5
+ def register_plugin
6
+ inject_into_file('config/initializers/pageflow.rb',
7
+ after: "Pageflow.configure do |config|\n") do
8
+
9
+ " config.plugin(Pageflow::#{engine_name_suffix.camelize}.plugin)\n"
10
+ end
11
+ end
12
+
13
+ def mount_engine
14
+ route("mount #{engine.name}, at: '/#{engine_name_suffix}'\n")
15
+ end
16
+
17
+ def install_migrations
18
+ rake "pageflow_#{engine_name_suffix}:install:migrations"
19
+ rake 'pageflow_external_links:install:migrations'
20
+ end
21
+
22
+ private
23
+
24
+ def engine_name_suffix
25
+ engine.engine_name.gsub(/^pageflow_/, '')
26
+ end
27
+
3
28
  def engine
4
29
  Pageflow::ExternalLinks::Engine
5
30
  end
@@ -1,5 +1,5 @@
1
1
  module Pageflow
2
2
  module ExternalLinks
3
- VERSION = '2.1.0'.freeze
3
+ VERSION = '2.3.0'.freeze
4
4
  end
5
5
  end
@@ -18,11 +18,11 @@ Gem::Specification.new do |spec|
18
18
 
19
19
  spec.required_ruby_version = '~> 2.1'
20
20
 
21
- spec.add_runtime_dependency 'pageflow', '~> 14.x'
21
+ spec.add_runtime_dependency 'pageflow', '~> 15.x'
22
22
  spec.add_runtime_dependency 'pageflow-public-i18n', '~> 1.0'
23
23
 
24
24
  spec.add_development_dependency 'bundler', ['>= 1.0', '< 3']
25
- spec.add_development_dependency 'pageflow-support', '~> 14.x'
25
+ spec.add_development_dependency 'pageflow-support', '~> 15.x'
26
26
  spec.add_development_dependency 'rake', '~> 12.0'
27
27
  spec.add_development_dependency 'rspec-rails', '~> 3.0'
28
28
 
@@ -2,3 +2,49 @@ require 'spec_helper'
2
2
  require 'pageflow/lint'
3
3
 
4
4
  Pageflow::Lint.page_type(Pageflow::ExternalLinks.page_type)
5
+
6
+ module Pageflow
7
+ module ExternalLinks
8
+ describe 'built in video page type', type: :helper do
9
+ include RenderPageTestHelper
10
+
11
+ it 'renders links to referenced sites' do
12
+ revision = FactoryBot.create(:revision, :published)
13
+ Site.create!(revision: revision,
14
+ perma_id: 10,
15
+ url: 'https://example.com',
16
+ title: 'Example')
17
+
18
+ page = FactoryBot.create(:page,
19
+ template: 'external_links',
20
+ revision: revision,
21
+ configuration: {
22
+ linked_external_site_perma_ids: [10]
23
+ })
24
+
25
+ html = render_page(page)
26
+
27
+ expect(html).to have_selector('.link-title', text: 'Example')
28
+ end
29
+
30
+ it 'can handle sites with missing url' do
31
+ revision = FactoryBot.create(:revision, :published)
32
+ Site.create!(revision: revision,
33
+ perma_id: 10,
34
+ url: nil,
35
+ title: 'Example')
36
+
37
+ page = FactoryBot.create(:page,
38
+ template: 'external_links',
39
+ revision: revision,
40
+ configuration: {
41
+ linked_external_site_perma_ids: [10]
42
+ })
43
+
44
+ html = render_page(page)
45
+
46
+ expect(html).to have_selector('.link-title', text: 'Example')
47
+ end
48
+ end
49
+ end
50
+ end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: pageflow-external-links
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.1.0
4
+ version: 2.3.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Codevise Solutions Ltd
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2019-04-04 00:00:00.000000000 Z
11
+ date: 2022-03-29 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: pageflow
@@ -16,14 +16,14 @@ dependencies:
16
16
  requirements:
17
17
  - - "~>"
18
18
  - !ruby/object:Gem::Version
19
- version: 14.x
19
+ version: 15.x
20
20
  type: :runtime
21
21
  prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
24
  - - "~>"
25
25
  - !ruby/object:Gem::Version
26
- version: 14.x
26
+ version: 15.x
27
27
  - !ruby/object:Gem::Dependency
28
28
  name: pageflow-public-i18n
29
29
  requirement: !ruby/object:Gem::Requirement
@@ -64,14 +64,14 @@ dependencies:
64
64
  requirements:
65
65
  - - "~>"
66
66
  - !ruby/object:Gem::Version
67
- version: 14.x
67
+ version: 15.x
68
68
  type: :development
69
69
  prerelease: false
70
70
  version_requirements: !ruby/object:Gem::Requirement
71
71
  requirements:
72
72
  - - "~>"
73
73
  - !ruby/object:Gem::Version
74
- version: 14.x
74
+ version: 15.x
75
75
  - !ruby/object:Gem::Dependency
76
76
  name: rake
77
77
  requirement: !ruby/object:Gem::Requirement
@@ -214,8 +214,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
214
214
  - !ruby/object:Gem::Version
215
215
  version: '0'
216
216
  requirements: []
217
- rubyforge_project:
218
- rubygems_version: 2.7.5
217
+ rubygems_version: 3.0.8
219
218
  signing_key:
220
219
  specification_version: 4
221
220
  summary: Pageflow Page Type for links to external sites