gembed 0.9.0 → 1.0.1

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: 2c8826ec97c8ae959db9371776e4886c162c2beac8fa597dbc857db1a187609e
4
- data.tar.gz: 8facf340fcb706fdcd446ce15e18469d9de936eabbb6ff16bc21c56b6d2d4e3d
3
+ metadata.gz: af60d44a28933153fc5e835557819b07fda709f73ec6466aaeebcc545f2a819d
4
+ data.tar.gz: 5dfc32f912ed28aa5c7ff58444f37b322410d20369024bbc6efffcc1f9327244
5
5
  SHA512:
6
- metadata.gz: 83dd9bb231fa6102311bed3e0a5f2e97b412ff2253403c0a0b451996ab0c16abaf73f26614cec82ef7f8f5618306b64683a9b136dc5dd6a36637d62691d74c17
7
- data.tar.gz: 86bec188e61c4166282ad68c8600cdd9702786f3019c00003a314ebb1ed3cc69e983b8fbfdf22698c8fb13416a1eb59b932c2cdf887b79cfa4aa0e0e6be543c5
6
+ metadata.gz: cc9bd97f53e1bb6270fc54efc177b80ced1165d0b609d31d89ed235b58d222254c9867cba1b2a64f845b02865d0eee87536188b7da96fa361a68a9f01f5d1517
7
+ data.tar.gz: 84c5c50600d7039c0a41d041fb465a29b61f0578de995d3a42ec2409632b6fdfe0bbe08f92f486a4ca70749767e9a8a626e3e440bd16010092875395fee47644
data/lib/gembed/loom.rb CHANGED
@@ -1,12 +1,16 @@
1
1
  module Gembed
2
2
  class Loom
3
- def self.embed(url)
4
- result = "<div style='position: relative; padding-bottom: 62.5%; height: 0;'><iframe src='#{url.gsub("/share/", "/embed/")}'' frameborder='0' webkitallowfullscreen mozallowfullscreen allowfullscreen style='position: absolute; top: 0; left: 0; width: 100%; height: 100%;'></iframe></div>"
3
+ def self.embed(source, url)
4
+ result = "<div style='position: relative; padding-bottom: 62.5%; height: 0;'><iframe src='https://www.loom.com/embed/#{find_id(source, url)}' frameborder='0' webkitallowfullscreen mozallowfullscreen allowfullscreen style='position: absolute; top: 0; left: 0; width: 100%; height: 100%;'></iframe></div>"
5
5
  if result.respond_to?(:html_safe)
6
6
  result.html_safe
7
7
  else
8
8
  result
9
9
  end
10
10
  end
11
+
12
+ def self.find_id(source, url)
13
+ url.split("share/")[1]
14
+ end
11
15
  end
12
16
  end
@@ -0,0 +1,20 @@
1
+ module Gembed
2
+ class Youtube
3
+ def self.embed(source, url)
4
+ result = "<div style='position: relative; padding-bottom: 62.5%; height: 0;'><iframe width='100%' height='100%' src='https://www.youtube.com/embed/#{find_id(source, url)}' frameborder='0' webkitallowfullscreen mozallowfullscreen allowfullscreen style='position: absolute; top: 0; left: 0; width: 100%; height: 100%;'></iframe></div>"
5
+ if result.respond_to?(:html_safe)
6
+ result.html_safe
7
+ else
8
+ result
9
+ end
10
+ end
11
+
12
+ def self.find_id(source, url)
13
+ if source == "youtube.com"
14
+ (url.split("v=")[1]).split('&')[0]
15
+ else
16
+ url.split(".be/")[1]
17
+ end
18
+ end
19
+ end
20
+ end
data/lib/gembed.rb CHANGED
@@ -4,17 +4,20 @@ module Gembed
4
4
 
5
5
  # Hash of source classes
6
6
  @sources = Hash[
7
- "loom.com" => Loom
7
+ "loom.com" => Loom,
8
+ "youtube.com" => Youtube,
9
+ "youtu.be" => Youtube
8
10
  ]
9
11
 
10
12
  class << self
11
13
  def insert(url)
12
- @sources[find_source(url)].embed(url)
14
+ source = find_source(url)
15
+ @sources[source].embed(source, url)
13
16
  end
14
17
 
15
18
  # Gets domain of the url
16
19
  def find_source(url)
17
- source = url.match(/\/\/[www.]*[a-zA-Z0-9]*\.[a-z]*/).to_s.gsub(/\/\/[www.]*/,'')
20
+ @source = url.match(/\/\/[www.]*[a-zA-Z0-9]*\.[a-z]*/).to_s.gsub(/\/\/[www.]*/,'')
18
21
  end
19
22
  end
20
- end
23
+ end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: gembed
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.9.0
4
+ version: 1.0.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - John Paul
@@ -18,12 +18,11 @@ extra_rdoc_files: []
18
18
  files:
19
19
  - lib/gembed.rb
20
20
  - lib/gembed/loom.rb
21
- homepage: https://github.com/iJohnPaul/gembed/
21
+ - lib/gembed/youtube.rb
22
+ homepage: https://rubygems.org/gems/gembed
22
23
  licenses:
23
24
  - MIT
24
- metadata:
25
- source_code_uri: https://github.com/iJohnPaul/gembed/
26
- wiki_uri: https://github.com/iJohnPaul/gembed/wiki
25
+ metadata: {}
27
26
  post_install_message:
28
27
  rdoc_options: []
29
28
  require_paths: