cliz 0.0.0

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.
Files changed (3) hide show
  1. checksums.yaml +7 -0
  2. data/bin/cliz +59 -0
  3. metadata +44 -0
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA256:
3
+ metadata.gz: d10663c001cb6860631422a9d914343afab05b4f2c48b49bbad6d8cbf4dcc7bd
4
+ data.tar.gz: abfe76359ea3a444e80fad9515766fdd14038c312ded8e745d9d9c0607cf4ee1
5
+ SHA512:
6
+ metadata.gz: 22b57d559cdd2ae437314833a531349b3db9226251360e78f6db5084420d8ac256e5410c46e7281a7520026a1a794f84a7c5505109c02f380151be049746f588
7
+ data.tar.gz: 2757403bcb2276202f91bc80e2df4b2ce3a6ff4601ba75518dfc306e9fbcf8975d7c2b746722f58f36750062c71abf0c9f7dafe1c6b1b63d7fcb974649cd05a7
@@ -0,0 +1,59 @@
1
+ #!/usr/bin/env ruby
2
+
3
+ require 'securerandom'
4
+ require 'fileutils'
5
+ require 'yaml'
6
+
7
+ config = YAML.load(File.read('config.yml'))
8
+
9
+ OUTPUT_DIR = config['output_dir']
10
+ BASE_DOMAIN = config['base_domain']
11
+ DEPLOY_SCRIPT = config['deploy_script']
12
+ HTML = %Q{
13
+ <!DOCTYPE html>
14
+ <html>
15
+ <head>
16
+ <meta content="text/html;charset=utf-8" http-equiv="Content-Type">
17
+ <meta content="utf-8" http-equiv="encoding">
18
+ <script type="text/javascript">
19
+ window.location.replace("https://cliz.in");
20
+ </script>
21
+ <meta http-equiv="refresh" content="0; url='https://cliz.in'" />
22
+ </head>
23
+ <body>
24
+ <p>Please follow <a href="https://cliz.in">this link</a>.</p>
25
+ </body>
26
+ </html>
27
+ }
28
+
29
+ url = ARGV[0]
30
+ redirect_content = HTML.gsub 'https://cliz.in', url
31
+ folder_path = nil
32
+ counter = 0
33
+ random_string = nil
34
+
35
+ unless ARGV[1]
36
+ loop do
37
+ random_string = SecureRandom.alphanumeric[..counter]
38
+ folder_path = "#{OUTPUT_DIR}/#{random_string}/"
39
+ break unless File.directory?(folder_path)
40
+ counter += 1
41
+ end
42
+ else
43
+ folder_path = "#{OUTPUT_DIR}/#{ARGV[1]}/"
44
+ random_string = ARGV[1]
45
+ if File.directory?(folder_path)
46
+ puts("This short is already taken. Try another.")
47
+ exit
48
+ end
49
+ end
50
+
51
+ FileUtils.mkdir_p(folder_path)
52
+
53
+ File.open "#{folder_path}/index.html", 'w' do |f|
54
+ f.puts redirect_content
55
+ end
56
+
57
+ system("sh #{DEPLOY_SCRIPT}") if DEPLOY_SCRIPT
58
+
59
+ puts "#{BASE_DOMAIN}#{random_string}"
metadata ADDED
@@ -0,0 +1,44 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: cliz
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.0.0
5
+ platform: ruby
6
+ authors:
7
+ - Karthikeyan A K
8
+ autorequire:
9
+ bindir: bin
10
+ cert_chain: []
11
+ date: 2020-11-29 00:00:00.000000000 Z
12
+ dependencies: []
13
+ description: Cliz - The static URL shortner
14
+ email: mindaslab@protonmail.com
15
+ executables:
16
+ - cliz
17
+ extensions: []
18
+ extra_rdoc_files: []
19
+ files:
20
+ - bin/cliz
21
+ homepage: https://cliz.in
22
+ licenses:
23
+ - GPLV3
24
+ metadata: {}
25
+ post_install_message:
26
+ rdoc_options: []
27
+ require_paths:
28
+ - lib
29
+ required_ruby_version: !ruby/object:Gem::Requirement
30
+ requirements:
31
+ - - ">="
32
+ - !ruby/object:Gem::Version
33
+ version: '0'
34
+ required_rubygems_version: !ruby/object:Gem::Requirement
35
+ requirements:
36
+ - - ">="
37
+ - !ruby/object:Gem::Version
38
+ version: '0'
39
+ requirements: []
40
+ rubygems_version: 3.1.4
41
+ signing_key:
42
+ specification_version: 4
43
+ summary: Cliz - The static URL shortner
44
+ test_files: []