pageflow-external-links 0.3.0 → 0.4.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +5 -13
- data/.gitignore +1 -0
- data/.sassdocrc +2 -0
- data/.travis.yml +13 -0
- data/CHANGELOG.md +47 -1
- data/Gemfile.ci +3 -0
- data/README.md +5 -0
- data/Rakefile +3 -0
- data/app/assets/images/pageflow/external_links/themes/default/pictograms/sprite.png +0 -0
- data/app/assets/images/pageflow/external_links/themes/default/pictograms/wide.png +0 -0
- data/app/assets/javascripts/pageflow/external_links/editor/views/edit_site_view.js +4 -1
- data/app/assets/javascripts/pageflow/external_links/editor/views/embedded/list_embedded_view.js +5 -0
- data/app/assets/javascripts/pageflow/external_links/page_type.js +57 -40
- data/app/assets/stylesheets/pageflow/external_links/themes/default.scss +96 -0
- data/app/assets/stylesheets/pageflow/external_links/themes/legacy.scss +34 -0
- data/app/assets/stylesheets/pageflow/external_links.css.scss +22 -27
- data/app/views/pageflow/external_links/page.html +2 -2
- data/lib/pageflow/external_links/engine.rb +2 -2
- data/lib/pageflow/external_links/version.rb +5 -0
- data/pageflow-external-links.gemspec +9 -2
- metadata +60 -24
checksums.yaml
CHANGED
@@ -1,15 +1,7 @@
|
|
1
1
|
---
|
2
|
-
|
3
|
-
metadata.gz:
|
4
|
-
|
5
|
-
data.tar.gz: !binary |-
|
6
|
-
ZDM4MzFjNjUxMjUzYTFjZGZiZDEyN2Q1MWMzZDA1MWViY2I4NzFhYw==
|
2
|
+
SHA1:
|
3
|
+
metadata.gz: 023d909bf7419da1fd81b165c77b72cbfa12bae5
|
4
|
+
data.tar.gz: 7c0b0d54824113a7b30d2b614500d3f33da6d227
|
7
5
|
SHA512:
|
8
|
-
metadata.gz:
|
9
|
-
|
10
|
-
ZmFlMDUyODRiYTA4YjliYzY4YjAzM2M3NTNjZWFiYjg0OWZmYTZlZjBkNmFl
|
11
|
-
YjYwYjE2YTI0YmQxYzgyYzFjMzMzOGVjZmY2Yzg5Y2E2YTY2YjA=
|
12
|
-
data.tar.gz: !binary |-
|
13
|
-
NzVjMDc1MDM0NjI2MjA4OWU4YjA0YTc5Y2JiOWUwMzdiNDIzMDdiMGFmNzI2
|
14
|
-
NGQwY2Q4YWYyZDliNDBmMDRlMjA2MWVkODkzOTExOTRhYzIzMzlkYzQwZWUy
|
15
|
-
NjAxNGM2Njc0ZTQ0ZTEyNjk5YWEwZWQ4ZDY3YzIwZjYyNTUwYjM=
|
6
|
+
metadata.gz: 508dea1ffc1e582d515f2f676cc0fb3b10a1b91335e90f5b46ec663c5a04d35f487298988c61a16204874ac8cd1118e5d7b228d90833e66f6a00fa6d5a3560c3
|
7
|
+
data.tar.gz: e78fe338dfa5d1d21f10a0fc3fab1e99b76c25a8129f168005422a0cf4ccfad8fde94ca945b3f186c884b4c0eff96837da9d20f1c9670234da700aa1446e7b31
|
data/.gitignore
CHANGED
data/.sassdocrc
ADDED
data/.travis.yml
ADDED
@@ -0,0 +1,13 @@
|
|
1
|
+
language: ruby
|
2
|
+
gemfile: Gemfile.ci
|
3
|
+
|
4
|
+
# User container based travis infrastructure which allows caching
|
5
|
+
# features for open source projects.
|
6
|
+
sudo: false
|
7
|
+
cache: bundler
|
8
|
+
|
9
|
+
before_install:
|
10
|
+
- nvm install stable
|
11
|
+
|
12
|
+
script:
|
13
|
+
- bundle exec publish-pageflow-theme-doc
|
data/CHANGELOG.md
CHANGED
@@ -1,6 +1,52 @@
|
|
1
1
|
# CHANGELOG
|
2
2
|
|
3
|
-
###
|
3
|
+
### Version 0.4.0
|
4
|
+
|
5
|
+
2016-06-09
|
6
|
+
|
7
|
+
[Compare changes](https://github.com/codevise/pageflow-external-links/compare/v0.3.0...v0.4.0)
|
8
|
+
|
9
|
+
##### Breaking Changes
|
10
|
+
|
11
|
+
- There is now a configurable default theme.
|
12
|
+
([#24](https://github.com/codevise/pageflow-external-links/pull/24),
|
13
|
+
[#21](https://github.com/codevise/pageflow-external-links/pull/21),
|
14
|
+
[#20](https://github.com/codevise/pageflow-external-links/pull/20),
|
15
|
+
[#25](https://github.com/codevise/pageflow-external-links/pull/25))
|
16
|
+
|
17
|
+
If you only use `pageflow/themes/default.scss` in your application,
|
18
|
+
simply add the following line:
|
19
|
+
|
20
|
+
@import "pageflow/external_links/themes/default";
|
21
|
+
|
22
|
+
See the link in the readme, for a complete list of theme settings.
|
23
|
+
|
24
|
+
In case you created a custom theme for this page type, add the
|
25
|
+
following line to the top of your theme stylesheet:
|
26
|
+
|
27
|
+
@import "pageflow/external_links/themes/legacy";
|
28
|
+
|
29
|
+
This ensures that all styles that have been moved to the new default
|
30
|
+
theme from `pageflow/external_links.scss` are still present inside
|
31
|
+
the custom theme.
|
32
|
+
|
33
|
+
##### Other Changes
|
34
|
+
|
35
|
+
- Flexible height for link boxes
|
36
|
+
([#18](https://github.com/codevise/pageflow-external-links/pull/18))
|
37
|
+
- Disable links inside link description
|
38
|
+
([#23](https://github.com/codevise/pageflow-external-links/pull/23))
|
39
|
+
- Use translations from `pageflow-public-i18n` gem.
|
40
|
+
([#16](https://github.com/codevise/pageflow-external-links/pull/16),
|
41
|
+
[#19](https://github.com/codevise/pageflow-external-links/pull/19))
|
42
|
+
- Publish sassdoc to github pages via travis.
|
43
|
+
([#22](https://github.com/codevise/pageflow-external-links/pull/22))
|
44
|
+
- Add .idea entry to .gitignore
|
45
|
+
([#17](https://github.com/codevise/pageflow-external-links/pull/17))
|
46
|
+
|
47
|
+
### 0.3.0
|
48
|
+
|
49
|
+
2015-10-23
|
4
50
|
|
5
51
|
- Site reference input and site selection api.
|
6
52
|
([#15](https://github.com/codevise/pageflow-external-links/pull/15))
|
data/Gemfile.ci
ADDED
data/README.md
CHANGED
@@ -4,6 +4,8 @@
|
|
4
4
|
|
5
5
|
Page type to display links to external pages.
|
6
6
|
|
7
|
+
* [Theme Settings](http://codevise.github.io/pageflow-external-links/theme/master/)
|
8
|
+
|
7
9
|
## Installation
|
8
10
|
|
9
11
|
Add this line to your application's `Gemfile`:
|
@@ -30,6 +32,9 @@ Include javascripts and stylesheets:
|
|
30
32
|
# app/assets/stylesheets/pageflow/editor.css.scss
|
31
33
|
@import "pageflow/external_links/editor";
|
32
34
|
|
35
|
+
# app/assets/stylesheets/pageflow/themes/default.css.scss
|
36
|
+
@import "pageflow/external_links/themes/default";
|
37
|
+
|
33
38
|
Mount the routes in `config/routes.rb`:
|
34
39
|
|
35
40
|
authenticated do
|
data/Rakefile
CHANGED
Binary file
|
@@ -40,7 +40,10 @@ pageflow.externalLinks.EditSiteView = Backbone.Marionette.Layout.extend({
|
|
40
40
|
this.input('title', pageflow.TextInputView, {
|
41
41
|
required: true
|
42
42
|
});
|
43
|
-
this.input('description', pageflow.TextAreaInputView, {
|
43
|
+
this.input('description', pageflow.TextAreaInputView, {
|
44
|
+
size: 'short',
|
45
|
+
disableLinks: true
|
46
|
+
});
|
44
47
|
});
|
45
48
|
|
46
49
|
if (this.options.returnTo === 'page' && this.options.page) {
|
data/app/assets/javascripts/pageflow/external_links/editor/views/embedded/list_embedded_view.js
CHANGED
@@ -10,6 +10,10 @@ pageflow.externalLinks.ListEmbeddedView = Backbone.Marionette.View.extend({
|
|
10
10
|
this.refreshScroller();
|
11
11
|
});
|
12
12
|
|
13
|
+
this.listenTo(pageflow.externalLinks.sites, 'change', function() {
|
14
|
+
this.$el.data('scroller').updateHeight();
|
15
|
+
});
|
16
|
+
|
13
17
|
this.refreshScroller();
|
14
18
|
|
15
19
|
return this;
|
@@ -18,5 +22,6 @@ pageflow.externalLinks.ListEmbeddedView = Backbone.Marionette.View.extend({
|
|
18
22
|
refreshScroller: function() {
|
19
23
|
this.$el.data('scroller').refresh();
|
20
24
|
this.$el.data('scroller').checkDisable();
|
25
|
+
this.$el.data('scroller').updateHeight();
|
21
26
|
}
|
22
27
|
});
|
@@ -5,11 +5,11 @@ pageflow.pageType.register('external_links', _.extend({
|
|
5
5
|
|
6
6
|
enhance: function(pageElement, configuration) {
|
7
7
|
var scrollerElement = pageElement.find('.ext-links'),
|
8
|
-
|
9
|
-
|
10
|
-
|
8
|
+
that = this,
|
9
|
+
innerScroller = pageElement.find('#horizontal_scroller'),
|
10
|
+
contentWrapper = pageElement.find('.contentWrapper');
|
11
11
|
|
12
|
-
this.
|
12
|
+
this.linkScroller = new IScroll(scrollerElement[0], {
|
13
13
|
mouseWheel: true,
|
14
14
|
bounce: false,
|
15
15
|
keyBindings: true,
|
@@ -19,78 +19,91 @@ pageflow.pageType.register('external_links', _.extend({
|
|
19
19
|
eventPassthrough: true
|
20
20
|
});
|
21
21
|
|
22
|
-
this.
|
22
|
+
this.linkScroller.checkDisable = function() {
|
23
23
|
that._checkForIScroll(scrollerElement, innerScroller, pageElement.find('.arrow-forward'), pageElement.find('.arrow-back'), pageElement);
|
24
24
|
};
|
25
|
-
scrollerElement.data('scroller', this.scroller);
|
26
25
|
|
27
|
-
|
28
|
-
that.
|
29
|
-
}
|
26
|
+
this.linkScroller.updateHeight = function() {
|
27
|
+
that._adjustHeight(pageElement);
|
28
|
+
};
|
30
29
|
|
30
|
+
scrollerElement.data('scroller', this.linkScroller);
|
31
|
+
|
32
|
+
that.linkScroller.on('scroll', function() {
|
33
|
+
that.linkScroller.checkDisable();
|
34
|
+
});
|
31
35
|
|
32
36
|
/* Arrows for Gallery */
|
33
37
|
|
34
38
|
pageElement.find('.arrow-back').on('click', function(e) {
|
35
|
-
var nextElement = Math.round((that.
|
36
|
-
if(nextElement <= 1
|
37
|
-
that.
|
39
|
+
var nextElement = Math.round((that.linkScroller.x / -260) - (scrollerElement.width() / 260 / 2), 10);
|
40
|
+
if (nextElement <= 1) {
|
41
|
+
that.linkScroller.scrollTo(0, 0, 500, IScroll.ease.quadratic);
|
38
42
|
}
|
39
43
|
else {
|
40
|
-
that.
|
44
|
+
that.linkScroller.scrollToElement($(".page.active #horizontal_scroller a")[nextElement], 500, 0, 0, IScroll.ease.quadratic);
|
41
45
|
}
|
42
|
-
that.
|
46
|
+
that.linkScroller.checkDisable();
|
43
47
|
e.stopPropagation();
|
44
48
|
return false;
|
45
49
|
});
|
46
50
|
|
47
51
|
pageElement.find('.arrow-forward').on('click', function(e) {
|
48
|
-
var nextElement = Math.round((that.
|
49
|
-
if(nextElement == innerScroller.find('a').length -1
|
50
|
-
that.
|
52
|
+
var nextElement = Math.round((that.linkScroller.x / -260) + (scrollerElement.width() / 260 / 2), 10);
|
53
|
+
if (nextElement == innerScroller.find('a').length - 1) {
|
54
|
+
that.linkScroller.scrollTo(that.linkScroller.maxScrollX, 0, 500, IScroll.ease.quadratic);
|
51
55
|
}
|
52
56
|
else {
|
53
|
-
that.
|
57
|
+
that.linkScroller.scrollToElement($(".page.active #horizontal_scroller a")[nextElement]);
|
54
58
|
}
|
55
|
-
that.
|
59
|
+
that.linkScroller.checkDisable();
|
56
60
|
e.stopPropagation();
|
57
61
|
return false;
|
58
62
|
});
|
59
63
|
},
|
60
64
|
|
61
65
|
resize: function(pageElement, configuration) {
|
62
|
-
this.
|
63
|
-
this.
|
66
|
+
this.linkScroller.refresh();
|
67
|
+
this.linkScroller.checkDisable();
|
64
68
|
},
|
65
69
|
|
66
70
|
_checkForIScroll: function(outerElement, innerElement, arrowForward, arrowBack, pageElement) {
|
67
|
-
if(pageElement.width() <= 700) {
|
68
|
-
this.
|
71
|
+
if (pageElement.width() <= 700) {
|
72
|
+
this.linkScroller.disable();
|
69
73
|
}
|
70
74
|
else {
|
71
|
-
if(innerElement.width() <= outerElement.width()) {
|
72
|
-
this.
|
73
|
-
arrowForward.css('display','none');
|
74
|
-
arrowBack.css('display','none');
|
75
|
+
if (innerElement.width() <= outerElement.width()) {
|
76
|
+
this.linkScroller.disable();
|
77
|
+
arrowForward.css('display', 'none');
|
78
|
+
arrowBack.css('display', 'none');
|
75
79
|
}
|
76
80
|
else {
|
77
|
-
this.
|
78
|
-
if(this.
|
79
|
-
arrowForward.css('display','none');
|
81
|
+
this.linkScroller.enable();
|
82
|
+
if (this.linkScroller.x == this.linkScroller.maxScrollX) {
|
83
|
+
arrowForward.css('display', 'none');
|
80
84
|
}
|
81
85
|
else {
|
82
|
-
arrowForward.css('display','block');
|
86
|
+
arrowForward.css('display', 'block');
|
83
87
|
}
|
84
|
-
if(this.
|
85
|
-
arrowBack.css('display','none');
|
88
|
+
if (this.linkScroller.x === 0) {
|
89
|
+
arrowBack.css('display', 'none');
|
86
90
|
}
|
87
91
|
else {
|
88
|
-
arrowBack.css('display','block');
|
92
|
+
arrowBack.css('display', 'block');
|
89
93
|
}
|
90
94
|
}
|
91
95
|
}
|
92
96
|
},
|
93
97
|
|
98
|
+
_adjustHeight: function(pageElement) {
|
99
|
+
var element = pageElement.find('.ext-links');
|
100
|
+
var child = pageElement.find('.ext-links > div');
|
101
|
+
|
102
|
+
element.height(child.height());
|
103
|
+
|
104
|
+
this.scroller.refresh();
|
105
|
+
},
|
106
|
+
|
94
107
|
prepare: function(pageElement, configuration) {
|
95
108
|
},
|
96
109
|
|
@@ -99,16 +112,19 @@ pageflow.pageType.register('external_links', _.extend({
|
|
99
112
|
},
|
100
113
|
|
101
114
|
activating: function(pageElement, configuration) {
|
102
|
-
this.
|
103
|
-
this.
|
115
|
+
this.linkScroller.refresh();
|
116
|
+
this.linkScroller.checkDisable();
|
104
117
|
},
|
105
118
|
|
106
119
|
activated: function(pageElement, configuration) {
|
120
|
+
this._adjustHeight(pageElement);
|
107
121
|
},
|
108
122
|
|
109
|
-
deactivating: function(pageElement, configuration) {
|
123
|
+
deactivating: function(pageElement, configuration) {
|
124
|
+
},
|
110
125
|
|
111
|
-
deactivated: function(pageElement, configuration) {
|
126
|
+
deactivated: function(pageElement, configuration) {
|
127
|
+
},
|
112
128
|
|
113
129
|
update: function(pageElement, configuration) {
|
114
130
|
pageElement.find('h2 .tagline').text(configuration.get('tagline') || '');
|
@@ -121,8 +137,9 @@ pageflow.pageType.register('external_links', _.extend({
|
|
121
137
|
pageElement.find('.shadow').css({
|
122
138
|
opacity: configuration.get('gradient_opacity') / 100
|
123
139
|
});
|
124
|
-
|
125
|
-
this.
|
140
|
+
|
141
|
+
this.linkScroller.refresh();
|
142
|
+
this.linkScroller.checkDisable();
|
126
143
|
},
|
127
144
|
|
128
145
|
embeddedEditorViews: function() {
|
@@ -0,0 +1,96 @@
|
|
1
|
+
/// Typography settings for external link items.
|
2
|
+
$external-links-item-typography: () !default;
|
3
|
+
|
4
|
+
/// Color of the item's background.
|
5
|
+
$external-links-item-background-color: rgba(20, 20, 20, 0.8) !default;
|
6
|
+
|
7
|
+
/// Color of the item's background.
|
8
|
+
$external-links-item-active-background-color: rgba(20, 20, 20, 1) !default;
|
9
|
+
|
10
|
+
/// Color of the item's text.
|
11
|
+
$external-links-item-text-color: #fff !default;
|
12
|
+
|
13
|
+
/// Color of the item's text.
|
14
|
+
$external-links-item-active-text-color: #fff !default;
|
15
|
+
|
16
|
+
/// Typography settings for the title of external link items.
|
17
|
+
$external-links-item-title-typography: () !default;
|
18
|
+
|
19
|
+
/// Color of the item's title text.
|
20
|
+
$external-links-item-title-color: null !default;
|
21
|
+
|
22
|
+
/// Color of the title text when the item is hovered.
|
23
|
+
$external-links-item-active-title-color: $external-links-item-title-color !default;
|
24
|
+
|
25
|
+
/// Typography settings for the description text of external link
|
26
|
+
/// items.
|
27
|
+
$external-links-item-description-typography: () !default;
|
28
|
+
|
29
|
+
/// Color of the item's description text.
|
30
|
+
$external-links-item-description-color: null !default;
|
31
|
+
|
32
|
+
/// Color of the description text when the item is hovered.
|
33
|
+
$external-links-item-active-description-color: $external-links-item-description-color !default;
|
34
|
+
|
35
|
+
/// Underline item text on hover.
|
36
|
+
$external-links-item-hover-underline: true !default;
|
37
|
+
|
38
|
+
/// Padding around the text inside an item.
|
39
|
+
$external-links-item-padding: 20px !default;
|
40
|
+
|
41
|
+
@include pageflow-page-type-pictograms("external_links");
|
42
|
+
|
43
|
+
.external-links-page {
|
44
|
+
.link-item {
|
45
|
+
background-color: $external-links-item-background-color;
|
46
|
+
color: $external-links-item-text-color;
|
47
|
+
text-decoration: none;
|
48
|
+
|
49
|
+
&:hover {
|
50
|
+
background-color: $external-links-item-active-background-color;
|
51
|
+
color: $external-links-item-active-text-color;
|
52
|
+
|
53
|
+
.link-title {
|
54
|
+
color: $external-links-item-active-title-color;
|
55
|
+
|
56
|
+
@if $external-links-item-hover-underline {
|
57
|
+
text-decoration: underline;
|
58
|
+
}
|
59
|
+
}
|
60
|
+
|
61
|
+
.link-description {
|
62
|
+
color: $external-links-item-active-description-color;
|
63
|
+
}
|
64
|
+
}
|
65
|
+
|
66
|
+
p {
|
67
|
+
@include typography(
|
68
|
+
$external-links-item-typography,
|
69
|
+
(
|
70
|
+
line-height: 1.3em
|
71
|
+
)
|
72
|
+
);
|
73
|
+
}
|
74
|
+
}
|
75
|
+
|
76
|
+
.link-details {
|
77
|
+
margin: $external-links-item-padding;
|
78
|
+
}
|
79
|
+
|
80
|
+
.link-title {
|
81
|
+
color: $external-links-item-title-color;
|
82
|
+
@include typography(
|
83
|
+
$external-links-item-title-typography,
|
84
|
+
(
|
85
|
+
font-size: 1.2em,
|
86
|
+
font-weight: bold,
|
87
|
+
margin-bottom: $external-links-item-padding
|
88
|
+
)
|
89
|
+
);
|
90
|
+
}
|
91
|
+
|
92
|
+
.link-description {
|
93
|
+
color: $external-links-item-description-color;
|
94
|
+
@include typography($external-links-item-description-typography);
|
95
|
+
}
|
96
|
+
}
|
@@ -0,0 +1,34 @@
|
|
1
|
+
@include pageflow-page-type-pictograms("external_links");
|
2
|
+
|
3
|
+
.external-links-page {
|
4
|
+
.arrow-forward, .arrow-back {
|
5
|
+
text-decoration: none;
|
6
|
+
}
|
7
|
+
|
8
|
+
.link-item {
|
9
|
+
background-color: rgb(20, 20, 20);
|
10
|
+
background-color: rgba(20, 20, 20, 0.8);
|
11
|
+
text-decoration: none;
|
12
|
+
color: white;
|
13
|
+
|
14
|
+
&:hover {
|
15
|
+
text-decoration: underline;
|
16
|
+
background-color: rgba(20, 20, 20, 1);
|
17
|
+
}
|
18
|
+
|
19
|
+
.link-details {
|
20
|
+
margin: 20px;
|
21
|
+
text-decoration: none;
|
22
|
+
color: #fff;
|
23
|
+
|
24
|
+
p {
|
25
|
+
line-height: 1.3em;
|
26
|
+
}
|
27
|
+
|
28
|
+
.link-title {
|
29
|
+
font-size: 1.2em;
|
30
|
+
font-weight: bold;
|
31
|
+
}
|
32
|
+
}
|
33
|
+
}
|
34
|
+
}
|
@@ -3,18 +3,26 @@
|
|
3
3
|
.external-links-page {
|
4
4
|
|
5
5
|
.ext-links {
|
6
|
-
height: 400px;
|
7
6
|
pointer-events: all;
|
8
7
|
position: relative;
|
8
|
+
margin-left: -10px;
|
9
9
|
@include transition(opacity 0.5s);
|
10
10
|
|
11
11
|
.hideText & {
|
12
|
-
@include transform(translate(-100%,0));
|
12
|
+
@include transform(translate(-100%, 0));
|
13
13
|
}
|
14
14
|
|
15
15
|
@include phone {
|
16
16
|
height: auto;
|
17
17
|
}
|
18
|
+
|
19
|
+
> div {
|
20
|
+
@include desktop {
|
21
|
+
display: table;
|
22
|
+
border-collapse: separate;
|
23
|
+
border-spacing: 10px;
|
24
|
+
}
|
25
|
+
}
|
18
26
|
}
|
19
27
|
|
20
28
|
.arrow-forward, .arrow-back {
|
@@ -22,7 +30,6 @@
|
|
22
30
|
top: 100%;
|
23
31
|
width: 80px;
|
24
32
|
height: 80px;
|
25
|
-
text-decoration: none;
|
26
33
|
pointer-events: all;
|
27
34
|
|
28
35
|
&:before {
|
@@ -53,7 +60,6 @@
|
|
53
60
|
}
|
54
61
|
}
|
55
62
|
|
56
|
-
|
57
63
|
@include phone {
|
58
64
|
display: none !important;
|
59
65
|
}
|
@@ -91,20 +97,18 @@
|
|
91
97
|
.link-item {
|
92
98
|
display: inline-block;
|
93
99
|
position: relative;
|
94
|
-
width: 24%;
|
95
100
|
width: 250px;
|
96
|
-
|
97
|
-
background-color: rgba(20,20,20, 0.8);
|
101
|
+
max-width: 250px;
|
98
102
|
vertical-align: top;
|
99
|
-
max-height: 400px;
|
100
|
-
height: 400px;
|
101
103
|
overflow: hidden;
|
102
104
|
text-align: left;
|
103
105
|
margin-right: 10px;
|
104
|
-
text-decoration: none;
|
105
|
-
color: white;
|
106
106
|
@include transition(0.3s);
|
107
107
|
|
108
|
+
@include desktop {
|
109
|
+
display: table-cell;
|
110
|
+
}
|
111
|
+
|
108
112
|
&.no_text {
|
109
113
|
height: auto;
|
110
114
|
|
@@ -114,8 +118,6 @@
|
|
114
118
|
}
|
115
119
|
|
116
120
|
&:hover {
|
117
|
-
text-decoration: underline;
|
118
|
-
background-color: rgba(20,20,20, 1);
|
119
121
|
@include transform(scale(1.05));
|
120
122
|
|
121
123
|
@include phone {
|
@@ -124,10 +126,8 @@
|
|
124
126
|
}
|
125
127
|
@include phone {
|
126
128
|
width: 230px;
|
127
|
-
|
129
|
+
max-width: 230px;
|
128
130
|
margin-bottom: 10px;
|
129
|
-
height: 290px;
|
130
|
-
max-height: 290px;
|
131
131
|
margin-right: 5px;
|
132
132
|
margin-left: 5px;
|
133
133
|
}
|
@@ -138,9 +138,13 @@
|
|
138
138
|
.link-thumbnail {
|
139
139
|
background-repeat: no-repeat;
|
140
140
|
background-size: cover;
|
141
|
-
width: 100%;
|
142
141
|
padding-top: 56.25%;
|
143
142
|
position: relative;
|
143
|
+
width: 250px;
|
144
|
+
|
145
|
+
@include phone {
|
146
|
+
width: 230px;
|
147
|
+
}
|
144
148
|
|
145
149
|
.file_thumbnail {
|
146
150
|
background-size: cover;
|
@@ -153,24 +157,15 @@
|
|
153
157
|
}
|
154
158
|
|
155
159
|
.link-details {
|
156
|
-
margin: 20px;
|
157
|
-
text-decoration: none;
|
158
|
-
color: #fff;
|
159
|
-
|
160
160
|
p {
|
161
161
|
width: 100%;
|
162
162
|
white-space: normal;
|
163
|
-
line-height: 1.3em;
|
164
163
|
}
|
165
164
|
|
166
165
|
.link-title {
|
167
|
-
font-size: 1.2em;
|
168
|
-
font-weight: bold;
|
169
|
-
text-overflow: ellipsis;
|
170
166
|
width: 100%;
|
171
|
-
white-space: nowrap;
|
172
167
|
overflow: hidden;
|
173
168
|
}
|
174
169
|
}
|
175
170
|
}
|
176
|
-
}
|
171
|
+
}
|
@@ -25,8 +25,8 @@
|
|
25
25
|
<%= render Pageflow::ExternalLinks::Site.from_perma_ids(@entry.try(:revision), configuration['linked_external_site_perma_ids']) %>
|
26
26
|
</div>
|
27
27
|
</div>
|
28
|
-
<a href="#" class="arrow-forward"><span class="hint"
|
29
|
-
<a href="#" class="arrow-back"><span class="hint"
|
28
|
+
<a href="#" class="arrow-forward"><span class="hint"><%= t('pageflow.public.forward') %></span></a>
|
29
|
+
<a href="#" class="arrow-back"><span class="hint"><%= t('pageflow.public.back') %></span></a>
|
30
30
|
</div>
|
31
31
|
</div>
|
32
32
|
</div>
|
@@ -1,8 +1,11 @@
|
|
1
1
|
# coding: utf-8
|
2
|
+
lib = File.expand_path('../lib', __FILE__)
|
3
|
+
$LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
|
4
|
+
require 'pageflow/external_links/version'
|
2
5
|
|
3
6
|
Gem::Specification.new do |spec|
|
4
7
|
spec.name = "pageflow-external-links"
|
5
|
-
spec.version =
|
8
|
+
spec.version = Pageflow::ExternalLinks::VERSION
|
6
9
|
spec.authors = ["Tim Fischbach"]
|
7
10
|
spec.email = ["tfischbach@codevise.de"]
|
8
11
|
spec.summary = "Pageflow Page Type for links to external sites"
|
@@ -14,14 +17,18 @@ Gem::Specification.new do |spec|
|
|
14
17
|
spec.test_files = spec.files.grep(%r{^(test|spec|features)/})
|
15
18
|
spec.require_paths = ["lib"]
|
16
19
|
|
17
|
-
spec.add_runtime_dependency 'pageflow', '~> 0.
|
20
|
+
spec.add_runtime_dependency 'pageflow', '~> 0.10'
|
18
21
|
|
19
22
|
# Using translations from rails locales in javascript code.
|
20
23
|
spec.add_runtime_dependency 'i18n-js'
|
24
|
+
spec.add_runtime_dependency 'pageflow-public-i18n', '~> 1.0'
|
21
25
|
|
22
26
|
spec.add_development_dependency "bundler"
|
23
27
|
spec.add_development_dependency "rake"
|
24
28
|
spec.add_development_dependency "rspec-rails", "~> 2.0"
|
25
29
|
spec.add_development_dependency 'factory_girl_rails'
|
26
30
|
spec.add_development_dependency "sqlite3"
|
31
|
+
|
32
|
+
# Semantic versioning rake tasks
|
33
|
+
spec.add_development_dependency 'semmy', '~> 0.2'
|
27
34
|
end
|
metadata
CHANGED
@@ -1,113 +1,141 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: pageflow-external-links
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.4.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Tim Fischbach
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2016-06-09 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: pageflow
|
15
15
|
requirement: !ruby/object:Gem::Requirement
|
16
16
|
requirements:
|
17
|
-
- - ~>
|
17
|
+
- - "~>"
|
18
18
|
- !ruby/object:Gem::Version
|
19
|
-
version: '0.
|
19
|
+
version: '0.10'
|
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: '0.
|
26
|
+
version: '0.10'
|
27
27
|
- !ruby/object:Gem::Dependency
|
28
28
|
name: i18n-js
|
29
29
|
requirement: !ruby/object:Gem::Requirement
|
30
30
|
requirements:
|
31
|
-
- -
|
31
|
+
- - ">="
|
32
32
|
- !ruby/object:Gem::Version
|
33
33
|
version: '0'
|
34
34
|
type: :runtime
|
35
35
|
prerelease: false
|
36
36
|
version_requirements: !ruby/object:Gem::Requirement
|
37
37
|
requirements:
|
38
|
-
- -
|
38
|
+
- - ">="
|
39
39
|
- !ruby/object:Gem::Version
|
40
40
|
version: '0'
|
41
|
+
- !ruby/object:Gem::Dependency
|
42
|
+
name: pageflow-public-i18n
|
43
|
+
requirement: !ruby/object:Gem::Requirement
|
44
|
+
requirements:
|
45
|
+
- - "~>"
|
46
|
+
- !ruby/object:Gem::Version
|
47
|
+
version: '1.0'
|
48
|
+
type: :runtime
|
49
|
+
prerelease: false
|
50
|
+
version_requirements: !ruby/object:Gem::Requirement
|
51
|
+
requirements:
|
52
|
+
- - "~>"
|
53
|
+
- !ruby/object:Gem::Version
|
54
|
+
version: '1.0'
|
41
55
|
- !ruby/object:Gem::Dependency
|
42
56
|
name: bundler
|
43
57
|
requirement: !ruby/object:Gem::Requirement
|
44
58
|
requirements:
|
45
|
-
- -
|
59
|
+
- - ">="
|
46
60
|
- !ruby/object:Gem::Version
|
47
61
|
version: '0'
|
48
62
|
type: :development
|
49
63
|
prerelease: false
|
50
64
|
version_requirements: !ruby/object:Gem::Requirement
|
51
65
|
requirements:
|
52
|
-
- -
|
66
|
+
- - ">="
|
53
67
|
- !ruby/object:Gem::Version
|
54
68
|
version: '0'
|
55
69
|
- !ruby/object:Gem::Dependency
|
56
70
|
name: rake
|
57
71
|
requirement: !ruby/object:Gem::Requirement
|
58
72
|
requirements:
|
59
|
-
- -
|
73
|
+
- - ">="
|
60
74
|
- !ruby/object:Gem::Version
|
61
75
|
version: '0'
|
62
76
|
type: :development
|
63
77
|
prerelease: false
|
64
78
|
version_requirements: !ruby/object:Gem::Requirement
|
65
79
|
requirements:
|
66
|
-
- -
|
80
|
+
- - ">="
|
67
81
|
- !ruby/object:Gem::Version
|
68
82
|
version: '0'
|
69
83
|
- !ruby/object:Gem::Dependency
|
70
84
|
name: rspec-rails
|
71
85
|
requirement: !ruby/object:Gem::Requirement
|
72
86
|
requirements:
|
73
|
-
- - ~>
|
87
|
+
- - "~>"
|
74
88
|
- !ruby/object:Gem::Version
|
75
89
|
version: '2.0'
|
76
90
|
type: :development
|
77
91
|
prerelease: false
|
78
92
|
version_requirements: !ruby/object:Gem::Requirement
|
79
93
|
requirements:
|
80
|
-
- - ~>
|
94
|
+
- - "~>"
|
81
95
|
- !ruby/object:Gem::Version
|
82
96
|
version: '2.0'
|
83
97
|
- !ruby/object:Gem::Dependency
|
84
98
|
name: factory_girl_rails
|
85
99
|
requirement: !ruby/object:Gem::Requirement
|
86
100
|
requirements:
|
87
|
-
- -
|
101
|
+
- - ">="
|
88
102
|
- !ruby/object:Gem::Version
|
89
103
|
version: '0'
|
90
104
|
type: :development
|
91
105
|
prerelease: false
|
92
106
|
version_requirements: !ruby/object:Gem::Requirement
|
93
107
|
requirements:
|
94
|
-
- -
|
108
|
+
- - ">="
|
95
109
|
- !ruby/object:Gem::Version
|
96
110
|
version: '0'
|
97
111
|
- !ruby/object:Gem::Dependency
|
98
112
|
name: sqlite3
|
99
113
|
requirement: !ruby/object:Gem::Requirement
|
100
114
|
requirements:
|
101
|
-
- -
|
115
|
+
- - ">="
|
102
116
|
- !ruby/object:Gem::Version
|
103
117
|
version: '0'
|
104
118
|
type: :development
|
105
119
|
prerelease: false
|
106
120
|
version_requirements: !ruby/object:Gem::Requirement
|
107
121
|
requirements:
|
108
|
-
- -
|
122
|
+
- - ">="
|
109
123
|
- !ruby/object:Gem::Version
|
110
124
|
version: '0'
|
125
|
+
- !ruby/object:Gem::Dependency
|
126
|
+
name: semmy
|
127
|
+
requirement: !ruby/object:Gem::Requirement
|
128
|
+
requirements:
|
129
|
+
- - "~>"
|
130
|
+
- !ruby/object:Gem::Version
|
131
|
+
version: '0.2'
|
132
|
+
type: :development
|
133
|
+
prerelease: false
|
134
|
+
version_requirements: !ruby/object:Gem::Requirement
|
135
|
+
requirements:
|
136
|
+
- - "~>"
|
137
|
+
- !ruby/object:Gem::Version
|
138
|
+
version: '0.2'
|
111
139
|
description:
|
112
140
|
email:
|
113
141
|
- tfischbach@codevise.de
|
@@ -115,13 +143,18 @@ executables: []
|
|
115
143
|
extensions: []
|
116
144
|
extra_rdoc_files: []
|
117
145
|
files:
|
118
|
-
- .gitignore
|
119
|
-
- .jshintignore
|
120
|
-
- .jshintrc
|
146
|
+
- ".gitignore"
|
147
|
+
- ".jshintignore"
|
148
|
+
- ".jshintrc"
|
149
|
+
- ".sassdocrc"
|
150
|
+
- ".travis.yml"
|
121
151
|
- CHANGELOG.md
|
122
152
|
- Gemfile
|
153
|
+
- Gemfile.ci
|
123
154
|
- README.md
|
124
155
|
- Rakefile
|
156
|
+
- app/assets/images/pageflow/external_links/themes/default/pictograms/sprite.png
|
157
|
+
- app/assets/images/pageflow/external_links/themes/default/pictograms/wide.png
|
125
158
|
- app/assets/images/pageflow/external_links_pictogram.png
|
126
159
|
- app/assets/images/pageflow/external_links_pictogram_small.png
|
127
160
|
- app/assets/images/pageflow/external_links_sprite.png
|
@@ -162,6 +195,8 @@ files:
|
|
162
195
|
- app/assets/stylesheets/pageflow/external_links/editor/embedded.css.scss
|
163
196
|
- app/assets/stylesheets/pageflow/external_links/editor/external_sites.css.scss
|
164
197
|
- app/assets/stylesheets/pageflow/external_links/editor/site_selection.css.scss
|
198
|
+
- app/assets/stylesheets/pageflow/external_links/themes/default.scss
|
199
|
+
- app/assets/stylesheets/pageflow/external_links/themes/legacy.scss
|
165
200
|
- app/controllers/pageflow/external_links/sites_controller.rb
|
166
201
|
- app/helpers/pageflow/external_links/sites_helper.rb
|
167
202
|
- app/models/pageflow/external_links/site.rb
|
@@ -177,6 +212,7 @@ files:
|
|
177
212
|
- lib/pageflow/external_links/engine.rb
|
178
213
|
- lib/pageflow/external_links/page_type.rb
|
179
214
|
- lib/pageflow/external_links/plugin.rb
|
215
|
+
- lib/pageflow/external_links/version.rb
|
180
216
|
- pageflow-external-links.gemspec
|
181
217
|
homepage: https://github.com/codevise/pageflow-external-links
|
182
218
|
licenses:
|
@@ -188,17 +224,17 @@ require_paths:
|
|
188
224
|
- lib
|
189
225
|
required_ruby_version: !ruby/object:Gem::Requirement
|
190
226
|
requirements:
|
191
|
-
- -
|
227
|
+
- - ">="
|
192
228
|
- !ruby/object:Gem::Version
|
193
229
|
version: '0'
|
194
230
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
195
231
|
requirements:
|
196
|
-
- -
|
232
|
+
- - ">="
|
197
233
|
- !ruby/object:Gem::Version
|
198
234
|
version: '0'
|
199
235
|
requirements: []
|
200
236
|
rubyforge_project:
|
201
|
-
rubygems_version: 2.
|
237
|
+
rubygems_version: 2.2.5
|
202
238
|
signing_key:
|
203
239
|
specification_version: 4
|
204
240
|
summary: Pageflow Page Type for links to external sites
|