pageflow-internal-links 0.2.0 → 1.4.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.
Files changed (42) hide show
  1. checksums.yaml +5 -5
  2. data/.gitignore +1 -0
  3. data/.scss-lint.yml +40 -0
  4. data/.travis.yml +13 -0
  5. data/CHANGELOG.md +8 -12
  6. data/Gemfile +1 -6
  7. data/README.md +8 -5
  8. data/app/assets/javascripts/pageflow/internal_links/editor/config.js +0 -10
  9. data/app/assets/javascripts/pageflow/internal_links/editor/models/page_link.js +18 -1
  10. data/app/assets/javascripts/pageflow/internal_links/editor/models/page_link_file_selection_handler.js +17 -0
  11. data/app/assets/javascripts/pageflow/internal_links/editor/views/edit_page_link_view.js +18 -8
  12. data/app/assets/javascripts/pageflow/internal_links/editor/views/grid_configuration_editor_view.js +1 -1
  13. data/app/assets/javascripts/pageflow/internal_links/editor/views/list_configuration_editor_view.js +1 -1
  14. data/app/assets/javascripts/pageflow/internal_links/editor/views/list_item_embedded_view.js +13 -4
  15. data/app/assets/javascripts/pageflow/internal_links/grid_page_type.js +3 -12
  16. data/app/assets/javascripts/pageflow/internal_links/list_page_type.js +25 -10
  17. data/app/assets/stylesheets/pageflow/{internal_links.css.scss → internal_links.scss} +0 -0
  18. data/app/assets/stylesheets/pageflow/internal_links/{editor.css.scss → editor.scss} +0 -0
  19. data/app/assets/stylesheets/pageflow/internal_links/editor/{embedded_grid_item.css.scss → embedded_grid_item.scss} +0 -0
  20. data/app/assets/stylesheets/pageflow/internal_links/grid.scss +3 -51
  21. data/app/assets/stylesheets/pageflow/internal_links/themes/default.scss +3 -0
  22. data/app/assets/stylesheets/pageflow/internal_links/themes/default/grid/colors.scss +41 -0
  23. data/app/assets/stylesheets/pageflow/internal_links/themes/default/grid/typography.scss +35 -0
  24. data/app/assets/stylesheets/pageflow/internal_links/themes/default/list_as_multiple_choice.scss +64 -11
  25. data/app/helpers/pageflow/internal_links/grid_helper.rb +1 -1
  26. data/app/helpers/pageflow/internal_links/list_helper.rb +1 -1
  27. data/app/helpers/pageflow/internal_links/page_links.rb +30 -8
  28. data/app/views/pageflow/internal_links/grid/page.html.erb +6 -16
  29. data/app/views/pageflow/internal_links/list/_page_link.html.erb +2 -3
  30. data/app/views/pageflow/internal_links/list/page.html.erb +6 -17
  31. data/bin/rspec +29 -0
  32. data/config/locales/de.yml +12 -1
  33. data/config/locales/en.yml +12 -13
  34. data/lib/pageflow/internal_links/grid_page_type.rb +4 -0
  35. data/lib/pageflow/internal_links/list_page_type.rb +4 -0
  36. data/lib/pageflow/internal_links/plugin.rb +1 -0
  37. data/lib/pageflow/internal_links/version.rb +1 -1
  38. data/pageflow-internal-links.gemspec +9 -3
  39. data/spec/integration/page_types_spec.rb +90 -0
  40. data/spec/spec_helper.rb +14 -0
  41. data/spec/support/config/factory_bot.rb +6 -0
  42. metadata +87 -13
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
- SHA1:
3
- metadata.gz: 0845761ea65ab16498a70c7d3364b69cc1c3aff6
4
- data.tar.gz: 3676084ee081f6d236146aece24c1c92db12cb33
2
+ SHA256:
3
+ metadata.gz: a67bfee3d626cf9a0a643a7add49c68d8c067893cc8c1c3bb5347fd33efa2073
4
+ data.tar.gz: 372ebdcdbadabe29207dbcd006070f11ca5758db38d890957ea61bba96e38c8d
5
5
  SHA512:
