cyberweb 0.8.17 → 0.9.32
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 +4 -4
- data/README.md +306 -86
- data/cyberweb.gemspec +0 -3
- data/doc/README.gen +305 -85
- data/doc/todo/todo_for_the_cyberweb_project.md +100 -99
- data/examples/advanced/draw_circle/draw_circle.cgi +2 -2
- data/examples/advanced/simple_calculator.cgi +4 -4
- data/examples/css/animated_dodecahedron_example/animated_dodecahedron_example.html +107 -0
- data/examples/css/animated_police_box/animated_police_box.html +639 -0
- data/examples/css/animated_solar_system/animated_solar_system.html +168 -0
- data/examples/css/animated_solar_system/css/styles.css +1592 -0
- data/examples/css/animated_solar_system/img/bg-glow.png +0 -0
- data/examples/css/animated_solar_system/img/bg-stars.png +0 -0
- data/examples/css/animated_solar_system/img/p-earth.png +0 -0
- data/examples/css/animated_solar_system/img/p-jupiter.png +0 -0
- data/examples/css/animated_solar_system/img/p-mars.png +0 -0
- data/examples/css/animated_solar_system/img/p-mercury.png +0 -0
- data/examples/css/animated_solar_system/img/p-neptune.png +0 -0
- data/examples/css/animated_solar_system/img/p-saturn.png +0 -0
- data/examples/css/animated_solar_system/img/p-uranus.png +0 -0
- data/examples/css/animated_solar_system/img/p-venus.png +0 -0
- data/examples/css/animated_solar_system/img/sun.png +0 -0
- data/examples/css/animated_solar_system/js/jquery.min.js +4 -0
- data/examples/css/animated_solar_system/js/scripts.js +42 -0
- data/examples/css/animated_solar_system/js/scripts.min.js +1 -0
- data/examples/css/dozing_bird_example/dozing_bird_example.html +358 -0
- data/examples/css/planet_earth_is_rotating/planet_earth_is_rotating.html +130 -0
- data/examples/css/simpler_css_clock/simpler_css_clock.html +125 -0
- data/examples/html/{href_examples.html → href_examples/href_examples.html} +5 -2
- data/examples/html/href_in_pre_tag/href_in_pre_tag.html +39 -0
- data/examples/javascript_and_jquery/toggle_visibility_of_elements/toggle_visibility_of_elements.html +35 -0
- data/examples/simple/toggle_visibility_example/toggle_visibility_example.cgi +36 -0
- data/images/cyberweb_theme.png +0 -0
- data/lib/cyberweb/base/misc.rb +20 -13
- data/lib/cyberweb/cascading_style_sheets/border.css +66 -49
- data/lib/cyberweb/cascading_style_sheets/default.css +17 -8
- data/lib/cyberweb/cascading_style_sheets/fonts.css +6 -2
- data/lib/cyberweb/cascading_style_sheets/glow_effects.css +5 -5
- data/lib/cyberweb/cascading_style_sheets/hover.css +13 -5
- data/lib/cyberweb/cascading_style_sheets/margin.css +3 -0
- data/lib/cyberweb/cmd/README.md +2 -0
- data/lib/cyberweb/cmd/cmd.rb +601 -0
- data/lib/cyberweb/constants/constants.rb +16 -0
- data/lib/cyberweb/generator/cgi.rb +2 -2
- data/lib/cyberweb/html_tags/textarea.rb +54 -23
- data/lib/cyberweb/images/standard_images/ADMIN.png +0 -0
- data/lib/cyberweb/images/standard_images/AMBULANZ.png +0 -0
- data/lib/cyberweb/images/standard_images/ANGRY_SMILEY.png +0 -0
- data/lib/cyberweb/images/standard_images/APPROVE.png +0 -0
- data/lib/cyberweb/images/standard_images/ARROW_LEFT.png +0 -0
- data/lib/cyberweb/images/standard_images/ARROW_RIGHT.png +0 -0
- data/lib/cyberweb/images/standard_images/ARROW_TOOLTIP.gif +0 -0
- data/lib/cyberweb/images/standard_images/AUSRUFUNGSZEICHEN.png +0 -0
- data/lib/cyberweb/images/standard_images/AUSRUFUNGSZEICHEN2.png +0 -0
- data/lib/cyberweb/images/standard_images/AUSRUFUNGSZEICHEN3.png +0 -0
- data/lib/cyberweb/images/standard_images/AUSRUFUNGSZEICHEN4.png +0 -0
- data/lib/cyberweb/images/standard_images/AUSTRIA_FAHNE.jpg +0 -0
- data/lib/cyberweb/images/standard_images/AWARD.png +0 -0
- data/lib/cyberweb/images/standard_images/AXE.png +0 -0
- data/lib/cyberweb/images/standard_images/BACKUP_IMAGE.png +0 -0
- data/lib/cyberweb/images/standard_images/BAGGER.png +0 -0
- data/lib/cyberweb/images/standard_images/BARS.gif +0 -0
- data/lib/cyberweb/images/standard_images/BEGINNER.jpg +0 -0
- data/lib/cyberweb/images/standard_images/BEWERTUNG_1.png +0 -0
- data/lib/cyberweb/images/standard_images/BEWERTUNG_2.png +0 -0
- data/lib/cyberweb/images/standard_images/BEWERTUNG_3.png +0 -0
- data/lib/cyberweb/images/standard_images/BEWERTUNG_4.png +0 -0
- data/lib/cyberweb/images/standard_images/BEWERTUNG_5.png +0 -0
- data/lib/cyberweb/images/standard_images/BEWERTUNG_6.png +0 -0
- data/lib/cyberweb/images/standard_images/BIG_STAR.png +0 -0
- data/lib/cyberweb/images/standard_images/BIKE.png +0 -0
- data/lib/cyberweb/images/standard_images/BIO.png +0 -0
- data/lib/cyberweb/images/standard_images/BIOS.gif +0 -0
- data/lib/cyberweb/images/standard_images/BLOB.png +0 -0
- data/lib/cyberweb/images/standard_images/BLOG.png +0 -0
- data/lib/cyberweb/images/standard_images/BLUEARROW.png +0 -0
- data/lib/cyberweb/images/standard_images/BLUE_HEAD.gif +0 -0
- data/lib/cyberweb/images/standard_images/BLUE_PILL.png +0 -0
- data/lib/cyberweb/images/standard_images/BLUME.png +0 -0
- data/lib/cyberweb/images/standard_images/BOHRER.png +0 -0
- data/lib/cyberweb/images/standard_images/BOOK_CLOSED.png +0 -0
- data/lib/cyberweb/images/standard_images/BOOK_OPENED.png +0 -0
- data/lib/cyberweb/images/standard_images/BUBBLE.png +0 -0
- data/lib/cyberweb/images/standard_images/BUECHER.jpg +0 -0
- data/lib/cyberweb/images/standard_images/BUERO_KLAMMER.png +0 -0
- data/lib/cyberweb/images/standard_images/BUSINESS.png +0 -0
- data/lib/cyberweb/images/standard_images/BUTTON1.gif +0 -0
- data/lib/cyberweb/images/standard_images/CAMERA.png +0 -0
- data/lib/cyberweb/images/standard_images/CAT.png +0 -0
- data/lib/cyberweb/images/standard_images/CAUTION.png +0 -0
- data/lib/cyberweb/images/standard_images/CHAOTIC_IMAGE.png +0 -0
- data/lib/cyberweb/images/standard_images/CHECKBOX_OFF.png +0 -0
- data/lib/cyberweb/images/standard_images/CHECKBOX_ON.png +0 -0
- data/lib/cyberweb/images/standard_images/CHEERING_PERSON.png +0 -0
- data/lib/cyberweb/images/standard_images/CLOSED.png +0 -0
- data/lib/cyberweb/images/standard_images/COMMAND_ICO.png +0 -0
- data/lib/cyberweb/images/standard_images/COMPLEX.png +0 -0
- data/lib/cyberweb/images/standard_images/COMPONENTS.png +0 -0
- data/lib/cyberweb/images/standard_images/COMPUTER.png +0 -0
- data/lib/cyberweb/images/standard_images/CONNECTED.png +0 -0
- data/lib/cyberweb/images/standard_images/CONTACT.png +0 -0
- data/lib/cyberweb/images/standard_images/COPY.png +0 -0
- data/lib/cyberweb/images/standard_images/CSS.png +0 -0
- data/lib/cyberweb/images/standard_images/CURSOR.png +0 -0
- data/lib/cyberweb/images/standard_images/CUTE_BUBBA.png +0 -0
- data/lib/cyberweb/images/standard_images/CUTE_MOUSE.png +0 -0
- data/lib/cyberweb/images/standard_images/DEVELOP.png +0 -0
- data/lib/cyberweb/images/standard_images/DIAMOND_SHELL.png +0 -0
- data/lib/cyberweb/images/standard_images/DIE_PERFEKTE_AUSBILDUNG.png +0 -0
- data/lib/cyberweb/images/standard_images/DOCUMENTATION.png +0 -0
- data/lib/cyberweb/images/standard_images/DOKUMENT.png +0 -0
- data/lib/cyberweb/images/standard_images/DOT_01.png +0 -0
- data/lib/cyberweb/images/standard_images/DOT_02.png +0 -0
- data/lib/cyberweb/images/standard_images/DOT_03.png +0 -0
- data/lib/cyberweb/images/standard_images/DOT_04.png +0 -0
- data/lib/cyberweb/images/standard_images/DOT_05.png +0 -0
- data/lib/cyberweb/images/standard_images/DOT_06.png +0 -0
- data/lib/cyberweb/images/standard_images/DOT_07.png +0 -0
- data/lib/cyberweb/images/standard_images/DOT_08.png +0 -0
- data/lib/cyberweb/images/standard_images/DOT_09.png +0 -0
- data/lib/cyberweb/images/standard_images/DOT_10.png +0 -0
- data/lib/cyberweb/images/standard_images/DOT_11.png +0 -0
- data/lib/cyberweb/images/standard_images/DOT_12.png +0 -0
- data/lib/cyberweb/images/standard_images/DOWNLOAD.png +0 -0
- data/lib/cyberweb/images/standard_images/DOWNLOAD2.png +0 -0
- data/lib/cyberweb/images/standard_images/DOWNLOAD_PACKAGE.png +0 -0
- data/lib/cyberweb/images/standard_images/DUCK.png +0 -0
- data/lib/cyberweb/images/standard_images/DUCKY.png +0 -0
- data/lib/cyberweb/images/standard_images/EINKAUFSKORB.png +0 -0
- data/lib/cyberweb/images/standard_images/EINKAUFSWAGEN.png +0 -0
- data/lib/cyberweb/images/standard_images/ELLIPSE.png +0 -0
- data/lib/cyberweb/images/standard_images/EMAIL_FANCY.png +0 -0
- data/lib/cyberweb/images/standard_images/EMAIL_FAVICON.png +0 -0
- data/lib/cyberweb/images/standard_images/EMAIL_FAVICON.xpm +176 -0
- data/lib/cyberweb/images/standard_images/ENGLISH.jpg +0 -0
- data/lib/cyberweb/images/standard_images/ERRORS.png +0 -0
- data/lib/cyberweb/images/standard_images/EURO.png +0 -0
- data/lib/cyberweb/images/standard_images/EVAL/01_STAR.png +0 -0
- data/lib/cyberweb/images/standard_images/EVAL/02_STAR.png +0 -0
- data/lib/cyberweb/images/standard_images/EVAL/03_STAR.png +0 -0
- data/lib/cyberweb/images/standard_images/EVAL/04_STAR.png +0 -0
- data/lib/cyberweb/images/standard_images/EVAL/05_STAR.png +0 -0
- data/lib/cyberweb/images/standard_images/EVAL/0x_STAR.png +0 -0
- data/lib/cyberweb/images/standard_images/EVAL/1x_STAR.png +0 -0
- data/lib/cyberweb/images/standard_images/EVAL/2x_STAR.png +0 -0
- data/lib/cyberweb/images/standard_images/EVAL/3x_STAR.png +0 -0
- data/lib/cyberweb/images/standard_images/EVAL/4x_STAR.png +0 -0
- data/lib/cyberweb/images/standard_images/EXTERNAL_LINK.png +0 -0
- data/lib/cyberweb/images/standard_images/EYE.png +0 -0
- data/lib/cyberweb/images/standard_images/FAQ.png +0 -0
- data/lib/cyberweb/images/standard_images/FERNGLAS.png +0 -0
- data/lib/cyberweb/images/standard_images/FLOWER_1.png +0 -0
- data/lib/cyberweb/images/standard_images/FLOWER_2.png +0 -0
- data/lib/cyberweb/images/standard_images/FLUGZEUG1.jpg +0 -0
- data/lib/cyberweb/images/standard_images/FOLDER.png +0 -0
- data/lib/cyberweb/images/standard_images/FORK.png +0 -0
- data/lib/cyberweb/images/standard_images/FORUM.png +0 -0
- data/lib/cyberweb/images/standard_images/FOTOAPPARAT.png +0 -0
- data/lib/cyberweb/images/standard_images/FOTO_FAVICON.png +0 -0
- data/lib/cyberweb/images/standard_images/FRAGEZEICHEN.jpg +0 -0
- data/lib/cyberweb/images/standard_images/FTP.png +0 -0
- data/lib/cyberweb/images/standard_images/FUNNY_ELEPHANT.png +0 -0
- data/lib/cyberweb/images/standard_images/FUSSBALL.png +0 -0
- data/lib/cyberweb/images/standard_images/F/303/204CHER.png +0 -0
- data/lib/cyberweb/images/standard_images/GATEWAY.png +0 -0
- data/lib/cyberweb/images/standard_images/GB.jpg +0 -0
- data/lib/cyberweb/images/standard_images/GENDER_ICON_FEMALE.png +0 -0
- data/lib/cyberweb/images/standard_images/GENDER_ICON_MALE.png +0 -0
- data/lib/cyberweb/images/standard_images/GERMANY_FLAG.png +0 -0
- data/lib/cyberweb/images/standard_images/GERSTE.png +0 -0
- data/lib/cyberweb/images/standard_images/GESCHENKBOX.png +0 -0
- data/lib/cyberweb/images/standard_images/GET_HELP.png +0 -0
- data/lib/cyberweb/images/standard_images/GITARRE.png +0 -0
- data/lib/cyberweb/images/standard_images/GOOGLE.png +0 -0
- data/lib/cyberweb/images/standard_images/GORILLA.gif +0 -0
- data/lib/cyberweb/images/standard_images/GOTHIC_SPACER.png +0 -0
- data/lib/cyberweb/images/standard_images/GRADIENT_FILL.gif +0 -0
- data/lib/cyberweb/images/standard_images/GRAFIK_SMALL.png +0 -0
- data/lib/cyberweb/images/standard_images/GRID_LAYOUT.gif +0 -0
- data/lib/cyberweb/images/standard_images/GRINSEN.jpg +0 -0
- data/lib/cyberweb/images/standard_images/GUN.png +0 -0
- data/lib/cyberweb/images/standard_images/HAKEN.png +0 -0
- data/lib/cyberweb/images/standard_images/HALLOWEEN.png +0 -0
- data/lib/cyberweb/images/standard_images/HAMMER.png +0 -0
- data/lib/cyberweb/images/standard_images/HANGING_MONKEY.png +0 -0
- data/lib/cyberweb/images/standard_images/HANG_MAN.png +0 -0
- data/lib/cyberweb/images/standard_images/HAPPY_BIRD.png +0 -0
- data/lib/cyberweb/images/standard_images/HAPPY_SMILEY.png +0 -0
- data/lib/cyberweb/images/standard_images/HDD_EMPTY.png +0 -0
- data/lib/cyberweb/images/standard_images/HDD_FULL.png +0 -0
- data/lib/cyberweb/images/standard_images/HDD_HALF.png +0 -0
- data/lib/cyberweb/images/standard_images/HDD_ONEFOURTH.png +0 -0
- data/lib/cyberweb/images/standard_images/HDD_THREEEIGHT.png +0 -0
- data/lib/cyberweb/images/standard_images/HDD_THREEFOURTH.png +0 -0
- data/lib/cyberweb/images/standard_images/HEART.png +0 -0
- data/lib/cyberweb/images/standard_images/HELP.png +0 -0
- data/lib/cyberweb/images/standard_images/HOME.gif +0 -0
- data/lib/cyberweb/images/standard_images/HONIG.jpg +0 -0
- data/lib/cyberweb/images/standard_images/HTML40.png +0 -0
- data/lib/cyberweb/images/standard_images/HUHN.gif +0 -0
- data/lib/cyberweb/images/standard_images/HUMAN.gif +0 -0
- data/lib/cyberweb/images/standard_images/ICONS_COLLECTION1.gif +0 -0
- data/lib/cyberweb/images/standard_images/ICONS_COLLECTION2.png +0 -0
- data/lib/cyberweb/images/standard_images/ICOSAHEDRON.jpg +0 -0
- data/lib/cyberweb/images/standard_images/IE.jpg +0 -0
- data/lib/cyberweb/images/standard_images/IMPORTANT_ARROW_LEFT.jpg +0 -0
- data/lib/cyberweb/images/standard_images/INTERNAL_LINKS.png +0 -0
- data/lib/cyberweb/images/standard_images/IPAD.png +0 -0
- data/lib/cyberweb/images/standard_images/ITEM.png +0 -0
- data/lib/cyberweb/images/standard_images/KAFFEE.png +0 -0
- data/lib/cyberweb/images/standard_images/KARMA.png +0 -0
- data/lib/cyberweb/images/standard_images/KEYS.png +0 -0
- data/lib/cyberweb/images/standard_images/KLEBSTOFF.png +0 -0
- data/lib/cyberweb/images/standard_images/KLEE_BLATT.png +0 -0
- data/lib/cyberweb/images/standard_images/KNIFE01.png +0 -0
- data/lib/cyberweb/images/standard_images/LARGER_COMPUTER.png +0 -0
- data/lib/cyberweb/images/standard_images/LCD.png +0 -0
- data/lib/cyberweb/images/standard_images/LEAF.png +0 -0
- data/lib/cyberweb/images/standard_images/LEAF2.png +0 -0
- data/lib/cyberweb/images/standard_images/LEFT_RIGHT_PFEIL.png +0 -0
- data/lib/cyberweb/images/standard_images/LENS.png +0 -0
- data/lib/cyberweb/images/standard_images/LEXIKON1.jpg +0 -0
- data/lib/cyberweb/images/standard_images/LOCK.png +0 -0
- data/lib/cyberweb/images/standard_images/LOSER.gif +0 -0
- data/lib/cyberweb/images/standard_images/LUPE.gif +0 -0
- data/lib/cyberweb/images/standard_images/MANTIS.png +0 -0
- data/lib/cyberweb/images/standard_images/MAXERL.png +0 -0
- data/lib/cyberweb/images/standard_images/MESSAGE_BOX_ERROR.png +0 -0
- data/lib/cyberweb/images/standard_images/MESSAGE_BOX_INFO.png +0 -0
- data/lib/cyberweb/images/standard_images/MESSAGE_BOX_SUCCESS.png +0 -0
- data/lib/cyberweb/images/standard_images/MESSAGE_BOX_WARNING.png +0 -0
- data/lib/cyberweb/images/standard_images/MICROSOFT.png +0 -0
- data/lib/cyberweb/images/standard_images/MINE.png +0 -0
- data/lib/cyberweb/images/standard_images/MINI_BAUM1.png +0 -0
- data/lib/cyberweb/images/standard_images/MINI_BAUM2.png +0 -0
- data/lib/cyberweb/images/standard_images/MINI_BAUM3.png +0 -0
- data/lib/cyberweb/images/standard_images/MINI_BAUM4.png +0 -0
- data/lib/cyberweb/images/standard_images/MINI_BAUM5.png +0 -0
- data/lib/cyberweb/images/standard_images/MINI_BAUM6.png +0 -0
- data/lib/cyberweb/images/standard_images/MINI_CUBE.png +0 -0
- data/lib/cyberweb/images/standard_images/MINI_DOT.png +0 -0
- data/lib/cyberweb/images/standard_images/MINUS.png +0 -0
- data/lib/cyberweb/images/standard_images/MONEY.png +0 -0
- data/lib/cyberweb/images/standard_images/MOUSE.png +0 -0
- data/lib/cyberweb/images/standard_images/MUSIK_NOTE.png +0 -0
- data/lib/cyberweb/images/standard_images/NAGEL.jpg +0 -0
- data/lib/cyberweb/images/standard_images/NASHORN.png +0 -0
- data/lib/cyberweb/images/standard_images/NEW.png +0 -0
- data/lib/cyberweb/images/standard_images/NEWS.png +0 -0
- data/lib/cyberweb/images/standard_images/NOBODY.png +0 -0
- data/lib/cyberweb/images/standard_images/NOTE.png +0 -0
- data/lib/cyberweb/images/standard_images/NOTEPAD.png +0 -0
- data/lib/cyberweb/images/standard_images/NOTIZ.png +0 -0
- data/lib/cyberweb/images/standard_images/NO_PATENTS.png +0 -0
- data/lib/cyberweb/images/standard_images/OBSOLETE.png +0 -0
- data/lib/cyberweb/images/standard_images/OFFICIAL_HOME.png +0 -0
- data/lib/cyberweb/images/standard_images/PDF.png +0 -0
- data/lib/cyberweb/images/standard_images/PERGAMENT_TILER1.jpg +0 -0
- data/lib/cyberweb/images/standard_images/PFEIL1.png +0 -0
- data/lib/cyberweb/images/standard_images/PFEIL10.png +0 -0
- data/lib/cyberweb/images/standard_images/PFEIL11.png +0 -0
- data/lib/cyberweb/images/standard_images/PFEIL12.png +0 -0
- data/lib/cyberweb/images/standard_images/PFEIL2.png +0 -0
- data/lib/cyberweb/images/standard_images/PFEIL3.png +0 -0
- data/lib/cyberweb/images/standard_images/PFEIL4.png +0 -0
- data/lib/cyberweb/images/standard_images/PFEIL5.png +0 -0
- data/lib/cyberweb/images/standard_images/PFEIL6.png +0 -0
- data/lib/cyberweb/images/standard_images/PFEIL6_red.png +0 -0
- data/lib/cyberweb/images/standard_images/PFEIL7.png +0 -0
- data/lib/cyberweb/images/standard_images/PFEIL8_OUT.png +0 -0
- data/lib/cyberweb/images/standard_images/PFEIL9.png +0 -0
- data/lib/cyberweb/images/standard_images/PFEIL_LINKS_OBEN.png +0 -0
- data/lib/cyberweb/images/standard_images/PFEIL_VERTICAL.png +0 -0
- data/lib/cyberweb/images/standard_images/PHONE.png +0 -0
- data/lib/cyberweb/images/standard_images/PHP_FORUM.jpg +0 -0
- data/lib/cyberweb/images/standard_images/PIN.png +0 -0
- data/lib/cyberweb/images/standard_images/PIN_POINTER_RED.png +0 -0
- data/lib/cyberweb/images/standard_images/PIPETTE.png +0 -0
- data/lib/cyberweb/images/standard_images/PLUS.png +0 -0
- data/lib/cyberweb/images/standard_images/POSAUNE.png +0 -0
- data/lib/cyberweb/images/standard_images/PRESENT.png +0 -0
- data/lib/cyberweb/images/standard_images/PRINT.png +0 -0
- data/lib/cyberweb/images/standard_images/PRINTER.png +0 -0
- data/lib/cyberweb/images/standard_images/PROTOKOLL.png +0 -0
- data/lib/cyberweb/images/standard_images/QUADRAT01.png +0 -0
- data/lib/cyberweb/images/standard_images/QUOTE.png +0 -0
- data/lib/cyberweb/images/standard_images/RADIO_ACTIVE.png +0 -0
- data/lib/cyberweb/images/standard_images/RAINBOW_CIRCLE.png +0 -0
- data/lib/cyberweb/images/standard_images/RED_PILL.png +0 -0
- data/lib/cyberweb/images/standard_images/RIP.png +0 -0
- data/lib/cyberweb/images/standard_images/ROBERT.png +0 -0
- data/lib/cyberweb/images/standard_images/ROCKET.png +0 -0
- data/lib/cyberweb/images/standard_images/ROSE.png +0 -0
- data/lib/cyberweb/images/standard_images/ROSE2.png +0 -0
- data/lib/cyberweb/images/standard_images/RUNNING.png +0 -0
- data/lib/cyberweb/images/standard_images/SAVE.png +0 -0
- data/lib/cyberweb/images/standard_images/SCANNER.png +0 -0
- data/lib/cyberweb/images/standard_images/SCHERE.png +0 -0
- data/lib/cyberweb/images/standard_images/SCHNEEMANN.png +0 -0
- data/lib/cyberweb/images/standard_images/SCISSORS.png +0 -0
- data/lib/cyberweb/images/standard_images/SHOPPING.png +0 -0
- data/lib/cyberweb/images/standard_images/SKULL.png +0 -0
- data/lib/cyberweb/images/standard_images/SMALL_CAT.png +0 -0
- data/lib/cyberweb/images/standard_images/SMALL_DOCUMENT.png +0 -0
- data/lib/cyberweb/images/standard_images/SMALL_HOUSE.png +0 -0
- data/lib/cyberweb/images/standard_images/SMALL_PLANE.png +0 -0
- data/lib/cyberweb/images/standard_images/SMILEY1.png +0 -0
- data/lib/cyberweb/images/standard_images/SMILEY2.png +0 -0
- data/lib/cyberweb/images/standard_images/SMILEY3.png +0 -0
- data/lib/cyberweb/images/standard_images/SMILEY4.png +0 -0
- data/lib/cyberweb/images/standard_images/SMILEY5.png +0 -0
- data/lib/cyberweb/images/standard_images/SNAIL.png +0 -0
- data/lib/cyberweb/images/standard_images/SNOWFLAKE.png +0 -0
- data/lib/cyberweb/images/standard_images/SPACER.png +0 -0
- data/lib/cyberweb/images/standard_images/SPECIAL_PFEIL.png +0 -0
- data/lib/cyberweb/images/standard_images/SPIDERMAN_HEAD.png +0 -0
- data/lib/cyberweb/images/standard_images/SPIRAL_CROSS.png +0 -0
- data/lib/cyberweb/images/standard_images/SPOON.png +0 -0
- data/lib/cyberweb/images/standard_images/SQUARE_BLACK.png +0 -0
- data/lib/cyberweb/images/standard_images/SQUARE_BLUE.png +0 -0
- data/lib/cyberweb/images/standard_images/SQUARE_CADETBLUE.png +0 -0
- data/lib/cyberweb/images/standard_images/SQUARE_CHAOS.png +0 -0
- data/lib/cyberweb/images/standard_images/SQUARE_DARKGOLDENROD.png +0 -0
- data/lib/cyberweb/images/standard_images/SQUARE_GREEN.png +0 -0
- data/lib/cyberweb/images/standard_images/SQUARE_GREY.png +0 -0
- data/lib/cyberweb/images/standard_images/SQUARE_RED.png +0 -0
- data/lib/cyberweb/images/standard_images/SQUARE_VIOLET.png +0 -0
- data/lib/cyberweb/images/standard_images/SQUARE_WHITE.png +0 -0
- data/lib/cyberweb/images/standard_images/SQUARE_YEL.png +0 -0
- data/lib/cyberweb/images/standard_images/STANDARDS_FAVICON.png +0 -0
- data/lib/cyberweb/images/standard_images/STAR.png +0 -0
- data/lib/cyberweb/images/standard_images/STAR_FANCY.png +0 -0
- data/lib/cyberweb/images/standard_images/STATUS_IN_PROGRESS.png +0 -0
- data/lib/cyberweb/images/standard_images/STD_COLOURS.png +0 -0
- data/lib/cyberweb/images/standard_images/SUN.png +0 -0
- data/lib/cyberweb/images/standard_images/SYMBOL_FRAU.png +0 -0
- data/lib/cyberweb/images/standard_images/SYMBOL_MANN.png +0 -0
- data/lib/cyberweb/images/standard_images/SYNC.png +0 -0
- data/lib/cyberweb/images/standard_images/TASCHENLAMPE.jpg +0 -0
- data/lib/cyberweb/images/standard_images/TASTATUR.png +0 -0
- data/lib/cyberweb/images/standard_images/TECHNICOLOR_TWIRL.png +0 -0
- data/lib/cyberweb/images/standard_images/TELEFON.png +0 -0
- data/lib/cyberweb/images/standard_images/TEST.bmp +0 -0
- data/lib/cyberweb/images/standard_images/TEUFELCHEN.png +0 -0
- data/lib/cyberweb/images/standard_images/THERMOMETER.png +0 -0
- data/lib/cyberweb/images/standard_images/THINKING_HUMAN.png +0 -0
- data/lib/cyberweb/images/standard_images/TODO.jpg +0 -0
- data/lib/cyberweb/images/standard_images/TODO.png +0 -0
- data/lib/cyberweb/images/standard_images/TOOLS.png +0 -0
- data/lib/cyberweb/images/standard_images/TRANSPORT.png +0 -0
- data/lib/cyberweb/images/standard_images/TRIANGLE.png +0 -0
- data/lib/cyberweb/images/standard_images/TURM.png +0 -0
- data/lib/cyberweb/images/standard_images/UHR.png +0 -0
- data/lib/cyberweb/images/standard_images/UPLOAD2.png +0 -0
- data/lib/cyberweb/images/standard_images/USB_CONNECTION_DEVICE.png +0 -0
- data/lib/cyberweb/images/standard_images/VALID_CSS.jpg +0 -0
- data/lib/cyberweb/images/standard_images/VALID_HTML.jpg +0 -0
- data/lib/cyberweb/images/standard_images/VIDEOCAMERA.png +0 -0
- data/lib/cyberweb/images/standard_images/VOGEL.png +0 -0
- data/lib/cyberweb/images/standard_images/VS_TCPA.gif +0 -0
- data/lib/cyberweb/images/standard_images/WARNSCHILD.png +0 -0
- data/lib/cyberweb/images/standard_images/WEBSERVER.png +0 -0
- data/lib/cyberweb/images/standard_images/WECKER.jpg +0 -0
- data/lib/cyberweb/images/standard_images/WINGS.png +0 -0
- data/lib/cyberweb/images/standard_images/WORD.png +0 -0
- data/lib/cyberweb/images/standard_images/WURZEL_ZEICHEN.png +0 -0
- data/lib/cyberweb/images/standard_images/YIN_YANG.png +0 -0
- data/lib/cyberweb/images/standard_images/Yin__Yang.gif +0 -0
- data/lib/cyberweb/images/standard_images/ZAHNRAD.png +0 -0
- data/lib/cyberweb/images/standard_images/ZAUBERHUT.png +0 -0
- data/lib/cyberweb/images/standard_images/ZITRONE.png +0 -0
- data/lib/cyberweb/images/standard_images/ZURUECK.jpg +0 -0
- data/lib/cyberweb/images/standard_images/blue_gallery.png +0 -0
- data/lib/cyberweb/images/standard_images/chk_off.png +0 -0
- data/lib/cyberweb/images/standard_images/chk_on.png +0 -0
- data/lib/cyberweb/images/standard_images/outdated.png +0 -0
- data/lib/cyberweb/images/standard_images/rdo_off.png +0 -0
- data/lib/cyberweb/images/standard_images/rdo_on.png +0 -0
- data/lib/cyberweb/images/standard_images/sneaky_ninja_face.png +0 -0
- data/lib/cyberweb/images/standard_images/standard_images.html +31644 -0
- data/lib/cyberweb/images/standard_images/text_editor.png +0 -0
- data/lib/cyberweb/images/standard_images/windows_key.png +0 -0
- data/lib/cyberweb/javascript/javascript_clock.rb +55 -12
- data/lib/cyberweb/javascript_code/custom_functions.js +73 -23
- data/lib/cyberweb/javascript_code/html_colours.js +9 -9
- data/lib/cyberweb/javascript_code/jquery/{jquery-3.6.1.js → jquery-3.6.3.js} +96 -12
- data/lib/cyberweb/predefined_and_freeform_methods/predefined_methods.rb +0 -112
- data/lib/cyberweb/project/project.rb +7 -0
- data/lib/cyberweb/requires/require_the_cyberweb_project.rb +3 -1
- data/lib/cyberweb/toplevel_methods/css.rb +3 -0
- data/lib/cyberweb/toplevel_methods/html_tables.rb +58 -29
- data/lib/cyberweb/toplevel_methods/internal_hash.rb +11 -138
- data/lib/cyberweb/toplevel_methods/misc.rb +37 -4
- data/lib/cyberweb/toplevel_methods/path.rb +8 -8
- data/lib/cyberweb/toplevel_methods/registered_ids.rb +4 -1
- data/lib/cyberweb/toplevel_methods/video.rb +35 -35
- data/lib/cyberweb/utility_scripts/images_to_html/constants.rb +63 -0
- data/lib/cyberweb/utility_scripts/images_to_html/images_to_html.rb +149 -164
- data/lib/cyberweb/utility_scripts/images_to_html/misc.rb +119 -0
- data/lib/cyberweb/version/version.rb +2 -2
- data/lib/cyberweb/web_images/array_listing_all_project_images.rb +1 -1
- data/lib/cyberweb/web_images/map_symbol_to_image_location.rb +16 -5
- data/lib/cyberweb/web_object/cmd.rb +257 -0
- data/lib/cyberweb/web_object/display_output_and_report.rb +99 -0
- data/lib/cyberweb/web_object/html_tags.rb +106 -98
- data/lib/cyberweb/web_object/images.rb +53 -36
- data/lib/cyberweb/web_object/javascript_and_jquery.rb +165 -51
- data/lib/cyberweb/web_object/link.rb +207 -34
- data/lib/cyberweb/web_object/misc.rb +1401 -1074
- data/lib/cyberweb/web_object/reset.rb +12 -10
- data/lib/cyberweb/web_object/roebe.rb +113 -0
- data/lib/cyberweb/web_object/web_object.rb +9 -4
- data/lib/cyberweb/yaml/js_files_to_load.yml +11 -3
- data/lib/cyberweb/yaml/project_configuration.yml +1 -1
- data/test/complex_tests/all_tests_in_one_page.cgi +12 -6
- data/test/javascript/testing_different_javascript_functions_available_in_the_cyberweb_project.cgi +27 -0
- data/test/javascript/testing_snowflakes.cgi +2 -2
- data/test/simple_tests/testing_p_default_versus_p_default_le.cgi +31 -0
- metadata +379 -15
- data/lib/cyberweb/javascript_code/jquery/jquery-3.6.0.js +0 -10881
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 8f4d1e47564d6d150d4821177c8ebbef554c1f2121bfcc24e8c090505287fa6c
|
4
|
+
data.tar.gz: d94cfebaf634a15b7806bde3c2249e1d4e9ca292ca2ffdd30c15c4ae1d4648fe
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: c5e434a164462fa1dc82bfa8b5126465362b8bf6b612565bd0588f51a2862774f935b0f08fe5550ffda3dbc4d486eabe62f54853438aacce1d28a1847d803821
|
7
|
+
data.tar.gz: 2aab393fda028b2dcd29749aa4346967ef8a1c0e617862077c214b3c1ecfe40b7ed36d93da5811b77fca4125ac10b8955be46eaab1444a664db0b10f21acf2ee
|
data/README.md
CHANGED
@@ -2,7 +2,7 @@
|
|
2
2
|
[](https://www.ruby-lang.org/en/)
|
3
3
|
[](https://badge.fury.io/rb/cyberweb)
|
4
4
|
|
5
|
-
This gem was <b>last updated</b> on the <span style="color: darkblue; font-weight: bold">
|
5
|
+
This gem was <b>last updated</b> on the <span style="color: darkblue; font-weight: bold">19.03.2023</span> (dd.mm.yyyy notation), at <span style="color: steelblue; font-weight: bold">02:43:28</span> o'clock.
|
6
6
|
|
7
7
|
<img src="https://i.imgur.com/aC4YzSk.png" style="margin-left: 1.2em">
|
8
8
|
|
@@ -46,7 +46,7 @@ project was renamed several times as well - first to **web_foundation**,
|
|
46
46
|
then to **cybersprawl**, then to **Cyberweb**, then to **web_object** and
|
47
47
|
then back to **Cyberweb** again.
|
48
48
|
|
49
|
-
I think the name **Cyberweb** is the best choice
|
49
|
+
I think the name **Cyberweb** is the best choice among these alternatives.
|
50
50
|
While **web_object** is the more technically correct and accurate term, as
|
51
51
|
everything related to the www is handled via that object (or such objects),
|
52
52
|
I prefer the name **Cyberweb** in general for the whole project - it sounds
|
@@ -290,21 +290,44 @@ your use cases initially. In the long run I intend to remedy this
|
|
290
290
|
situation, but for the time being, you have to accept that some
|
291
291
|
parts of the cyberweb gem are not useful for you.
|
292
292
|
|
293
|
-
|
294
|
-
|
295
|
-
|
296
|
-
|
293
|
+
Note that the above is no longer true since as of <b>January 2023</b>.
|
294
|
+
I have decided, for several reasons, to simply distribute these
|
295
|
+
images as well. They are available under:
|
296
|
+
|
297
|
+
cyberweb/images/standard_images/
|
298
|
+
|
299
|
+
You can also view these images via a dedicated .html file, at:
|
300
|
+
|
301
|
+
cyberweb/images/standard_images/standard_images.html
|
302
|
+
|
303
|
+
Some of these images are fairly old and require adaptations/changes,
|
304
|
+
and adding these images has made the cyberweb gem significantly larger
|
305
|
+
as well, which is not great - but I think the drawbacks are outweighed
|
306
|
+
by the advantage that now every user of the cyberweb gem can use
|
307
|
+
these images as well, without me having to offer separate download
|
308
|
+
links. I collected these images over the last 20 years, and some are
|
309
|
+
probably outdated at this point in time, but again - some images may
|
310
|
+
still need to be tweaked, file sized decreased, simplified, and what
|
311
|
+
not. I will do so over the course of the coming months.
|
312
|
+
|
313
|
+
I decided to add this subsection to document some things, and provide
|
314
|
+
some help to new users, until eventually the situation improves so
|
315
|
+
that people can just install the gam and "it will work", as-is.
|
297
316
|
|
298
317
|
Without further ado, let's clarify some things here next.
|
299
318
|
|
300
|
-
The cyberweb gem needs access to a temporary directory.
|
319
|
+
The <b>cyberweb</b> gem needs access to a temporary directory.
|
301
320
|
|
302
321
|
On Linux this is typically <b>/tmp/</b>. The cyberweb gem may
|
303
322
|
create a subdirectory there, called cyberweb/, and then copy
|
304
323
|
some files into that subdirectory - in particular JavaScript
|
305
|
-
.js files.
|
324
|
+
.js files. (If you have difficulties here, consider adding
|
325
|
+
such a subdirectory there, with explicit permissions to
|
326
|
+
allow people to dump data into that directory - after all
|
327
|
+
that is the point of /tmp/ on linux.)
|
306
328
|
|
307
|
-
To query the base directory in use you can call
|
329
|
+
To <b>query the base directory in use</b> you can call the
|
330
|
+
following method:
|
308
331
|
|
309
332
|
Cyberweb.temp_directory?
|
310
333
|
|
@@ -2789,9 +2812,12 @@ This can be done like this:
|
|
2789
2812
|
transform: scale(1.3);
|
2790
2813
|
}
|
2791
2814
|
|
2792
|
-
The important part is the **transform: scale** specification.
|
2815
|
+
The important part is the **transform: scale** specification. You
|
2816
|
+
can specify here how large or small the image should be. For
|
2817
|
+
instance, to shrink an image, you could use
|
2818
|
+
the CSS rule <b>transform: scale(0.5);</b>.
|
2793
2819
|
|
2794
|
-
I typically put
|
2820
|
+
I typically put these rules into a special CSS class, such as:
|
2795
2821
|
|
2796
2822
|
.enlarge_this_image_on_hover:hover {
|
2797
2823
|
transform: scale(1.1);
|
@@ -3571,39 +3597,6 @@ This may look as the following image shows:
|
|
3571
3597
|
|
3572
3598
|
<img src="https://i.imgur.com/moDx2f1.png" style="margin-left: 2em">
|
3573
3599
|
|
3574
|
-
## cmd1, cmd2, cmd3
|
3575
|
-
|
3576
|
-
The three methods called **cmd1**, **cmd2**, **cmd3**, can be used to
|
3577
|
-
show commands that the user can input. The **1**, **2** or **3** part
|
3578
|
-
refers to the indent-level, so the number **3** means **3x the
|
3579
|
-
basic indent level**.
|
3580
|
-
|
3581
|
-
Note that **cmd** is an alias to **cmd1**.
|
3582
|
-
|
3583
|
-
In the last ten years or so, the code for this was stored under the
|
3584
|
-
module PredefinedMethods, but in December 2021 this was changed and
|
3585
|
-
became part of **internal_hash.rb**. The latter shall slowly replace
|
3586
|
-
all other toplevel-instance variables for the Cyberweb project.
|
3587
|
-
The net gain will be that the new code is easier to maintain.
|
3588
|
-
|
3589
|
-
What is the use case for cmd1 or cmd2 or cmd3?
|
3590
|
-
|
3591
|
-
See the following examples for this:
|
3592
|
-
|
3593
|
-
e 'Input these instructions:'
|
3594
|
-
br
|
3595
|
-
cmd1 'ls -la'
|
3596
|
-
cmd2 'cd /tmp'
|
3597
|
-
# and so forth
|
3598
|
-
|
3599
|
-
Note that you can also customize the toplevel CSS for cmd1, cmd2
|
3600
|
-
and cmd3. The following example shows how to add the steelblue
|
3601
|
-
colour to these:
|
3602
|
-
|
3603
|
-
append_to_cmd1 'steelblue'
|
3604
|
-
append_to_cmd2 'steelblue'
|
3605
|
-
append_to_cmd3 'steelblue'
|
3606
|
-
|
3607
3600
|
## Cyberweb::RouteHandlerModule
|
3608
3601
|
|
3609
3602
|
This module shall eventually replace sinatra for my own needs.
|
@@ -4068,6 +4061,21 @@ This would yield the following text (shown as image):
|
|
4068
4061
|
|
4069
4062
|
<img src="https://i.imgur.com/Ufs2IHl.png" style="margin-left:2em">
|
4070
4063
|
|
4064
|
+
And let's show another example:
|
4065
|
+
|
4066
|
+
generate_drop_shadow :deepskyblue,
|
4067
|
+
'6px 4px 8px',
|
4068
|
+
'drop_shadow_deepskyblue'
|
4069
|
+
div('drop_shadow_deepskyblue pad0px mar0px') {
|
4070
|
+
h2 dot(105, 'marr12px')+
|
4071
|
+
'Cats are adorable creatures.',
|
4072
|
+
'mart5px'
|
4073
|
+
}
|
4074
|
+
|
4075
|
+
This time no image, but you get the idea - if you want a
|
4076
|
+
fancy border, cyberweb may help automatically generate
|
4077
|
+
these.
|
4078
|
+
|
4071
4079
|
You can also use the internal CSS class called **shadow_div_without_restrictions**.
|
4072
4080
|
|
4073
4081
|
Give it a try on a div-element, such as via:
|
@@ -4339,6 +4347,38 @@ The following paragraph shows how you can use this:
|
|
4339
4347
|
Interestingly enough, if you do not specify a color for
|
4340
4348
|
the border via border-color then this will default to <b>black</b>.
|
4341
4349
|
|
4350
|
+
## The toplevel methods english() and german()
|
4351
|
+
|
4352
|
+
A couple of years ago these two toplevel methods were added. You may
|
4353
|
+
find some of my gems make use of these, when there is content that
|
4354
|
+
ought to be displayed on a website.
|
4355
|
+
|
4356
|
+
What do these two methods do, essentially?
|
4357
|
+
|
4358
|
+
They are mostly just a mnemonic reminder that the website that
|
4359
|
+
is shown to the user (visitor) is written in that particular
|
4360
|
+
language primarily. So, for most webpages, I prefer to use:
|
4361
|
+
|
4362
|
+
english() {
|
4363
|
+
}
|
4364
|
+
|
4365
|
+
Whereas for my local knowledge base I often tend to use german.
|
4366
|
+
|
4367
|
+
Sometimes I mix both languages in the same webpage, but I wanted
|
4368
|
+
to be able to selectively switch between languages too, as well
|
4369
|
+
as be able to indicate when content is in german rather than
|
4370
|
+
english. Thus, to satisfy these use cases, german() and
|
4371
|
+
english() are available.
|
4372
|
+
|
4373
|
+
An additional use case for these methods is that I can designate
|
4374
|
+
a specific title quickly - either manually, or by using something
|
4375
|
+
like:
|
4376
|
+
|
4377
|
+
german(:autotitle)
|
4378
|
+
|
4379
|
+
The symbol :autotitle here would mean that the cyberweb gem should
|
4380
|
+
try to infer the name of the page at hand based on its filename.
|
4381
|
+
|
4342
4382
|
## Cyberweb::HtmlTemplate
|
4343
4383
|
|
4344
4384
|
class **Cyberweb::HtmlTemplate** can be used to describe (and ultimately
|
@@ -4607,6 +4647,26 @@ so.
|
|
4607
4647
|
|
4608
4648
|
## JavaScript support in the cyberweb project
|
4609
4649
|
|
4650
|
+
The following subsection shows some of the javascript-related
|
4651
|
+
code and possibilities in regards to the cyberweb project.
|
4652
|
+
|
4653
|
+
### The method .dump_all_javascript() in Cyberweb::WebObject
|
4654
|
+
|
4655
|
+
If you want to embed all javascript as a String and just
|
4656
|
+
put that string into the webpage, you can use this method
|
4657
|
+
call:
|
4658
|
+
|
4659
|
+
dump_all_javascript
|
4660
|
+
|
4661
|
+
This is a bit hackish for now. The use case here was that
|
4662
|
+
a local .js file has to exist, in order for the browser
|
4663
|
+
to make use of it. For some reason this was not always
|
4664
|
+
the case on webservers I used - so, rather than invest
|
4665
|
+
more time to find the real problem, I simply added
|
4666
|
+
that method to be done with it and move it. That way
|
4667
|
+
I can still call custom javascript functions such
|
4668
|
+
as .toggle() and similar functions.
|
4669
|
+
|
4610
4670
|
### JavaScript for-in and for-of loops:
|
4611
4671
|
|
4612
4672
|
Just examples for each:
|
@@ -4779,6 +4839,11 @@ See the following file for a working example:
|
|
4779
4839
|
|
4780
4840
|
cyberweb/examples/advanced/simple_calculator.cgi
|
4781
4841
|
|
4842
|
+
It looks about this, by default (but remember you
|
4843
|
+
can customize it via CSS):
|
4844
|
+
|
4845
|
+
<img src="https://i.imgur.com/2LPIU49.png" style="margin: 1em">
|
4846
|
+
|
4782
4847
|
## Showing a fancy CSS keyboard
|
4783
4848
|
|
4784
4849
|
If you use Cyberweb::WebObject then a fancy CSS keyboard
|
@@ -4930,6 +4995,162 @@ the above could eventually be repurposed for other
|
|
4930
4995
|
users too, if they have a bunch of external links
|
4931
4996
|
they want to display on their homepage as well.
|
4932
4997
|
I'll think about this for a while.)
|
4998
|
+
|
4999
|
+
## cmd1, cmd2, cmd3, cmd4 and cmd5
|
5000
|
+
|
5001
|
+
The five methods called **cmd1**, **cmd2**, **cmd3**, **cmd4** and
|
5002
|
+
**cmd5** can be used to show commands that the user can input; or
|
5003
|
+
otherwise points at important content in a paragraph.
|
5004
|
+
|
5005
|
+
The **1**, **2** or **3** part refers to the indent-level, so
|
5006
|
+
the number **3** means **3x the basic indent level**.
|
5007
|
+
|
5008
|
+
The default indent is "mars2em", which is the class I use to
|
5009
|
+
denote:
|
5010
|
+
|
5011
|
+
margin-left: 2em;
|
5012
|
+
margin-right: 2em;
|
5013
|
+
|
5014
|
+
So that is the default padding I tend to use among my own
|
5015
|
+
web-related ruby code. But, fear not, this can be changed
|
5016
|
+
by the user at-will, for any given webpage - thus allowing
|
5017
|
+
users to customize this, if they want to.
|
5018
|
+
|
5019
|
+
Note that **cmd** is an alias to **cmd1**. **cmd** in turn
|
5020
|
+
originated from **command**, and historically I used this
|
5021
|
+
method to display linux-specific commands, to allow me to
|
5022
|
+
understand how to operate on a linux system effectively.
|
5023
|
+
|
5024
|
+
In the last ten years or so, the code for this was stored under the
|
5025
|
+
module <b>PredefinedMethods</b>, but in December 2021 this was changed
|
5026
|
+
and became part of **internal_hash.rb** instead. The latter shall
|
5027
|
+
slowly replace all other toplevel-instance variables for the
|
5028
|
+
Cyberweb project. The net gain will be that the new code is
|
5029
|
+
easier to maintain.
|
5030
|
+
|
5031
|
+
In <b>January 2023</b> the old :cmd entries were removed from
|
5032
|
+
internal_hash.rb and put into a new class, called
|
5033
|
+
Cyberweb::Cmd. This is the base class for Cyberweb::Cmd1,
|
5034
|
+
Cyberweb::Cmd2 and so forth. I believe this arrangement
|
5035
|
+
makes it easier to maintain the new code; the old code was
|
5036
|
+
also polished as it was ported into the new structure.
|
5037
|
+
|
5038
|
+
What is the use case for cmd1 or cmd2 or cmd3?
|
5039
|
+
|
5040
|
+
See the following example for this:
|
5041
|
+
|
5042
|
+
e 'Input these instructions:'
|
5043
|
+
br
|
5044
|
+
cmd1 'ls -la'
|
5045
|
+
cmd2 'cd /tmp'
|
5046
|
+
# and so forth
|
5047
|
+
|
5048
|
+
So here we output a small span-tag, "Input these instructions:",
|
5049
|
+
and then we simply show these commands to the user via indented
|
5050
|
+
level - cmd1 is first indentation level, cmd2 is the second
|
5051
|
+
one, meaning an indentation level of margin-left: 3em, and so
|
5052
|
+
forth.
|
5053
|
+
|
5054
|
+
Note that you can also customize the toplevel CSS for cmd1, cmd2,
|
5055
|
+
cmd3, cmd4 and cmd5. The following example shows how to add the
|
5056
|
+
<b>steelblue</b> colour to these entries:
|
5057
|
+
|
5058
|
+
append_to_cmd1 'steelblue'
|
5059
|
+
append_to_cmd2 'steelblue'
|
5060
|
+
append_to_cmd3 'steelblue'
|
5061
|
+
append_to_cmd4 'steelblue'
|
5062
|
+
append_to_cmd5 'steelblue'
|
5063
|
+
|
5064
|
+
However had, only do this when you really want to change the
|
5065
|
+
default CSS code there.
|
5066
|
+
|
5067
|
+
## Output generated by the cyberweb project, in particular by the web-object
|
5068
|
+
|
5069
|
+
This subsection was added in January 2023, because I had to rewrite
|
5070
|
+
some old functionality, to suit a new use case. This will be explained
|
5071
|
+
next.
|
5072
|
+
|
5073
|
+
Before 2023, the two methods that were in use by Cyberweb::WebObject
|
5074
|
+
were:
|
5075
|
+
|
5076
|
+
ee()
|
5077
|
+
|
5078
|
+
# and
|
5079
|
+
|
5080
|
+
e()
|
5081
|
+
|
5082
|
+
ee() was just an alias over print, in the sense that it would call
|
5083
|
+
the method .add() directly, without modifications. .add() will
|
5084
|
+
simply add the given input to the html-string variable of the
|
5085
|
+
WebObject. This is the string that contains the content of the
|
5086
|
+
webpage, e. g. all content of a .html page (or rather, its
|
5087
|
+
equivalent).
|
5088
|
+
|
5089
|
+
e() on the other hand is more important and it is used primarily
|
5090
|
+
to generate output. This method will yield a span-tag, and
|
5091
|
+
add a br-tag afterwards. This worked very well for my own use
|
5092
|
+
cases in the last 15 years or so.
|
5093
|
+
|
5094
|
+
However had, starting in 2020, I was putting more and more
|
5095
|
+
content into projects that cyberweb has to render and handle.
|
5096
|
+
In particular, one use case I found to increase in the last
|
5097
|
+
2 years (so from 2020 to 2022) was to use paragraphs such
|
5098
|
+
as this:
|
5099
|
+
|
5100
|
+
p_default {
|
5101
|
+
e 'Hello world!'
|
5102
|
+
}
|
5103
|
+
|
5104
|
+
This would generate the following HTML string:
|
5105
|
+
|
5106
|
+
<p class="default">
|
5107
|
+
<span>Hello world!</span>
|
5108
|
+
</p>
|
5109
|
+
|
5110
|
+
For short paragraphs this is ok, but for longer paragraphs
|
5111
|
+
things can become a bit messy. It is harder and harder to
|
5112
|
+
read the content, in particular when there is a lot of
|
5113
|
+
text. So, naturally, to help space things a bit, I would
|
5114
|
+
transition to use this instead:
|
5115
|
+
|
5116
|
+
le 'Hello world!'
|
5117
|
+
|
5118
|
+
This is exactly as:
|
5119
|
+
|
5120
|
+
e 'Hello world!'
|
5121
|
+
|
5122
|
+
but it is making use of a CSS class called "padl2em" (or
|
5123
|
+
"padlem"). This CSS class will have a padding on the left
|
5124
|
+
hand side, e. g. "padding-left: 2em".
|
5125
|
+
|
5126
|
+
However had, changing all e() calls to le() calls for
|
5127
|
+
every single paragraph is cumbersome, so I wanted to have
|
5128
|
+
an alternative to this.
|
5129
|
+
|
5130
|
+
Thus, in January 2023 I decided to re-arrange the code,
|
5131
|
+
and add a new padding-call.
|
5132
|
+
|
5133
|
+
So, the following variant will make use of e():
|
5134
|
+
|
5135
|
+
p_default {
|
5136
|
+
}
|
5137
|
+
|
5138
|
+
If you want to use le() instead (the variant for left-padding)
|
5139
|
+
then the following variant can be used:
|
5140
|
+
|
5141
|
+
p_default_le {
|
5142
|
+
}
|
5143
|
+
|
5144
|
+
At a later point in time this may be revisited. For now
|
5145
|
+
this has to suffice.
|
5146
|
+
|
5147
|
+
Note that I am currently (2023) contemplating change
|
5148
|
+
the behaviour of ebr(). ebr() was the old legacy
|
5149
|
+
function what e() does nowadays. My idea is that
|
5150
|
+
ebr() first calls e() and then br() (aka append
|
5151
|
+
a br-tag). I have not yet decided on this though -
|
5152
|
+
need to test it first.
|
5153
|
+
|
4933
5154
|
## Useful quotes when designing websites and web-apps
|
4934
5155
|
|
4935
5156
|
The following subsection collects a few <b>interesting statements</b> -
|
@@ -4938,88 +5159,87 @@ and software engineering in general. Do not take any of these
|
|
4938
5159
|
at face-value 1:1 but feel free to use any of them them as a
|
4939
5160
|
starting point for **gaining new insights**.
|
4940
5161
|
|
4941
|
-
|
5162
|
+
„Any <b>good-enough</b> decision that can be made right now is
|
4942
5163
|
still better than any 'perfect' decision that may come in
|
4943
|
-
way too late
|
5164
|
+
way too late.“
|
4944
5165
|
|
4945
|
-
|
5166
|
+
„When you are creating a website, the primary goal as a designer
|
4946
5167
|
should be to get rid of the question marks users have when
|
4947
|
-
visiting that site
|
5168
|
+
visiting that site.“
|
4948
5169
|
|
4949
|
-
|
5170
|
+
„The most important thing a designer can do is to understand
|
4950
5171
|
the basic principle of eliminating question marks that a user
|
4951
|
-
has when visiting a website. Keep things simple
|
5172
|
+
has when visiting a website. Keep things simple.“
|
4952
5173
|
|
4953
|
-
|
4954
|
-
least make it self-explanatory
|
5174
|
+
„If you can not make something self-evident, you should at the
|
5175
|
+
least make it self-explanatory.“
|
4955
5176
|
|
4956
|
-
|
4957
|
-
|
5177
|
+
„If a web page is going to be effective, it has to work most of
|
5178
|
+
its beautiful magic at a single glance.“
|
4958
5179
|
|
4959
|
-
|
5180
|
+
„The average visitor rarely spends much time reading all
|
4960
5181
|
content on a given web page, so focus on designing fewer
|
4961
5182
|
elements that can be easily navigated, without too much
|
4962
|
-
distracting clutter
|
5183
|
+
distracting clutter.“
|
4963
5184
|
|
4964
|
-
|
4965
|
-
|
4966
|
-
|
4967
|
-
curve."
|
5185
|
+
„If your design forces a visitor to incur a small learning curve,
|
5186
|
+
make sure that the added value from this design change leads to
|
5187
|
+
it being worth that additional learning curve.“
|
4968
5188
|
|
4969
|
-
|
5189
|
+
„Clarity trumps consistency.“
|
4970
5190
|
|
4971
|
-
|
5191
|
+
„Each webpage should have a clear visual hierarchy.“
|
4972
5192
|
|
4973
|
-
|
4974
|
-
should also be related visually
|
5193
|
+
„Components in a webpage that are related logically
|
5194
|
+
should also be related visually.“
|
4975
5195
|
|
4976
|
-
|
5196
|
+
„In order to make a website 'scan-friendly', make good use of
|
4977
5197
|
headings having a larger font size. The headings should
|
4978
|
-
indicate what a subsection is about
|
5198
|
+
indicate what a subsection is about.“
|
4979
5199
|
|
4980
|
-
|
5200
|
+
„When using a heading, make them visually somewhat closer
|
4981
5201
|
to the section they belong to, rather than equally spaced
|
4982
|
-
to the preceding paragraph
|
5202
|
+
to the preceding paragraph.“
|
4983
5203
|
|
4984
|
-
|
5204
|
+
„If you need the visitor to make a difficult choice, provide as
|
4985
5205
|
much guidance as necessary - but not more. Be succinct here
|
4986
5206
|
and provide only the smallest amount of information that
|
4987
|
-
will help the user
|
5207
|
+
will help the user.“
|
4988
5208
|
|
4989
|
-
|
5209
|
+
„Omit needless words. Vigorous writing is concise.“
|
4990
5210
|
|
4991
|
-
|
4992
|
-
close to it as possible
|
5211
|
+
„Try to make everything on a web-site self-explanatory or as
|
5212
|
+
close to it as possible.“
|
4993
5213
|
|
4994
|
-
|
5214
|
+
„Navigation should ideally remain clear, simple, and consistent.“
|
4995
5215
|
|
4996
|
-
|
5216
|
+
„It may be useful to consider using an identifier, such as a logo
|
4997
5217
|
or an image, for the website, and display this e. g. on the
|
4998
5218
|
upper left corner. This may help visitors identify where they
|
4999
5219
|
are, in particular if they tend to use several tabs in their
|
5000
|
-
browser
|
5220
|
+
browser.“
|
5001
5221
|
|
5002
|
-
|
5222
|
+
„If your website makes use of a menu-bar or navigation-bar,
|
5003
5223
|
consider highlighting the current location that the user
|
5004
|
-
has or uses on that website
|
5224
|
+
has or uses on that website.“
|
5005
5225
|
|
5006
|
-
|
5007
|
-
clear what the site is about
|
5226
|
+
„Ideally a website should convey the big picture, and make it
|
5227
|
+
clear what the site is about.“
|
5008
5228
|
|
5009
|
-
|
5229
|
+
„If possible consider to use visual identifiers on the
|
5010
5230
|
whole web-application at hand, to give visitors the
|
5011
5231
|
right idea about this being a cohesive and integrated
|
5012
|
-
unit
|
5232
|
+
unit.“
|
5013
5233
|
|
5014
|
-
|
5234
|
+
„Changing a website at a later time is not necessarily trivial.
|
5015
5235
|
Some percentage of users that have grown accustomed to a
|
5016
5236
|
layout will resist almost any kind of change, and even
|
5017
5237
|
apparently simple changes often turn out to have
|
5018
|
-
far-reaching effects
|
5238
|
+
far-reaching effects.“
|
5019
5239
|
|
5020
|
-
|
5240
|
+
„Focus ruthlessly on fixing the most serious problems first.“
|
5021
5241
|
|
5022
|
-
|
5242
|
+
„Make the best decision you can with the information you have.“
|
5023
5243
|
|
5024
5244
|
## Useful Links
|
5025
5245
|
|
data/cyberweb.gemspec
CHANGED
@@ -34,9 +34,6 @@ to different use cases when necessary.
|
|
34
34
|
2015. Nonetheless I still consider .cgi scripts to be
|
35
35
|
extremely SIMPLE to use.
|
36
36
|
|
37
|
-
If you need a framework that is more sophisticated then it is
|
38
|
-
recommended to look at sinatra and padrino instead.
|
39
|
-
|
40
37
|
For more information about the cyberweb project, please look at the
|
41
38
|
following link:
|
42
39
|
|