markdown_media 1.1.0 → 1.2.0

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: b202847889838e4504a79dff4f67f3288a090977
4
- data.tar.gz: 6d0c91d5491b9441b341b06286ab579322fbaae0
3
+ metadata.gz: a490d07fc7560f46e187a7588e28314974a34a8b
4
+ data.tar.gz: 698f8634725452bae019b5d1c1e48d3aa26068ef
5
5
  SHA512:
6
- metadata.gz: '00030559c43bf3c266bdfee95458fd25ed25fb8485a7c7a3df5a941bc410849186c6a4ec6763154a255b6f01bc11e63c85376d19d81ae149043ada0204815d2d'
7
- data.tar.gz: 1660b6e3c930161669c0c8fb7e839dcf1139c58704a80e191ae64732cc00c1872ef271b572e260cea4fa9cff862fd1a0c8d216b7b1d098ea5caec78a940431b8
6
+ metadata.gz: 34caf289ccf17469ecdc0153ea6764796be4de4499acd2cac78f680b0e739a86947df8a709106ff0cf6a722d80442565782b9a996b7b34e30ccefc324de4134e
7
+ data.tar.gz: 78be0c9cc7858d908285c939e7fdf368baf5ad504d0a912318b75a18936b097d1596e088261b577f6472f3442737926494a298e6a0e5bfc7eb4545dd052b3ead
data/README.md CHANGED
@@ -2,7 +2,7 @@
2
2
 
