cyberweb 0.4.174
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 cyberweb might be problematic. Click here for more details.
- checksums.yaml +7 -0
- data/README.md +3259 -0
- data/bin/cyberweb +27 -0
- data/cyberweb.gemspec +119 -0
- data/doc/AUTHORS.md +12 -0
- data/doc/CONVENTIONS.md +7 -0
- data/doc/CYBERWEB_TUTORIAL.cgi +43 -0
- data/doc/DOCUMENTATION_FOR_CYBERSPRAWL.md +50 -0
- data/doc/FUTURE_DESIGN_GOAL_CONSIDERATIONS.md +13 -0
- data/doc/JQUERY.md +122 -0
- data/doc/MOUSE.md +80 -0
- data/doc/README.gen +3231 -0
- data/doc/RENDER_WEB_BASE.md +46 -0
- data/doc/USAGE.md +246 -0
- data/doc/configuration/configuration.md +23 -0
- data/doc/deprecations.md +32 -0
- data/doc/html_characters.md +15 -0
- data/doc/todo/TODO_FOR_THE_CYBERWEB_PROJECT.md +1089 -0
- data/examples/README.md +4 -0
- data/examples/advanced/delayed_update_of_the_body_via_javascript.cgi +38 -0
- data/examples/advanced/hybrid_experiment.cgi +108 -0
- data/examples/advanced/larger_image_on_mouse_over_example.cgi +35 -0
- data/examples/advanced/no_right_click.cgi +26 -0
- data/examples/advanced/objectified_html_tags.cgi +35 -0
- data/examples/advanced/simple_calculator.cgi +42 -0
- data/examples/advanced/simple_form_example.cgi +38 -0
- data/examples/css/blue_border.html +28 -0
- data/examples/css/caret_colour_example.html +22 -0
- data/examples/css/css_border_spacing_example.html +69 -0
- data/examples/css/css_bubbles.html +43 -0
- data/examples/css/css_clock.html +344 -0
- data/examples/css/css_drag_and_drop.html +89 -0
- data/examples/css/css_neon_glow_effects.html +317 -0
- data/examples/css/css_text_decoration_example.html +70 -0
- data/examples/css/css_tooltip.html +44 -0
- data/examples/css/fade_in_and_fade_out_effect.html +66 -0
- data/examples/css/font_size_examples.html +40 -0
- data/examples/css/letter_spacing_example.cgi +36 -0
- data/examples/css/meter_example.html +31 -0
- data/examples/css/on_mouse_button_pressed.html +41 -0
- data/examples/css/planets.html +187 -0
- data/examples/css/scale_example.html +25 -0
- data/examples/css/shadow_example_in_CSS.cgi +30 -0
- data/examples/css/sticky_div_example.html +56 -0
- data/examples/css/stitched_div.html +36 -0
- data/examples/csv/README.md +1 -0
- data/examples/csv/sample.csv +10 -0
- data/examples/example1.rb +7 -0
- data/examples/flip_card_example/flip_card_example.html +72 -0
- data/examples/frames/frame_left.html +1 -0
- data/examples/frames/frame_right.html +1 -0
- data/examples/html/README.md +1 -0
- data/examples/html/abbr_example.html +25 -0
- data/examples/html/base64_image_example.html +26 -0
- data/examples/html/colour_wheel.html +1389 -0
- data/examples/html/column_width_example.html +34 -0
- data/examples/html/custom_cursor.html +103 -0
- data/examples/html/draggable_paragraph.html +12 -0
- data/examples/html/fieldset_example.html +25 -0
- data/examples/html/frames_example.html +7 -0
- data/examples/html/glyph_example.html +43 -0
- data/examples/html/hbox_and_vbox_example.html +65 -0
- data/examples/html/href_examples.html +27 -0
- data/examples/html/input_autofocus_example.html +16 -0
- data/examples/html/larger_image_on_mouse_over_example.html +30 -0
- data/examples/html/ordered_and_unordered_bulletsin.html +33 -0
- data/examples/html/play_video_example.html +13 -0
- data/examples/html/readonly_textarea_example.html +23 -0
- data/examples/html/remote_image_example.html +10 -0
- data/examples/html/simple_unordered_list.html +16 -0
- data/examples/html/table_with_header_example.html +27 -0
- data/examples/html/two_columns_flex_example.html +39 -0
- data/examples/javascript/README.md +2 -0
- data/examples/javascript/arrays/arrays_example_in_javascript.html +16 -0
- data/examples/javascript/delay_example/delay_example.html +46 -0
- data/examples/javascript/drag_support/drag_support.html +37 -0
- data/examples/javascript/jquery_drag_and_drop/drag_and_drop_image_example.html +33 -0
- data/examples/javascript/on_click_event_hello_world/on_click_event_hello_world.html +21 -0
- data/examples/javascript/rgb_to_hex/rgb_to_hex.html +15 -0
- data/examples/javascript/screen_resolution/screen_resolution.html +20 -0
- data/examples/javascript/select_everything/select_everything.html +14 -0
- data/examples/javascript/write_into_a_file/write_into_a_file.html +39 -0
- data/examples/rack/README.md +4 -0
- data/examples/rack/example_with_html_template.rb +123 -0
- data/examples/rack/example_with_rack_and_cyberweb_showing_how_to_use_images.rb +56 -0
- data/examples/rack/hello_world_example_with_rack.rb +45 -0
- data/examples/rack/lobster.rb +79 -0
- data/examples/rack/rack_env.rb +10 -0
- data/examples/rack/standalone_example.rb +26 -0
- data/examples/show_greek_letters.rb +3 -0
- data/examples/simple/on_click_event_hello_world.cgi +34 -0
- data/examples/sinatra/001_your_ip_address_is.rb +8 -0
- data/examples/sinatra/002_the_request_object.rb +16 -0
- data/examples/sinatra/003_hello_world_example.rb +82 -0
- data/examples/sinatra/004_splat_example.rb +10 -0
- data/examples/sinatra/005_attachment_example.rb +11 -0
- data/examples/sinatra/006_outer_self_example.rb +8 -0
- data/examples/sinatra/007_mime_type_example.rb +17 -0
- data/examples/sinatra/008_post_example.rb +55 -0
- data/examples/table_example.rb +37 -0
- data/images/cyberweb_favicon.png +0 -0
- data/images/cyberweb_logo.png +0 -0
- data/images/cyberweb_theme.png +0 -0
- data/lib/cyberweb/and_sinatra_base.rb +9 -0
- data/lib/cyberweb/autoinclude.rb +20 -0
- data/lib/cyberweb/autoinclude_webobject.rb +14 -0
- data/lib/cyberweb/base/base.rb +41 -0
- data/lib/cyberweb/base/colours.rb +69 -0
- data/lib/cyberweb/base/constants.rb +18 -0
- data/lib/cyberweb/base/encoding.rb +19 -0
- data/lib/cyberweb/base/misc.rb +239 -0
- data/lib/cyberweb/base/reset.rb +23 -0
- data/lib/cyberweb/base/save_file.rb +22 -0
- data/lib/cyberweb/cascading_style_sheets/README.md +4 -0
- data/lib/cyberweb/cascading_style_sheets/admonition.css +33 -0
- data/lib/cyberweb/cascading_style_sheets/balloon.css +344 -0
- data/lib/cyberweb/cascading_style_sheets/border.css +202 -0
- data/lib/cyberweb/cascading_style_sheets/code.css +58 -0
- data/lib/cyberweb/cascading_style_sheets/colours.css +476 -0
- data/lib/cyberweb/cascading_style_sheets/default.css +1836 -0
- data/lib/cyberweb/cascading_style_sheets/div.css +26 -0
- data/lib/cyberweb/cascading_style_sheets/fonts.css +365 -0
- data/lib/cyberweb/cascading_style_sheets/links.css +207 -0
- data/lib/cyberweb/cascading_style_sheets/margin.css +677 -0
- data/lib/cyberweb/cascading_style_sheets/menu.css +37 -0
- data/lib/cyberweb/cascading_style_sheets/message_boxes.css +48 -0
- data/lib/cyberweb/cascading_style_sheets/misc.css +162 -0
- data/lib/cyberweb/cascading_style_sheets/popup.css +63 -0
- data/lib/cyberweb/cascading_style_sheets/rpg.css +51 -0
- data/lib/cyberweb/cascading_style_sheets/ruby_regexes.css +33 -0
- data/lib/cyberweb/cascading_style_sheets/template2.css +18 -0
- data/lib/cyberweb/cascading_style_sheets/text_shadow.css +19 -0
- data/lib/cyberweb/cascading_style_sheets/tooltip.css +36 -0
- data/lib/cyberweb/cgi/README.md +6 -0
- data/lib/cyberweb/cgi/cgi.rb +340 -0
- data/lib/cyberweb/cgi/constants.rb +121 -0
- data/lib/cyberweb/cgi/cookie.rb +218 -0
- data/lib/cyberweb/cgi/core.rb +638 -0
- data/lib/cyberweb/cgi/exceptions.rb +223 -0
- data/lib/cyberweb/cgi/html.rb +1025 -0
- data/lib/cyberweb/cgi/mod_ruby_exception_printer.rb +40 -0
- data/lib/cyberweb/cgi/query_extension.rb +431 -0
- data/lib/cyberweb/cgi/session/file_store.rb +131 -0
- data/lib/cyberweb/cgi/session/memory_store.rb +90 -0
- data/lib/cyberweb/cgi/session/pstore.rb +127 -0
- data/lib/cyberweb/cgi/session.rb +444 -0
- data/lib/cyberweb/cgi/tag_maker.rb +94 -0
- data/lib/cyberweb/cgi/util.rb +239 -0
- data/lib/cyberweb/charts/README.md +2 -0
- data/lib/cyberweb/charts/google_charts.rb +51 -0
- data/lib/cyberweb/classes/simple_form.rb +55 -0
- data/lib/cyberweb/classes/tooltips.rb +169 -0
- data/lib/cyberweb/coloured_tags/coloured_tags.rb +3099 -0
- data/lib/cyberweb/colours/colour_chart.rb +117 -0
- data/lib/cyberweb/colours/colours.rb +50 -0
- data/lib/cyberweb/colours/random_colour.rb +28 -0
- data/lib/cyberweb/colours/sanitize_for_colours.rb +95 -0
- data/lib/cyberweb/commandline/commandline_interface.rb +49 -0
- data/lib/cyberweb/configuration/configuration.rb +66 -0
- data/lib/cyberweb/configuration/load_the_configuration_file.rb +73 -0
- data/lib/cyberweb/constants/array_images.rb +21 -0
- data/lib/cyberweb/constants/array_local_css_files.rb +35 -0
- data/lib/cyberweb/constants/array_predefined_constants.rb +23 -0
- data/lib/cyberweb/constants/configuration_file.rb +33 -0
- data/lib/cyberweb/constants/constants.rb +9 -0
- data/lib/cyberweb/constants/file_constants.rb +16 -0
- data/lib/cyberweb/constants/http_status_codes.rb +42 -0
- data/lib/cyberweb/constants/nl.rb +22 -0
- data/lib/cyberweb/constants/project_constants.rb +99 -0
- data/lib/cyberweb/constants/roebe.rb +28 -0
- data/lib/cyberweb/constants/standalone_constants.rb +309 -0
- data/lib/cyberweb/controller/README.md +4 -0
- data/lib/cyberweb/controller/webobject_controller.rb +50 -0
- data/lib/cyberweb/csv/README.md +2 -0
- data/lib/cyberweb/csv/csv.rb +58 -0
- data/lib/cyberweb/cybersprawl +1 -0
- data/lib/cyberweb/debug/debug.rb +69 -0
- data/lib/cyberweb/encoding/encoding.rb +84 -0
- data/lib/cyberweb/erb/test.rhtml +81 -0
- data/lib/cyberweb/erb/test_template.erb +9 -0
- data/lib/cyberweb/evaluate_from_the_same_named_file_then_serve.rb +9 -0
- data/lib/cyberweb/favicon/favicon.rb +196 -0
- data/lib/cyberweb/generator/README.md +2 -0
- data/lib/cyberweb/generator/cgi.rb +201 -0
- data/lib/cyberweb/generator/class.rb +25 -0
- data/lib/cyberweb/generator/static_webpage.rb +162 -0
- data/lib/cyberweb/generator/webpage_for_images.rb +553 -0
- data/lib/cyberweb/help/help.rb +29 -0
- data/lib/cyberweb/html_codes/README.md +15 -0
- data/lib/cyberweb/html_codes/greek_letters.rb +204 -0
- data/lib/cyberweb/html_tags/README.md +3 -0
- data/lib/cyberweb/html_tags/a.rb +65 -0
- data/lib/cyberweb/html_tags/accesskey.rb +25 -0
- data/lib/cyberweb/html_tags/blockquote.rb +56 -0
- data/lib/cyberweb/html_tags/body.rb +14 -0
- data/lib/cyberweb/html_tags/br.rb +19 -0
- data/lib/cyberweb/html_tags/button.rb +110 -0
- data/lib/cyberweb/html_tags/canvas.rb +59 -0
- data/lib/cyberweb/html_tags/chtml.rb +14 -0
- data/lib/cyberweb/html_tags/div.rb +163 -0
- data/lib/cyberweb/html_tags/fieldset.rb +67 -0
- data/lib/cyberweb/html_tags/figure.rb +72 -0
- data/lib/cyberweb/html_tags/form.rb +203 -0
- data/lib/cyberweb/html_tags/h1.rb +75 -0
- data/lib/cyberweb/html_tags/h2.rb +73 -0
- data/lib/cyberweb/html_tags/h3.rb +58 -0
- data/lib/cyberweb/html_tags/h4.rb +60 -0
- data/lib/cyberweb/html_tags/h5.rb +54 -0
- data/lib/cyberweb/html_tags/h6.rb +54 -0
- data/lib/cyberweb/html_tags/hr.rb +22 -0
- data/lib/cyberweb/html_tags/html_tags.rb +240 -0
- data/lib/cyberweb/html_tags/i.rb +50 -0
- data/lib/cyberweb/html_tags/img.rb +294 -0
- data/lib/cyberweb/html_tags/input.rb +345 -0
- data/lib/cyberweb/html_tags/label.rb +63 -0
- data/lib/cyberweb/html_tags/legend.rb +56 -0
- data/lib/cyberweb/html_tags/li.rb +67 -0
- data/lib/cyberweb/html_tags/map.rb +31 -0
- data/lib/cyberweb/html_tags/nav.rb +63 -0
- data/lib/cyberweb/html_tags/object.rb +56 -0
- data/lib/cyberweb/html_tags/ol.rb +56 -0
- data/lib/cyberweb/html_tags/option.rb +61 -0
- data/lib/cyberweb/html_tags/p.rb +90 -0
- data/lib/cyberweb/html_tags/pre.rb +164 -0
- data/lib/cyberweb/html_tags/section.rb +33 -0
- data/lib/cyberweb/html_tags/select.rb +100 -0
- data/lib/cyberweb/html_tags/span.rb +338 -0
- data/lib/cyberweb/html_tags/strong.rb +39 -0
- data/lib/cyberweb/html_tags/table.rb +273 -0
- data/lib/cyberweb/html_tags/tbody.rb +24 -0
- data/lib/cyberweb/html_tags/td.rb +214 -0
- data/lib/cyberweb/html_tags/textarea.rb +138 -0
- data/lib/cyberweb/html_tags/th.rb +68 -0
- data/lib/cyberweb/html_tags/thead.rb +36 -0
- data/lib/cyberweb/html_tags/tr.rb +97 -0
- data/lib/cyberweb/html_tags/ul.rb +51 -0
- data/lib/cyberweb/html_template/html_template.rb +352 -0
- data/lib/cyberweb/images/embed_this_image.rb +37 -0
- data/lib/cyberweb/images/images.rb +58 -0
- data/lib/cyberweb/images/is_image.rb +22 -0
- data/lib/cyberweb/images/path_to_images.rb +60 -0
- data/lib/cyberweb/images/real/README.md +6 -0
- data/lib/cyberweb/images/remove_this_substring_from_all_images.rb +44 -0
- data/lib/cyberweb/images/standalone_drag_and_drop_this_image.rb +64 -0
- data/lib/cyberweb/images/string_image.rb +399 -0
- data/lib/cyberweb/images_base64_encoded/AUSRUFUNGSZEICHEN.png.md +1 -0
- data/lib/cyberweb/images_base64_encoded/BLUEARROW.png.md +1 -0
- data/lib/cyberweb/images_base64_encoded/BUBBLE.png.md +1 -0
- data/lib/cyberweb/images_base64_encoded/CAT.png.md +1 -0
- data/lib/cyberweb/images_base64_encoded/CAUTION.png.md +1 -0
- data/lib/cyberweb/images_base64_encoded/CHEERING_PERSON.png.md +1 -0
- data/lib/cyberweb/images_base64_encoded/CURSOR.png.md +1 -0
- data/lib/cyberweb/images_base64_encoded/DOT_01.png.md +5 -0
- data/lib/cyberweb/images_base64_encoded/DUCKY.png.md +1 -0
- data/lib/cyberweb/images_base64_encoded/ELEPHANT.png.md +1 -0
- data/lib/cyberweb/images_base64_encoded/HALLOWEEN.png.md +1 -0
- data/lib/cyberweb/images_base64_encoded/HANGING_MONKEY.png.md +1 -0
- data/lib/cyberweb/images_base64_encoded/LENS.png.md +1 -0
- data/lib/cyberweb/images_base64_encoded/README.md +2 -0
- data/lib/cyberweb/images_base64_encoded/TU_WIEN_LOGO.png.md +1 -0
- data/lib/cyberweb/images_base64_encoded/VOGEL.png.md +1 -0
- data/lib/cyberweb/io/README.md +1 -0
- data/lib/cyberweb/io/io.rb +19 -0
- data/lib/cyberweb/javascript/drag_and_drop.rb +105 -0
- data/lib/cyberweb/javascript/dragula_collection.rb +54 -0
- data/lib/cyberweb/javascript/javascript.rb +211 -0
- data/lib/cyberweb/javascript/javascript_bundle.rb +223 -0
- data/lib/cyberweb/javascript/javascript_clock.rb +69 -0
- data/lib/cyberweb/javascript/javascript_last_modified.rb +27 -0
- data/lib/cyberweb/javascript/javascript_magic.rb +150 -0
- data/lib/cyberweb/javascript/javascript_selectable.rb +24 -0
- data/lib/cyberweb/javascript/jquery.rb +30 -0
- data/lib/cyberweb/javascript/on_click_change_opacity.rb +97 -0
- data/lib/cyberweb/javascript/on_click_hide.rb +63 -0
- data/lib/cyberweb/javascript/popup.rb +80 -0
- data/lib/cyberweb/javascript/print_javascript.rb +33 -0
- data/lib/cyberweb/javascript/registered_javascript_methods.rb +30 -0
- data/lib/cyberweb/javascript/resize.rb +28 -0
- data/lib/cyberweb/javascript/return_javascript.rb +48 -0
- data/lib/cyberweb/javascript/scroll.rb +17 -0
- data/lib/cyberweb/javascript/snoweffect.rb +122 -0
- data/lib/cyberweb/javascript_code/README.md +6 -0
- data/lib/cyberweb/javascript_code/chmod_displayer.js +74 -0
- data/lib/cyberweb/javascript_code/custom_functions.js +267 -0
- data/lib/cyberweb/javascript_code/jquery/jquery-3.6.0.js +10881 -0
- data/lib/cyberweb/javascript_code/jquery/jquery-ui-1.12.1.js +18706 -0
- data/lib/cyberweb/javascript_code/rgb_to_hex.js +14 -0
- data/lib/cyberweb/javascript_code/select_even_numbers.js +7 -0
- data/lib/cyberweb/javascript_code/select_everything.js +22 -0
- data/lib/cyberweb/javascript_code/simple_calculator.js +15 -0
- data/lib/cyberweb/javascript_code/sleep.js +3 -0
- data/lib/cyberweb/javascript_code/to_celsius.js +8 -0
- data/lib/cyberweb/mouse/README.md +3 -0
- data/lib/cyberweb/mouse/libxdo.rb +321 -0
- data/lib/cyberweb/mouse/mouse.rb +264 -0
- data/lib/cyberweb/objectified_html_tags/README.md +8 -0
- data/lib/cyberweb/objectified_html_tags/a.rb +129 -0
- data/lib/cyberweb/objectified_html_tags/abbr.rb +84 -0
- data/lib/cyberweb/objectified_html_tags/base.rb +376 -0
- data/lib/cyberweb/objectified_html_tags/button.rb +135 -0
- data/lib/cyberweb/objectified_html_tags/combobox.rb +165 -0
- data/lib/cyberweb/objectified_html_tags/div.rb +129 -0
- data/lib/cyberweb/objectified_html_tags/embed.rb +161 -0
- data/lib/cyberweb/objectified_html_tags/form.rb +129 -0
- data/lib/cyberweb/objectified_html_tags/h1.rb +129 -0
- data/lib/cyberweb/objectified_html_tags/h2.rb +129 -0
- data/lib/cyberweb/objectified_html_tags/h3.rb +129 -0
- data/lib/cyberweb/objectified_html_tags/h4.rb +129 -0
- data/lib/cyberweb/objectified_html_tags/h5.rb +129 -0
- data/lib/cyberweb/objectified_html_tags/h6.rb +129 -0
- data/lib/cyberweb/objectified_html_tags/hbox.rb +71 -0
- data/lib/cyberweb/objectified_html_tags/img.rb +202 -0
- data/lib/cyberweb/objectified_html_tags/input.rb +185 -0
- data/lib/cyberweb/objectified_html_tags/p.rb +129 -0
- data/lib/cyberweb/objectified_html_tags/pre.rb +129 -0
- data/lib/cyberweb/objectified_html_tags/span.rb +92 -0
- data/lib/cyberweb/objectified_html_tags/table.rb +174 -0
- data/lib/cyberweb/objectified_html_tags/textarea.rb +173 -0
- data/lib/cyberweb/objectified_html_tags/title.rb +82 -0
- data/lib/cyberweb/objectified_html_tags/window.rb +79 -0
- data/lib/cyberweb/predefined_and_freeform_methods/README.md +1 -0
- data/lib/cyberweb/predefined_and_freeform_methods/frage.rb +45 -0
- data/lib/cyberweb/predefined_and_freeform_methods/freeform_methods.rb +93 -0
- data/lib/cyberweb/predefined_and_freeform_methods/hash_css_class_to_use.rb +55 -0
- data/lib/cyberweb/predefined_and_freeform_methods/hash_registered_extra_tags.rb +29 -0
- data/lib/cyberweb/predefined_and_freeform_methods/header.rb +81 -0
- data/lib/cyberweb/predefined_and_freeform_methods/predefined_methods.rb +413 -0
- data/lib/cyberweb/project/project.rb +85 -0
- data/lib/cyberweb/rack/README.md +1 -0
- data/lib/cyberweb/rack/request.rb +31 -0
- data/lib/cyberweb/requires/README.md +4 -0
- data/lib/cyberweb/requires/do_require_web_object_files.rb +9 -0
- data/lib/cyberweb/requires/remove_html.rb +9 -0
- data/lib/cyberweb/requires/require_cgi.rb +16 -0
- data/lib/cyberweb/requires/require_charts.rb +20 -0
- data/lib/cyberweb/requires/require_generators.rb +23 -0
- data/lib/cyberweb/requires/require_html_tags_files.rb +23 -0
- data/lib/cyberweb/requires/require_javascript_files.rb +23 -0
- data/lib/cyberweb/requires/require_kimurai.rb +13 -0
- data/lib/cyberweb/requires/require_objectified_html_tags_files.rb +23 -0
- data/lib/cyberweb/requires/require_sinatra.rb +7 -0
- data/lib/cyberweb/requires/require_the_constants.rb +26 -0
- data/lib/cyberweb/requires/require_the_cyberweb_project.rb +172 -0
- data/lib/cyberweb/requires/require_the_html_template.rb +7 -0
- data/lib/cyberweb/requires/require_the_toplevel_methods_files.rb +24 -0
- data/lib/cyberweb/requires/require_web_images.rb +7 -0
- data/lib/cyberweb/requires/require_web_object_files.rb +25 -0
- data/lib/cyberweb/requires/require_yaml.rb +11 -0
- data/lib/cyberweb/sinatra/README.md +11 -0
- data/lib/cyberweb/sinatra/base.rb +145 -0
- data/lib/cyberweb/sinatra/custom_extensions.rb +131 -0
- data/lib/cyberweb/standalone_classes/all_css_classes.rb +255 -0
- data/lib/cyberweb/standalone_classes/calculator.rb +127 -0
- data/lib/cyberweb/standalone_classes/correct_image_entries_in_html_file.rb +207 -0
- data/lib/cyberweb/standalone_classes/input_focus.rb +97 -0
- data/lib/cyberweb/standalone_classes/tag_prototype.rb +43 -0
- data/lib/cyberweb/standalone_classes/turn_html_into_cyberweb.rb +174 -0
- data/lib/cyberweb/svg/blue_rect.svg +12 -0
- data/lib/cyberweb/svg/butterfly.svg +15 -0
- data/lib/cyberweb/svg/chemical_molecule.svg +192 -0
- data/lib/cyberweb/svg/circles_on_background.svg +29 -0
- data/lib/cyberweb/svg/ellipse.svg +12 -0
- data/lib/cyberweb/svg/five_circles.svg +26 -0
- data/lib/cyberweb/svg/flag_germany.svg +10 -0
- data/lib/cyberweb/svg/gaussian_blur.svg +20 -0
- data/lib/cyberweb/svg/gradient_circle.svg +18 -0
- data/lib/cyberweb/svg/green_butterfly.svg +18 -0
- data/lib/cyberweb/svg/green_tilted_lines.svg +25 -0
- data/lib/cyberweb/svg/lion.svg +161 -0
- data/lib/cyberweb/svg/one_circle.svg +12 -0
- data/lib/cyberweb/svg/pie_chart.svg +130 -0
- data/lib/cyberweb/svg/svg.cgi +61 -0
- data/lib/cyberweb/svg/tetris.svg +487 -0
- data/lib/cyberweb/svg/three_circles.svg +18 -0
- data/lib/cyberweb/svg/tiger.svg +732 -0
- data/lib/cyberweb/svg/tilted_arcs.svg +74 -0
- data/lib/cyberweb/svg/transparent_rect.svg +12 -0
- data/lib/cyberweb/svg/yellow_fe_blending.svg +42 -0
- data/lib/cyberweb/toplevel_methods/a.rb +131 -0
- data/lib/cyberweb/toplevel_methods/anmerkung.rb +67 -0
- data/lib/cyberweb/toplevel_methods/audio.rb +59 -0
- data/lib/cyberweb/toplevel_methods/bold.rb +65 -0
- data/lib/cyberweb/toplevel_methods/cgi.rb +65 -0
- data/lib/cyberweb/toplevel_methods/charsets.rb +52 -0
- data/lib/cyberweb/toplevel_methods/clear.rb +30 -0
- data/lib/cyberweb/toplevel_methods/close.rb +62 -0
- data/lib/cyberweb/toplevel_methods/consider_serving_the_web_object.rb +41 -0
- data/lib/cyberweb/toplevel_methods/css.rb +732 -0
- data/lib/cyberweb/toplevel_methods/date.rb +71 -0
- data/lib/cyberweb/toplevel_methods/dictionary.rb +48 -0
- data/lib/cyberweb/toplevel_methods/disable.rb +49 -0
- data/lib/cyberweb/toplevel_methods/document.rb +56 -0
- data/lib/cyberweb/toplevel_methods/dot.rb +182 -0
- data/lib/cyberweb/toplevel_methods/download_webpage.rb +18 -0
- data/lib/cyberweb/toplevel_methods/edit_configuration_file.rb +26 -0
- data/lib/cyberweb/toplevel_methods/ee.rb +44 -0
- data/lib/cyberweb/toplevel_methods/env.rb +44 -0
- data/lib/cyberweb/toplevel_methods/escape_html.rb +54 -0
- data/lib/cyberweb/toplevel_methods/fields.rb +46 -0
- data/lib/cyberweb/toplevel_methods/filename.rb +33 -0
- data/lib/cyberweb/toplevel_methods/frames.rb +131 -0
- data/lib/cyberweb/toplevel_methods/glob.rb +30 -0
- data/lib/cyberweb/toplevel_methods/google.rb +35 -0
- data/lib/cyberweb/toplevel_methods/hardware_information.rb +90 -0
- data/lib/cyberweb/toplevel_methods/hfin.rb +56 -0
- data/lib/cyberweb/toplevel_methods/html_comment.rb +48 -0
- data/lib/cyberweb/toplevel_methods/html_mode.rb +39 -0
- data/lib/cyberweb/toplevel_methods/html_tables.rb +818 -0
- data/lib/cyberweb/toplevel_methods/input.rb +54 -0
- data/lib/cyberweb/toplevel_methods/jquery.rb +82 -0
- data/lib/cyberweb/toplevel_methods/last_modified.rb +39 -0
- data/lib/cyberweb/toplevel_methods/links.rb +426 -0
- data/lib/cyberweb/toplevel_methods/listing.rb +96 -0
- data/lib/cyberweb/toplevel_methods/localhost.rb +18 -0
- data/lib/cyberweb/toplevel_methods/log_directory.rb +84 -0
- data/lib/cyberweb/toplevel_methods/logging.rb +42 -0
- data/lib/cyberweb/toplevel_methods/logo.rb +30 -0
- data/lib/cyberweb/toplevel_methods/markdown.rb +112 -0
- data/lib/cyberweb/toplevel_methods/mathml.rb +130 -0
- data/lib/cyberweb/toplevel_methods/message_boxes.rb +140 -0
- data/lib/cyberweb/toplevel_methods/misc.rb +1398 -0
- data/lib/cyberweb/toplevel_methods/name_of_img_dir.rb +51 -0
- data/lib/cyberweb/toplevel_methods/padlem_and_marlem.rb +107 -0
- data/lib/cyberweb/toplevel_methods/params.rb +57 -0
- data/lib/cyberweb/toplevel_methods/path.rb +69 -0
- data/lib/cyberweb/toplevel_methods/pdf.rb +103 -0
- data/lib/cyberweb/toplevel_methods/process_content.rb +102 -0
- data/lib/cyberweb/toplevel_methods/progress.rb +42 -0
- data/lib/cyberweb/toplevel_methods/quote.rb +44 -0
- data/lib/cyberweb/toplevel_methods/random.rb +70 -0
- data/lib/cyberweb/toplevel_methods/rds.rb +35 -0
- data/lib/cyberweb/toplevel_methods/read_and_display.rb +284 -0
- data/lib/cyberweb/toplevel_methods/readlines.rb +31 -0
- data/lib/cyberweb/toplevel_methods/redirect.rb +29 -0
- data/lib/cyberweb/toplevel_methods/registered_ids.rb +178 -0
- data/lib/cyberweb/toplevel_methods/remove_html.rb +32 -0
- data/lib/cyberweb/toplevel_methods/remove_newlines.rb +28 -0
- data/lib/cyberweb/toplevel_methods/return_head_start.rb +33 -0
- data/lib/cyberweb/toplevel_methods/return_html_fin.rb +34 -0
- data/lib/cyberweb/toplevel_methods/return_html_header.rb +35 -0
- data/lib/cyberweb/toplevel_methods/return_html_start.rb +24 -0
- data/lib/cyberweb/toplevel_methods/return_html_to_head_start.rb +42 -0
- data/lib/cyberweb/toplevel_methods/return_meta_collection.rb +54 -0
- data/lib/cyberweb/toplevel_methods/return_pwd.rb +23 -0
- data/lib/cyberweb/toplevel_methods/return_strict_doctype.rb +51 -0
- data/lib/cyberweb/toplevel_methods/roebe.rb +43 -0
- data/lib/cyberweb/toplevel_methods/s2.rb +30 -0
- data/lib/cyberweb/toplevel_methods/sanitize_url.rb +57 -0
- data/lib/cyberweb/toplevel_methods/sbr.rb +170 -0
- data/lib/cyberweb/toplevel_methods/server_base_directory.rb +148 -0
- data/lib/cyberweb/toplevel_methods/show_and_display.rb +215 -0
- data/lib/cyberweb/toplevel_methods/show_configuration.rb +83 -0
- data/lib/cyberweb/toplevel_methods/sitemap.rb +111 -0
- data/lib/cyberweb/toplevel_methods/spacer.rb +119 -0
- data/lib/cyberweb/toplevel_methods/string_body_start.rb +65 -0
- data/lib/cyberweb/toplevel_methods/string_content.rb +35 -0
- data/lib/cyberweb/toplevel_methods/svg.rb +66 -0
- data/lib/cyberweb/toplevel_methods/tag.rb +237 -0
- data/lib/cyberweb/toplevel_methods/temp_directory.rb +73 -0
- data/lib/cyberweb/toplevel_methods/test_css.rb +24 -0
- data/lib/cyberweb/toplevel_methods/textile.rb +45 -0
- data/lib/cyberweb/toplevel_methods/title.rb +125 -0
- data/lib/cyberweb/toplevel_methods/umlaute.rb +90 -0
- data/lib/cyberweb/toplevel_methods/video.rb +352 -0
- data/lib/cyberweb/toplevel_methods/view_source.rb +50 -0
- data/lib/cyberweb/toplevel_methods/web_object.rb +42 -0
- data/lib/cyberweb/toplevel_methods/write_what_into.rb +27 -0
- data/lib/cyberweb/utility_scripts/README.md +4 -0
- data/lib/cyberweb/utility_scripts/create_coloured_tags.rb +172 -0
- data/lib/cyberweb/utility_scripts/download_balloon_css.rb +160 -0
- data/lib/cyberweb/utility_scripts/hyperlink_all_images_from.rb +148 -0
- data/lib/cyberweb/version/version.rb +25 -0
- data/lib/cyberweb/web_base/web_base.rb +28 -0
- data/lib/cyberweb/web_images/array_listing_all_project_images.rb +52 -0
- data/lib/cyberweb/web_images/map_symbol_to_image_location.rb +1661 -0
- data/lib/cyberweb/web_images/web_images.rb +270 -0
- data/lib/cyberweb/web_object/css.rb +627 -0
- data/lib/cyberweb/web_object/evaluate.rb +126 -0
- data/lib/cyberweb/web_object/favicon.rb +160 -0
- data/lib/cyberweb/web_object/html_related_tags.rb +320 -0
- data/lib/cyberweb/web_object/images.rb +693 -0
- data/lib/cyberweb/web_object/initialize.rb +51 -0
- data/lib/cyberweb/web_object/input_related_functionality.rb +414 -0
- data/lib/cyberweb/web_object/javascript.rb +427 -0
- data/lib/cyberweb/web_object/languages.rb +172 -0
- data/lib/cyberweb/web_object/links.rb +228 -0
- data/lib/cyberweb/web_object/misc.rb +5159 -0
- data/lib/cyberweb/web_object/params.rb +289 -0
- data/lib/cyberweb/web_object/reset.rb +192 -0
- data/lib/cyberweb/web_object/run.rb +44 -0
- data/lib/cyberweb/web_object/sinatra_related_functionality.rb +30 -0
- data/lib/cyberweb/web_object/sitemap.rb +176 -0
- data/lib/cyberweb/web_object/table.rb +378 -0
- data/lib/cyberweb/web_object/web_object.rb +126 -0
- data/lib/cyberweb/web_scraper/README.md +8 -0
- data/lib/cyberweb/web_scraper/scrape_this_url.rb +183 -0
- data/lib/cyberweb/webmin/biology_server.cgi +256 -0
- data/lib/cyberweb/webmin/calculator.cgi +52 -0
- data/lib/cyberweb/webmin/colour_chart.cgi +33 -0
- data/lib/cyberweb/webmin/comments.cgi +137 -0
- data/lib/cyberweb/webmin/comments_data +18 -0
- data/lib/cyberweb/webmin/constants.rb +46 -0
- data/lib/cyberweb/webmin/dictionary.cgi +39 -0
- data/lib/cyberweb/webmin/sys_info.cgi +26 -0
- data/lib/cyberweb/webmin/webforum.cgi +58 -0
- data/lib/cyberweb/webmin/webmin.cgi +679 -0
- data/lib/cyberweb/yaml/autogenerated_system_settings.yml +14 -0
- data/lib/cyberweb/yaml/custom_tags.yml +7 -0
- data/lib/cyberweb/yaml/debug.yml +1 -0
- data/lib/cyberweb/yaml/html5_global_attributes.yml +12 -0
- data/lib/cyberweb/yaml/html5_new_elements.yml +108 -0
- data/lib/cyberweb/yaml/html_tag_legend.yml +12 -0
- data/lib/cyberweb/yaml/http_status_codes.yml +38 -0
- data/lib/cyberweb/yaml/js_files_to_load.yml +28 -0
- data/lib/cyberweb/yaml/project_configuration.yml +229 -0
- data/lib/cyberweb/yaml/video_attributes.yml +35 -0
- data/lib/cyberweb/yaml/web_images.yml +306 -0
- data/lib/cyberweb.rb +5 -0
- data/test/README.md +5 -0
- data/test/complex_tests/all_tests_in_one_page.cgi +666 -0
- data/test/complex_tests/simple_sinatra_example_using_cyberweb/simple.rb +60 -0
- data/test/complex_tests/sinatra_or_cyberweb/sinatra_or_cyberweb.cgi +7 -0
- data/test/complex_tests/sinatra_or_cyberweb/sinatra_or_cyberweb.rb +23 -0
- data/test/complex_tests/sinatra_or_cyberweb/sinatra_or_cyberweb.sinatra +65 -0
- data/test/complex_tests/testing_frames.cgi +42 -0
- data/test/complex_tests/testing_objectified_html_tags.rb +82 -0
- data/test/complex_tests/testing_style_variants/README.md +2 -0
- data/test/complex_tests/testing_style_variants/show_coloured_boxes.cgi +58 -0
- data/test/complex_tests/testing_tables.cgi +67 -0
- data/test/complex_tests/testing_the_cyberweb_shell.rb +188 -0
- data/test/complex_tests/testing_web_object.rb +94 -0
- data/test/css/README.md +5 -0
- data/test/css/return_the_content_of_these_css_classes.rb +7 -0
- data/test/css/testing_css_effects.cgi +159 -0
- data/test/css/testing_css_masking.cgi +36 -0
- data/test/dummy.pdf +0 -0
- data/test/hello_world/hello_world.cgi +25 -0
- data/test/javascript/README.md +2 -0
- data/test/javascript/testing_cheerleader_javascript.cgi +0 -0
- data/test/javascript/testing_drag_and_drop_support.cgi +33 -0
- data/test/javascript/testing_on_click_change_opacity.cgi +26 -0
- data/test/javascript/testing_snowflakes.cgi +20 -0
- data/test/simple_tests/README.md +3 -0
- data/test/simple_tests/ad-hoc-test.cgi +55 -0
- data/test/simple_tests/commandline_tests.rb +70 -0
- data/test/simple_tests/display_this_file.cgi +11 -0
- data/test/simple_tests/simple_html_example.cgi +29 -0
- data/test/simple_tests/simple_status_page.cgi +52 -0
- data/test/simple_tests/string_s2_test.rb +11 -0
- data/test/simple_tests/test_simple_string_as_input.rb +12 -0
- data/test/simple_tests/testing_base64_images.cgi +26 -0
- data/test/simple_tests/testing_dragging_an_image.cgi +23 -0
- data/test/simple_tests/testing_editable_text.cgi +16 -0
- data/test/simple_tests/testing_email.cgi +31 -0
- data/test/simple_tests/testing_embedding_a_pdf_file.cgi +32 -0
- data/test/simple_tests/testing_google_charts.cgi +24 -0
- data/test/simple_tests/testing_html_forms.cgi +31 -0
- data/test/simple_tests/testing_html_template.rb +13 -0
- data/test/simple_tests/testing_popup_div.cgi +22 -0
- data/test/simple_tests/testing_return_dataset_without_any_comments.rb +11 -0
- data/test/simple_tests/testing_the_cap_box.cgi +20 -0
- data/test/simple_tests/testing_the_div_tag.cgi +21 -0
- data/test/simple_tests/testing_the_headers_tag.cgi +36 -0
- data/test/simple_tests/testing_the_html_colours.cgi +19 -0
- data/test/simple_tests/testing_the_info_box.cgi +19 -0
- data/test/simple_tests/testing_the_li_tag.cgi +24 -0
- data/test/simple_tests/testing_the_s2_method.rb +7 -0
- data/test/simple_tests/testing_the_select_tag.cgi +23 -0
- data/test/simple_tests/testing_the_span_tag.cgi +36 -0
- data/test/simple_tests/testing_web_images.rb +12 -0
- data/test/testing_html_tags/README.md +7 -0
- data/test/testing_html_tags/button_example.cgi +42 -0
- metadata +759 -0
@@ -0,0 +1,58 @@
|
|
1
|
+
#!/usr/bin/ruby -w
|
2
|
+
# Encoding: UTF-8
|
3
|
+
# frozen_string_literal: true
|
4
|
+
# =========================================================================== #
|
5
|
+
# This file will store image-related code of interest to the
|
6
|
+
# Cyberweb project.
|
7
|
+
# =========================================================================== #
|
8
|
+
# require 'cyberweb/images/images.rb'
|
9
|
+
# =========================================================================== #
|
10
|
+
module Cyberweb
|
11
|
+
|
12
|
+
require 'yaml'
|
13
|
+
require 'cyberweb/images/path_to_images.rb'
|
14
|
+
require 'cyberweb/images/embed_this_image.rb'
|
15
|
+
require 'cyberweb/images/is_image.rb'
|
16
|
+
require 'cyberweb/images/string_image.rb'
|
17
|
+
require 'cyberweb/images/standalone_drag_and_drop_this_image.rb'
|
18
|
+
require 'cyberweb/images/remove_this_substring_from_all_images.rb'
|
19
|
+
|
20
|
+
end
|
21
|
+
|
22
|
+
if __FILE__ == $PROGRAM_NAME
|
23
|
+
require 'colours/colours_e_autoinclude.rb'
|
24
|
+
n_tests_to_perform = '4'
|
25
|
+
e Colours.rev+
|
26
|
+
'Now performing '+
|
27
|
+
Colours.lightgreen(n_tests_to_perform)+
|
28
|
+
' short "tests":'
|
29
|
+
e Colours.slateblue(N+'(1)'+N)
|
30
|
+
e Cyberweb.string_image(
|
31
|
+
'cat.png'
|
32
|
+
)
|
33
|
+
e Colours.slateblue(N+'(2)'+N)
|
34
|
+
e Cyberweb.string_image(
|
35
|
+
'cat.png',
|
36
|
+
alt: 'Cat is shown here normally but first argument was a String'
|
37
|
+
)
|
38
|
+
e Colours.slateblue(N+'(3)'+N)
|
39
|
+
e Cyberweb.string_image(
|
40
|
+
'smiley.gif', alt: 'Smiley face'
|
41
|
+
)
|
42
|
+
e Colours.slateblue(N+'(4)'+N)
|
43
|
+
e Cyberweb.string_image(
|
44
|
+
img: 'cat.png', alt: 'Cat is shown here normally'
|
45
|
+
)
|
46
|
+
e
|
47
|
+
e Cyberweb.string_img(
|
48
|
+
'RPG/DSA/DSA_LOGO_BIG.png', id: 'drag_dsa_logo_big'
|
49
|
+
)
|
50
|
+
e
|
51
|
+
end
|
52
|
+
|
53
|
+
if __FILE__ == $PROGRAM_NAME
|
54
|
+
c = '<span style="margin-left:2em"><img src="/home/x/DATA/IMG/STUDIUM/TU_VIENNA_LOGO.png">
|
55
|
+
<span style="margin-left:2em"><img src="/home/x/DATA/IMG/STUDIUM/VETMED_LOGO_IMAGE.png">'
|
56
|
+
puts Cyberweb.remove_this_substring_from_all_images(:default, :default, c)
|
57
|
+
puts Cyberweb.is_image?('foobar.png')
|
58
|
+
end
|
@@ -0,0 +1,22 @@
|
|
1
|
+
#!/usr/bin/ruby -w
|
2
|
+
# Encoding: UTF-8
|
3
|
+
# frozen_string_literal: true
|
4
|
+
# =========================================================================== #
|
5
|
+
# require 'cyberweb/images/is_image.rb'
|
6
|
+
# =========================================================================== #
|
7
|
+
module Cyberweb
|
8
|
+
|
9
|
+
require 'cyberweb/constants/array_images.rb'
|
10
|
+
# ========================================================================= #
|
11
|
+
# === Cyberweb.is_image?
|
12
|
+
#
|
13
|
+
# This method will return true if the input is an image, otherwise
|
14
|
+
# it will yield false.
|
15
|
+
# ========================================================================= #
|
16
|
+
def self.is_image?(this_file)
|
17
|
+
ARRAY_IMAGES.any? {|entry|
|
18
|
+
this_file.downcase =~ /\.#{entry}$/
|
19
|
+
}
|
20
|
+
end; self.instance_eval { alias is_this_an_image? is_image? } # === Cyberweb.is_this_an_image?
|
21
|
+
|
22
|
+
end
|
@@ -0,0 +1,60 @@
|
|
1
|
+
#!/usr/bin/ruby -w
|
2
|
+
# Encoding: UTF-8
|
3
|
+
# frozen_string_literal: true
|
4
|
+
# =========================================================================== #
|
5
|
+
# require 'cyberweb/images/path_to_images.rb'
|
6
|
+
# =========================================================================== #
|
7
|
+
module Cyberweb
|
8
|
+
|
9
|
+
require 'cyberweb/constants/roebe.rb'
|
10
|
+
|
11
|
+
# ========================================================================= #
|
12
|
+
# === @path_to_images
|
13
|
+
#
|
14
|
+
# The @path_to_images variable is initially hardcoded.
|
15
|
+
#
|
16
|
+
# It will lateron become sanitized and dynamic.
|
17
|
+
# ========================================================================= #
|
18
|
+
@path_to_images = Cyberweb.roebe_image_dir?
|
19
|
+
|
20
|
+
# ========================================================================= #
|
21
|
+
# === Cyberweb.path_to_images?
|
22
|
+
#
|
23
|
+
# This method will always give us back the path to the images.
|
24
|
+
# ========================================================================= #
|
25
|
+
def self.path_to_images?
|
26
|
+
@path_to_images.to_s # .to_s to safeguard against any possible nil.
|
27
|
+
end; self.instance_eval { alias path_to_image_dir? path_to_images? } # === Cyberweb.path_to_image_dir?
|
28
|
+
self.instance_eval { alias path_to_img_dir? path_to_images? } # === Cyberweb.path_to_img_dir?
|
29
|
+
|
30
|
+
# ========================================================================= #
|
31
|
+
# === Cyberweb.set_path_to_images
|
32
|
+
#
|
33
|
+
# This method can be used to set a path to a global image-directory.
|
34
|
+
# ========================================================================= #
|
35
|
+
def self.set_path_to_images(
|
36
|
+
i = @path_to_images
|
37
|
+
)
|
38
|
+
case i
|
39
|
+
when :default # Set default before entering the case-menu.
|
40
|
+
i = @path_to_images
|
41
|
+
end
|
42
|
+
case i
|
43
|
+
when nil
|
44
|
+
i = path_to_images?
|
45
|
+
end
|
46
|
+
i = i.to_s.dup
|
47
|
+
unless i.end_with? '/'
|
48
|
+
i << '/' unless i.empty?
|
49
|
+
end
|
50
|
+
@path_to_images = i
|
51
|
+
end; self.instance_eval { alias set_image_base_directory set_path_to_images }
|
52
|
+
|
53
|
+
# ========================================================================= #
|
54
|
+
# === Cyberweb.use_absolute_image_path
|
55
|
+
# ========================================================================= #
|
56
|
+
def self.use_absolute_image_path
|
57
|
+
set_path_to_images('')
|
58
|
+
end
|
59
|
+
|
60
|
+
end
|
@@ -0,0 +1,6 @@
|
|
1
|
+
This directory used to contain the "real" images, aka .jpg
|
2
|
+
or .png files, for the Cyberweb component.
|
3
|
+
|
4
|
+
In September 2020 this had to be reverted, though, due to
|
5
|
+
some bugs. At a later time I may re-evaluate this, but for
|
6
|
+
now this file, as a notice, has to suffice.
|
@@ -0,0 +1,44 @@
|
|
1
|
+
#!/usr/bin/ruby -w
|
2
|
+
# Encoding: UTF-8
|
3
|
+
# frozen_string_literal: true
|
4
|
+
# =========================================================================== #
|
5
|
+
# require 'cyberweb/images/remove_this_substring_from_all_images.rb'
|
6
|
+
# =========================================================================== #
|
7
|
+
module Cyberweb
|
8
|
+
|
9
|
+
require 'cyberweb/constants/roebe.rb'
|
10
|
+
# ========================================================================= #
|
11
|
+
# === Cyberweb.remove_this_substring_from_all_images
|
12
|
+
#
|
13
|
+
# The code in this method can be used to replace all paths of images
|
14
|
+
# in e. g. a HTML file (stored as String).
|
15
|
+
#
|
16
|
+
# The functionality was needed because I have had absolute paths to
|
17
|
+
# images, which needed to be turned into relative paths instead.
|
18
|
+
# ========================================================================= #
|
19
|
+
def self.remove_this_substring_from_all_images(
|
20
|
+
look_for_this_component = HOME_X_DATA,
|
21
|
+
replace_it_with_that_string = '../',
|
22
|
+
use_this_string = nil
|
23
|
+
)
|
24
|
+
if use_this_string
|
25
|
+
case look_for_this_component
|
26
|
+
# ===================================================================== #
|
27
|
+
# === :default
|
28
|
+
# ===================================================================== #
|
29
|
+
when :default
|
30
|
+
look_for_this_component = HOME_X_DATA
|
31
|
+
end
|
32
|
+
case replace_it_with_that_string
|
33
|
+
when :default
|
34
|
+
replace_it_with_that_string = '../'
|
35
|
+
end
|
36
|
+
use_this_string = use_this_string.dup if use_this_string.frozen?
|
37
|
+
use_this_string.gsub!(
|
38
|
+
/\<img src="#{look_for_this_component}/,
|
39
|
+
'<img src="'+replace_it_with_that_string
|
40
|
+
)
|
41
|
+
end
|
42
|
+
end
|
43
|
+
|
44
|
+
end
|
@@ -0,0 +1,64 @@
|
|
1
|
+
#!/usr/bin/ruby -w
|
2
|
+
# Encoding: UTF-8
|
3
|
+
# frozen_string_literal: true
|
4
|
+
# =========================================================================== #
|
5
|
+
# require 'cyberweb/images/standalone_drag_and_drop_this_image.rb'
|
6
|
+
# =========================================================================== #
|
7
|
+
module Cyberweb
|
8
|
+
|
9
|
+
require 'cyberweb/javascript/drag_and_drop.rb'
|
10
|
+
# ========================================================================= #
|
11
|
+
# === Cyberweb.standalone_drag_and_drop_this_image
|
12
|
+
#
|
13
|
+
# This method has been added on 23.04.2019, mostly because I needed a
|
14
|
+
# simpler API to embed an image into a sinatra-application while also
|
15
|
+
# adding support for dragging this image with the mouse. The jquery
|
16
|
+
# library supports drag-and-drop operations performed on an image.
|
17
|
+
#
|
18
|
+
# The first argument to this method should be the URL to a remote image.
|
19
|
+
# However had, a local path could also be used, since we will only
|
20
|
+
# insert into the src="" attribute of the <img> tag anyway.
|
21
|
+
#
|
22
|
+
# Note that this will return a String - you have to handle the display
|
23
|
+
# of that String, should you want this, on your own.
|
24
|
+
#
|
25
|
+
# Usage example:
|
26
|
+
#
|
27
|
+
# Cyberweb.standalone_drag_and_drop_this_image('https://upload.wikimedia.org/wikipedia/commons/thumb/5/57/Devicon-ruby-plain-wordmark.svg/512px-Devicon-ruby-plain-wordmark.svg.png')
|
28
|
+
#
|
29
|
+
# ========================================================================= #
|
30
|
+
def self.standalone_drag_and_drop_this_image(
|
31
|
+
url_to_the_image, # <- The remote URL to the image that you wish to drag/drop-support.
|
32
|
+
optional_css_class = '',
|
33
|
+
optional_id = nil,
|
34
|
+
optional_css_style = ''
|
35
|
+
)
|
36
|
+
_ = ''.dup
|
37
|
+
# ======================================================================= #
|
38
|
+
# We currently rely on a hardcoded remote path to jquery - not very
|
39
|
+
# elegant, but it is simple and effective:
|
40
|
+
# ======================================================================= #
|
41
|
+
_ << '<script src="https://code.jquery.com/jquery-3.6.0.min.js"></script>'+"\n"
|
42
|
+
_ << '<script src="https://code.jquery.com/ui/1.12.1/jquery-ui.min.js"></script>'+"\n"
|
43
|
+
if optional_id.nil?
|
44
|
+
# ===================================================================== #
|
45
|
+
# In this case we will infer an id from the filename.
|
46
|
+
# ===================================================================== #
|
47
|
+
optional_id = File.basename(url_to_the_image)
|
48
|
+
end
|
49
|
+
optional_id = optional_id.
|
50
|
+
sub(/#{File.extname(url_to_the_image)}$/,'').to_s.
|
51
|
+
tr('-','_').gsub(/[0-9]/,'')
|
52
|
+
_ << '<img src="'+url_to_the_image.to_s+'"'
|
53
|
+
if optional_css_class and !optional_css_class.empty?
|
54
|
+
_ << ' class="'+optional_css_class+'"'
|
55
|
+
end
|
56
|
+
if optional_css_style and !optional_css_style.empty?
|
57
|
+
_ << " style=\"#{optional_css_style}\""
|
58
|
+
end
|
59
|
+
_ << ' id="'+optional_id+'">'+"\n"
|
60
|
+
_ << return_javascript_drag_and_drop(optional_id)+"\n"
|
61
|
+
_ # Return it finally.
|
62
|
+
end; self.instance_eval { alias drag_this_image_id standalone_drag_and_drop_this_image } # === Cyberweb.drag_this_image_id
|
63
|
+
|
64
|
+
end
|
@@ -0,0 +1,399 @@
|
|
1
|
+
#!/usr/bin/ruby -w
|
2
|
+
# Encoding: UTF-8
|
3
|
+
# frozen_string_literal: true
|
4
|
+
# =========================================================================== #
|
5
|
+
# require 'cyberweb/images/path_to_images.rb'
|
6
|
+
# Cyberweb.string_image
|
7
|
+
# =========================================================================== #
|
8
|
+
module Cyberweb
|
9
|
+
|
10
|
+
require 'cyberweb/requires/require_web_images.rb'
|
11
|
+
require 'cyberweb/constants/file_constants.rb'
|
12
|
+
require 'cyberweb/toplevel_methods/filename.rb' # ← Necessary for the method Cyberweb.register_this_filename()
|
13
|
+
require 'cyberweb/toplevel_methods/css.rb'
|
14
|
+
require 'cyberweb/toplevel_methods/registered_ids.rb'
|
15
|
+
|
16
|
+
# ========================================================================= #
|
17
|
+
# === string_img (sg tag)
|
18
|
+
#
|
19
|
+
# This method is just a wrapper over the module-level method called
|
20
|
+
# Cyberweb.string_img(). Please refer to that method, in this file
|
21
|
+
# here, for more information.
|
22
|
+
# ========================================================================= #
|
23
|
+
def string_img(
|
24
|
+
url = '', # entry 1
|
25
|
+
css_class = '', # entry 2
|
26
|
+
the_id = '', # entry 3
|
27
|
+
css_style = '', # entry 4
|
28
|
+
new_line = 0, # entry 5
|
29
|
+
alt = '', # entry 6
|
30
|
+
to_img_dir = 'def', # entry 7
|
31
|
+
usemap = '', # entry 8
|
32
|
+
javascript = '', # entry 9
|
33
|
+
&block
|
34
|
+
)
|
35
|
+
::Cyberweb.string_image(
|
36
|
+
url,
|
37
|
+
css_class,
|
38
|
+
the_id,
|
39
|
+
css_style,
|
40
|
+
new_line,
|
41
|
+
alt,
|
42
|
+
to_img_dir,
|
43
|
+
usemap,
|
44
|
+
javascript,
|
45
|
+
&block
|
46
|
+
)
|
47
|
+
end; alias sg string_img # === sg # the main thing to use since 2011.
|
48
|
+
alias string_image string_img # === string_image
|
49
|
+
alias simg string_img # === simg
|
50
|
+
alias s_img string_img # === s_img
|
51
|
+
alias s_image string_img # === s_image
|
52
|
+
|
53
|
+
# ========================================================================= #
|
54
|
+
# === Cyberweb.string_image
|
55
|
+
#
|
56
|
+
# This method will try to "create" a HTML <img> tag. It will hold a
|
57
|
+
# reference to the image at hand, as a String. This String can then
|
58
|
+
# be used to be put to use for a web-page or some other web-app
|
59
|
+
# related program.
|
60
|
+
#
|
61
|
+
# This method here must remain as flexible as possible.
|
62
|
+
#
|
63
|
+
# If an alt-value is passed, and this value is the Symbol called :def,
|
64
|
+
# then the string 'Missing_Image' will be used.
|
65
|
+
#
|
66
|
+
# If you pass a Hash and wish to denote the image file at hand,
|
67
|
+
# use either of the two symbols :img or :src as the key.
|
68
|
+
#
|
69
|
+
# The first entry in the given Array may also be a Symbol, in which
|
70
|
+
# case we may attempt to query the WebImages project for a
|
71
|
+
# corresponding image file.
|
72
|
+
#
|
73
|
+
# The third argument, if supplied, will be used for the ID of
|
74
|
+
# that particular HTML element. If this value for the ID is
|
75
|
+
# :drag then we enable drag and drop support for this image.
|
76
|
+
# This part depends on the availability of jquery. If this value
|
77
|
+
# is the Symbol :drag_and_highlight then we will enable both drag
|
78
|
+
# and drop, and also jquery-based highlighting (an on-click
|
79
|
+
# action).
|
80
|
+
#
|
81
|
+
# The fifth argument to this method is usually reserved for
|
82
|
+
# a Symbol called :newline or :new_line. If this is the case, or
|
83
|
+
# if the given input evaluates to true, or the .to_s call to it
|
84
|
+
# is equal to the string '1' then a newline will be appended.
|
85
|
+
# The reaso as to why '1' or 1 also works as input is so that
|
86
|
+
# we can write terse code - but I recommend to be explicit
|
87
|
+
# and just use :newline or something like that instead.
|
88
|
+
#
|
89
|
+
# The following lines gather some existing examples - the method must
|
90
|
+
# be able to deal with all of these properly:
|
91
|
+
#
|
92
|
+
# sg('PC/HARDWARE/LAPTOP_LENOVO_110_17IKB.png','mar0_5em', :drag)
|
93
|
+
#
|
94
|
+
# The old code had hardcoded positions like these:
|
95
|
+
#
|
96
|
+
# url # 0
|
97
|
+
# css_class # 1
|
98
|
+
# the_id # 2
|
99
|
+
# css_style # 3
|
100
|
+
# new_line # 4
|
101
|
+
# alt # 5
|
102
|
+
# to_img_dir # 6
|
103
|
+
# usemap # 7
|
104
|
+
# javascript # 8
|
105
|
+
#
|
106
|
+
# This is still supported, in principle - but using a Hash may be a lot
|
107
|
+
# better if you have to pass in a lot of arguments.
|
108
|
+
#
|
109
|
+
# Some specific examples follow next:
|
110
|
+
#
|
111
|
+
# Cyberweb.string_img 'LG_GSA_4163.png' # => <img src="/home/x/data/images/LG_GSA_4163.png">
|
112
|
+
# Cyberweb.string_img(:external) # => <img src="/home/x/data/images/STD/EXTERNAL_LINK.png">
|
113
|
+
# Cyberweb.string_img 'diamond_logo' # => <img src="/home/x/data/images/diamond_logo">
|
114
|
+
# Cyberweb.string_img(:external,'', :drag_and_highlight) # => <img src="/Users/x/DATA/IMG/STD/EXTERNAL_LINK.png" <script> etc.
|
115
|
+
# Cyberweb.string_img :external # => <img src="/home/x/data/images/STD/EXTERNAL_LINK.png">
|
116
|
+
# Cyberweb.string_img url
|
117
|
+
# Cyberweb.string_img 'LG_GSA_4163.png','style','id',0,'altern name',Cyberweb::TID[0]
|
118
|
+
# Cyberweb.string_img '','class','style','id',0,'alt_name','def',nil,'onClick'
|
119
|
+
# Cyberweb.string_img(
|
120
|
+
# 'PC/HARDWARE/VOICE_RECORDER_OLYMPUS_360.png',
|
121
|
+
# id: 'drag_olympus',
|
122
|
+
# css: 'mars1em')
|
123
|
+
# Cyberweb.string_img('RPG/DSA/DSA_LOGO_BIG.png', id: 'drag_dsa_logo_big')
|
124
|
+
# Cyberweb.string_img('SITEMAP/SITEMAP_REAL.png', id: 'draggable_sitemap', css_style: 'z-index: -2;') # => <img src="/home/x/data/images/SITEMAP/SITEMAP_REAL.png" id="draggable_sitemap" style="z-index: -2;">
|
125
|
+
# Cyberweb.string_img('HARDWARE/ANSCHLÜSSE/HDMI_KABEL_ANSCHLUSS.jpg','bblack1 marl2em',
|
126
|
+
# :guess_draggable_id)
|
127
|
+
# rose = Cyberweb.sg('web_object/lib/web_object/images/real/ROSE.png.png', 'mar20px FLR', 'drag_rose', 'margin-right: 40%' ) { :do_not_prepend_anything }
|
128
|
+
#
|
129
|
+
# ========================================================================= #
|
130
|
+
def self.string_image(
|
131
|
+
*i,
|
132
|
+
&block
|
133
|
+
)
|
134
|
+
# ======================================================================= #
|
135
|
+
# === url
|
136
|
+
#
|
137
|
+
# The url variable will store the "URL" of the image at hand. It is
|
138
|
+
# in some ways the most important variable, because it will be used
|
139
|
+
# as the input to <img src="">.
|
140
|
+
# ======================================================================= #
|
141
|
+
url = ''.dup
|
142
|
+
first_entry = i.first # This can be a Hash or a String. Is equivalent to i[0].
|
143
|
+
# ======================================================================= #
|
144
|
+
# Check whether the image is registered as part of WebImages.
|
145
|
+
# ======================================================================= #
|
146
|
+
if webimages_is_included?(first_entry) and !File.exist?(first_entry.to_s)
|
147
|
+
first_entry = get_webimage(first_entry) # bl $CYBERWEB/get_webimage/webimages.rb
|
148
|
+
end
|
149
|
+
# ======================================================================= #
|
150
|
+
# Next, handle the second entry given. This can be a Hash, but it may
|
151
|
+
# also be a String. If it is a String then we assume it to mean a CSS
|
152
|
+
# class.
|
153
|
+
# ======================================================================= #
|
154
|
+
second_entry = i[1] # ← Remember: this can also be a Hash. This is the css-class.
|
155
|
+
third_entry = i[2] # ← This may be missing. If not missing then it is the id. Can also be a symbol like :drag
|
156
|
+
fourth_entry = i[3] # ← This is the css style.
|
157
|
+
fifth_entry = i[4] # ← This is for making a newline.
|
158
|
+
sixth_entry = i[5] # ← This is for the alt tag.
|
159
|
+
_seventh_entry = i[6] # ← This is for to_img_dir
|
160
|
+
# _eight_entry = i[7]
|
161
|
+
javascript = i[8].to_s.dup # ← This is for javascript
|
162
|
+
result = '<img src="'.dup
|
163
|
+
use_in_dir_images = use_in_dir_images?
|
164
|
+
# ======================================================================= #
|
165
|
+
# === Handle blocks next
|
166
|
+
# ======================================================================= #
|
167
|
+
if block_given?
|
168
|
+
yielded = yield
|
169
|
+
case yielded
|
170
|
+
# ===================================================================== #
|
171
|
+
# This entry point essentially means that we will not prepend any
|
172
|
+
# special string in order to find the corresponding web-image at
|
173
|
+
# hand.
|
174
|
+
# ===================================================================== #
|
175
|
+
when :use_absolute_path,
|
176
|
+
:absolute_path,
|
177
|
+
:do_not_prepend_anything
|
178
|
+
use_in_dir_images = true
|
179
|
+
end
|
180
|
+
end
|
181
|
+
if use_in_dir_images == false
|
182
|
+
# ===================================================================== #
|
183
|
+
# If we do not use in-dir images then we will prepend the
|
184
|
+
# relative path to the IMG directory - unless the File
|
185
|
+
# exists.
|
186
|
+
# ===================================================================== #
|
187
|
+
result << path_to_images?.to_s
|
188
|
+
end
|
189
|
+
# ======================================================================= #
|
190
|
+
# === Handle the cases where the second_entry is a Hash
|
191
|
+
# ======================================================================= #
|
192
|
+
if second_entry.is_a? Hash
|
193
|
+
if second_entry.has_key? :css_style
|
194
|
+
fourth_entry = second_entry.delete(:css_style)
|
195
|
+
end
|
196
|
+
end
|
197
|
+
if first_entry.is_a?(String) and second_entry.is_a? Hash
|
198
|
+
# ===================================================================== #
|
199
|
+
# We convert the first_entry into a Hash as well, if it was a String
|
200
|
+
# and the second entry was a Hash too. This allows us to easily
|
201
|
+
# merge the two together lateron.
|
202
|
+
# ===================================================================== #
|
203
|
+
first_entry = { src: first_entry } # ← Now first_entry will be a Hash as well.
|
204
|
+
end
|
205
|
+
if first_entry.is_a? Hash
|
206
|
+
if second_entry.is_a? Hash
|
207
|
+
# =================================================================== #
|
208
|
+
# Merge the two together next:
|
209
|
+
# =================================================================== #
|
210
|
+
first_entry.merge!(second_entry)
|
211
|
+
second_entry = nil
|
212
|
+
end
|
213
|
+
# ===================================================================== #
|
214
|
+
# Handle Hashes next, always starting with an :img key. Both :img
|
215
|
+
# and :src are equivalent.
|
216
|
+
# ===================================================================== #
|
217
|
+
if first_entry.has_key? :src
|
218
|
+
url = first_entry.delete(:src)
|
219
|
+
# ===================================================================== #
|
220
|
+
# === :img
|
221
|
+
# ===================================================================== #
|
222
|
+
elsif first_entry.has_key? :img
|
223
|
+
url = first_entry.delete(:img)
|
224
|
+
end
|
225
|
+
# ===================================================================== #
|
226
|
+
# === :css_class
|
227
|
+
# ===================================================================== #
|
228
|
+
if first_entry.has_key? :css_class
|
229
|
+
second_entry = first_entry.delete(:css_class)
|
230
|
+
end
|
231
|
+
else # else simply use the first_entry as URL. But ideally we would
|
232
|
+
# use a :src or :img identifier here.
|
233
|
+
url = first_entry
|
234
|
+
end
|
235
|
+
if url.is_a? String
|
236
|
+
url = rds(url) if url.include?('//')
|
237
|
+
end
|
238
|
+
result << url # Append the URL.
|
239
|
+
result << '"'
|
240
|
+
# ======================================================================= #
|
241
|
+
# === Handle the case where first_entry is a Hash and has an entry
|
242
|
+
# called :alt.
|
243
|
+
# ======================================================================= #
|
244
|
+
if first_entry.is_a?(Hash) and first_entry.has_key?(:alt)
|
245
|
+
value_for_alt = first_entry.delete(:alt)
|
246
|
+
value_for_alt = 'Missing_Image' if value_for_alt == :def
|
247
|
+
result << ' alt="'+value_for_alt+'"'
|
248
|
+
end
|
249
|
+
if first_entry.is_a?(Hash)
|
250
|
+
if first_entry.has_key?(:newline) or
|
251
|
+
first_entry.has_key?(:new_line)
|
252
|
+
result << N
|
253
|
+
end
|
254
|
+
# ===================================================================== #
|
255
|
+
# Re-assign the id entry to the third_entry variable:
|
256
|
+
# ===================================================================== #
|
257
|
+
if first_entry.has_key? :id
|
258
|
+
third_entry = first_entry.delete(:id)
|
259
|
+
end
|
260
|
+
end
|
261
|
+
# ======================================================================= #
|
262
|
+
# If the third entry exists and is not empty, we assume it to be a
|
263
|
+
# CSS class. The variable used to be called css_class.
|
264
|
+
# ======================================================================= #
|
265
|
+
if second_entry and second_entry.is_a?(String) and !second_entry.empty?
|
266
|
+
result << return_css_class(second_entry)
|
267
|
+
end
|
268
|
+
# ======================================================================= #
|
269
|
+
# === The ID of the image object
|
270
|
+
#
|
271
|
+
# Handle IDs passed into this method next. This has to support quite
|
272
|
+
# a few different symbols, such as :guess_draggable_id and other
|
273
|
+
# variants.
|
274
|
+
# ======================================================================= #
|
275
|
+
if third_entry
|
276
|
+
# ===================================================================== #
|
277
|
+
# If the user enabled global drag-support for all images, then this
|
278
|
+
# setting will be checked in the following subsection. If true, the
|
279
|
+
# string 'drag_' will be prepended to the id of our image in question.
|
280
|
+
# ===================================================================== #
|
281
|
+
if respond_to?(:web_object?) and web_object?
|
282
|
+
if web_object?.drag_all_images?
|
283
|
+
# ================================================================= #
|
284
|
+
# We need to be careful - if the id is empty, then we must come up
|
285
|
+
# with an ID name on our own. Otherwise, we can indeed just prepend.
|
286
|
+
# ================================================================= #
|
287
|
+
if third_entry.empty? # Invent a new id.
|
288
|
+
third_entry = 'drag_'+File.basename(url).tr(' .,','_')
|
289
|
+
else # else the existing ID will be used, and the String prepended to it.
|
290
|
+
case third_entry
|
291
|
+
# =============================================================== #
|
292
|
+
# === :guess_draggable_id
|
293
|
+
# =============================================================== #
|
294
|
+
when :guess_draggable_id
|
295
|
+
third_entry = 'drag_'+File.basename(url).gsub(File.extname(url),'')
|
296
|
+
end
|
297
|
+
third_entry = third_entry.to_s
|
298
|
+
third_entry = third_entry.dup if third_entry.frozen?
|
299
|
+
third_entry.prepend('drag_') unless third_entry.to_s.start_with? 'drag_'
|
300
|
+
end
|
301
|
+
end
|
302
|
+
end
|
303
|
+
if third_entry.is_a?(String) and !third_entry.empty?
|
304
|
+
result << return_the_id(third_entry)
|
305
|
+
# ===================================================================== #
|
306
|
+
# === Handle Symbols next
|
307
|
+
# ===================================================================== #
|
308
|
+
elsif third_entry.is_a? Symbol
|
309
|
+
# =================================================================== #
|
310
|
+
# === third_entry (which is the ID)
|
311
|
+
#
|
312
|
+
# Handle the case when we passed :drag or similar symbols to the ID
|
313
|
+
# that is to be used.
|
314
|
+
#
|
315
|
+
# This has to occur after we handled Hashes given as input.
|
316
|
+
# =================================================================== #
|
317
|
+
case third_entry # ← This is the ID
|
318
|
+
# =================================================================== #
|
319
|
+
# === :drag_and_highlight
|
320
|
+
# =================================================================== #
|
321
|
+
when :drag_and_highlight # Handle more complex Symbols here.
|
322
|
+
third_entry = 'drag_'+File.basename(url).gsub(File.extname(url),'')
|
323
|
+
# ================================================================= #
|
324
|
+
# In this case, we also highlight that particular entry.
|
325
|
+
# ================================================================= #
|
326
|
+
result << string_highlight(third_entry)
|
327
|
+
# =================================================================== #
|
328
|
+
# === :on_click_darken,
|
329
|
+
# =================================================================== #
|
330
|
+
when :on_click_darken,
|
331
|
+
:darken_on_click, # Handle on-click events for darkening an image.
|
332
|
+
:on_click_highlight
|
333
|
+
unless the_id.to_s.empty?
|
334
|
+
javascript = javascript.dup if javascript.frozen?
|
335
|
+
javascript << on_click_change_opacity(the_id).to_s
|
336
|
+
end
|
337
|
+
# =================================================================== #
|
338
|
+
# === :guess_draggable_id
|
339
|
+
# =================================================================== #
|
340
|
+
when :guess_draggable_id,
|
341
|
+
:drag,
|
342
|
+
/^drag/
|
343
|
+
third_entry = 'drag_'+File.basename(url).gsub(File.extname(url),'')
|
344
|
+
# ================================================================= #
|
345
|
+
# javascript_drag_and_drop(the_id)
|
346
|
+
# ^^^ We do not need to do the above because as we already
|
347
|
+
# prepend drag_ to it, it will be automatically activated
|
348
|
+
# in the file id.rb lateron.
|
349
|
+
# ================================================================= #
|
350
|
+
# =================================================================== #
|
351
|
+
# === :guess_id
|
352
|
+
#
|
353
|
+
# This will simply "guess" the ID to use.
|
354
|
+
# =================================================================== #
|
355
|
+
when :guess_id
|
356
|
+
third_entry = File.basename(url).gsub(File.extname(url),'')
|
357
|
+
end
|
358
|
+
result << return_the_id(third_entry)
|
359
|
+
end
|
360
|
+
end
|
361
|
+
# ======================================================================= #
|
362
|
+
# Next, handle css-style. We have to use .to_s here because a number
|
363
|
+
# such as 0 may also be passed into this method, even though this
|
364
|
+
# seems to be fairly useless.
|
365
|
+
# ======================================================================= #
|
366
|
+
if fourth_entry and !fourth_entry.to_s.empty?
|
367
|
+
result << return_css_style(fourth_entry.to_s)
|
368
|
+
end
|
369
|
+
# ======================================================================= #
|
370
|
+
# Next, handle the optional alt-tag:
|
371
|
+
# ======================================================================= #
|
372
|
+
if sixth_entry and !sixth_entry.empty?
|
373
|
+
result << " alt=\"#{sixth_entry}\""
|
374
|
+
end
|
375
|
+
if fifth_entry
|
376
|
+
case fifth_entry.to_s
|
377
|
+
when '1'
|
378
|
+
result << N
|
379
|
+
end
|
380
|
+
end
|
381
|
+
# ======================================================================= #
|
382
|
+
# Register the filename that is passed to us.
|
383
|
+
# ======================================================================= #
|
384
|
+
register_this_filename(url)
|
385
|
+
if javascript and !javascript.empty?
|
386
|
+
result << " #{javascript}"
|
387
|
+
result.squeeze!(' ')
|
388
|
+
end
|
389
|
+
# ======================================================================= #
|
390
|
+
# Append closing tag.
|
391
|
+
# ======================================================================= #
|
392
|
+
result << '>' unless result.end_with? '>'
|
393
|
+
result << N
|
394
|
+
return result # Finally, return our finding.
|
395
|
+
end; self.instance_eval { alias string_img string_image } # === Cyberweb.string_img
|
396
|
+
self.instance_eval { alias sg string_image } # === Cyberweb.sg
|
397
|
+
self.instance_eval { alias simg string_image } # === Cyberweb.simg
|
398
|
+
|
399
|
+
end
|
@@ -0,0 +1 @@
|
|
1
|
+
iVBORw0KGgoAAAANSUhEUgAAABIAAAASCAMAAABhEH5lAAAABGdBTUEAALGPC/xhBQAAAAFzUkdCAK7OHOkAAAKjUExURQAAAEQ1MjYfHi0RETIeHG8EChsbEj0jJEYxMDseHjcAAS0AAz8eIAAAAEA1MAAIAMwgMjsuLCUAADklJ04XGYASG7oIFdkfKzQfHd0dLdFxetUwPPXP0u/IxT4EBfLCwtA1Q+CsrNyVl9empea8tdeAg9hcX+yLiiMTD+e+utNtcMUhJOWyuOKgq8YSIIFsb7tFUW1jYYFgZ593fIRVWrtWW8pCSKt4fMZKUHw+Q08JDbNxd38OErVjadFbXbIIEtgNJrh3d9wBEHoiJn41OOmqs8sUJLlOUGUNDd59h8oZJNqUl5ZcXYZISjQcGvQXKPjO2GkaI1xYVDc0L2FHSUxFQh4OCTQYFq4QGdcdLfSyu8iKjjEREKsnLB0CAdxbXmMODPfZ4KgSHKwGC9USJEExLngACeCurjgdHAAAAAcQCqcAACMAACgGBqQMDSwJCbkTGc4AABIAAMOIgMoECfLO1eqao70iJeCqprgCCrYYGvHT1erJyNphaa0AAMtyZrYWFcsaIeKcmu3Ny+i8uMs8OOOQkscABemcmu3EwqsAAN1cZMsgMey4uOqprOaUmKMAAP///+SqqtgjOaQAAMVTU98eMt4fMq8AAN4cMd0dMcAEENkjOdgkOkAAAOOqqr4PFyIAAOi4uMITHcQVIMMTHcUVIsUVIGQAAccRIsQVIssSI+MbGdshMb4PGWEVGcYNIMkRIL0MFAAAALgJELIKFc5JTdkkOt4AANwAAOIFAHIYHZoAAF8AAN0dMLsKEr0OFskRHjoAAMwcHMgAAKUAAE4AAOGlperExMlcXM4cHNEuLtAuLujDwsZcW9+lpFIAAKkeHeKqqqUHBebCwqkZFurDwuicoLEnJbEsKakOC+mboOihpb8ABOeeodAAAMsAAEUP3qsAAACQdFJOUwAVDT5I85MDBBbNifD2P9X9g/7H/e7+/if+5fsCDMY4+laZt3TX68F8JPb7BSD2B6EcIQZYzv4X9J3cQd6H/vf+PPb+8Qb+mtpW3Bd9x1b+E6ZQpVyeupf7/oBT1Njm7O0D+P79398V+vng+Pr3/P7+/v6U/jrD+zj+8wx26/7P/ftuJbXxr/3jVf75/p3i588o6TsAAAFhSURBVBjTAVYBqf4AAGF7g4mNjtze19uPhoJ4ZywAABxQdXyEiIuM3eDfh4V/c1stRQAdH1p2fYGK2tjZ1dOAel0wSUsAKSQnX3d+kNaRkdTReWQuSkdBACEjJitjkJTSkZGSkJCwQEJITAAiGhsWtZSQkpGRkpSUqb5Pnk0AJSAZq66QkJKRkZKQkKatl71EACoXnJOykJCSkZGSkJCkl5a8QwA+rJOTtJCUkpGRkpCUo5eXm7sAtrqdk7+QkJ+RkZ+QkKWWlpuvADa5nZPAkJCikZGikJCnlpaoFAA4uLeToJCQlZWVlZCQqpqaEgwANbOTnKCQkMmVlc6QkLGZmQ0TAD06P1nBlJDHkZHPkJBGEAUPEQA7OTxicMWYyJGRzZiYWBUKBg4ANzRRZmtxxMrLzMN0bmAeCwQBADMyVFNqaXKe0MbCbF5WKAMJCAAALzFSVWVob6GhbVxXThgCBwAArpmbdTKhrAAAAABJRU5ErkJggg==
|
@@ -0,0 +1 @@
|
|
1
|
+
iVBORw0KGgoAAAANSUhEUgAAACcAAAATBAMAAADhZgm9AAAABGdBTUEAALGPC/xhBQAAAAFzUkdCAK7OHOkAAAAtUExURQAAACSRtgBtkdr//2222ki22pHa2tra/7ba2ki2trba/5G22iS2tiSRkUiRtpYvcdEAAAABdFJOUwBA5thmAAAAkUlEQVQY02NgwA6YU4UxxNgD3Q0wBBuDMTWzH8ViIosAFkFDB6IELRYw2KAJsqeKAM2cjCLWIqQUwMDAJY0kZOaopKQJcrVjAlyMVQkIwN4zEYMLcispXlIsADMTw+GigXFK4tAAcYyAGekqpNQACyZH0XRmA4MKV0E3ITWErWUTBYHArYBZCNXVxsxgZzLgBAAJFhSziyUU/gAAAABJRU5ErkJggg==
|