url_common 0.1.3 → 0.1.6

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: 0ab8c804a828390106ee6e442cd46362ef5648ff9d41d36317f2644cb9f21e15
4
- data.tar.gz: 7d6068a766ed82a3c4fe724fe426549c9c56047acbf373eb46d87aba763dfab0
3
+ metadata.gz: 2cc0c6794570b0acf1abb05d0650f7103669a3e07423344b98cf7d950368a638
4
+ data.tar.gz: 6bde7b252e4e4f0dab5d224fc737f50dc147cf6471947721f98a0da1e868369e
5
5
  SHA512:
6
- metadata.gz: bddc296b7dae2781ec1ae7f8b8c79a1327e93bc1bfe30c761366033ef0882049948ea8c2ebbd7ce425aa7d437086b7ec38a4b30ebf0e976a4213990ef1e2d2b6
7
- data.tar.gz: 395a2d6fec4519067d4dbb08f78c3e67cd4b1d2b1c7c8083299398790c5b9f9e6db81aade8c093f6b2eb39975f30b6923a80634d928e9c6fad159e12bb6a840d
6
+ metadata.gz: 8293201992fc1dc914343268ca104416d06115b16b67281a66fac8f7af00f365b7de4a94c9e0b3a22308d744b581fc1f83fe48b050565ab639146bf84cd9b145
7
+ data.tar.gz: 63295ed84b0433a5bc22ca93b3b4701d6c77c7e9c5f0dba2a479072bc7b25fcac29b81a1f820605d7687da525735735b691eb00e11e05927e9ff0a21b2a77fb3
data/Gemfile.lock CHANGED
@@ -8,7 +8,7 @@ GIT
8
8
  PATH
9
9
  remote: .
10
10
  specs:
11
- url_common (0.1.3)
11
+ url_common (0.1.6)
12
12
  fuzzyurl (~> 0.9.0)
13
13
  mechanize (~> 2.6)
14
14
 
@@ -1,3 +1,3 @@
1
1
  module UrlCommon
2
- VERSION = "0.1.3"
2
+ VERSION = "0.1.6"
3
3
  end
data/lib/url_common.rb CHANGED
@@ -56,6 +56,9 @@ module UrlCommon
56
56
  # return parts.host.gsub(/^www./,'')
57
57
  # end
58
58
 
59
+ #
60
+ # Designed to get just the domain without the WWW
61
+ #
59
62
  def self.get_base_domain(url)
60
63
  #debugger if url =~ /c06rh22whx1g/
61
64
  begin
@@ -68,10 +71,24 @@ module UrlCommon
68
71
  end
69
72
  end
70
73
 
74
+ # designed to get the root of the domain i.e. elias.slack.com => slack.com
75
+ def self.get_root_domain(url)
76
+ begin
77
+ url = url.gsub(/ /,'%20')
78
+ url_parts = URI.parse(url)
79
+ host_parts = url_parts.host.split('.')
80
+ rescue StandardError => e
81
+ fu = Fuzzyurl.from_string(url)
82
+ host_parts = fu.hostname.split('.')
83
+ end
84
+ return "#{host_parts[host_parts.size - 2]}.#{host_parts.last}"
85
+ end
86
+
71
87
  def self.join(base, rest, debug = false)
72
88
  return URI.join(base, rest).to_s
73
89
  end
74
90
 
91
+ # UrlCommon.url_no_www("https://www.youtube.com/watch?v=4Mj_zDw21xY")
75
92
  def self.url_no_www(url)
76
93
  parts = Fuzzyurl.new(url)
77
94
  if parts.query
@@ -542,5 +559,26 @@ module UrlCommon
542
559
 
543
560
  return UrlCommon.select_best_rssurl_from_rssurls(results)
544
561
  end
562
+
563
+ #based on this approach: https://medium.com/@sparkboldstudio/building-a-url-shortener-rails-app-96db60d3bf9d
564
+ #def self.generate_short_fid
565
+ #def self.create_fid
566
+ def self.generate_fid
567
+ rand(36**8).to_s(36)
568
+ end
569
+
570
+ def self.sanitize(long_url, url_base)
571
+ long_url.strip!
572
+ sanitize_url = self.long_url.downcase.gsub(/(https?:\/\/)|(www\.)/,"")
573
+ #"http://#{sanitize_url}"
574
+ url_base + sanitize_url
575
+ end
576
+
577
+ # todo expand on this by checking to make sure it doesn't call again
578
+ # should be fine but ttfn
579
+ def self.create_permalink(tbl, fld, url)
580
+ short_url = UrlCommon.generate_short_url
581
+ sanitized_url = UrlCommon.sanitize(url, "https://pullquotes.io/pull_quotes/")
582
+ end
545
583
 
546
584
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: url_common
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.3
4
+ version: 0.1.6
5
5
  platform: ruby
6
6
  authors:
7
7
  - Scott Johnson
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2022-07-02 00:00:00.000000000 Z
11
+ date: 2022-10-17 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: fuzzyurl