jekyll-google-photos 1.4.0 → 1.4.1

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
2
  SHA1:
3
- metadata.gz: 0371042a91560d6dbe2c61d29e868ded3bd9e6a4
4
- data.tar.gz: 19f8d37ccdcb3b4ce88758aad37fa182e4587cfd
3
+ metadata.gz: 4adcab6389d74279f43e50c63312cce573f7d6d2
4
+ data.tar.gz: aa245f98c010fcf3d786006fcf2bdb010513f79c
5
5
  SHA512:
6
- metadata.gz: d14b8ebfd7b27b2a3e9c76ccdedd84f8c6da49742528a400c15ecc39f36049ba832fe2cc44265ebfd2f75f6ddab40db5c909586718d65c06f01f5359e55cb863
7
- data.tar.gz: 99eede27c5698934c43edcdab26c630d5af019e082e7e9b5a3c71a9af133efb20cc4af14d8594bc6056bb2fdb4b98874cf59832e202f1a5d3c00cba6e6a6e83c
6
+ metadata.gz: 8ebedcde5633762d541ef07015a89cabd5b05f345aa5fc58b5c2586494e611fe72ea8829cbceda1724ac5a2fcd952d0a1f099f1ae77dc600a4622966e8348c9c
7
+ data.tar.gz: d34415433391bdb72760ad448bf5f015bcdd3256b6d78de00993f0b1ad81c86560475efdd2ddf38a5a9d6c35572e037f09269c99c38bc786363f0413e1dfc5a1
data/README.md CHANGED
@@ -34,14 +34,32 @@ Example:
34
34
  {% google_photos https://photos.app.goo.gl/bhWukds8QVodFU246 800 %}
35
35
  ```
36
36
  or using variables/front matter
37
-
38
- ```
39
- {% google_photos post.gallery_url 800 %}
40
37
  ```
38
+ ---
39
+ gallery_url: https://photos.app.goo.gl/bhWukds8QVodFU24
40
+ ---
41
41
 
42
+ {% google_photos page.gallery_url 800 %}
43
+ ```
42
44
  #### Note
43
45
  You can use `0` to get original quality image.
44
46
 
47
+ ### Adding Multiple Albums
48
+
49
+ Create a custom variable in the front matter of the page that would contain URL to albums you'd like to use:
50
+ ```
51
+ ---
52
+ album_urls:
53
+ - <URL 1>
54
+ - <URL 2>
55
+ - <URL N>
56
+ ---
57
+ ```
58
+ Then use the `google_photos` tag using the same principle but this time passing the new variable:
59
+ ```
60
+ {% google_photos page.album_urls 800 %}
61
+ ```
62
+
45
63
  # Want to Display images your way?
46
64
 
47
65
  Pass `none` into `max_width`. Passing `none` will not display any image. You can now use image urls to display images in any desired way.
@@ -55,6 +73,34 @@ googlePhotos.urls = ["img1","img2",...];
55
73
  #### Note
56
74
  Image urls will always be available at `googlePhotos.urls` irrespective of what is passed in `max_width`.
57
75
 
76
+ ### Example integrating a third party gallery plugin
77
+
78
+ This is the answer to issue [#5](https://github.com/heychirag/jekyll-google-photos/issues/5)
79
+
80
+ ```
81
+ {% google_photos https://photos.app.goo.gl/bhWukds8QVodFU246 none %}
82
+
83
+ <script src="https://cdn.jsdelivr.net/npm/publicalbum@latest/embed-ui.min.js" async></script>
84
+
85
+ <div class="pa-gallery-player-widget" style="width:100%; height:480px; display:none;"
86
+ data-link="<Album link>"
87
+ data-title="<Album Name>"
88
+ data-description="<Album Description>"
89
+ data-delay="5"
90
+ id="MyAlbum1">
91
+ </div>
92
+
93
+ <script>
94
+ let MyAlbum1 = document.getElementById('MyAlbum1');
95
+ let imageWidth = '0';
96
+ for(var i in googlePhotos.urls) {
97
+ let picture = document.createElement('object');
98
+ picture.setAttribute("data", googlePhotos.urls[i] + '=w' + imageWidth);
99
+ MyAlbum1.appendChild(picture);
100
+ }
101
+ </script>
102
+ ```
103
+
58
104
  ### Hacking the Image URLs
59
105
 
60
106
  Google provides us a way to 'hack' the base URL of images to manipulate the quality/dimensions of the images. The following information was taken from Google Photos' official documentation:
@@ -8,7 +8,27 @@ gallery_urls:
8
8
  - https://photos.app.goo.gl/bhWukds8QVodFU246
9
9
  ---
10
10
 
11
- {% google_photos https://photos.app.goo.gl/bhWukds8QVodFU246 800 %}
11
+ {% google_photos page.gallery_urls none %}
12
+
13
+ <script src="https://cdn.jsdelivr.net/npm/publicalbum@latest/embed-ui.min.js" async></script>
14
+ <div class="pa-gallery-player-widget" style="width:100%; height:480px; display:none;"
15
+ data-link="<Album link>"
16
+ data-title="<Album Name>"
17
+ data-description="<Album Description>"
18
+ data-delay="5"
19
+ id="MyAlbum1">
20
+ </div>
21
+ <script>
22
+ let MyAlbum1 = document.getElementById('MyAlbum1');
23
+ let imageWidth = '0';
24
+ for(var i in googlePhotos.urls) {
25
+ console.log(googlePhotos.urls[i]);
26
+ console.log(MyAlbum1);
27
+ let picture = document.createElement('object');
28
+ picture.setAttribute("data", googlePhotos.urls[i] + '=w' + imageWidth);
29
+ MyAlbum1.appendChild(picture);
30
+ }
31
+ </script>
12
32
 
13
33
  You’ll find this post in your `_posts` directory. Go ahead and edit it and re-build the site to see your changes. You can rebuild the site in many different ways, but the most common way is to run `jekyll serve`, which launches a web server and auto-regenerates your site when a file is updated.
14
34
 
@@ -0,0 +1,270 @@
1
+ def FlexbinCSS()
2
+ elem = %Q{
3
+ .flexbin {
4
+ display: flex;
5
+ overflow: hidden;
6
+ flex-wrap: wrap;
7
+ margin: -2.5px;
8
+ }
9
+ .flexbin:after {
10
+ content: "";
11
+ flex-grow: 999999999;
12
+ min-width: 300px;
13
+ height: 0;
14
+ }
15
+ .flexbin > * {
16
+ position: relative;
17
+ display: block;
18
+ height: 300px;
19
+ margin: 2.5px;
20
+ flex-grow: 1;
21
+ }
22
+ .flexbin > * > img {
23
+ height: 300px;
24
+ object-fit: cover;
25
+ max-width: 100%;
26
+ min-width: 100%;
27
+ vertical-align: bottom;
28
+ }
29
+ .flexbin.flexbin-margin {
30
+ margin: 2.5px;
31
+ }
32
+ @media (max-width: 300px) {
33
+ .flexbin {
34
+ display: flex;
35
+ overflow: hidden;
36
+ flex-wrap: wrap;
37
+ margin: -2.5px;
38
+ }
39
+ .flexbin:after {
40
+ content: "";
41
+ flex-grow: 999999999;
42
+ min-width: 75px;
43
+ height: 0;
44
+ }
45
+ .flexbin > * {
46
+ position: relative;
47
+ display: block;
48
+ height: 75px;
49
+ margin: 2.5px;
50
+ flex-grow: 1;
51
+ }
52
+ .flexbin > * > img {
53
+ height: 75px;
54
+ object-fit: cover;
55
+ max-width: 100%;
56
+ min-width: 100%;
57
+ vertical-align: bottom;
58
+ }
59
+ .flexbin.flexbin-margin {
60
+ margin: 2.5px;
61
+ }
62
+ }
63
+ @media (min-width: 300px) and (max-width: 450px) {
64
+ .flexbin {
65
+ display: flex;
66
+ overflow: hidden;
67
+ flex-wrap: wrap;
68
+ margin: -2.5px;
69
+ }
70
+ .flexbin:after {
71
+ content: "";
72
+ flex-grow: 999999999;
73
+ min-width: 112px;
74
+ height: 0;
75
+ }
76
+ .flexbin > * {
77
+ position: relative;
78
+ display: block;
79
+ height: 112px;
80
+ margin: 2.5px;
81
+ flex-grow: 1;
82
+ }
83
+ .flexbin > * > img {
84
+ height: 112px;
85
+ object-fit: cover;
86
+ max-width: 100%;
87
+ min-width: 100%;
88
+ vertical-align: bottom;
89
+ }
90
+ .flexbin.flexbin-margin {
91
+ margin: 2.5px;
92
+ }
93
+ }
94
+ @media (min-width: 450px) and (max-width: 600px) {
95
+ .flexbin {
96
+ display: flex;
97
+ overflow: hidden;
98
+ flex-wrap: wrap;
99
+ margin: -2.5px;
100
+ }
101
+ .flexbin:after {
102
+ content: "";
103
+ flex-grow: 999999999;
104
+ min-width: 150px;
105
+ height: 0;
106
+ }
107
+ .flexbin > * {
108
+ position: relative;
109
+ display: block;
110
+ height: 150px;
111
+ margin: 2.5px;
112
+ flex-grow: 1;
113
+ }
114
+ .flexbin > * > img {
115
+ height: 150px;
116
+ object-fit: cover;
117
+ max-width: 100%;
118
+ min-width: 100%;
119
+ vertical-align: bottom;
120
+ }
121
+ .flexbin.flexbin-margin {
122
+ margin: 2.5px;
123
+ }
124
+ }
125
+ @media (min-width: 600px) and (max-width: 750px) {
126
+ .flexbin {
127
+ display: flex;
128
+ overflow: hidden;
129
+ flex-wrap: wrap;
130
+ margin: -2.5px;
131
+ }
132
+ .flexbin:after {
133
+ content: "";
134
+ flex-grow: 999999999;
135
+ min-width: 175px;
136
+ height: 0;
137
+ }
138
+ .flexbin > * {
139
+ position: relative;
140
+ display: block;
141
+ height: 175px;
142
+ margin: 2.5px;
143
+ flex-grow: 1;
144
+ }
145
+ .flexbin > * > img {
146
+ height: 175px;
147
+ object-fit: cover;
148
+ max-width: 100%;
149
+ min-width: 100%;
150
+ vertical-align: bottom;
151
+ }
152
+ .flexbin.flexbin-margin {
153
+ margin: 2.5px;
154
+ }
155
+ }
156
+ @media (min-width: 750px) and (max-width: 900px) {
157
+ .flexbin {
158
+ display: flex;
159
+ overflow: hidden;
160
+ flex-wrap: wrap;
161
+ margin: -2.5px;
162
+ }
163
+ .flexbin:after {
164
+ content: "";
165
+ flex-grow: 999999999;
166
+ min-width: 175px;
167
+ height: 0;
168
+ }
169
+ .flexbin > * {
170
+ position: relative;
171
+ display: block;
172
+ height: 175px;
173
+ margin: 2.5px;
174
+ flex-grow: 1;
175
+ }
176
+ .flexbin > * > img {
177
+ height: 175px;
178
+ object-fit: cover;
179
+ max-width: 100%;
180
+ min-width: 100%;
181
+ vertical-align: bottom;
182
+ }
183
+ .flexbin.flexbin-margin {
184
+ margin: 2.5px;
185
+ }
186
+ }
187
+ @media (min-width: 900px) and (max-width: 1050px) {
188
+ .flexbin {
189
+ display: flex;
190
+ overflow: hidden;
191
+ flex-wrap: wrap;
192
+ margin: -2.5px;
193
+ }
194
+ .flexbin:after {
195
+ content: "";
196
+ flex-grow: 999999999;
197
+ min-width: 175px;
198
+ height: 0;
199
+ }
200
+ .flexbin > * {
201
+ position: relative;
202
+ display: block;
203
+ height: 175px;
204
+ margin: 2.5px;
205
+ flex-grow: 1;
206
+ }
207
+ .flexbin > * > img {
208
+ height: 175px;
209
+ object-fit: cover;
210
+ max-width: 100%;
211
+ min-width: 100%;
212
+ vertical-align: bottom;
213
+ }
214
+ .flexbin.flexbin-margin {
215
+ margin: 2.5px;
216
+ }
217
+ }
218
+ @media (min-width: 1050px) {
219
+ .flexbin {
220
+ display: flex;
221
+ overflow: hidden;
222
+ flex-wrap: wrap;
223
+ margin: -2.5px;
224
+ }
225
+ .flexbin:after {
226
+ content: "";
227
+ flex-grow: 999999999;
228
+ min-width: 180px;
229
+ height: 0;
230
+ }
231
+ .flexbin > * {
232
+ position: relative;
233
+ display: block;
234
+ height: 180px;
235
+ margin: 2.5px;
236
+ flex-grow: 1;
237
+ }
238
+ .flexbin > * > img {
239
+ height: 180px;
240
+ object-fit: cover;
241
+ max-width: 100%;
242
+ min-width: 100%;
243
+ vertical-align: bottom;
244
+ }
245
+ .flexbin.flexbin-margin {
246
+ margin: 2.5px;
247
+ }
248
+ }
249
+ .stage{
250
+ position:absolute;
251
+ width:100%;
252
+ height:100%;
253
+ background-color: black;
254
+ top:0;
255
+ left:0;
256
+ }
257
+ .stage img {
258
+ position:absolute;
259
+ left:0; right:0;
260
+ top:0; bottom:0;
261
+ margin:auto;
262
+ max-width:100%;
263
+ max-height:100%;
264
+ overflow:auto;
265
+ }
266
+ }
267
+ return elem
268
+ end
269
+
270
+ public :FlexbinCSS
@@ -1,3 +1,3 @@
1
1
  module JekyllGooglePhotos
2
- VERSION = "1.4.0".freeze
2
+ VERSION = "1.4.1".freeze
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: jekyll-google-photos
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.4.0
4
+ version: 1.4.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Chirag Arora
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2020-03-08 00:00:00.000000000 Z
11
+ date: 2020-03-16 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: jekyll
@@ -103,6 +103,7 @@ files:
103
103
  - index.md
104
104
  - jekyll-google-photos.gemspec
105
105
  - lib/jekyll-google-photos.rb
106
+ - lib/jekyll-google-photos/css.rb
106
107
  - lib/jekyll-google-photos/tag.rb
107
108
  - lib/jekyll-google-photos/version.rb
108
109
  homepage: https://github.com/heychirag/jekyll-google-photos