beautiful_url 1.5.5

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.

Potentially problematic release.


This version of beautiful_url might be problematic. Click here for more details.

Files changed (36) hide show
  1. checksums.yaml +7 -0
  2. data/README.md +52 -0
  3. data/beautiful_url.gemspec +60 -0
  4. data/bin/beautiful_url +9 -0
  5. data/doc/README.gen +50 -0
  6. data/lib/beautiful_url.rb +1 -0
  7. data/lib/beautiful_url/class/constants.rb +23 -0
  8. data/lib/beautiful_url/class/generate_tab_completion_for_bash_shell.rb +67 -0
  9. data/lib/beautiful_url/class/initialize.rb +149 -0
  10. data/lib/beautiful_url/class/misc.rb +475 -0
  11. data/lib/beautiful_url/class/reset.rb +50 -0
  12. data/lib/beautiful_url/class/run.rb +20 -0
  13. data/lib/beautiful_url/constants/base_constants.rb +230 -0
  14. data/lib/beautiful_url/constants/constants.rb +9 -0
  15. data/lib/beautiful_url/constants/encoding.rb +47 -0
  16. data/lib/beautiful_url/constants/misc.rb +14 -0
  17. data/lib/beautiful_url/constants/newline.rb +14 -0
  18. data/lib/beautiful_url/constants/tasks.rb +30 -0
  19. data/lib/beautiful_url/constants/time.rb +21 -0
  20. data/lib/beautiful_url/json_generator/json_generator.rb +85 -0
  21. data/lib/beautiful_url/requires/failsafe_require_of_beautiful_url.rb +9 -0
  22. data/lib/beautiful_url/requires/require_the_beautiful_url_project.rb +14 -0
  23. data/lib/beautiful_url/toplevel_methods/current_month.rb +32 -0
  24. data/lib/beautiful_url/toplevel_methods/jobs_menu.rb +106 -0
  25. data/lib/beautiful_url/toplevel_methods/local_menu.rb +2033 -0
  26. data/lib/beautiful_url/toplevel_methods/menu.rb +5293 -0
  27. data/lib/beautiful_url/toplevel_methods/misc.rb +18 -0
  28. data/lib/beautiful_url/toplevel_methods/moodle_menu.rb +135 -0
  29. data/lib/beautiful_url/toplevel_methods/return_location_of_the_menu_file.rb +27 -0
  30. data/lib/beautiful_url/toplevel_methods/roebe.rb +17 -0
  31. data/lib/beautiful_url/toplevel_methods/university_menu.rb +14135 -0
  32. data/lib/beautiful_url/version/version.rb +26 -0
  33. data/lib/beautiful_url/www/app.rb +168 -0
  34. data/test/testing_beautiful_url.rb +46 -0
  35. data/test/testing_the_base_constants.rb +26 -0
  36. metadata +101 -0
