cyberweb 0.12.35 → 0.13.11

Sign up to get free protection for your applications and to get access to all the features.
Files changed (204) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +220 -124
  3. data/bin/cyberweb_sanitize +1 -1
  4. data/bin/images_from_this_webpage +1 -1
  5. data/doc/README.gen +209 -98
  6. data/doc/configuration/configuration.md +7 -4
  7. data/doc/todo/todo_for_the_cyberweb_project.md +123 -133
  8. data/examples/html/underlined_text_example/underlined_text_example.html +40 -0
  9. data/examples/misc/table_example.rb +19 -17
  10. data/examples/objectified/objectified_caesar_cipher.cgi +73 -0
  11. data/images/cyberweb_theme.png +0 -0
  12. data/lib/cyberweb/REST/constants.rb +1 -1
  13. data/lib/cyberweb/base/base.rb +19 -27
  14. data/lib/cyberweb/base_module/base_module/base_module.rb +31 -16
  15. data/lib/cyberweb/base_module/colours/colours.rb +0 -8
  16. data/lib/cyberweb/cascading_style_sheets/margin.css +4 -0
  17. data/lib/cyberweb/cascading_style_sheets/misc.css +15 -0
  18. data/lib/cyberweb/cgi/cookie.rb +160 -156
  19. data/lib/cyberweb/cgi/core.rb +7 -7
  20. data/lib/cyberweb/cgi/query_extension.rb +1 -1
  21. data/lib/cyberweb/cgi/session/memory_store.rb +1 -1
  22. data/lib/cyberweb/cgi/session/pstore.rb +2 -2
  23. data/lib/cyberweb/cgi/session.rb +1 -1
  24. data/lib/cyberweb/cgi/util.rb +4 -1
  25. data/lib/cyberweb/cmd/cmd.rb +12 -10
  26. data/lib/cyberweb/coloured_tags/coloured_tags.rb +1 -1
  27. data/lib/cyberweb/colours/colour_chart.rb +1 -2
  28. data/lib/cyberweb/colours/colours.rb +1 -1
  29. data/lib/cyberweb/commandline/commandline_interface.rb +1 -1
  30. data/lib/cyberweb/configuration/load_the_configuration.rb +3 -1
  31. data/lib/cyberweb/constants/http_status_codes.rb +4 -1
  32. data/lib/cyberweb/constants/misc.rb +8 -6
  33. data/lib/cyberweb/constants/registered_html_tags.rb +6 -5
  34. data/lib/cyberweb/constants/user_x.rb +7 -0
  35. data/lib/cyberweb/css_manager/css_manager.rb +5 -2
  36. data/lib/cyberweb/encoding/encoding.rb +1 -1
  37. data/lib/cyberweb/erb/test.rhtml +7 -2
  38. data/lib/cyberweb/experimental/html_template_powered_by_rack.rb +3 -1
  39. data/lib/cyberweb/foto_gallery/foto_gallery.rb +3 -0
  40. data/lib/cyberweb/generator/cgi.rb +1 -1
  41. data/lib/cyberweb/html_template/html_template.rb +262 -253
  42. data/lib/cyberweb/images/images.rb +2 -2
  43. data/lib/cyberweb/images/remove_this_substring_from_all_images.rb +5 -1
  44. data/lib/cyberweb/images/standard_images/standard_images.html +3 -4
  45. data/lib/cyberweb/information/README.md +2 -2
  46. data/lib/cyberweb/information/information.cgi +1 -1
  47. data/lib/cyberweb/javascript/dragula_collection.rb +4 -1
  48. data/lib/cyberweb/javascript/javascript_magic.rb +2 -2
  49. data/lib/cyberweb/javascript/on_click_change_opacity.rb +2 -1
  50. data/lib/cyberweb/javascript/popup.rb +8 -1
  51. data/lib/cyberweb/javascript/snoweffect.rb +5 -1
  52. data/lib/cyberweb/javascript_code/custom_functions.js +50 -32
  53. data/lib/cyberweb/objectified/html_tags/README.md +7 -9
  54. data/lib/cyberweb/objectified/html_tags/a.rb +62 -3
  55. data/lib/cyberweb/objectified/html_tags/abbr.rb +33 -3
  56. data/lib/cyberweb/objectified/html_tags/audio.rb +33 -3
  57. data/lib/cyberweb/objectified/html_tags/base.rb +661 -588
  58. data/lib/cyberweb/objectified/html_tags/blockquote.rb +33 -3
  59. data/lib/cyberweb/objectified/html_tags/body.rb +43 -3
  60. data/lib/cyberweb/objectified/html_tags/button.rb +75 -5
  61. data/lib/cyberweb/objectified/html_tags/canvas.rb +43 -3
  62. data/lib/cyberweb/objectified/html_tags/cite.rb +43 -3
  63. data/lib/cyberweb/objectified/html_tags/div.rb +70 -7
  64. data/lib/cyberweb/objectified/html_tags/embed.rb +43 -3
  65. data/lib/cyberweb/objectified/html_tags/fieldset.rb +43 -3
  66. data/lib/cyberweb/objectified/html_tags/figure.rb +43 -3
  67. data/lib/cyberweb/objectified/html_tags/form.rb +78 -3
  68. data/lib/cyberweb/objectified/html_tags/h1.rb +43 -3
  69. data/lib/cyberweb/objectified/html_tags/h2.rb +43 -3
  70. data/lib/cyberweb/objectified/html_tags/h3.rb +43 -3
  71. data/lib/cyberweb/objectified/html_tags/h4.rb +43 -3
  72. data/lib/cyberweb/objectified/html_tags/h5.rb +43 -3
  73. data/lib/cyberweb/objectified/html_tags/h6.rb +43 -3
  74. data/lib/cyberweb/objectified/html_tags/head.rb +34 -1
  75. data/lib/cyberweb/objectified/html_tags/i.rb +112 -0
  76. data/lib/cyberweb/objectified/html_tags/img.rb +65 -18
  77. data/lib/cyberweb/objectified/html_tags/input.rb +86 -2
  78. data/lib/cyberweb/objectified/html_tags/label.rb +103 -0
  79. data/lib/cyberweb/objectified/html_tags/legend.rb +129 -0
  80. data/lib/cyberweb/objectified/html_tags/li.rb +111 -0
  81. data/lib/cyberweb/objectified/html_tags/map.rb +43 -3
  82. data/lib/cyberweb/objectified/html_tags/meta.rb +13 -2
  83. data/lib/cyberweb/objectified/html_tags/nav.rb +111 -0
  84. data/lib/cyberweb/objectified/html_tags/object.rb +33 -3
  85. data/lib/cyberweb/objectified/html_tags/ol.rb +127 -0
  86. data/lib/cyberweb/objectified/html_tags/p.rb +33 -3
  87. data/lib/cyberweb/objectified/html_tags/pre.rb +41 -4
  88. data/lib/cyberweb/objectified/html_tags/progress.rb +43 -3
  89. data/lib/cyberweb/objectified/html_tags/section.rb +116 -0
  90. data/lib/cyberweb/objectified/html_tags/select.rb +34 -1
  91. data/lib/cyberweb/objectified/html_tags/span.rb +64 -5
  92. data/lib/cyberweb/objectified/html_tags/style.rb +9 -2
  93. data/lib/cyberweb/objectified/html_tags/table.rb +137 -3
  94. data/lib/cyberweb/objectified/html_tags/td.rb +135 -0
  95. data/lib/cyberweb/objectified/html_tags/textarea.rb +37 -3
  96. data/lib/cyberweb/objectified/html_tags/th.rb +114 -0
  97. data/lib/cyberweb/objectified/html_tags/thead.rb +114 -0
  98. data/lib/cyberweb/objectified/html_tags/title.rb +10 -2
  99. data/lib/cyberweb/objectified/html_tags/tr.rb +110 -0
  100. data/lib/cyberweb/objectified/html_tags/ul.rb +45 -4
  101. data/lib/cyberweb/objectified/shorter_helper_methods/shorter_helper_methods.rb +67 -46
  102. data/lib/cyberweb/oop.rb +9 -0
  103. data/lib/cyberweb/predefined_and_freeform_methods/hash_registered_extra_tags.rb +2 -0
  104. data/lib/cyberweb/predefined_and_freeform_methods/header.rb +4 -1
  105. data/lib/cyberweb/project/project.rb +0 -4
  106. data/lib/cyberweb/requires/remove_html.rb +1 -1
  107. data/lib/cyberweb/requires/require_the_cyberweb_project.rb +1 -9
  108. data/lib/cyberweb/route_handler/module/route_handler_module.rb +2 -1
  109. data/lib/cyberweb/standalone_classes/all_css_classes.rb +5 -2
  110. data/lib/cyberweb/standalone_classes/calculator.rb +3 -1
  111. data/lib/cyberweb/toplevel_methods/audio.rb +3 -1
  112. data/lib/cyberweb/toplevel_methods/csv.rb +1 -1
  113. data/lib/cyberweb/toplevel_methods/frames.rb +11 -3
  114. data/lib/cyberweb/toplevel_methods/greek_letters/greek_letters.rb +3 -0
  115. data/lib/cyberweb/toplevel_methods/hfin.rb +5 -1
  116. data/lib/cyberweb/toplevel_methods/html_tags/README.md +8 -7
  117. data/lib/cyberweb/toplevel_methods/html_tags/html_tags.rb +4211 -2827
  118. data/lib/cyberweb/toplevel_methods/html_tags/table.rb +1202 -0
  119. data/lib/cyberweb/toplevel_methods/javascript.rb +9 -1
  120. data/lib/cyberweb/toplevel_methods/jquery.rb +1 -1
  121. data/lib/cyberweb/toplevel_methods/{log_directory.rb → log_directory_and_logging.rb} +36 -1
  122. data/lib/cyberweb/toplevel_methods/params.rb +11 -11
  123. data/lib/cyberweb/toplevel_methods/random.rb +4 -3
  124. data/lib/cyberweb/toplevel_methods/registered_ids.rb +3 -0
  125. data/lib/cyberweb/toplevel_methods/return_head_start.rb +1 -3
  126. data/lib/cyberweb/toplevel_methods/return_html_start.rb +1 -3
  127. data/lib/cyberweb/toplevel_methods/sanitize_url.rb +2 -1
  128. data/lib/cyberweb/toplevel_methods/server_base_directory.rb +0 -1
  129. data/lib/cyberweb/toplevel_methods/textile.rb +2 -1
  130. data/lib/cyberweb/toplevel_methods/{misc.rb → toplevel_methods.rb} +1446 -807
  131. data/lib/cyberweb/toplevel_methods/video.rb +21 -3
  132. data/lib/cyberweb/toplevel_methods/write_what_into.rb +2 -2
  133. data/lib/cyberweb/utility_scripts/autogenerate_drop_shadow_rules/autogenerate_drop_shadow_rules.rb +2 -4
  134. data/lib/cyberweb/utility_scripts/booklet/booklet.rb +0 -4
  135. data/lib/cyberweb/utility_scripts/download_all_images_from_this_website.rb +1 -1
  136. data/lib/cyberweb/utility_scripts/{download_balloon_css.rb → download_balloon_css/download_balloon_css.rb} +1 -1
  137. data/lib/cyberweb/utility_scripts/images_to_html/images_to_html.rb +3 -0
  138. data/lib/cyberweb/utility_scripts/obtain_files_and_directories_from_this_path/obtain_files_and_directories_from_this_path.rb +183 -71
  139. data/lib/cyberweb/utility_scripts/pdf_to_html/pdf_to_html.rb +160 -65
  140. data/lib/cyberweb/version/version.rb +2 -2
  141. data/lib/cyberweb/web_images/map_symbol_to_image_location.rb +13 -2
  142. data/lib/cyberweb/web_object/web_object.rb +62 -20
  143. data/lib/cyberweb/web_scraper/scrape_this_url.rb +3 -1
  144. data/lib/cyberweb/webmin/biology_server.cgi +1 -1
  145. data/lib/cyberweb/webmin/calculator.cgi +1 -1
  146. data/lib/cyberweb/webmin/colour_chart.cgi +1 -1
  147. data/lib/cyberweb/webmin/comments.cgi +2 -2
  148. data/lib/cyberweb/webmin/constants.rb +1 -1
  149. data/lib/cyberweb/webmin/dictionary.cgi +2 -2
  150. data/lib/cyberweb/webmin/simple_forum/index.cgi +2 -2
  151. data/lib/cyberweb/webmin/sys_info.cgi +3 -3
  152. data/lib/cyberweb/webmin/webforum.cgi +1 -1
  153. data/lib/cyberweb/yaml/registered_html_tags.yml +3 -1
  154. data/test/simple_tests/testing_return_dataset_without_any_comments.rb +1 -1
  155. metadata +23 -57
  156. data/lib/cyberweb/html_tags/README.md +0 -3
  157. data/lib/cyberweb/html_tags/a.rb +0 -67
  158. data/lib/cyberweb/html_tags/accesskey.rb +0 -25
  159. data/lib/cyberweb/html_tags/blockquote.rb +0 -56
  160. data/lib/cyberweb/html_tags/body.rb +0 -14
  161. data/lib/cyberweb/html_tags/br.rb +0 -19
  162. data/lib/cyberweb/html_tags/button.rb +0 -150
  163. data/lib/cyberweb/html_tags/canvas.rb +0 -59
  164. data/lib/cyberweb/html_tags/chtml.rb +0 -14
  165. data/lib/cyberweb/html_tags/div.rb +0 -170
  166. data/lib/cyberweb/html_tags/fieldset.rb +0 -69
  167. data/lib/cyberweb/html_tags/figure.rb +0 -72
  168. data/lib/cyberweb/html_tags/form.rb +0 -203
  169. data/lib/cyberweb/html_tags/h1.rb +0 -77
  170. data/lib/cyberweb/html_tags/h2.rb +0 -81
  171. data/lib/cyberweb/html_tags/h3.rb +0 -60
  172. data/lib/cyberweb/html_tags/h4.rb +0 -66
  173. data/lib/cyberweb/html_tags/h5.rb +0 -64
  174. data/lib/cyberweb/html_tags/h6.rb +0 -60
  175. data/lib/cyberweb/html_tags/hr.rb +0 -22
  176. data/lib/cyberweb/html_tags/html_tags.rb +0 -267
  177. data/lib/cyberweb/html_tags/i.rb +0 -52
  178. data/lib/cyberweb/html_tags/img.rb +0 -294
  179. data/lib/cyberweb/html_tags/input.rb +0 -354
  180. data/lib/cyberweb/html_tags/label.rb +0 -65
  181. data/lib/cyberweb/html_tags/legend.rb +0 -56
  182. data/lib/cyberweb/html_tags/li.rb +0 -67
  183. data/lib/cyberweb/html_tags/map.rb +0 -38
  184. data/lib/cyberweb/html_tags/nav.rb +0 -63
  185. data/lib/cyberweb/html_tags/object.rb +0 -57
  186. data/lib/cyberweb/html_tags/ol.rb +0 -57
  187. data/lib/cyberweb/html_tags/option.rb +0 -64
  188. data/lib/cyberweb/html_tags/p.rb +0 -88
  189. data/lib/cyberweb/html_tags/pre.rb +0 -162
  190. data/lib/cyberweb/html_tags/section.rb +0 -33
  191. data/lib/cyberweb/html_tags/select.rb +0 -104
  192. data/lib/cyberweb/html_tags/span.rb +0 -344
  193. data/lib/cyberweb/html_tags/strong.rb +0 -42
  194. data/lib/cyberweb/html_tags/table.rb +0 -284
  195. data/lib/cyberweb/html_tags/tbody.rb +0 -26
  196. data/lib/cyberweb/html_tags/td.rb +0 -212
  197. data/lib/cyberweb/html_tags/textarea.rb +0 -173
  198. data/lib/cyberweb/html_tags/th.rb +0 -70
  199. data/lib/cyberweb/html_tags/thead.rb +0 -41
  200. data/lib/cyberweb/html_tags/tr.rb +0 -99
  201. data/lib/cyberweb/html_tags/ul.rb +0 -51
  202. data/lib/cyberweb/requires/require_html_tags_files.rb +0 -23
  203. data/lib/cyberweb/toplevel_methods/logging.rb +0 -42
  204. data/lib/cyberweb/web_base/web_base.rb +0 -33
