From af5b6a920c62133d919f36cc7326f01ea540b751 Mon Sep 17 00:00:00 2001 From: Daniel Quathamer Date: Sun, 19 Jul 2026 10:12:48 +0200 Subject: [PATCH] Layout-Bugs Assistent,Grafiken in Arbeit versteckt #14 --- src-modules/module/viz/conf/viz.xml | 107 ++- .../module/viz/masken/44630_felderinfo.unl | 2 +- .../module/viz/upgrade/viz_upgrade_man.sql | 4 + superx/style/sx_viz_muster.css | 196 +++++- superx/xml/viz_components.xsl | 4 +- superx/xml/viz_html_chart.xsl | 627 +++++++++--------- 6 files changed, 595 insertions(+), 345 deletions(-) diff --git a/src-modules/module/viz/conf/viz.xml b/src-modules/module/viz/conf/viz.xml index 3bd795a..340abf7 100644 --- a/src-modules/module/viz/conf/viz.xml +++ b/src-modules/module/viz/conf/viz.xml @@ -630,6 +630,55 @@ caption="Staaten (Geocodes)" releaseUnload="demo"> + + + @@ -918,21 +968,70 @@ parent="Visualisierungen">Abfragen zur Administration von Visualisierungen - - + + + + + + + + + + + + + @@ -1255,7 +1354,7 @@ detail_chart_uniquename varchar(255) - + diff --git a/src-modules/module/viz/masken/44630_felderinfo.unl b/src-modules/module/viz/masken/44630_felderinfo.unl index 51b28e2..9cb9fb4 100644 --- a/src-modules/module/viz/masken/44630_felderinfo.unl +++ b/src-modules/module/viz/masken/44630_felderinfo.unl @@ -13,7 +13,7 @@ order by tid DESC;^Eintrag^<> select tid,eintrag from semester where today( 44636^bis Fachsemester^1000^300^-1^200^100^1^integer^30^0^0^^ ^ ^ 44637^Dashboard^1000^300^-1^170^150^1^char^30^1^1^<> select uniquename,uniquename from viz_dashboard order by 2;^ ^ ^ 44645^tablestylesheet^150^0^0^100^100^1^char^255^1^1^<> select filename,caption from sx_stylesheets S, sx_mask_style M , macro_masken_bez B\ -where S.tid=M.stylesheet_id and M.maskeninfo_id =B.maskeninfo_id1 and B.maskeninfo_id2=44630 group by 1,2,ord order by ord^hidden^<> select filename,caption from sx_stylesheets S, sx_mask_style M , macro_masken_bez B\ +where S.tid=M.stylesheet_id and M.maskeninfo_id =B.maskeninfo_id1 and B.maskeninfo_id2=44630 group by 1,2,ord order by ord^ ^<> select filename,caption from sx_stylesheets S, sx_mask_style M , macro_masken_bez B\ where S.tid=M.stylesheet_id and M.maskeninfo_id =B.maskeninfo_id1 and B.maskeninfo_id2=44630 group by 1,2,ord order by ord limit 1^ 44647^Grafik^1000^300^-1^170^150^1^integer^30^0^1^<> select tid, caption from viz_chart order by 2;^hidden^ ^ 44649^Spaltenanzahl^5^350^-1^140^80^1^integer^255^0^1^<> SELECT 0,'Dynamisch' from xdummy \ diff --git a/src-modules/module/viz/upgrade/viz_upgrade_man.sql b/src-modules/module/viz/upgrade/viz_upgrade_man.sql index 8644558..2fd449e 100644 --- a/src-modules/module/viz/upgrade/viz_upgrade_man.sql +++ b/src-modules/module/viz/upgrade/viz_upgrade_man.sql @@ -47,3 +47,7 @@ alter table dim_studiengang add column ist_lehramt smallint default 0; +--obsolete Masken oder in Entwicklung: +update themenbaum set gueltig_bis=date_val('01.01.2000') where maskeninfo_id=44100; +update viz_chart set chart_active=0 +where uniquename in ('STUD_FAK_ABGRP_STG_SUNBURST','STUD_FAK_KURZ_PIE','STUD_FAK_KURZ_DONUT_JB'); diff --git a/superx/style/sx_viz_muster.css b/superx/style/sx_viz_muster.css index b26e68e..1bdde8e 100644 --- a/superx/style/sx_viz_muster.css +++ b/superx/style/sx_viz_muster.css @@ -1,3 +1,25 @@ +/*Hell-/Dunkel-Modus*/ /*20251210 eingefügt*/ +@media (prefers-color-scheme: dark) { + :root { color-scheme: dark; } + .label.is-small, strong {color: black !important; } + .table th { color: black !important; } + .table {--bulma-table-background-color: white !important; } + .table {--bulma-table-color: black !important; } + .table th { color: black !important; } + .box { background-color: white !important; } + .button { + border: thin solid hsl(0, 0%, 71%); /*hellgrau*/ + border-radius: 0.3em; } + .select:not(.is-multiple) { + background: white; + color: black; } + textarea.editform { + color: black; + background: white; + border: thin solid hsl(0, 0%, 71%); /*hellgrau*/ + border-radius: 0.3em; } +} + /*dateispezifische Basics*/ html, body { height: auto; @@ -15,13 +37,14 @@ html, body { .columns { display: flex; flex-wrap: wrap; } - -.card { /*für Cardposition, -style*/ - display: flex; - flex-flow: column; - margin-left: 0em; /*1.5em bei farbigem Hintergrund*/ - margin-top: 0em; /*-1.2em bei farbigem Hintergrund*/ - box-shadow: none; } + +/*!!!202605 deaktiviert: vgl. Zeile 373!!!*/ +/*.card { /*für Cardposition, -style*/ +/* display: flex; +/* flex-flow: column; +/* margin-left: 0em; /*1.5em bei farbigem Hintergrund*/ +/* margin-top: 0em; /*-1.2em bei farbigem Hintergrund*/ +/* box-shadow: none; } /*Buttonleiste, Legende*/ .legende { /*für Berichtslegende*/ @@ -29,16 +52,17 @@ html, body { padding: 0.4rem 0.4rem 0.4rem 0.4rem; } /*für Padding: ob re un li*/ /*Tabs, Selektionsfelder-Formular*/ -.label-container { /*für Responsibility der Eingabefelder*/ - display: flex; +/*!!!202605 deaktiviert: vgl. Zeile 385!!!*/ +/*.label-container { /*für Responsibility der Eingabefelder*/ +/* display: flex; justify-content: left; background: inherit; - min-width: 10.0em; } + min-width: 10.0em; }*/ .label { /*für Selektionsfeld-Bezeichner*/ font-family: sans-serif; font-weight: normal; - font-size: 2rem; + /*font-size: 2rem;*/ /* 202605 deakitviert*/ margin-left: 1.0em; margin-top: 0.4em; } @@ -52,30 +76,30 @@ html, body { .tabs { /*für Tab-Namen*/ font-size: 2rem; } -.grid { /*20250917 eingefügt*/ +.grid { /*20250917 eingefügt*/ display: flex; - flex-wrap: wrap; } /*erlaubt Umbruch'*/ + flex-wrap: wrap; } /*erlaubt Umbruch'*/ /*20251007 eingefügt*/ .fullwidth-grid { - width: 100vw; /* gesamte Viewport-Breite */ + width: 100vw; /* gesamte Viewport-Breite */ padding-right: 2em; } -.dashboard-tabs { /*20250917 eingefügt*/ +.dashboard-tabs { /*20250917 eingefügt*/ display: flex; - flex-wrap: wrap; /* erlaubt Umbruch */ + flex-wrap: wrap; /* erlaubt Umbruch */ list-style: none; margin: 1rem; padding: 0; cursor: pointer; } -.dashboard-tabs li { /*20250917 eingefügt*/ - flex: 1 1 auto; /* alle Tabs gleich breit, aber flexibel */ +.dashboard-tabs li { /*20250917 eingefügt*/ + flex: 1 1 auto; /* alle Tabs gleich breit, aber flexibel */ text-align: center; border: 1px solid #ccc; background: #f9f9f9; } -.dashboard-tabs li a { /*20250917 eingefügt*/ +.dashboard-tabs li a { /*20250917 eingefügt*/ display: block; text-decoration: none; font-weight: bold; @@ -166,7 +190,7 @@ html, body { .navbar-item img, .navbar-item svg { /*20250221 eingefügt*/ max-height: unset !important; } /*var(--bulma-navbar-item-img-max-height);*/ -/*Media-queries**/ +/*** Media-queries ***/ @media print{ .dontprint {display:none;} } @@ -216,7 +240,8 @@ html, body { .grid { padding-top: 1.5rem; } } -.buttons-container { /* 300425BF eingefügt*/ +/* Button-Style und -Color*/ +.buttons-container { /* 300425 eingefügt*/ display: flex; justify-content: flex-end; /* rechts ausrichten */ align-items: center; /* vertikal zentrieren */ @@ -225,52 +250,71 @@ html, body { } .button.is-link { - background-color: white; /*link-Blau:#3273dc; UDE-Blau:#004C93*/ + background-color: white; /*link-Blau:#3273dc; UDE-Blau:#004C93*/ border-color: transparent; color: #004C93; } + .button.is-link:hover, .button.is-link.is-hovered { background-color: #276cda; border-color: transparent; color: #004C93; } + .button.is-link:focus, .button.is-link.is-focused { border-color: transparent; color: #004C93; } .button.is-link:focus:not(:active), .button.is-link.is-focused:not(:active) { box-shadow: 0 0 0 0.125em rgba(50, 115, 220, 0.25); } + .button.is-link:active, .button.is-link.is-active { background-color: white; border-color: transparent; color: #004C93; } + .button.is-link[disabled], fieldset[disabled] .button.is-link { background-color: #004C93; border-color: transparent; box-shadow: none; } + .button.is-link.is-inverted { background-color: #fff; color: #004C93; } + .button.is-link.is-inverted:hover, .button.is-link.is-inverted.is-hovered { background-color: #f2f2f2; } + .button.is-link.is-inverted[disabled], fieldset[disabled] .button.is-link.is-inverted { background-color: #fff; border-color: transparent; box-shadow: none; color: #004C93; } + .button.is-link.is-loading::after { border-color: transparent transparent #fff #fff !important; } + .button.is-link.is-outlined { background-color: white; border-color: #004C93; color: #004C93; } -.button.is-link.is-outlined:hover, .button.is-link.is-outlined.is-hovered, .button.is-link.is-outlined:focus, .button.is-link.is-outlined.is-focused { + +.button.is-link.is-outlined:hover, +.button.is-link.is-outlined.is-hovered, +.button.is-link.is-outlined:focus, +.button.is-link.is-outlined.is-focused { background-color: #004C93; border-color: #004C93; color: #fff; } + .button.is-link.is-outlined.is-loading::after { border-color: transparent transparent #004C93; #004C93; !important; } -.button.is-link.is-outlined.is-loading:hover::after, .button.is-link.is-outlined.is-loading.is-hovered::after, .button.is-link.is-outlined.is-loading:focus::after, .button.is-link.is-outlined.is-loading.is-focused::after { + +.button.is-link.is-outlined.is-loading:hover::after, +.button.is-link.is-outlined.is-loading.is-hovered::after, +.button.is-link.is-outlined.is-loading:focus::after, +.button.is-link.is-outlined.is-loading.is-focused::after { border-color: transparent transparent #fff #fff !important; } + .button.is-link.is-outlined[disabled], fieldset[disabled] .button.is-link.is-outlined { background-color: transparent; @@ -281,21 +325,25 @@ html, body { background-color: transparent; border-color: #fff; color: #fff; } + .button.is-link.is-inverted.is-outlined:hover, .button.is-link.is-inverted.is-outlined.is-hovered, .button.is-link.is-inverted.is-outlined:focus, .button.is-link.is-inverted.is-outlined.is-focused { background-color: #fff; color: #004C93; } + .button.is-link.is-inverted.is-outlined.is-loading:hover::after, .button.is-link.is-inverted.is-outlined.is-loading.is-hovered::after, -.button.is-link.is-inverted.is-outlined.is-loading:focus::after, .button.is-link.is-inverted.is-outlined.is-loading.is-focused::after { +.button.is-link.is-inverted.is-outlined.is-loading:focus::after, +.button.is-link.is-inverted.is-outlined.is-loading.is-focused::after { border-color: transparent transparent #004C93; #004C93; !important; } .button.is-link.is-inverted.is-outlined { background-color: transparent; border-color: #fff; color: #fff; } + .button.is-link.is-inverted.is-outlined:hover, .button.is-link.is-inverted.is-outlined.is-hovered, .button.is-link.is-inverted.is-outlined:focus, @@ -305,6 +353,7 @@ html, body { .button.is-small.is-rounded.is-link.has-tooltip-bottom { background-color: #004C93; /*UDE-Blau*/ } /*20250711 eingefügt*/ +/*Buttonleiste*/ .exportoptions { margin-top: 2.0em; } @@ -336,9 +385,10 @@ html, body { .label-container, .button-label { /*für einh.responsive Feldbezeichner*/ display: flex; justify-content: left; - background: ; + background:inherit; min-width: 10.0em; /*für kleine Viewports*/ - width: 10%; } /*für kleine Viewports*/ + width: 12%; /*202605 geändert v ursprgl. 10%*/ + } .control-new { /*für einheitliche Controls*/ min-width: 10.0em; /*für kleine Viewports*/ @@ -347,7 +397,9 @@ html, body { .button { /*für Button-Bezeichner-Ausrichtung*/ display: flex; - justify-content: left; } + justify-content: left; + /*font-size:2em;*/ /*202605 deaktiviert*/ +} /*Erläuterungen/Legende*/ .box-new { /*für Kopfzeile mit Close-Button*/ @@ -368,7 +420,36 @@ html, body { font-size: 1.2em; font-weight: 400; } - /*Datentabellen*/ + +/*tooltips*/ +.button.has-tooltip-bottom, .button.has-tooltip-right { + height: 2.5em; /* entspricht der Höhe des Eingabeldes*/ +} + +[data-tooltip]:not(.is-disabled).has-tooltip-bottom::before, +[data-tooltip]:not(.is-loading).has-tooltip-bottom::before, +[data-tooltip]:not([disabled]).has-tooltip-bottom::before, +[data-tooltip]:not(.is-disabled).has-tooltip-right::before, +[data-tooltip]:not(.is-loading).has-tooltip-right::before, +[data-tooltip]:not([disabled]).has-tooltip-right::before { + display: flex; + margin: 0.5em; + position: absolute; + z-index: 1000; + padding: 1em; + background-color: #333; /*dklgrau*/ + color: white; + border-radius: 0.3em; + white-space: wrap; + text-align: left; + width: 250px; + height: fit-content; + white-space: wrap; /* für Zeilenumbrüche nach Standard-Regeln*/ + overflow-wrap: break-word; /* aktuell: für Umbrüche nach Standard-Regeln*/ + hyphens: auto; +} + +/*Datentabellen*/ .table-container { z-index: 10; /*positioniert sich im flow hinter dem hs_header*/ } @@ -430,7 +511,7 @@ html, body { vertical-align:center; } - .fixed-right-buttons { +.fixed-right-buttons { position: fixed; right: 0.1%; /* Abstand vom rechten Bildschirmrand */ top: 50%; /* Zentriert den Button-Block vertikal;*/ @@ -466,20 +547,19 @@ html, body { z-index: 700; /*für Anzeige über Content*/ } - .subheaderMaskDialogs +.subheaderMaskDialogs {background-color:#cccccc; font-weight:bolder; -font-size:1.2rem; +font-size:2rem; /* margin-left:0;*/ margin-top:0.2em; margin-bottom:0.2em; margin-right:0px; padding-left:0.5em; } -.viz_content -{ - margin-left:1em; -} + +.viz_content { margin-left:1em; } + //Für sidebar: .card-content { @@ -514,3 +594,47 @@ input.sideBarInput background-color: #a6a6a6ff; /*#333;*/ color: white; } + +/*****************styleanweisungen aus html-Datei*/ +textarea.editform { + height: 4em; + width: 100%; + padding: 3px; + transition: all 0.5s ease; +} + +textarea.editform:focus { + height: 40em; +} + +.textarea, .is-small.textarea { /*20251210 eingefügt*/ + color: black; + background: white; + border: thin solid hsl(0, 0%, 71%); /*hellgrau*/ + border-radius: 0.3em; +} + +.field.is-grouped { /*20251210 eingefügt*/ + gap: 0.2rem; } + + +.node rect { + cursor: move; + fill-opacity: .9; + shape-rendering: crispEdges; +} + +.node text { + pointer-events: none; + text-shadow: 0 1px 0 #fff; +} + +.link { + fill: none; + stroke: #000; + stroke-opacity: .2; +} + +.link:hover { + stroke-opacity: .5; +} diff --git a/superx/xml/viz_components.xsl b/superx/xml/viz_components.xsl index d7d9f5a..3fefa44 100644 --- a/superx/xml/viz_components.xsl +++ b/superx/xml/viz_components.xsl @@ -1927,10 +1927,10 @@ Platzhalter

- + diff --git a/superx/xml/viz_html_chart.xsl b/superx/xml/viz_html_chart.xsl index 83fa8d2..eb23734 100644 --- a/superx/xml/viz_html_chart.xsl +++ b/superx/xml/viz_html_chart.xsl @@ -204,8 +204,9 @@ xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:HtmlUtils="de.superx.util - - + + + @@ -221,10 +222,10 @@ xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:HtmlUtils="de.superx.util
-
- - -
+ + + +     @@ -317,56 +318,55 @@ xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:HtmlUtils="de.superx.util --> - + + -
-
-
- +
+
- -
+
- +
-
-

-

- + + -
-

- - -

-

- - -

- -
-
+ + +
+
+ + +
+ +   + + + + + +