6
- metadata.gz: ac0533baa66a611b2ca887a04261b8e9ea5903ebca758853152b72a6b2db907cf111f2b00e960b60339bf8dda4981578e05986d50400a5718c5d7322fe2ad89f
7
- data.tar.gz: c11bcc37e3da97991256825f8de1355f6954970b8122922b5ee68326773c6cc74f26a712049c8e30a35b984dab689cf9fb481ba7e71d5ff1b62c4e6743a6ff4c
6
+ metadata.gz: 3a2fb981be093a996100e8eff03a36f92abfe733f9b449bb6a71d964a2cfdf38805dd5d777061bd7d6122feaa976a3e0d6ad0d084a75b7902085b00c14ef1c3a
7
+ data.tar.gz: 3465a131040f6d91f066620b1d0c44ae68ba1542de82005572a7d888908f46fe0921881a699691bc2552a0660da426926ecb98e12cc2cc18940f651a9aaa71b6
data/.gitignore CHANGED
@@ -12,6 +12,7 @@ doc/
12
12
  lib/bundler/man
13
13
  pkg
14
14
  rdoc
15
+ spec/dummy
15
16
  spec/reports
16
17
  test/tmp
17
18
  test/version_tmp
@@ -0,0 +1,40 @@
1
+ #https://github.com/brigade/scss-lint/blob/master/lib/scss_lint/linter/README.md
2
+
3
+ scss_files: 'app/assets/stylesheets/**/*.scss'
4
+
5
+ linters:
6
+ Indentation:
7
+ severity: warning
8
+ width: 2
9
+
10
+ NameFormat:
11
+ placeholder_convention: "^[-a-z_]+$"
12
+ mixin_convention: "^[-a-z_]+$"
13
+ SelectorFormat:
14
+ convention: "^[-a-z0-9_]+$"
15
+
16
+ StringQuotes:
17
+ style: double_quotes
18
+
19
+ DeclarationOrder:
20
+ enabled: false
21
+ PropertySortOrder:
22
+ enabled: false
23
+ NestingDepth:
24
+ max_depth: 4
25
+
26
+ IdSelector:
27
+ enabled: false
28
+ QualifyingElement:
29
+ enabled: true
30
+ allow_element_with_attribute: true
31
+ allow_element_with_class: true
32
+ allow_element_with_id: true
33
+
34
+ ColorKeyword:
35
+ enabled: false
36
+ LeadingZero:
37
+ style: include_zero
38
+
39
+ Shorthand:
40
+ enabled: false
@@ -0,0 +1,13 @@
1
+ language: ruby
2
+ rvm: 2.5
3
+
4
+ # User container based travis infrastructure which allows caching
5
+ # features for open source projects.
6
+ sudo: false
7
+ cache: bundler
8
+
9
+ script:
10
+ - bin/rspec
11
+
12
+ services:
13
+ - mysql
@@ -1,18 +1,14 @@
1
1
  # CHANGELOG
2
2
 
3
- ### Version 0.2.0
3
+ ### Version 1.4.0
4
4
 
5
- 2016-06-09
5
+ 2020-08-13
6
6
 