@@ -1,170 +0,0 @@
1
- #!/usr/bin/ruby -w
2
- # Encoding: UTF-8
3
- # frozen_string_literal: true
4
- # =========================================================================== #
5
- # require 'cyberweb/html_tags/div.rb'
6
- # =========================================================================== #
7
- module Cyberweb
8
-
9
- require 'cyberweb/web_base/web_base.rb'
10
-
11
- # ========================================================================= #
12
- # === Cyberweb::Div
13
- #
14
- # Usage example for setting to a default CSS class to use in
15
- # <div> tags goes like so:
16
- #
17
- # Div.set_css_class 'red'
18
- #
19
- # This will then have set a new default for all <div> tags, as they
20
- # will be red from this point on.
21
- # ========================================================================= #
22
- class Div < WebBase # This module allows us to style it a bit.
23
-
24
- # ======================================================================= #
25
- # === @div_css_class
26
- # ======================================================================= #
27
- @div_css_class = ''.dup
28
-
29
- # ======================================================================= #
30
- # === Cyberweb::Div.set_css_class
31
- # ======================================================================= #
32
- def self.set_css_class(i = DEFAULT_CSS_CLASS)
33
- @div_css_class = i
34
- end
35
-
36
- # ======================================================================= #
37
- # === Cyberweb::Div.to_s
38
- # ======================================================================= #
39
- def self.to_s
40
- @div_css_class
41
- end
42
-
43
- # ======================================================================= #
44
- # === Cyberweb::Div.clear
45
- # ======================================================================= #
46
- def self.clear
47
- @div_css_class = ''.dup
48
- end
49
-
50
- end
51
-
52
- # ========================================================================= #
53
- # === Cyberweb.cdiv
54
- # ========================================================================= #
55
- def self.cdiv
56
- ee string_cdiv
57
- end
58
-
59
- # ========================================================================= #
60
- # === cdiv
61
- # ========================================================================= #
62
- def cdiv
63
- ::Cyberweb.cdiv
64
- end
65
-
66
- # ========================================================================= #
67
- # === Cyberweb.string_cdiv
68
- # ========================================================================= #
69
- def self.string_cdiv
70
- '</div>'
71
- end
72
-
73
- # ========================================================================= #
74
- # === Cyberweb.string_div
75
- #
76
- # This method will return a string that is a fancified <div> tag.
77
- # ========================================================================= #
78
- def self.string_div(
79
- css_class = Div.to_s,
80
- the_id = '',
81
- css_style = '',
82
- javascript = '',
83
- &block
84
- )
85
- # ======================================================================= #
86
- # The next line was uncomment on 25.07.2020. class Cyberweb::WebObject
87
- # will handle this on its own.
88
- # ======================================================================= #
89
- # consider_serving_web_object # div() may be the first tag.
90
- result = ''.dup
91
- if css_class.is_a? Symbol
92
- case css_class
93
- # ===================================================================== #
94
- # === :onhover
95
- # ===================================================================== #
96
- when :onhover,
97
- :on_hover
98
- css_class = ''.dup
99
- # the_id = 'div_hover'
100
- javascript = '
101
- onclick="this.innerHTML=\'Ooops!\'"
102
- '
103
- end
104
- end
105
- # ======================================================================= #
106
- # === Add Div.to_s
107
- #
108
- # Make sure that the Div.to_s part is always added, aka prepended.
109
- # ======================================================================= #
110
- unless Div.to_s.empty? and css_class.to_s.include?(Div.to_s)
111
- css_class = "#{css_class} #{Div.to_s}"
112
- end
113
- # ======================================================================= #
114
- # Next we can delegate towards the stag() method, which is a shortcut
115
- # name for "string_tag" or "stringified_tag".
116
- #
117
- # The stag() method can be found in the file tag/tag.rb
118
- # ======================================================================= #
119
- result << stag(:div, css_class, the_id, css_style, javascript)
120
- return result
121
- end
122
-
123
- # ========================================================================= #
124
- # === div
125
- # ========================================================================= #
126
- def div(
127
- a = Div.to_s,
128
- b = '',
129
- c = '',
130
- d = '',
131
- &block
132
- )
133
- ::Cyberweb.div(a, b, c, d, &block) # Need to pass the block to the "master" method Cyberweb.div()
134
- end
135
-
136
- # ========================================================================= #
137
- # === string_div
138
- # ========================================================================= #
139
- def string_div(
140
- a = Div.to_s,
141
- b = '',
142
- c = '',
143
- d,
144
- &block
145
- )
146
- ::Cyberweb.string_div(a, b, c, d, &block)
147
- end
148
-
149
- # ========================================================================= #
150
- # === Cyberweb.div
151
- #
152
- # This method will display html div tag. (class, id, style, javascript)
153
- # ========================================================================= #
154
- def self.div(
155
- css_class = Div.to_s,
156
- the_id = '',
157
- css_style = '',
158
- javascript_code = ''
159
- )
160
- result = ::Cyberweb.string_div(
161
- css_class, the_id, css_style, javascript_code
162
- )
163
- ee result
164
- if block_given?
165
- yield
166
- ee "#{string_cdiv}\n"
167
- end
168
- end
169
-
170
- end
@@ -1,69 +0,0 @@
1
- #!/usr/bin/ruby -w
2
- # Encoding: UTF-8
3
- # frozen_string_literal: true
4
- # =========================================================================== #
5
- module Cyberweb
6
-
7
- require 'cyberweb/web_base/web_base.rb'
8
-
9
- # ========================================================================= #
10
- # === Cyberweb::Fieldset
11
- # ========================================================================= #
12
- class Fieldset < WebBase
13
-
14
- # ======================================================================= #
15
- # === @fieldset_css_class
16
- # ======================================================================= #
17
- @fieldset_css_class = nil
18
-
19
- # ======================================================================= #
20
- # === Cyberweb::Fieldset.set_css_class
21
- # ======================================================================= #
22
- def self.set_css_class(i = DEFAULT_CSS_CLASS)
23
- @fieldset_css_class = i
24
- end
25
-
26
- # ======================================================================= #
27
- # === Cyberweb::Fieldset.to_s
28
- # ======================================================================= #
29
- def self.to_s; @fieldset_css_class; end
30
-
31
- end
32
-
33
- # ========================================================================= #
34
- # === fieldset
35
- #
36
- # This will generate a HTML <fieldset> tag.
37
- #
38
- # You can pass in a Hash, which allows us to do things like this here:
39
- #
40
- # fieldset style: 'width: 70%'
41
- #
42
- # ========================================================================= #
43
- def fieldset(
44
- css_class = Fieldset.to_s,
45
- the_id = '',
46
- css_style = '',
47
- javascript = ''
48
- )
49
- if css_class.is_a? Hash
50
- if css_class.has_key? :style
51
- css_style = css_class[:style]
52
- css_class = ''
53
- end
54
- end
55
- ee stag(:fieldset, css_class, the_id, css_style, javascript)
56
- if block_given?
57
- yield
58
- end
59
- cfieldset
60
- end
61
-
62
- # ========================================================================= #
63
- # === cfieldset
64
- # ========================================================================= #
65
- def cfieldset
66
- eclose :fieldset
67
- end
68
-
69
- end
@@ -1,72 +0,0 @@
1
- #!/usr/bin/ruby -w
2
- # Encoding: UTF-8
3
- # frozen_string_literal: true
4
- # =========================================================================== #
5
- module Cyberweb
6
-
7
- # ========================================================================= #
8
- # === Cyberweb::Figure
9
- # ========================================================================= #
10
- class Figure < WebBase
11
-
12
- # ======================================================================= #
13
- # === @form_css_class
14
- # ======================================================================= #
15
- @form_css_class = nil
16
-
17
- # ======================================================================= #
18
- # === Cyberweb::Figure.set_css_class
19
- # ======================================================================= #
20
- def self.set_css_class(i = DEFAULT_CSS_CLASS)
21
- @form_css_class = i
22
- end
23
-
24
- # ======================================================================= #
25
- # === Cyberweb::Figure.to_s
26
- # ======================================================================= #
27
- def self.to_s; @form_css_class; end
28
-
29
- end
30
-
31
- # ========================================================================= #
32
- # === figure
33
- #
34
- # The <figure> tag specifies self-contained content, like illustrations,
35
- # diagrams, photos, code listings, etc.
36
- #
37
- # While the content of the <figure> element is related to the main flow,
38
- # its position is independent of the main flow, and if removed it should
39
- # not affect the flow of the document.
40
- #
41
- # Some documentation for the <figure> tag can be found here:
42
- #
43
- # https://www.w3schools.com/tags/tag_figure.asp
44
- #
45
- # Examples:
46
- #
47
- # <figure>
48
- # <img src="img_pulpit.jpg" alt="The Pulpit Rock" width="304" height="228">
49
- # </figure>
50
- #
51
- # ========================================================================= #
52
- def figure(
53
- optional_input = '',
54
- css_class = Figure.to_s,
55
- the_id = '',
56
- css_style = ''
57
- )
58
- tag 'figure', css_class, the_id, css_style
59
- unless optional_input.empty?
60
- ee optional_input
61
- cfigure
62
- end
63
- end
64
-
65
- # ========================================================================= #
66
- # === cfigure
67
- # ========================================================================= #
68
- def cfigure
69
- string_close(:figure)
70
- end
71
-
72
- end
@@ -1,203 +0,0 @@
1
- #!/usr/bin/ruby -w
2
- # Encoding: UTF-8
3
- # frozen_string_literal: true
4
- # =========================================================================== #
5
- # require 'cyberweb/html_tags/form.rb'
6
- # =========================================================================== #
7
- module Cyberweb
8
-
9
- require 'cyberweb/web_base/web_base.rb'
10
-
11
- # ========================================================================= #
12
- # === DEFAULT_FORM_MODE
13
- # ========================================================================= #
14
- DEFAULT_FORM_MODE = 'post'
15
-
16
- # ========================================================================= #
17
- # === Cyberweb::Form
18
- # ========================================================================= #
19
- class Form < WebBase
20
-
21
- # ======================================================================= #
22
- # ==== @form_css_class
23
- # ======================================================================= #
24
- @form_css_class = nil
25
-
26
- # ======================================================================= #
27
- # === Cyberweb::Form
28
- # ======================================================================= #
29
- def self.mode
30
- @mode
31
- end
32
-
33
- # ======================================================================= #
34
- # === Cyberweb::Form.to_s
35
- # ======================================================================= #
36
- def self.to_s
37
- @form_css_class
38
- end
39
-
40
- # ======================================================================= #
41
- # === Cyberweb::Form.set_css_class
42
- # ======================================================================= #
43
- def self.set_css_class(i = DEFAULT_CSS_CLASS)
44
- @form_css_class = i
45
- end
46
-
47
- # ======================================================================= #
48
- # === Cyberweb::Form.toggle
49
- # ======================================================================= #
50
- def self.toggle
51
- case @mode # case tag
52
- when 'get'
53
- @mode = 'post'
54
- when 'post'
55
- @mode = 'get'
56
- end
57
- end
58
-
59
- # ======================================================================= #
60
- # === toggle_form
61
- # ======================================================================= #
62
- def toggle_form
63
- Form.toggle
64
- end; alias toggle_web_form toggle_form # === toggle_web_form
65
-
66
- end; Form.instance_variable_set('@mode', DEFAULT_FORM_MODE)
67
-
68
- # ========================================================================= #
69
- # === form (form tag)
70
- #
71
- # This method creates a html <form>.
72
- #
73
- # We can use the argument called `accept-charset` to denote which
74
- # charset we will use in a formular.
75
- #
76
- # If we pass in a hash, we will overrule some other class settings.
77
- #
78
- # This will then look like this, in raw html:
79
- #
80
- # <form action="foo" accept-charset="UTF-8">...</form>
81
- #
82
- # Please note that method has only two valid modes:
83
- #
84
- # get
85
- # post
86
- #
87
- # The default form mode is post, by the way.
88
- #
89
- # Usage examples:
90
- #
91
- # form 'action.cgi','get','','form_name'
92
- # form 'self','post','form_name'
93
- # form 'self','get','form_name'
94
- #
95
- # ========================================================================= #
96
- def form(
97
- action = 'SELF', # (1) action
98
- method_form = Form.mode, # (2) method form, such as :get or :post
99
- css_class = Form.to_s, # (3) css class
100
- the_id = '', # (4) the id
101
- css_style = '', # (5) css style
102
- accept_charset = nil, enctype = nil # (6) charset
103
- )
104
- if action.is_a? Hash
105
- if action.has_key? :css_class
106
- css_class = action.delete(:css_class)
107
- action = ''
108
- end
109
- if action.has_key? :type
110
- method_form = action.delete(:type)
111
- end
112
- end
113
- action = '' if action.to_s.empty?
114
- if method_form.is_a? Hash
115
- if method_form.has_key? :id
116
- the_id = method_form.delete(:id)
117
- method_form = Form.mode
118
- end
119
- end
120
- method_form = '' if method_form.to_s.empty?
121
- if action.is_a?(Hash) and action.empty?
122
- action = 'SELF'
123
- end
124
- action = action.to_s
125
- case action.downcase
126
- when 'self'
127
- action = Pathname.new($PROGRAM_NAME).basename.to_s
128
- end
129
- method_form = method_form.to_s
130
- case method_form
131
- when 'def', 'default','get'
132
- method_form = 'get' # Default method_form is "get".
133
- end
134
- _ = '<form'.dup
135
- _ << ' action="'+action+'" method="'+method_form+'"' unless action.empty?
136
- unless css_class.to_s.empty?
137
- _ << return_css_class(css_class) # css_class
138
- end
139
- _ << return_the_id(the_id) # html_id
140
- _ << return_css_style(css_style) # css_style
141
- # ======================================================================= #
142
- # Since as of Sep 2011 we will also add name, but only if the name
143
- # is not empty.
144
- # ======================================================================= #
145
- unless the_id.to_s.empty?
146
- _ << ' name="'+the_id+'"'
147
- end
148
- if accept_charset
149
- if accept_charset.is_a? TrueClass
150
- _ << ' accept-charset="UTF-8"'
151
- else
152
- _ << ' accept-charset="'+accept_charset.to_s+'"'
153
- end
154
- end
155
- if enctype
156
- _ << ' enctype="'+enctype+'"'
157
- end
158
- _ << '>'+NL
159
- print _
160
- if block_given?
161
- yield
162
- cform
163
- end
164
- end; alias open_form form # === open_form
165
-
166
- # ========================================================================= #
167
- # === Cyberweb.cform
168
- # ========================================================================= #
169
- def self.cform
170
- ee HtmlTags.cform
171
- end; self.instance_eval { alias close_form cform } # === Cyberweb.close_form
172
-
173
- # ========================================================================= #
174
- # === cform
175
- # ========================================================================= #
176
- def cform
177
- ::Cyberweb.cform
178
- end; alias close_form cform # === close_form
179
-
180
- # ========================================================================= #
181
- # === Cyberweb.eform
182
- # ========================================================================= #
183
- def self.eform
184
- result = '<form'.dup
185
- if block_given?
186
- yielded = yield
187
- if yielded.is_a? Hash
188
- # =================================================================== #
189
- # Query for :type before we query for :action:
190
- # =================================================================== #
191
- if yielded.has_key? :type
192
- result << ' method="'+yielded.delete(:type).to_s+'"'
193
- end
194
- if yielded.has_key? :action
195
- result << ' action="'+yielded.delete(:action).to_s+'"'
196
- end
197
- end
198
- end
199
- result << '>'
200
- ee result
201
- end
202
-
203
- end
@@ -1,77 +0,0 @@
1
- #!/usr/bin/ruby -w
2
- # Encoding: UTF-8
3
- # frozen_string_literal: true
4
- # =========================================================================== #
5
- module Cyberweb
6
-
7
- # ========================================================================= #
8
- # === Cyberweb::H1
9
- # ========================================================================= #
10
- class H1 < WebBase
11
-
12
- # ======================================================================= #
13
- # === @h1_css_class
14
- # ======================================================================= #
15
- @h1_css_class = nil
16
-
17
- # ======================================================================= #
18
- # === Cyberweb::H1.set_css_class
19
- # ======================================================================= #
20
- def self.set_css_class(i = DEFAULT_CSS_CLASS)
21
- @h1_css_class = i
22
- end
23
-
24
- # ======================================================================= #
25
- # === Cyberweb::H1.to_s
26
- # ======================================================================= #
27
- def self.to_s; @h1_css_class; end
28
-
29
- end
30
-
31
- # ========================================================================= #
32
- # === h1
33
- #
34
- # The <h1> header tag.
35
- # ========================================================================= #
36
- def h1(
37
- text,
38
- css_class = H1.to_s,
39
- the_id = '',
40
- css_style = '',
41
- javascript = ''
42
- )
43
- css_style = sanitize_for_colours(css_style)
44
- if Cyberweb::JavascriptMagic.is_included? css_class
45
- javascript = Cyberweb::JavascriptMagic.new(css_class).translated?
46
- css_class = ''
47
- end
48
- ee string_h1(text, css_class, the_id, css_style, javascript)
49
- end
50
-
51
- # ========================================================================= #
52
- # === string_h1
53
- # ========================================================================= #
54
- def string_h1(
55
- text,
56
- css_class = H2.to_s,
57
- the_id = '',
58
- css_style = '',
59
- javascript = ''
60
- )
61
- return HtmlTags.h1(text, css_class, the_id, css_style, javascript).to_s+
62
- "\n"
63
- end
64
-
65
- # ========================================================================= #
66
- # === h1_id
67
- # ========================================================================= #
68
- def h1_id(
69
- a, b = '', the_id = '', d = '', e = ''
70
- )
71
- if the_id and the_id.empty?
72
- the_id = a.dup.tr(' ','_')
73
- end
74
- h1(a,b,the_id,d,e)
75
- end
76
-
77
- end
@@ -1,81 +0,0 @@
1
- #!/usr/bin/ruby -w
2
- # Encoding: UTF-8
3
- # frozen_string_literal: true
4
- # =========================================================================== #
5
- module Cyberweb
6
-
7
- # ========================================================================= #
8
- # === Cyberweb::H2
9
- # ========================================================================= #
10
- class H2 < WebBase
11
-
12
- # ======================================================================= #
13
- # === @h2_css_class
14
- # ======================================================================= #
15
- @h2_css_class = nil
16
-
17
- # ======================================================================= #
18
- # === Cyberweb::H2.set_css_class
19
- # ======================================================================= #
20
- def self.set_css_class(i = DEFAULT_CSS_CLASS)
21
- @h2_css_class = i
22
- end
23
-
24
- # ======================================================================= #
25
- # === Cyberweb::H2.to_s
26
- # ======================================================================= #
27
- def self.to_s; @h2_css_class; end
28
-
29
- end
30
-
31
- # ========================================================================= #
32
- # === h2
33
- # ========================================================================= #
34
- def h2(
35
- text,
36
- css_class = H2.to_s,
37
- the_id = '',
38
- css_style = '',
39
- javascript = '',
40
- &block
41
- )
42
- if Cyberweb::JavascriptMagic.is_included? css_class
43
- javascript = Cyberweb::JavascriptMagic.new(css_class).translated?
44
- css_class = ''
45
- end
46
- result = string_h2(text, css_class, the_id, css_style, javascript, &block)
47
- ee result
48
- end
49
-
50
- # ========================================================================= #
51
- # === string_h2
52
- # ========================================================================= #
53
- def string_h2(
54
- text,
55
- css_class = H2.to_s,
56
- the_id = '',
57
- css_style = '',
58
- javascript = '',
59
- &block
60
- )
61
- return HtmlTags.h2(text, css_class, the_id, css_style, javascript, &block).to_s+
62
- "\n"
63
- end
64
-
65
- # ========================================================================= #
66
- # === h2_id
67
- # ========================================================================= #
68
- def h2_id(
69
- a,
70
- b = '',
71
- the_id = '',
72
- d = '',
73
- e = ''
74
- )
75
- if the_id and the_id.empty?
76
- the_id = a.dup.tr(' ','_')
77
- end
78
- h2(a,b,the_id,d,e)
79
- end
80
-
81
- end