3
3
  [![Build Status](https://travis-ci.org/veganstraightedge/markdown_media.svg?branch=master)](https://travis-ci.org/veganstraightedge/markdown_media)
4
4
  [![Code Climate](https://codeclimate.com/github/veganstraightedge/markdown_media/badges/gpa.svg)](https://codeclimate.com/github/veganstraightedge/markdown_media)
5
- ![Version 1.0.0](https://img.shields.io/badge/VERSION-1.1.0-green.svg)
5
+ ![Version 1.0.0](https://img.shields.io/badge/VERSION-1.2.0-green.svg)
6
6
 
7
7
  This syntax uses doubles square brackets on each side of a URL and optional options.
8
8
  It expands into the current preferred embed code for that site's media or raw media.
@@ -150,12 +150,18 @@ YouTube's short URL format also works.
150
150
  [[https://youtu.be/YX40hbAHx3s]]
151
151
  ```
152
152
 
153
- A Daily Motion video.
153
+ A video from Daily Motion.
154
154
 
155
155
  ```
156
156
  [[http://www.dailymotion.com/video/x5gwr1v_anarchists-in-rojava-announce-irpgf_news]]
157
157
  ```
158
158
 
159
+ A video from Twitter.
160
+
161
+ ```
162
+ [[https://twitter.com/Breaking911/status/900211169734131713 type:video]]
163
+ ```
164
+
159
165
  #### Audio
160
166
 
161
167
  A simple audio.
@@ -1,3 +1,3 @@
1
1
  module MarkdownMedia
2
- VERSION = "1.1.0"
2
+ VERSION = "1.2.0"
3
3
  end
@@ -17,6 +17,7 @@ module MarkdownMedia
17
17
  url = embed_tag_pieces.shift
18
18
  id = remove_id(embed_tag_pieces)
19
19
  klass = remove_class(embed_tag_pieces)
20
+ type = remove_type(embed_tag_pieces)
20
21
 
21
22
  link = unless embed_tag_pieces.to_s.empty?
22
23
  embed_tag_pieces.pop if url_or_path?(embed_tag_pieces.last)
@@ -24,7 +25,7 @@ module MarkdownMedia
24
25
 
25
26
  caption = embed_tag_pieces.join(" ")
26
27
 
27
- expanded_embed(url, caption: caption, link: link, id: id, klass: klass)
28
+ expanded_embed(url, caption: caption, link: link, id: id, type: type, klass: klass)
28
29
  end
29
30
  end
30
31
 
@@ -61,7 +62,20 @@ module MarkdownMedia
61
62
  end
62
63
  end
63
64
 
64
- def expanded_embed(url, caption: nil, link: nil, id: nil, klass: nil)
65
+ def remove_type(pieces)
66
+ return if pieces.to_s.empty?
67
+
68
+ type_string = pieces.detect { |piece| piece =~ /type:\S+/ }
69
+
70
+ if type_string
71
+ type = type_string.split(":").last
72
+ pieces.delete(type_string)
73
+
74
+ type
75
+ end
76
+ end
77
+
78
+ def expanded_embed(url, caption: nil, link: nil, id: nil, type: nil, klass: nil)
65
79
  url = URI.parse(url)
66
80
 
67
81
  case url.host
@@ -90,6 +104,10 @@ module MarkdownMedia
90
104
 
91
105
  when "twitter.com"
92
106
  slug = "twitter"
107
+ type ||= "tweet"
108
+
109
+ when /instagram/
110
+ slug = "instagram"
93
111
 
94
112
  else
95
113
  slug = case url.path
@@ -105,7 +123,7 @@ module MarkdownMedia
105
123
  end
106
124
  end
107
125
 
108
- render_erb slug, { embed_id: embed_id || url.to_s, caption: caption, link: link, id: id, klass: klass }
126
+ render_erb slug, { embed_id: embed_id || url.to_s, caption: caption, link: link, id: id, type: type, klass: klass }
109
127
  end
110
128
 
111
129
  def render_erb(template_slug, locals)
@@ -116,6 +134,7 @@ module MarkdownMedia
116
134
  caption = locals[:caption]
117
135
  link = locals[:link]
118
136
  id = locals[:id]
137
+ type = locals[:type]
119
138
  klass = locals[:klass]
120
139
 
121
140
  erb = ERB.new(template)
@@ -4,7 +4,7 @@
4
4
  <% if link.to_s.empty? %>
5
5
  <img src="<%= embed_id %>" />
6
6
  <% else %>
7
- <a href="<%= link %>"><img src=<%= embed_id %> /></a>
7
+ <a href="<%= link %>"><img src="<%= embed_id %>" /></a>
8
8
  <% end %>
9
9
  </figure>
10
10
 
@@ -0,0 +1,14 @@
1
+ <blockquote class="instagram-media <%= klass %>" id="<%= id %>" data-instgrm-version="7" style=" background:#FFF; border:0; border-radius:3px; box-shadow:0 0 1px 0 rgba(0,0,0,0.5),0 1px 10px 0 rgba(0,0,0,0.15); margin: 1px; max-width:658px; padding:0; width:99.375%; width:-webkit-calc(100% - 2px); width:calc(100% - 2px);">
2
+ <div style="padding:8px;">
3
+ <div style=" background:#F8F8F8; line-height:0; margin-top:40px; padding:50.0% 0; text-align:center; width:100%;">
4
+ <div style=" background:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACwAAAAsCAMAAAApWqozAAAABGdBTUEAALGPC/xhBQAAAAFzUkdCAK7OHOkAAAAMUExURczMzPf399fX1+bm5mzY9AMAAADiSURBVDjLvZXbEsMgCES5/P8/t9FuRVCRmU73JWlzosgSIIZURCjo/ad+EQJJB4Hv8BFt+IDpQoCx1wjOSBFhh2XssxEIYn3ulI/6MNReE07UIWJEv8UEOWDS88LY97kqyTliJKKtuYBbruAyVh5wOHiXmpi5we58Ek028czwyuQdLKPG1Bkb4NnM+VeAnfHqn1k4+GPT6uGQcvu2h2OVuIf/gWUFyy8OWEpdyZSa3aVCqpVoVvzZZ2VTnn2wU8qzVjDDetO90GSy9mVLqtgYSy231MxrY6I2gGqjrTY0L8fxCxfCBbhWrsYYAAAAAElFTkSuQmCC); display:block; height:44px; margin:0 auto -44px; position:relative; top:-22px; width:44px;"></div>
5
+ </div>
6
+
7
+ <p style=" color:#c9c8cd; font-family:Arial,sans-serif; font-size:14px; line-height:17px; margin-bottom:0; margin-top:8px; overflow:hidden; padding:8px 0 7px; text-align:center; text-overflow:ellipsis; white-space:nowrap;">
8
+ <a href="<%= embed_id.to_s %>" style=" color:#c9c8cd; font-family:Arial,sans-serif; font-size:14px; font-style:normal; font-weight:normal; line-height:17px; text-decoration:none;" target="_blank">
9
+ <%= embed_id.to_s %>
10
+ </a>
11
+ </p>
12
+ </div>
13
+ </blockquote>
14
+ <script async defer src="https://platform.instagram.com/en_US/embeds.js"></script>
@@ -1,4 +1,4 @@
1
- <blockquote class="twitter-tweet <%= klass %>" data-lang="en" id="<%= id %>">
1
+ <blockquote class="twitter-<%=type %> <%= klass %>" <%= 'data-status="hidden"' if type == "video" %> data-lang="en" id="<%= id %>">
2
2
  <a href="<%= embed_id.to_s %>"><%= embed_id.to_s %></a>
3
3
  </blockquote>
4
4
  <script async src="//platform.twitter.com/widgets.js" charset="utf-8"></script>
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: markdown_media
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.1.0
4
+ version: 1.2.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Shane Becker
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2017-06-07 00:00:00.000000000 Z
11
+ date: 2017-08-31 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler
@@ -91,6 +91,7 @@ files:
91
91
  - lib/templates/audio.erb
92
92
  - lib/templates/dailymotion.erb
93
93
  - lib/templates/image.erb
94
+ - lib/templates/instagram.erb
94
95
  - lib/templates/link.erb
95
96
  - lib/templates/twitter.erb
96
97
  - lib/templates/video.erb
@@ -117,7 +118,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
117
118
  version: '0'
118
119
  requirements: []
119
120
  rubyforge_project:
120
- rubygems_version: 2.6.11
121
+ rubygems_version: 2.6.13
121
122
  signing_key:
122
123
  specification_version: 4
123
124
  summary: A [[ URL ]] syntax to embed media into views.