@@ -0,0 +1,26 @@
1
+ #!/usr/bin/ruby -w
2
+ # Encoding: UTF-8
3
+ # frozen_string_literal: true
4
+ # =========================================================================== #
5
+ # require 'beautiful_url/version/version.rb'
6
+ # =========================================================================== #
7
+ module BeautifulUrl
8
+
9
+ # ========================================================================= #
10
+ # === VERSION
11
+ # ========================================================================= #
12
+ VERSION = '1.5.5'
13
+
14
+ # ========================================================================= #
15
+ # ===LAST_UPDATE
16
+ # ========================================================================= #
17
+ LAST_UPDATE = '18.07.2021'
18
+
19
+ # ========================================================================= #
20
+ # === BeautifulUrl.version?
21
+ # ========================================================================= #
22
+ def self.version?
23
+ VERSION
24
+ end
25
+
26
+ end
@@ -0,0 +1,168 @@
1
+ #!/usr/bin/ruby -w
2
+ # Encoding: UTF-8
3
+ # frozen_string_literal: true
4
+ # =========================================================================== #
5
+ # === BeautifulUrl::App
6
+ #
7
+ # This class can show, on a webpage, whether a remote URL is registered
8
+ # or not. Additionally it can redirect or load up a new website.
9
+ #
10
+ # Usage example:
11
+ #
12
+ # BeautifulUrl::App.new
13
+ #
14
+ # =========================================================================== #
15
+ # require 'beautiful_url/www/app.rb'
16
+ # BeautifulUrl::App.start_sinatra_interface
17
+ # =========================================================================== #
18
+ require 'web_object/requires/require_sinatra.rb'
19
+
20
+ module BeautifulUrl
21
+
22
+ class App < ::WebObject::Sinatra # === BeautifulUrl::App
23
+
24
+ require 'beautiful_url'
25
+
26
+ # ========================================================================= #
27
+ # === before (before tag)
28
+ # ========================================================================= #
29
+ before {
30
+ content_type(:html, 'charset' => 'UTF-8')
31
+ }
32
+
33
+ # ========================================================================= #
34
+ # === initialize
35
+ # ========================================================================= #
36
+ def initialize(
37
+ commandline_arguments = nil,
38
+ run_already = true
39
+ )
40
+ super()
41
+ reset
42
+ set_commandline_arguments(
43
+ commandline_arguments
44
+ )
45
+ run if run_already
46
+ end
47
+
48
+ # ========================================================================= #
49
+ # === reset (reset tag)
50
+ # ========================================================================= #
51
+ def reset
52
+ super()
53
+ # ======================================================================= #
54
+ # === @automatically_redirect_when_the_input_has_been_found
55
+ #
56
+ # If the next variable is set to true then we will automatically
57
+ # redirect the visitor.
58
+ # ======================================================================= #
59
+ @automatically_redirect_when_the_input_has_been_found = false
60
+ end
61
+
62
+ # ========================================================================= #
63
+ # === set_input
64
+ # ========================================================================= #
65
+ def set_commandline_arguments(i = '')
66
+ i = [i].flatten.compact
67
+ @commandline_arguments = i
68
+ end
69
+
70
+ # ========================================================================= #
71
+ # === commandline_arguments?
72
+ # ========================================================================= #
73
+ def commandline_arguments?
74
+ @commandline_arguments
75
+ end
76
+
77
+ # ========================================================================= #
78
+ # === /
79
+ # ========================================================================= #
80
+ get('/*') {
81
+ _ = params[:splat]
82
+ route_to_this_action = '/'
83
+ if params.has_key?('user_input')
84
+ _ = params.fetch('user_input')
85
+ end
86
+ original_input = _.dup
87
+ original_input = original_input.join(' ').strip if _.is_a? Array
88
+ _ = ::BeautifulUrl.return_as_string(original_input)
89
+ header = html_title('Translate URLs')+'<body>'
90
+ footer = '</body></html>'
91
+ form_div = div(css_style: 'padding: 0.2em') {
92
+ form(action: route_to_this_action, id: 'beautiful_url', css_style: 'margin-left:2em; margin-top:2px') {
93
+ '<input type="text" name="user_input" autofocus '\
94
+ 'style="padding:2px; border:3px solid slateblue; padding: 4px"><br>'+
95
+ input_type_submit
96
+ }
97
+ }
98
+ if original_input.empty?
99
+ header+
100
+ p(
101
+ 'Please provide an URL (shortcut).'
102
+ )+
103
+ form_div+
104
+ footer
105
+ elsif _ == original_input
106
+ header+
107
+ p(
108
+ 'Not found the input: <br><b>'+original_input+'</b>'
109
+ )+
110
+ form_div+
111
+ footer
112
+ else
113
+ # In this case the input was found.
114
+ if @automatically_redirect_when_the_input_has_been_found
115
+ redirect _
116
+ end
117
+ header+
118
+ p(
119
+ 'The original input was: <br><b style="margin-left:1em">'+original_input+'</b>'
120
+ )+
121
+ return_proper_link_for(_)+
122
+ br+
123
+ form_div+
124
+ footer
125
+ end
126
+ }
127
+
128
+ # ========================================================================= #
129
+ # === return_proper_link_for
130
+ # ========================================================================= #
131
+ def return_proper_link_for(i)
132
+ a(
133
+ i, content: i, css_style: 'margin-left: 2em; font-weight: bold;'
134
+ )
135
+ end
136
+
137
+ # ========================================================================= #
138
+ # === html_title
139
+ # ========================================================================= #
140
+ def html_title(this_title = 'Translate URLs')
141
+ "<html><title>#{this_title}</title></html>"
142
+ end
143
+
144
+ # ========================================================================= #
145
+ # === run (run tag)
146
+ # ========================================================================= #
147
+ def run
148
+ end
149
+
150
+ # ========================================================================= #
151
+ # === BeautifulUrl::App.start_sinatra_interface
152
+ # ========================================================================= #
153
+ def self.start_sinatra_interface
154
+ ::BeautifulUrl::App.run!
155
+ end
156
+
157
+ # ========================================================================= #
158
+ # === BeautifulUrl::App[]
159
+ # ========================================================================= #
160
+ def self.[](i = '')
161
+ new(i)
162
+ end
163
+
164
+ end; end
165
+
166
+ if __FILE__ == $PROGRAM_NAME
167
+ BeautifulUrl::App.start_sinatra_interface
168
+ end # beautiful_url_app
@@ -0,0 +1,46 @@
1
+ #!/usr/bin/ruby -w
2
+ # Encoding: UTF-8
3
+ # frozen_string_literal: true
4
+ # =========================================================================== #
5
+ if __FILE__ == $PROGRAM_NAME
6
+ N = "\n"
7
+ require 'opn'
8
+ require 'beautiful_url'
9
+ require 'cliner'
10
+ require 'colours/colours_e_autoinclude.rb'
11
+ # ========================================================================= #
12
+ # Testing the class next.
13
+ # ========================================================================= #
14
+ e 'We will now test that the class BeautifulUrl works well.'
15
+ e "The version is: `#{simp(BeautifulUrl.version?)}`."
16
+ # ========================================================================= #
17
+ # === test_this_input
18
+ # ========================================================================= #
19
+ def test_this_input(i)
20
+ e; cliner {
21
+ e 'The input that we will test next is: '+sfancy(i)
22
+ # _ = BeautifulUrl[i]
23
+ _ = BeautifulUrl::BeautifulUrl.new(i)
24
+ e 'Is it included? '+sfancy(BeautifulUrl.is_included?(i).to_s)
25
+ e 'Replaced url is: '+sfancy(_.url?)
26
+ }; e
27
+ end
28
+ input = 'smiley3'; test_this_input(input)
29
+ input = 'gather_pc_news'; test_this_input(input)
30
+ # Next, we must test intralink abilities.
31
+ input = 'local_php#test'; test_this_input(input)
32
+ # Next, generate tab completion:
33
+ opn; e 'Next, we will generate the tab completion:'
34
+ BeautifulUrl::BeautifulUrl.new.generate_tab_completion
35
+ _ = BeautifulUrl::BeautifulUrl.new(
36
+ 'http://localhost/MISC/projects.cgi', :replace)
37
+ opn; e _.result?
38
+ e
39
+ opn; e 'Now we will test the functionality of .search_for_this_url'
40
+ opn; e ' '+_.search_for_this_url('videos').to_s
41
+ e
42
+ opn; e "Next, we will test the functionality of BeautifulUrl['project']:"
43
+ opn; e ' '+BeautifulUrl['project']
44
+ pp BeautifulUrl['cybertest'] { :do_replace_localhost }
45
+ pp BeautifulUrl.new('bioroebe_tutorial?pdf')
46
+ end # $RSRC/beautiful_url/test/testing_beautiful_url.rb
@@ -0,0 +1,26 @@
1
+ #!/usr/bin/ruby -w
2
+ # Encoding: UTF-8
3
+ # frozen_string_literal: true
4
+ # =========================================================================== #
5
+ require 'beautiful_url/constants/base_constants.rb'
6
+ include BeautifulUrl
7
+
8
+ require 'colours/autoinclude'
9
+
10
+ e
11
+ e BeautifulUrl::BASE_DIR
12
+ e
13
+ e '^^^ this should equal /home/x/'
14
+ e
15
+
16
+ data_dir = BeautifulUrl::DATA_DIR
17
+
18
+ if File.directory? data_dir
19
+ e 'Yes, the directory '+data_dir+' exists.'
20
+ else
21
+ e 'No, the directory '+data_dir+' does NOT exist.'
22
+ end
23
+
24
+ e
25
+ e 'RUBY_SRC is: '+RUBY_SRC
26
+ e
metadata ADDED
@@ -0,0 +1,101 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: beautiful_url
3
+ version: !ruby/object:Gem::Version
4
+ version: 1.5.5
5
+ platform: ruby
6
+ authors:
7
+ - Robert A. Heiler
8
+ autorequire:
9
+ bindir: bin
10
+ cert_chain: []
11
+ date: 2021-07-18 00:00:00.000000000 Z
12
+ dependencies: []
13
+ description: "\nThis is a medium-sized gem which attempts to handle \"matching\" a
14
+ String\nor a Symbol against (remote) URLs. The project was created in order to\nuse
15
+ short identifiers that can pinpoint to remote URLs, a bit similar\nto how shorturl
16
+ is working.\n\nThe gem is, however had, tailored to my use cases, so it will most\nlikely
17
+ be utterly useless to other people by default. Most downloads\nof this gem happen
18
+ by scripts and bots, so do not think that the \ndownload numbers imply anything
19
+ about \"real\" usage - the gem is \nway too much tailored to my own use case.\n\nIn
20
+ the long run, though, the project may be extended to allow the\ncustom loading of
21
+ yaml files, for a later release - but for now,\nI do not think that this project
22
+ will be useful to anyone else. \n\nMore documentation can be found at:\n\n https://www.rubydoc.info/gems/beautiful_url/\n
23
+ \ \n"
24
+ email: shevy@inbox.lt
25
+ executables: []
26
+ extensions: []
27
+ extra_rdoc_files: []
28
+ files:
29
+ - README.md
30
+ - beautiful_url.gemspec
31
+ - bin/beautiful_url
32
+ - doc/README.gen
33
+ - lib/beautiful_url.rb
34
+ - lib/beautiful_url/class/constants.rb
35
+ - lib/beautiful_url/class/generate_tab_completion_for_bash_shell.rb
36
+ - lib/beautiful_url/class/initialize.rb
37
+ - lib/beautiful_url/class/misc.rb
38
+ - lib/beautiful_url/class/reset.rb
39
+ - lib/beautiful_url/class/run.rb
40
+ - lib/beautiful_url/constants/base_constants.rb
41
+ - lib/beautiful_url/constants/constants.rb
42
+ - lib/beautiful_url/constants/encoding.rb
43
+ - lib/beautiful_url/constants/misc.rb
44
+ - lib/beautiful_url/constants/newline.rb
45
+ - lib/beautiful_url/constants/tasks.rb
46
+ - lib/beautiful_url/constants/time.rb
47
+ - lib/beautiful_url/json_generator/json_generator.rb
48
+ - lib/beautiful_url/requires/failsafe_require_of_beautiful_url.rb
49
+ - lib/beautiful_url/requires/require_the_beautiful_url_project.rb
50
+ - lib/beautiful_url/toplevel_methods/current_month.rb
51
+ - lib/beautiful_url/toplevel_methods/jobs_menu.rb
52
+ - lib/beautiful_url/toplevel_methods/local_menu.rb
53
+ - lib/beautiful_url/toplevel_methods/menu.rb
54
+ - lib/beautiful_url/toplevel_methods/misc.rb
55
+ - lib/beautiful_url/toplevel_methods/moodle_menu.rb
56
+ - lib/beautiful_url/toplevel_methods/return_location_of_the_menu_file.rb
57
+ - lib/beautiful_url/toplevel_methods/roebe.rb
58
+ - lib/beautiful_url/toplevel_methods/university_menu.rb
59
+ - lib/beautiful_url/version/version.rb
60
+ - lib/beautiful_url/www/app.rb
61
+ - test/testing_beautiful_url.rb
62
+ - test/testing_the_base_constants.rb
63
+ homepage: https://rubygems.org/gems/beautiful_url
64
+ licenses:
65
+ - MIT
66
+ metadata: {}
67
+ post_install_message: |2+
68
+
69
+ You should be able to invoke bin/beautiful_url via:
70
+
71
+ beautiful_url
72
+
73
+ rdoc_options: []
74
+ require_paths:
75
+ - lib
76
+ required_ruby_version: !ruby/object:Gem::Requirement
77
+ requirements:
78
+ - - ">="
79
+ - !ruby/object:Gem::Version
80
+ version: 3.0.2
81
+ required_rubygems_version: !ruby/object:Gem::Requirement
82
+ requirements:
83
+ - - ">="
84
+ - !ruby/object:Gem::Version
85
+ version: 3.2.24
86
+ requirements: []
87
+ rubygems_version: 3.2.24
88
+ signing_key:
89
+ specification_version: 4
90
+ summary: 'This is a medium-sized gem which attempts to handle "matching" a String
91
+ or a Symbol against (remote) URLs. The project was created in order to use short
92
+ identifiers that can pinpoint to remote URLs, a bit similar to how shorturl is working. The
93
+ gem is, however had, tailored to my use cases, so it will most likely be utterly
94
+ useless to other people by default. Most downloads of this gem happen by scripts
95
+ and bots, so do not think that the download numbers imply anything about "real"
96
+ usage - the gem is way too much tailored to my own use case. In the long run,
97
+ though, the project may be extended to allow the custom loading of yaml files, for
98
+ a later release - but for now, I do not think that this project will be useful to
99
+ anyone else. More documentation can be found at: https://www.rubydoc.info/gems/beautiful_url/'
100
+ test_files: []
101
+ ...