cliz 0.0.7 → 0.0.8

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 (4) hide show
  1. checksums.yaml +4 -4
  2. data/bin/cliz +1 -0
  3. data/lib/functions.rb +56 -54
  4. metadata +2 -2
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 3244d06cf94a457489f61c5f74aa87e38809ddf73ae1d4afff4cd1223e3bf20a
4
- data.tar.gz: 555842ee24707775b95c7cdedac5e1f0a385454951987b6e10317baec436e8c5
3
+ metadata.gz: cf2b89520afac2243cd1502181849fbeb54adad8a74cbe636b1601b63354a28a
4
+ data.tar.gz: 45c04731b97d3fdba3909a7899caa6907bd193dc7de51dea54a3a003c1d2e416
5
5
  SHA512:
6
- metadata.gz: 04da2ae52ffb1b8756e349f8e177751d5040bb4309f8ff00c19deb2d8229fce35f704a0be5335da0ae382c208b15eb314ab3d08b8ca625b64cc41a58889d9a50
7
- data.tar.gz: 8baec4b0aa47d518723a56be58113c1f5436e0ae75638592c10d045babeccfac395117d0becdd5630b2e6fc5c4fdfd100b229ef63f6c976b70930b72ed7bd703
6
+ metadata.gz: 0ff881c6b9dc0ea2492363f9130f28388569a9dc8555c7ce03c9215469ddedf3a121d625dfbb7efd08eb6a958ebcdf16c402644b461917aa5215c52afa109855
7
+ data.tar.gz: 64466811659c65d6c381e54b440dcd4cbf2838e342f3998121d9ec5fd1b83e869da267f929c00b2f8a3e9eaa3ad61bb418a6d5f86e0c41381088bfe19230fa08
data/bin/cliz CHANGED
@@ -5,6 +5,7 @@ require 'fileutils'
5
5
  require 'yaml'
6
6
  require_relative '../lib/functions.rb'
7
7
 
8
+ include Cliz
8
9
 
9
10
  config = YAML.load(File.read('config.yml'))
10
11
  url = ARGV[0]
data/lib/functions.rb CHANGED
@@ -1,74 +1,76 @@
1
1
  require 'securerandom'
2
2
  require 'fileutils'
3
3
 
4
- ##
5
- # Gets a folder path for the shortened url
6
- def get_a_folder_path output_directory, short_suggestion = nil
7
- folder_path = nil
4
+ module Cliz
5
+ ##
6
+ # Gets a folder path for the shortened url
7
+ def get_a_folder_path output_directory, short_suggestion = nil
8
+ folder_path = nil
8
9
 
9
- short_suggestion ||= generate_short_suggestion output_directory
10
- folder_path = File.join(output_directory, short_suggestion, '/')
10
+ short_suggestion ||= generate_short_suggestion output_directory
11
+ folder_path = File.join(output_directory, short_suggestion, '/')
11
12
 
12
- if File.directory?(folder_path)
13
- raise ("This short URL is already taken.")
13
+ if File.directory?(folder_path)
14
+ raise ("This short URL is already taken.")
15
+ end
16
+
17
+ folder_path
14
18
  end
15
19
 
16
- folder_path
17
- end
20
+ def generate_short_suggestion output_directory
21
+ counter = 0
22
+ random_string = nil
18
23
 
19
- def generate_short_suggestion output_directory
20
- counter = 0
21
- random_string = nil
24
+ loop do
25
+ random_string = SecureRandom.alphanumeric[..counter]
26
+ folder_path = File.join(output_directory, random_string, '/')
27
+ break unless File.directory?(folder_path)
28
+ counter += 1
29
+ end
22
30
 
23
- loop do
24
- random_string = SecureRandom.alphanumeric[..counter]
25
- folder_path = File.join(output_directory, random_string, '/')
26
- break unless File.directory?(folder_path)
27
- counter += 1
31
+ random_string
28
32
  end
29
33
 
30
- random_string
31
- end
32
-
33
- def create_index_file url, folder_path
34
- html = %Q{
35
- <!DOCTYPE html>
36
- <html>
37
- <head>
38
- <meta content="text/html;charset=utf-8" http-equiv="Content-Type">
39
- <meta content="utf-8" http-equiv="encoding">
40
- <script type="text/javascript">
41
- window.location.replace("https://cliz.in");
42
- </script>
43
- <meta http-equiv="refresh" content="0; url='https://cliz.in'" />
44
- </head>
45
- <body>
46
- <p>Please follow <a href="https://cliz.in">this link</a>.</p>
47
- </body>
48
- </html>
49
- }
34
+ def create_index_file url, folder_path
35
+ html = %Q{
36
+ <!DOCTYPE html>
37
+ <html>
38
+ <head>
39
+ <meta content="text/html;charset=utf-8" http-equiv="Content-Type">
40
+ <meta content="utf-8" http-equiv="encoding">
41
+ <script type="text/javascript">
42
+ window.location.replace("https://cliz.in");
43
+ </script>
44
+ <meta http-equiv="refresh" content="0; url='https://cliz.in'" />
45
+ </head>
46
+ <body>
47
+ <p>Please follow <a href="https://cliz.in">this link</a>.</p>
48
+ </body>
49
+ </html>
50
+ }
50
51
 
51
- redirect_content = html.gsub 'https://cliz.in', url
52
- FileUtils.mkdir_p(folder_path)
52
+ redirect_content = html.gsub 'https://cliz.in', url
53
+ FileUtils.mkdir_p(folder_path)
53
54
 
54
- File.open "#{folder_path}/index.html", 'w' do |f|
55
- f.puts redirect_content
55
+ File.open "#{folder_path}/index.html", 'w' do |f|
56
+ f.puts redirect_content
57
+ end
56
58
  end
57
- end
58
59
 
59
- def short config, url, short_suggestion = nil
60
- output_dir = config['output_dir']
61
- base_domain = config['base_domain']
62
- deploy_script = config['deploy_script']
63
- pre_script = config['pre_script']
60
+ def short config, url, short_suggestion = nil
61
+ output_dir = config['output_dir']
62
+ base_domain = config['base_domain']
63
+ deploy_script = config['deploy_script']
64
+ pre_script = config['pre_script']
64
65
 
65
- system("sh #{pre_script}") if pre_script
66
+ system("sh #{pre_script}") if pre_script
66
67
 
67
- short_suggestion ||= generate_short_suggestion output_dir
68
- folder_path = get_a_folder_path output_dir, short_suggestion
69
- create_index_file(url, folder_path)
68
+ short_suggestion ||= generate_short_suggestion output_dir
69
+ folder_path = get_a_folder_path output_dir, short_suggestion
70
+ create_index_file(url, folder_path)
70
71
 
71
- system("sh #{deploy_script}") if deploy_script
72
+ system("sh #{deploy_script}") if deploy_script
72
73
 
73
- File.join base_domain, short_suggestion
74
+ File.join base_domain, short_suggestion
75
+ end
74
76
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: cliz
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.7
4
+ version: 0.0.8
5
5
  platform: ruby
6
6
  authors:
7
7
  - Karthikeyan A K
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2021-04-25 00:00:00.000000000 Z
11
+ date: 2021-05-15 00:00:00.000000000 Z
12
12
  dependencies: []
13
13
  description: Cliz - The static URL shortner
14
14
  email: mindaslab@protonmail.com