7
- [Compare changes](https://github.com/codevise/pageflow-internal-links/compare/v0.1.0...v0.2.0)
7
+ [Compare changes](https://github.com/codevise/pageflow-internal-links/compare/1-3-stable...v1.4.0)
8
8
 
9
- - Use common page link attribute inline help texts
10
- ([#5](https://github.com/codevise/pageflow-internal-links/pull/5))
11
- - Add themeable page type pictograms
12
- ([#4](https://github.com/codevise/pageflow-internal-links/pull/4))
9
+ - Bug fix: Remove empty space in mosaic layout
10
+ ([#22](https://github.com/codevise/pageflow-internal-links/pull/22))
13
11
 
14
- ### Version 0.1.0
15
-
16
- 2015-10-23
17
-
18
- Initial release.
12
+ See
13
+ [1-3-stable branch](https://github.com/codevise/pageflow-internal-links/blob/1-3-stable/CHANGELOG.md)
14
+ for previous changes.
data/Gemfile CHANGED
@@ -1,10 +1,5 @@
1
1
  source 'https://rubygems.org'
2
2
 
3
3
  # Specify your gem's dependencies in chart.gemspec
4
+ gem 'rails', '~> 5.2.0' #Added specific rails version because the travis tests were failing due to dependancy problem. REDMIN#17649
4
5
  gemspec
5
-
6
- # Rails 4 compat
7
- gem 'activeadmin', :git => 'https://github.com/codevise/active_admin.git', :branch => 'rails4'
8
- gem 'ransack'
9
- gem 'inherited_resources', '1.4.1'
10
- gem 'formtastic', '2.3.0.rc2'
data/README.md CHANGED
@@ -1,6 +1,7 @@
1
1
  # Pageflow Internal Links
2
2
 
3
3
  [![Gem Version](https://badge.fury.io/rb/pageflow-internal-links.svg)](http://badge.fury.io/rb/pageflow-internal-links)
4
+ [![Build Status](https://travis-ci.org/codevise/pageflow-internal-links.svg?branch=master)](https://travis-ci.org/codevise/pageflow-internal-links)
4
5
 
5
6
  Page types for linking to pages inside a Pageflow.
6
7
 
@@ -15,7 +16,7 @@ Register the page types:
15
16
 
16
17
  # config/initializers/pageflow.rb
17
18
  Pageflow.configure do |config|
18
- config.page_types.register(Pageflow::InternalLinks.grid_page_type)
19
+ config.plugin(Pageflow::InternalLinks.plugin)
19
20
  end
20
21
 
21
22
  Include javascripts and stylesheets:
@@ -26,15 +27,15 @@ Include javascripts and stylesheets:
26
27
  # app/assets/javascripts/pageflow/editor.js
27
28
  //= require pageflow/internal_links/editor
28
29
 
29
- # app/assets/stylesheets/pageflow/application.css.scss
30
+ # app/assets/stylesheets/pageflow/application.scss
30
31
  @import "pageflow/internal_links";
31
32
 
32
- # app/assets/stylesheets/pageflow/editor.css.scss
33
+ # app/assets/stylesheets/pageflow/editor.scss
33
34
  @import "pageflow/internal_links/editor";
34
35
 
35
36
  Import the default theme additions:
36
37
 
37
- # app/assets/stylesheets/pageflow/themes/default.css.scss
38
+ # app/assets/stylesheets/pageflow/themes/default.scss
38
39
 
39
40
  @import "pageflow/internal_links/themes/default";
40
41
  @import "pageflow/internal_links/themes/default/list_as_multiple_choice";
@@ -51,7 +52,9 @@ Migrate the database:
51
52
 
52
53
  bundle exec rake db:migrate
53
54
 
54
- Restart the application server.
55
+ Restart the application server. The grid page type is available by
56
+ default. For the list page type enable the corresponding feature in
57
+ the tab *features*.
55
58
 
56
59
  ## Troubleshooting
57
60
 
@@ -5,11 +5,6 @@ pageflow.editor.pageTypes.register('internal_links_grid', {
5
5
  'nav li': {
6
6
  view: pageflow.internalLinks.GridItemEmbeddedView,
7
7
  options: {propertyName: 'linked_page_ids'}
8
- },
9
-
10
- '.background_image': {
11
- view: pageflow.BackgroundImageEmbeddedView,
12
- options: {propertyName: 'background_image_id'}
13
8
  }
14
9
  },
15
10
 
@@ -24,11 +19,6 @@ pageflow.editor.pageTypes.register('internal_links_list', {
24
19
  embeddedViews: {
25
20
  'nav': {
26
21
  view: pageflow.internalLinks.ListEmbeddedView
27
- },
28
-
29
- '.background_image': {
30
- view: pageflow.BackgroundImageEmbeddedView,
31
- options: {propertyName: 'background_image_id'}
32
22
  }
33
23
  },
34
24
 
@@ -1,6 +1,8 @@
1
1
  pageflow.internalLinks.PageLink = Backbone.Model.extend({
2
2
  i18nKey: 'pageflow/internal_links/page_link',
3
3
 
4
+ mixins: [pageflow.transientReferences],
5
+
4
6
  targetPage: function() {
5
7
  return pageflow.pages.getByPermaId(this.get('target_page_id'));
6
8
  },
@@ -9,6 +11,21 @@ pageflow.internalLinks.PageLink = Backbone.Model.extend({
9
11
  return this.get('label');
10
12
  },
11
13
 
14
+ thumbnailFile: function() {
15
+ var thumbnailFile = this.getReference('thumbnail_image_id',
16
+ pageflow.imageFiles);
17
+
18
+ if (thumbnailFile) {
19
+ return thumbnailFile;
20
+ }
21
+ else if (this.targetPage()) {
22
+ return this.targetPage().thumbnailFile();
23
+ }
24
+ else {
25
+ return null
26
+ }
27
+ },
28
+
12
29
  editPath: function() {
13
30
  return '/internal_links_pages/' + this.getRoutableId() + '/page_links/' + this.id;
14
31
  },
@@ -32,4 +49,4 @@ pageflow.internalLinks.PageLink = Backbone.Model.extend({
32
49
  remove: function() {
33
50
  this.collection.remove(this);
34
51
  }
35
- });
52
+ });
@@ -0,0 +1,17 @@
1
+ pageflow.internalLinks.PageLinkFileSelectionHandler = function(options) {
2
+ var page = pageflow.pages.get(options.id);
3
+ var pageLink = page.pageLinks().get(options.pageLinkId);
4
+
5
+ this.call = function(file) {
6
+ pageLink.setReference(options.attributeName, file);
7
+ };
8
+
9
+ this.getReferer = function() {
10
+ return '/internal_links_pages/' + options.id + '/page_links/' + options.pageLinkId;
11
+ };
12
+ };
13
+
14
+ pageflow.editor.registerFileSelectionHandler(
15
+ 'internalLinks.pageLink',
16
+ pageflow.internalLinks.PageLinkFileSelectionHandler
17
+ );
@@ -43,14 +43,24 @@ pageflow.internalLinks.EditPageLinkView = Backbone.Marionette.Layout.extend({
43
43
  },
44
44
 
45
45
  configure: function(configurationEditor) {
46
+ var pageLink = this.model;
47
+ var page = pageLink.collection.page;
48
+
46
49
  configurationEditor.tab('general', function() {
47
- this.input('label', pageflow.TextInputView);
48
- this.input('target_page_id', pageflow.PageLinkInputView);
49
- this.input('page_transition', pageflow.SelectInputView, {
50
- translationKeyPrefix: 'pageflow.page_transitions',
51
- includeBlank: true,
52
- blankTranslationKey: 'pageflow.internal_links.editor.views.edit_page_link_view.default_page_transition',
53
- values: pageflow.pageTransitions.names()
50
+ this.group('page_link');
51
+ this.input('thumbnail_image_id', pageflow.FileInputView, {
52
+ collection: pageflow.imageFiles,
53
+ positioning: false,
54
+
55
+ fileSelectionHandler: 'internalLinks.pageLink',
56
+ fileSelectionHandlerOptions: {
57
+ pageLinkId: pageLink.id,
58
+ },
59
+
60
+ visibleBinding: 'id',
61
+ visible: function() {
62
+ return page.get('template') === 'internal_links_list';
63
+ }
54
64
  });
55
65
  this.input('description', pageflow.TextAreaInputView, {
56
66
  size: 'short'
@@ -68,4 +78,4 @@ pageflow.internalLinks.EditPageLinkView = Backbone.Marionette.Layout.extend({
68
78
  goBack: function() {
69
79
  pageflow.editor.navigate('/pages/' + this.options.page.id + '/links', {trigger: true});
70
80
  }
71
- });
81
+ });
@@ -5,7 +5,7 @@ pageflow.internalLinks.GridConfigurationEditorView = pageflow.ConfigurationEdito
5
5
  });
6
6
 
7
7
  this.tab('files', function() {
8
- this.input('background_image_id', pageflow.FileInputView, {collection: pageflow.imageFiles});
8
+ this.group('background');
9
9
  this.input('thumbnail_image_id', pageflow.FileInputView, {
10
10
  collection: pageflow.imageFiles,
11
11
  positioning: false
@@ -5,7 +5,7 @@ pageflow.internalLinks.ListConfigurationEditorView = pageflow.ConfigurationEdito
5
5
  });
6
6
 
7
7
  this.tab('files', function() {
8
- this.input('background_image_id', pageflow.FileInputView, {collection: pageflow.imageFiles});
8
+ this.group('background');
9
9
  this.input('thumbnail_image_id', pageflow.FileInputView, {
10
10
  collection: pageflow.imageFiles,
11
11
  positioning: false
@@ -36,12 +36,17 @@ pageflow.internalLinks.ListItemEmbeddedView = Backbone.Marionette.ItemView.exten
36
36
  update: function() {
37
37
  var targetPage = this.targetPage();
38
38
 
39
- if (!('currentTargetPage' in this) || this.currentTargetPage !== targetPage) {
39
+ if (!('currentTargetPage' in this) ||
40
+ this.currentTargetPage !== targetPage ||
41
+ !('currentThumbnailImageId' in this) ||
42
+ this.currentThumbnailImageId != this.model.get('thumbnail_image_id')) {
43
+
40
44
  if (this.currentTargetPage) {
41
45
  this.stopListening(this.currentTargetPage.configuration, 'change:description');
42
46
  }
43
47
 
44
48
  this.currentTargetPage = targetPage;
49
+ this.currentThumbnailImageId = this.model.get('thumbnail_image_id');
45
50
 
46
51
  this.ui.link.attr('data-page', targetPage ? targetPage.get('perma_id') : null);
47
52
 
@@ -68,7 +73,7 @@ pageflow.internalLinks.ListItemEmbeddedView = Backbone.Marionette.ItemView.exten
68
73
  this.ui.description.html(this.model.get('description'));
69
74
  }
70
75
  else {
71
- this.ui.description.html(targetPage ? targetPage.configuration.get('description') : '');
76
+ this.ui.description.html(targetPage ? (targetPage.configuration.get('description') || '') : '');
72
77
  }
73
78
  },
74
79
 
@@ -80,7 +85,7 @@ pageflow.internalLinks.ListItemEmbeddedView = Backbone.Marionette.ItemView.exten
80
85
  }
81
86
 
82
87
  this.thumbnailView = this.subview(new pageflow.PageThumbnailView({
83
- model: targetPage,
88
+ model: this.model,
84
89
  imageUrlPropertyName: 'link_thumbnail_url'
85
90
  }));
86
91
 
@@ -95,9 +100,13 @@ pageflow.internalLinks.ListItemEmbeddedView = Backbone.Marionette.ItemView.exten
95
100
  this.$el.toggleClass('empty', !targetPage && !editable);
96
101
  this.$el.toggleClass('unassigned', !targetPage);
97
102
  this.$el.toggleClass('highlighted', !!this.model.get('highlighted'));
103
+ this.ui.link.toggleClass('custom_thumbnail', !!this.model.getReference('thumbnail_image_id', pageflow.imageFiles));
104
+ this.ui.link.toggleClass('no_custom_thumbnail', !this.model.getReference('thumbnail_image_id', pageflow.imageFiles));
105
+ this.ui.link.toggleClass('own_description', !!this.model.get('description'));
106
+ this.ui.link.toggleClass('no_own_description', !this.model.get('description'));
98
107
  },
99
108
 
100
109
  targetPage: function() {
101
110
  return this.model.targetPage();
102
111
  }
103
- });
112
+ });
@@ -1,4 +1,4 @@
1
- pageflow.pageType.register('internal_links_grid', _.extend({
1
+ pageflow.react.registerPageTypeWithDefaultBackground('internal_links_grid', _.extend({
2
2
  prepareNextPageTimeout: 0,
3
3
 
4
4
  enhance: function(pageElement, configuration) {
@@ -10,17 +10,8 @@ pageflow.pageType.register('internal_links_grid', _.extend({
10
10
  });
11
11
  },
12
12
 
13
- preload: function(pageElement, configuration) {
14
- return pageflow.preload.backgroundImage(pageElement.find('.background_image'));
15
- },
16
-
17
13
  update: function(pageElement, configuration) {
18
- pageElement.find('h2 .tagline').text(configuration.get('tagline') || '');
19
- pageElement.find('h2 .title').text(configuration.get('title') || '');
20
- pageElement.find('h2 .subtitle').text(configuration.get('subtitle') || '');
21
- pageElement.find('p').html(configuration.get('text') || '');
22
-
23
- this.updateCommonPageCssClasses(pageElement, configuration);
14
+ this.updateDefaultPageContent(pageElement, configuration);
24
15
 
25
16
  pageElement.find('.shadow').css({
26
17
  opacity: configuration.get('gradient_opacity') / 100
@@ -28,4 +19,4 @@ pageflow.pageType.register('internal_links_grid', _.extend({
28
19
 
29
20
  pageElement.find('nav').attr('data-layout', configuration.get('linked_pages_layout'));
30
21
  }
31
- }, pageflow.commonPageCssClasses));
22
+ }, pageflow.defaultPageContent));
@@ -1,4 +1,4 @@
1
- pageflow.pageType.register('internal_links_list', _.extend({
1
+ pageflow.react.registerPageTypeWithDefaultBackground('internal_links_list', _.extend({
2
2
  prepareNextPageTimeout: 0,
3
3
 
4
4
  enhance: function(pageElement, configuration) {
@@ -10,20 +10,35 @@ pageflow.pageType.register('internal_links_list', _.extend({
10
10
  });
11
11
  },
12
12
 
13
- preload: function(pageElement, configuration) {
14
- return pageflow.preload.backgroundImage(pageElement.find('.background_image'));
13
+ activated: function(pageElement) {
14
+ this._updateThumbnailHeights(pageElement);
15
15
  },
16
16
 
17
- update: function(pageElement, configuration) {
18
- pageElement.find('h2 .tagline').text(configuration.get('tagline') || '');
19
- pageElement.find('h2 .title').text(configuration.get('title') || '');
20
- pageElement.find('h2 .subtitle').text(configuration.get('subtitle') || '');
21
- pageElement.find('.contentText p').html(configuration.get('text') || '');
17
+ resize: function(pageElement) {
18
+ this._updateThumbnailHeights(pageElement);
19
+ },
22
20
 
23
- this.updateCommonPageCssClasses(pageElement, configuration);
21
+ update: function(pageElement, configuration) {
22
+ this.updateDefaultPageContent(pageElement, configuration);
24
23
 
25
24
  pageElement.find('.shadow').css({
26
25
  opacity: configuration.get('gradient_opacity') / 100
27
26
  });
27
+
28
+ this._updateThumbnailHeights(pageElement);
29
+ },
30
+
31
+ _updateThumbnailHeights: function(pageElement) {
32
+ pageElement.find('.page_link.custom_thumbnail').each(function() {
33
+ var thumbnail = $('.page_thumbnail', this);
34
+ var details = $('.details', this);
35
+
36
+ if ($(this).hasClass('own_description')) {
37
+ thumbnail.css('bottom', details.outerHeight() + 'px');
38
+ }
39
+ else {
40
+ thumbnail.css('bottom', '0');
41
+ }
42
+ });
28
43
  }
29
- }, pageflow.commonPageCssClasses));
44
+ }, pageflow.defaultPageContent));
@@ -1,29 +1,5 @@
1
1
  @include pageflow-page-type(internal_links_grid);
2
2
 
3
- .js .page .internal_links_page .scroller > div,
4
- .page .internal_links_page .scroller > div
5
- {
6
- @include pad_portrait {
7
- padding: 15% 8% 5% 8%;
8
- }
9
- }
10
-
11
- .js .page:first-child .internal_links_page .scroller > div,
12
- .js .page:first-child .content_and_background.internal_links_page > .page_header,
13
- .page:first-child .internal_links_page .scroller > div,
14
- .js .page:first-child .content_and_background.internal_links_page > .page_header {
15
- @include pad_portrait {
16
- padding: 110px 8% 5% 8%;
17
- }
18
- }
19
-
20
- .js .page .internal_links_page {
21
- .scroller > div {
22
- padding: 15% 14% 5% 8%;
23
- width: 100%;
24
- }
25
- }
26
-
27
3
  .internal_links_page {
28
4
  nav {
29
5
  position: relative;
@@ -75,12 +51,6 @@
75
51
  top: 50%;
76
52
  left: 0;
77
53
  width: 100%;
78
- color: white;
79
- text-transform: uppercase;
80
- text-align: center;
81
- line-height: 1.2em;
82
- letter-spacing: 0.05em;
83
- font-size: 0.8em;
84
54
  opacity: 0;
85
55
  z-index: 1;
86
56
  @include transform(translate3d(0,-50%,0));
@@ -95,7 +65,7 @@
95
65
  .placeholder,
96
66
  .thumbnail {
97
67
  &:after {
98
- opacity: 0.8;
68
+ opacity: 1;
99
69
  }
100
70
  }
101
71
  }
@@ -104,7 +74,6 @@
104
74
  .thumbnail {
105
75
  &:after {
106
76
  opacity: 0;
107
- background-color: black;
108
77
  width: 100%;
109
78
  height: 100%;
110
79
  position: absolute;
@@ -124,6 +93,7 @@
124
93
  background-position: center;
125
94
  background-size: cover;
126
95
  position: relative;
96
+ background-repeat: no-repeat;
127
97
 
128
98
  div {
129
99
  position: absolute;
@@ -150,11 +120,6 @@
150
120
  padding-top: 58.5%;
151
121
  }
152
122
 
153
- .title {
154
- font-size: 1em;
155
- line-height: 1.4em;
156
- }
157
-
158
123
  &.empty {
159
124
  padding-top: 22.815%;
160
125
 
@@ -168,6 +133,7 @@
168
133
  @extend %hero;
169
134
  float: left;
170
135
  margin: 0;
136
+ padding: 0 0.8% 0 0px;
171
137
 
172
138
  @include phone {
173
139
  float: none;
@@ -209,20 +175,6 @@
209
175
  }
210
176
  }
211
177
 
212
- .invert .internal_links_page {
213
- nav {
214
- .thumbnail, .placeholder {
215
- &:after {
216
- background-color: white;
217
- }
218
- }
219
-
220
- .title {
221
- color: black;
222
- }
223
- }
224
- }
225
-
226
178
  .text_position_right .internal_links_page {
227
179
  nav {
228
180
  margin-left: auto;