Browse Source

Eigene CSS Klassen für Grafiken, HTML-Header #15

master
Daniel Quathamer 4 days ago
parent
commit
a0fb578fca
  1. 35
      src-modules/module/viz/conf/viz.xml
  2. 1
      src-modules/module/viz/masken/44310_felderinfo.unl
  3. 1
      src-modules/module/viz/masken/44570_felderinfo.unl
  4. 21
      src-modules/module/viz/masken/44630_maskeninfo.unl
  5. 14
      src-modules/module/viz/schluesseltabellen/customxmladd.sql
  6. 17
      src-modules/module/viz/schluesseltabellen/macro_masken_bez_fuellen.sql
  7. 2
      src-modules/module/viz/schluesseltabellen/rpta_column_layout_sos_stud_zeitreihe_jahr_dashboard_fuellen.sql
  8. 399
      src-modules/module/viz/schluesseltabellen/viz_chart.unl
  9. 18
      src-modules/module/viz/schluesseltabellen/viz_chart_fuellen.sql
  10. 9
      src-modules/module/viz/schluesseltabellen/viz_chart_unload.x
  11. 16
      src-modules/module/viz/schluesseltabellen/viz_chart_upload.x
  12. 13
      src-modules/module/viz/upgrade/viz_upgrade_man.sql
  13. 38
      superx/style/sx_viz_muster.css
  14. 10
      superx/xml/js/viz/viz_viewer.js
  15. 242
      superx/xml/viz_components.xsl
  16. 5
      superx/xml/viz_html_chart_viewer.xsl

35
src-modules/module/viz/conf/viz.xml

@ -130,16 +130,22 @@ rightname="CS_BIA_STANDARDREPORTS_ADMIN[VIZ]" /> @@ -130,16 +130,22 @@ rightname="CS_BIA_STANDARDREPORTS_ADMIN[VIZ]" />
<column name="chart_position" type="CHAR" size="10" default="" notnull="" description="Position des Diagramms"><comment>CENTER,TOP,BOTTOM,LEFT,RIGHT,INLINE</comment></column>
<column name="chart_active" type="SMALLINT" size="2"
default="1" notnull="false" description="Grafik aktiv"></column>
<column name="chart_width" type="INTEGER" size="10" default="600" notnull="" description="Breite des Diagramms"><comment>in px</comment></column>
<column name="chart_height" type="INTEGER" size="10" default="400" notnull="" description="Höhe des Diagramms"><comment>in px</comment></column>
<column name="chart_miniature_width" type="INTEGER" size="10" default="200" notnull="" description="Breite der Diagramm-Miniatur"><comment>in px</comment></column>
<column name="chart_miniature_height" type="INTEGER" size="10" default="100" notnull="" description="Höhe der Diagramm-Miniatur"><comment>in px</comment></column>
<column name="chart_width" type="VARCHAR" size="255" default="600" notnull="" description="Breite des Diagramms"><comment>Wenn keine Einheit angegeben ist, ni in px</comment></column>
<column name="chart_height" type="VARCHAR" size="255" default="400" notnull="" description="Höhe des Diagramms"><comment>Default in px</comment></column>
<column name="chart_miniature_width" type="VARCHAR" size="255" default="200" notnull="" description="Breite der Diagramm-Miniatur"><comment>in px</comment></column>
<column name="chart_miniature_height" type="VARCHAR" size="255" default="100" notnull="" description="Höhe der Diagramm-Miniatur"><comment>in px</comment></column>
<column name="is_custom" type="SMALLINT" size="255"
default="1" notnull="false" description="Grafik der Hochschule">
<comment>1=ja, d.h. von der Hochschule angepaßt, 0=nein, d.h.
Auslieferung der Software</comment>
</column>
<column name="js_handler" type="VARCHAR" size="255" default="" notnull="" description="JS-Handler" ><comment>JS-Datei für optionale Methode zum Aufruf</comment></column>
<column name="chart_card_class" type="VARCHAR" size="255" default="" notnull="" description="CSS-Klasse der Kachel" ></column>
<column name="chart_container_class" type="VARCHAR" size="255" default="" notnull="" description="CSS-Klasse des Kachelinhalts" ></column>
<column name="chart_container_id" type="VARCHAR" size="255" default="" notnull="" description="HTML-Element-ID des Kachelinhalts" ><comment>für Javascript Interaktion</comment></column>
<column name="chart_class_name" type="VARCHAR" size="255" default="" notnull="" description="CSS-Klasse der Grafik" ><comment>für Größenangaben</comment></column>
<column name="chart_element_id" type="VARCHAR" size="255" default="" notnull="" description="HTML-Element-ID der Grafik" ><comment>für Javascript Interaktion</comment></column>
<column name="chart_title_position" type="VARCHAR" size="255" default="" notnull="" description="Position des Grafiktitels" ><comment>top,bottom,inline (also im Chart-Code selbst definiert)</comment></column>
</columns>
<primaryKeys><rs>
<row>
@ -1039,6 +1045,9 @@ booklet_stylesheet VARCHAR(255) @@ -1039,6 +1045,9 @@ booklet_stylesheet VARCHAR(255)
<nativeaction sql="" scriptfile="$VIZ_PFAD/schluesseltabellen/rpta_column_layout_sos_stud_abgrp_dashboard_fuellen.sql" database=""/>
<nativeaction sql="" scriptfile="$VIZ_PFAD/schluesseltabellen/rpta_column_layout_sos_stud_la_fuellen.sql" database=""/>
<nativeaction sql="" scriptfile="$VIZ_PFAD/schluesseltabellen/rpta_column_layout_sos_stud_bildungstyp_fuellen.sql" database=""/>
<nativeaction sql="" scriptfile="$VIZ_PFAD/schluesseltabellen/rpta_column_layout_rpta_sos_lab_aggr_jahr_fuellen.sql" database=""/>
<nativeaction sql="" scriptfile="$VIZ_PFAD/schluesseltabellen/rpta_column_layout_rpta_sos_lab_aggr_in_rsz_jahr_fuellen.sql" database=""/>
<nativeaction sql="" scriptfile="$VIZ_PFAD/schluesseltabellen/rpta_column_layout_rpta_sos_lab_aggr_abgrp_jahr_fuellen.sql" database=""/>
</action>
@ -1140,10 +1149,10 @@ renderer_id INTEGER , @@ -1140,10 +1149,10 @@ renderer_id INTEGER ,
chartmodel_miniature TEXT ,
chart_position CHAR(10) ,
chart_active SMALLINT default 1 ,
chart_width INTEGER default 600 ,
chart_height INTEGER default 400 ,
chart_miniature_width INTEGER default 200 ,
chart_miniature_height INTEGER default 100 ,
chart_width varchar(255) default '600' ,
chart_height varchar(255) default '400' ,
chart_miniature_width varchar(255) default '200' ,
chart_miniature_height varchar(255) default '100' ,
is_custom SMALLINT,
js_handler varchar(255)
@ -1251,6 +1260,9 @@ booklet_stylesheet VARCHAR(255) @@ -1251,6 +1260,9 @@ booklet_stylesheet VARCHAR(255)
<nativeaction sql="" scriptfile="$VIZ_PFAD/schluesseltabellen/rpta_column_layout_sos_stud_la_fuellen.sql" database=""/>
<nativeaction sql="" scriptfile="$VIZ_PFAD/schluesseltabellen/rpta_column_layout_sos_stud_bildungstyp_fuellen.sql" database=""/>
<nativeaction sql="" scriptfile="$VIZ_PFAD/schluesseltabellen/rpta_column_layout_rpta_sos_lab_aggr_jahr_fuellen.sql" database=""/>
<nativeaction sql="" scriptfile="$VIZ_PFAD/schluesseltabellen/rpta_column_layout_rpta_sos_lab_aggr_in_rsz_jahr_fuellen.sql" database=""/>
<nativeaction sql="" scriptfile="$VIZ_PFAD/schluesseltabellen/rpta_column_layout_rpta_sos_lab_aggr_abgrp_jahr_fuellen.sql" database=""/>
</action>
<action>
@ -1326,6 +1338,13 @@ mode="full"> @@ -1326,6 +1338,13 @@ mode="full">
<customfield name="chart_miniature_width" visibleSize="10" nullFieldValue="" />
<customfield name="chart_miniature_height" visibleSize="10" nullFieldValue="" />
<customfield name="js_handler" visibleSize="50" nullFieldValue="" />
<customfield name="chart_card_class" visibleSize="50" nullFieldValue="" />
<customfield name="chart_container_class" visibleSize="50" nullFieldValue="" />
<customfield name="chart_container_id" visibleSize="50" nullFieldValue="" />
<customfield name="chart_class_name" visibleSize="50" nullFieldValue="" />
<customfield name="chart_element_id" visibleSize="50" nullFieldValue="" />
<customfield name="chart_title_position" visibleSize="10" nullFieldValue="" />
<customfield name="chart_active" nullFieldValue="" visibleSize="30" />
<customfield name="is_custom" nullFieldValue="" visibleSize="30" />

1
src-modules/module/viz/masken/44310_felderinfo.unl

@ -3,7 +3,6 @@ @@ -3,7 +3,6 @@
FROM rpta_column_layout \
where resultset_id in (select R.tid from rpta_resultset R where R.uniquename in ('sos_stud_astat_dashboard')\
and R.systeminfo_id=7)\
and uniquename in ('sos_stud_abgrp_dashboard','sos_stud_la_dashboard')\
order by sortnr, caption\
;^^<<SQL>>SELECT uniquename,\
caption\

1
src-modules/module/viz/masken/44570_felderinfo.unl

@ -31,7 +31,6 @@ order by tid DESC;^Eintrag^<<SQL>> select tid,eintrag from semester where today( @@ -31,7 +31,6 @@ order by tid DESC;^Eintrag^<<SQL>> select tid,eintrag from semester where today(
FROM rpta_column_layout \
where resultset_id in (select R.tid from rpta_resultset R where R.uniquename='sos_stud_astat_dashboard'\
and R.systeminfo_id=7)\
and uniquename like 'sos_stud_sem%'\
order by sortnr, caption\
;^^<<SQL>>SELECT uniquename,\
caption\

21
src-modules/module/viz/masken/44630_maskeninfo.unl

@ -95,6 +95,7 @@ from xdummy;\ @@ -95,6 +95,7 @@ from xdummy;\
<#foreach kennzahl in dashboard_tabs>\
<#assign ord=ord+1 />\
\
\
insert into tmp_erg(\
ord,\
kennz,\
@ -104,7 +105,9 @@ hidden_optional_filter_name,\ @@ -104,7 +105,9 @@ hidden_optional_filter_name,\
hidden_optional_filter_value,\
hidden_booklet_stylesheet\
)\
select ${ord},'${kennzahl.name}',\
<#if kennzahl.select_clause?exists && kennzahl.select_clause?string !="" >\
select ${ord},\
'${kennzahl.name}' as kennz,\
${kennzahl.select_clause},\
<#if kennzahl.maskeninfo_id?exists && kennzahl.maskeninfo_id?string !="" >\
${kennzahl.maskeninfo_id},\
@ -120,6 +123,22 @@ and 's_' || tid_stg in <@printkeys Studiengang.allNeededKeysList/>\ @@ -120,6 +123,22 @@ and 's_' || tid_stg in <@printkeys Studiengang.allNeededKeysList/>\
and ${kennzahl.where_clause}\
group by 1,2;\
\
<#else>\
--keine select-clause, somit auch kein Summenwert in der header-Zeile:\
select ${ord},\
'${kennzahl.name}' as kennz,\
null::integer as wert,\
<#if kennzahl.maskeninfo_id?exists && kennzahl.maskeninfo_id?string !="" >\
${kennzahl.maskeninfo_id},\
<#else>\
null::integer,\
</#if>\
'${kennzahl.optional_filter_name}',\
'${kennzahl.optional_filter_value}',\
'${kennzahl.booklet_stylesheet}'\
from xdummy\
;\
</#if>\
</#foreach>\
\
select ord,\

14
src-modules/module/viz/schluesseltabellen/customxmladd.sql

@ -129,7 +129,13 @@ V.chart_height, @@ -129,7 +129,13 @@ V.chart_height,
V.chart_miniature_width,
V.chart_miniature_height,
V.maskeninfo_id,
V.js_handler
V.js_handler,
V.chart_card_class,
V.chart_container_class,
V.chart_container_id,
V.chart_class_name,
V.chart_element_id,
V.chart_title_position
FROM viz_chart V, viz_renderer R
where R.tid=V.renderer_id
and chart_active=1
@ -314,6 +320,12 @@ order by 2,5,3 @@ -314,6 +320,12 @@ order by 2,5,3
chart_miniature_height="${ch.chart_height}"
maskeninfo_id="${ch.maskeninfo_id}"
js_handler="${ch.js_handler}"
chart_card_class="${ch.chart_card_class}"
chart_container_class="${ch.chart_container_class}"
chart_container_id="${ch.chart_container_id}"
chart_class_name="${ch.chart_class_name}"
chart_element_id="${ch.chart_element_id}"
chart_title_position="${ch.chart_title_position}"
/>
</#foreach>
</#if>

17
src-modules/module/viz/schluesseltabellen/macro_masken_bez_fuellen.sql

@ -1,4 +1,18 @@ @@ -1,4 +1,18 @@
--freemarker template
<sqlvars>
<sqlvar name="sos_stud_stichtag_tagesaktuell">
select tid from sos_stichtag where appl_key='0';
</sqlvar>
<sqlvar name="sos_stud_stichtag_amtlich">
select tid from sos_stichtag where appl_key='1';
</sqlvar>
<sqlvar name="sos_pruef_stichtag_tagesaktuell">
select tid from sos_stichtag where appl_key='2';
</sqlvar>
<sqlvar name="sos_pruef_stichtag_amtlich">
select tid from sos_stichtag where appl_key='4';
</sqlvar>
</sqlvars>
<#assign makros = [
{"tid":"44070"},
@ -175,11 +189,13 @@ @@ -175,11 +189,13 @@
{"makro":"44690", "sortnr":"10", "feldname":"Köpfe oder Fälle ?", "value":"studiengang_nr = 1 and fach_nr = 1"},
{"makro":"44690", "sortnr":"10", "feldname":"Spaltenlayout", "value":"sos_stud_sem_dashboard"},
{"makro":"44690", "sortnr":"10", "feldname":"Stichtag", "value":sos_stud_stichtag_tagesaktuell},
{"makro":"44690", "sortnr":"10", "feldname":"Grafik", "value":"STUD_SEM_LINE"},
{"makro":"44690", "sortnr":"10", "feldname":"tablestylesheet", "value":"tabelle_html_datenblatt.xsl"},
{"makro":"44690", "sortnr":"20", "feldname":"Köpfe oder Fälle ?", "value":"studiengang_nr = 1 and fach_nr = 1"},
{"makro":"44690", "sortnr":"20", "feldname":"Spaltenlayout", "value":"sos_stud_sem_dashboard"},
{"makro":"44690", "sortnr":"20", "feldname":"Stichtag", "value":sos_stud_stichtag_tagesaktuell},
{"makro":"44690", "sortnr":"20", "feldname":"Grafik", "value":"STUD_SEM_LINE"},
{"makro":"44690", "sortnr":"20", "feldname":"Grafiktitel", "value":"Studienanfänger*innen 1.HS"},
{"makro":"44690", "sortnr":"20", "feldname":"Filter Studierende", "value":"SOS_HSSEM_1"},
@ -187,6 +203,7 @@ @@ -187,6 +203,7 @@
{"makro":"44690", "sortnr":"30", "feldname":"Köpfe oder Fälle ?", "value":"studiengang_nr = 1 and fach_nr = 1"},
{"makro":"44690", "sortnr":"30", "feldname":"Spaltenlayout", "value":"sos_stud_sem_dashboard"},
{"makro":"44690", "sortnr":"30", "feldname":"Stichtag", "value":sos_stud_stichtag_tagesaktuell},
{"makro":"44690", "sortnr":"30", "feldname":"Grafik", "value":"STUD_SEM_LINE"},
{"makro":"44690", "sortnr":"30", "feldname":"Grafiktitel", "value":"Studienanfänger*innen 1.FS"},
{"makro":"44690", "sortnr":"30", "feldname":"bis Fachsemester", "value":"1"},

2
src-modules/module/viz/schluesseltabellen/rpta_column_layout_sos_stud_zeitreihe_jahr_dashboard_fuellen.sql

@ -22,7 +22,7 @@ select count(*) from systeminfo where tid=330; @@ -22,7 +22,7 @@ select count(*) from systeminfo where tid=330;
"column_type":"logicalColumn",
"col_function":"get_akad_jahr(sem_rueck_beur_ein,''A'')",
"is_visible":"1",
"format_code":"",
"format_code":"INT_NO_SEP",
"visible_size":"5",
"is_aggregate":"0",
"description":"(WS + darauffolgendes SS)"

399
src-modules/module/viz/schluesseltabellen/viz_chart.unl

File diff suppressed because one or more lines are too long

18
src-modules/module/viz/schluesseltabellen/viz_chart_fuellen.sql

@ -70,7 +70,14 @@ uniquename, @@ -70,7 +70,14 @@ uniquename,
chart_height,
chart_miniature_width,
chart_miniature_height,
is_custom)
is_custom,
js_handler,
chart_card_class,
chart_container_class,
chart_container_id,
chart_class_name,
chart_element_id,
chart_title_position)
select
uniquename,
@ -91,7 +98,14 @@ uniquename, @@ -91,7 +98,14 @@ uniquename,
chart_height,
chart_miniature_width,
chart_miniature_height,
is_custom
is_custom,
js_handler,
chart_card_class,
chart_container_class,
chart_container_id,
chart_class_name,
chart_element_id,
chart_title_position
FROM tmp_viz_chart
where is_custom=0;

9
src-modules/module/viz/schluesseltabellen/viz_chart_unload.x

@ -21,6 +21,13 @@ DOQUERY "select tid, @@ -21,6 +21,13 @@ DOQUERY "select tid,
chart_miniature_width,
chart_miniature_height,
is_custom,
js_handler from viz_chart where is_custom=0 order by uniquename" false ^ viz_chart.unl txt
js_handler ,
chart_card_class,
chart_container_class,
chart_container_id,
chart_class_name,
chart_element_id,
chart_title_position
from viz_chart where is_custom=0 order by uniquename" false ^ viz_chart.unl txt

16
src-modules/module/viz/schluesseltabellen/viz_chart_upload.x

@ -18,12 +18,18 @@ renderer_id INTEGER , @@ -18,12 +18,18 @@ renderer_id INTEGER ,
chartmodel_miniature TEXT ,
chart_position CHAR(10) ,
chart_active SMALLINT default 1 ,
chart_width INTEGER default 600 ,
chart_height INTEGER default 400 ,
chart_miniature_width INTEGER default 200 ,
chart_miniature_height INTEGER default 100 ,
chart_width VARCHAR(255) default '600' ,
chart_height VARCHAR(255) default '400' ,
chart_miniature_width VARCHAR(255) default '200' ,
chart_miniature_height VARCHAR(255) default '100' ,
is_custom SMALLINT,
js_handler TEXT
js_handler TEXT,
chart_card_class VARCHAR(255) ,
chart_container_class VARCHAR(255) ,
chart_container_id VARCHAR(255) ,
chart_class_name VARCHAR(255) ,
chart_element_id VARCHAR(255) ,
chart_title_position VARCHAR(255)
)
;"

13
src-modules/module/viz/upgrade/viz_upgrade_man.sql

@ -5,11 +5,16 @@ select sp_table_exists('k_astat_abschl_grp') from xdummy; @@ -5,11 +5,16 @@ select sp_table_exists('k_astat_abschl_grp') from xdummy;
</sqlvar>
</sqlvars>
update viz_chart set chart_width=600 where chart_width is null;
update viz_chart set chart_height=400 where chart_height is null;
alter table viz_chart alter column chart_width type varchar(255);
alter table viz_chart alter column chart_height type varchar(255);
alter table viz_chart alter column chart_miniature_width type varchar(255);
alter table viz_chart alter column chart_miniature_height type varchar(255);
update viz_chart set chart_miniature_width=600 where chart_miniature_width is null;
update viz_chart set chart_miniature_height=400 where chart_miniature_height is null;
update viz_chart set chart_width='600' where chart_width is null;
update viz_chart set chart_height='400' where chart_height is null;
update viz_chart set chart_miniature_width='600' where chart_miniature_width is null;
update viz_chart set chart_miniature_height='400' where chart_miniature_height is null;
<#if k_astat_abschl_grp_exists==1>
--Querabhängigkeit zum Kernmodul 5.2 abwärtskomp.:

38
superx/style/sx_viz_muster.css

@ -476,3 +476,41 @@ margin-bottom:0.2em; @@ -476,3 +476,41 @@ margin-bottom:0.2em;
margin-right:0px;
padding-left:0.5em;
}
.viz_content
{
margin-left:1em;
}
//Für sidebar:
.card-content {
border: thin solid hsl(0, 0%, 71%);
border-radius: 0.3rem !important;
padding-right:20%
}
.vizLabel-container {
display: flex;
background: inherit;
min-width: 26em;
height:2.7rem;
}
.label.is-small { width: 100%; } /*einheitliche Labelbreite*/
.button { font-weight: bold;
font-size:1.5em;
}
input.sideBarInput
{
font-size:2.1rem;
font-weight:normal;
}
/* Tooltip-Farbe */
[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 {
background-color: #a6a6a6ff; /*#333;*/
color: white;
}

10
superx/xml/js/viz/viz_viewer.js

@ -1618,7 +1618,7 @@ function renderEChart2(currentChartModel,chartDiv,ergebniselementOrdnr,chartTitl @@ -1618,7 +1618,7 @@ function renderEChart2(currentChartModel,chartDiv,ergebniselementOrdnr,chartTitl
document.getElementById("chartCodeTextArea").innerHTML=prettifyJson(JSON.stringify(option));
myChart.setOption(option);
window.addEventListener('resize', myChart.resize);
}
}
@ -3014,4 +3014,12 @@ function colorSpecifierToArray(specifier) { @@ -3014,4 +3014,12 @@ function colorSpecifierToArray(specifier) {
return colors;
}
function toggleVizNavpanelFrame(buttonElem) {
buttonElem.classList.toggle('is-active');
if(document.getElementById("navpanelFrame").style.display=="none")
document.getElementById("navpanelFrame").style.display="flex";
else
document.getElementById("navpanelFrame").style.display="none";
}

242
superx/xml/viz_components.xsl

@ -744,6 +744,7 @@ if(myDiv.style.display=="block") @@ -744,6 +744,7 @@ if(myDiv.style.display=="block")
</xsl:template>
<xsl:template name="buildVizMetadata">
<xsl:param name="fillChartModel" select="'true'" />
<xsl:variable name="vizInitialName">
<xsl:choose>
<xsl:when test="/ergebnisse/@isMakro='true'">
@ -796,13 +797,14 @@ var rs=new Array(); @@ -796,13 +797,14 @@ var rs=new Array();
<xsl:for-each select="/ergebnisse/ergebnis/ergebniselement">
<xsl:call-template name="buildVizData" >
<xsl:with-param name="tableId" select="@ordnr" />
<xsl:with-param name="fillChartModel" select="$fillChartModel" />
</xsl:call-template>
</xsl:for-each>
</xsl:template>
<xsl:template name="buildVizData">
<xsl:param name="tableId" />
<xsl:param name="fillChartModel" select="'true'" />
<script language="Javascript">
<xsl:text>
@ -827,9 +829,14 @@ rsTableMetaData.push(new tableMetaData( @@ -827,9 +829,14 @@ rsTableMetaData.push(new tableMetaData(
<xsl:text>
));
rs[</xsl:text><xsl:value-of select="$tableId"/><xsl:text>]=new Array();
</xsl:text>
<xsl:if test="$fillChartModel='true'"><xsl:text>
var myChartModel=new chartModel(1,"","",rsTableMetaData);
</xsl:text>
</xsl:if>
<xsl:text>
function dataRow_</xsl:text><xsl:value-of select="$tableId"/><xsl:text>(rownr</xsl:text>
<xsl:for-each select="sqlerg/complete_headers/header">
<xsl:text>,</xsl:text>
@ -1080,7 +1087,7 @@ and (@renderer_uniquename='plot' or @renderer_uniquename='d3js') ]"> @@ -1080,7 +1087,7 @@ and (@renderer_uniquename='plot' or @renderer_uniquename='d3js') ]">
<div class="card">
<div class="card-image">
<div id="{concat('modalCardDetailImage',$ergebniselement_ordnr)}">
<xsl:attribute name="style"><xsl:value-of select="concat('width:',$kachelbreite,'px;height:',$kachelhoehe,'px;')" />
<xsl:attribute name="style"><xsl:value-of select="concat('width:',$kachelbreite,';height:',$kachelhoehe,';')" />
</xsl:attribute>
<!--<div id="{concat('chartDiv',$ergebniselement_ordnr)}">
</div>-->
@ -1265,15 +1272,51 @@ Stand: <xsl:value-of select="../stand" /></p> @@ -1265,15 +1272,51 @@ Stand: <xsl:value-of select="../stand" /></p>
<xsl:param name="link_tablestylesheet" select="'viz_html_chart_viewer_mask_and_table.xsl'"/>
<xsl:param name="showEdit" select="'false'" />
<xsl:param name="openModalCardDetail" select="'true'" />
<div class="card is-shady">
<div class="card-image" id="{concat('cardImage',$ergebniselement_ordnr)}">
<xsl:param name="chart_card_class" select="'card is-shady'" />
<xsl:param name="chart_container_class" select="'card-image'" />
<xsl:param name="chart_container_id" select="concat('cardImage',$ergebniselement_ordnr)" />
<xsl:param name="chart_class_name" select="''" />
<xsl:param name="chart_element_id" select="concat('chartDiv',$ergebniselement_ordnr)" />
<xsl:param name="chart_title_position" select="'inline'" />
<xsl:variable name="imgStyleAttr">
<xsl:if test="$kachelhoehe !=''">
<xsl:text>height: </xsl:text><xsl:value-of select="$kachelhoehe" />
<xsl:call-template name="getWidthHeightPx">
<xsl:with-param name="wert" select="$kachelhoehe"/>
</xsl:call-template>
<xsl:text>;</xsl:text>
</xsl:if>
<xsl:if test="$kachelbreite !=''">
<xsl:text>width: </xsl:text><xsl:value-of select="$kachelbreite" />
<xsl:call-template name="getWidthHeightPx">
<xsl:with-param name="wert" select="$kachelbreite"/>
</xsl:call-template>
<xsl:text>;</xsl:text>
</xsl:if>
</xsl:variable>
<div class="{$chart_card_class}">
<xsl:if test="$chart_title_position ='top'">
<h3><xsl:value-of select="$caption" /></h3>
</xsl:if>
<div class="{$chart_container_class}" id="{$chart_container_id}">
<!--zum Debuggen: <a onClick="initPage()">Anzeigen</a><br />-->
<xsl:choose>
<xsl:when test="$openModalCardDetail='true'">
<a onClick="{concat('javascript:openModalCardDetail(',$ergebniselement_ordnr,');')}">
<div id="{concat('chartDiv',$ergebniselement_ordnr)}" style="{concat('width: ',$kachelbreite,'px;height:',$kachelhoehe,'px;')}"></div>
<div id="{$chart_element_id}">
<xsl:choose>
<xsl:when test="$chart_class_name !=''">
<xsl:attribute name="class">
</xsl:attribute>
</xsl:when>
<xsl:otherwise>
<xsl:attribute name="style" select="$imgStyleAttr" />
</xsl:otherwise>
</xsl:choose>
</div>
<!--<div id="{concat('chartDiv',$ergebniselement_ordnr)}" style="{}"></div>-->
</a>
<xsl:if test="$link_maskennummer!=''">
<br />
@ -1309,10 +1352,24 @@ Details... @@ -1309,10 +1352,24 @@ Details...
<xsl:value-of select="$link_tablestylesheet" />
<xsl:text>',false);</xsl:text>
</xsl:attribute>
<div id="{concat('chartDiv',$ergebniselement_ordnr)}" style="{concat('width: ',$kachelbreite,'px;height:',$kachelhoehe,'px;')}"></div>
<div id="{$chart_element_id}">
<xsl:choose>
<xsl:when test="$chart_class_name !=''">
<xsl:attribute name="class">
<xsl:value-of select="$chart_class_name" />
</xsl:attribute>
</xsl:when>
<xsl:otherwise>
<xsl:attribute name="style" select="$imgStyleAttr" />
</xsl:otherwise>
</xsl:choose>
</div>
</a>
</xsl:otherwise>
</xsl:choose>
<xsl:if test="$chart_title_position ='bottom'">
<p><xsl:value-of select="$caption" /></p>
</xsl:if>
<xsl:if test="$showEdit='true' and $chart_tid!=''">
<span class="separator">&#160;|&#160; </span>
@ -1436,6 +1493,7 @@ Platzhalter @@ -1436,6 +1493,7 @@ Platzhalter
<xsl:with-param name="FeldnameEscaped" select="$feldnameEscaped"/>
<xsl:with-param name="feldZeilenanzahl" select="$feldZeilenanzahl"/>
<xsl:with-param name="feldart" select="$feldart"/>
<xsl:with-param name="tooltipPosition" select="'left'"/>
</xsl:call-template>
</xsl:when>
<xsl:when test="$feldart='8'">
@ -1553,6 +1611,7 @@ Platzhalter @@ -1553,6 +1611,7 @@ Platzhalter
<xsl:param name="FeldnameEscaped" />
<xsl:param name="feldZeilenanzahl" select="1"/>
<xsl:param name="feldart" select="1"/>
<xsl:param name="tooltipPosition" select="'bottom'"/>
<xsl:variable name="capNotNull">
<xsl:choose>
<xsl:when test="$Feldcaption !='' and $Feldcaption !='null' ">
@ -1599,7 +1658,7 @@ Platzhalter @@ -1599,7 +1658,7 @@ Platzhalter
<xsl:attribute name="value"><xsl:value-of select="/*/*/felder/feld [@varname = $Feldname]/value"/></xsl:attribute>
</input>
<div class="control is-expanded">
<input class="input is-small is-link is-fullwidth" type="label" readonly="true" name="{concat('label_',$FeldnameEscaped)}" id="{concat('label_',$FeldnameEscaped)}">
<input class="sideBarInput" type="label" readonly="true" name="{concat('label_',$FeldnameEscaped)}" id="{concat('label_',$FeldnameEscaped)}">
<xsl:attribute name="onclick"><xsl:value-of select="$jsCall"/>
</xsl:attribute>
<xsl:attribute name="value"><xsl:value-of select="/*/*/felder/feld [@varname = $Feldname]/value_caption"/></xsl:attribute>
@ -1639,7 +1698,7 @@ Platzhalter @@ -1639,7 +1698,7 @@ Platzhalter
</div>
<xsl:if test="/*/*/felder/feld [@varname = $Feldname]/caption_long != ''">
<div class="control"> <!--220424BFeingefügt-->
<button class="button is-small is-rounded has-tooltip-bottom" onClick="return false;"> <!--220424BFgeändert-->
<button class="{concat('button is-small is-rounded has-tooltip-',$tooltipPosition)}" onClick="return false;"> <!--220424BFgeändert-->
<xsl:attribute name="data-tooltip">
<xsl:call-template name="br_to_newline">
<xsl:with-param name="string"><![CDATA[]]><xsl:value-of select="/*/*/felder/feld [@varname = $Feldname]/caption_long"/><![CDATA[]]></xsl:with-param>
@ -1752,6 +1811,16 @@ Platzhalter @@ -1752,6 +1811,16 @@ Platzhalter
</div>
<a class="navbar-burger is-active" onclick="toggleVizNavpanelFrame(this);">
<span aria-hidden="true"></span>
<span aria-hidden="true"></span>
<span aria-hidden="true"></span>
<span aria-hidden="true"></span>
</a>
<!-- <button class="closebutton" title="Menü schließen" aria-label="Menü schließen" onclick="toggleNavpanelFrame(this);"></button>
</div> -->
</div>
<div class="navbar-end">
<a class="navbar-item" target="_self" href="{/*/generalinfo/REPORT_HEADING_URL }">
@ -1928,43 +1997,12 @@ Platzhalter @@ -1928,43 +1997,12 @@ Platzhalter
<xsl:for-each select="/ergebnisse/ergebnis/ergebniselement">
<p class="teiltabelle_titel" style="font-size:3em;">
<xsl:text>Datentabelle </xsl:text><a onclick="{concat('toggleTableVisibility(',$colon,'toggleBtnTable',@ordnr+1, $colon,',',$colon, 'table',@ordnr+1,$colon,');')}"> <img id="{concat('toggleBtnTable',@ordnr+1)}" src="../images/minus-circled.svg" height="20px" style="height:20px" border="0" /></a></p>
<!--<style>
table.ergtabelle
{
padding-left:100px;
}
table.ergtabelle th {
background-color: #b8c3ef;
color: black;
border: 1px solid black;
border-collapse: separate;
font-size:2em;
}
td.integer {
color: black;
border: 1px solid black;
border-collapse: separate;
font-size:1.5em;
}
table td.ergfeld {
empty-cells: show;
vertical-align: top;
border: thin solid gray;
font-size:1.5em;
}
table td.decimal {
empty-cells: show;
vertical-align: top;
border: thin solid gray;
font-size:1.5em;
}
</style>-->
<xsl:call-template name="nd_singleTable">
<xsl:with-param name="ergebniselement_ordnr" select="@ordnr" />
<xsl:with-param name="showPager" select="'none'" />
</xsl:call-template>
<!--<xsl:call-template name="vizPivotTable" />-->
</xsl:for-each>
</div>
</xsl:template>
@ -2067,32 +2105,6 @@ td.integer { @@ -2067,32 +2105,6 @@ td.integer {
<xsl:template name="vizSidebar" >
<xsl:param name="stylesheet" select="'viz_html_chart_viewer_grid.xsl'" />
<xsl:param name="collapsible" select="'true'" />
<style>
.card-content {
border: thin solid hsl(0, 0%, 71%);
border-radius: 0.3rem !important;
padding-right:20%
}
.vizLabel-container {
display: flex;
background: inherit;
min-width: 13.5rem;
}
.label.is-small { width: 100%; } /*einheitliche Labelbreite*/
.button { font-weight: bold; }
/* Tooltip-Farbe */
[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 {
background-color: #a6a6a6ff; /*#333;*/
color: white;
}
</style>
<xsl:choose>
<xsl:when test="$collapsible='true'">
<style>
@ -2114,7 +2126,7 @@ td.integer { @@ -2114,7 +2126,7 @@ td.integer {
position: fixed;
top: 50%;
z-index: 700;
left: calc(100vw - 545px - 40px);/* Viewport-Breite minus Sidebar-Breite minus Abstand */
left: calc(100vw - 50% - 40px);/* Viewport-Breite minus Sidebar-Breite minus Abstand */
transform: none; /* keine vertikale Zentrierung */
}
@ -2126,7 +2138,7 @@ td.integer { @@ -2126,7 +2138,7 @@ td.integer {
padding-right: 0.7em;
right: 0em;
bottom: 0;
width: 545px; /*Breite nach Bedarf */
width: 50%; /*Breite nach Bedarf */
background: white;
box-shadow: -2px 0 5px rgba(0,0,0,0.1);
overflow-y: auto;
@ -2328,5 +2340,97 @@ td.integer { @@ -2328,5 +2340,97 @@ td.integer {
</p>
</div>
</xsl:template>
<xsl:template name="nd_TabelleFormWeiterverarbeitungHiddenInputs">
<form name="Weiterverarbeitung" method="post" target="_self" charset="UTF-8">
<xsl:attribute name="action">
<!-- MB 9/14 encode URL ignoriert jsession id -->
<xsl:value-of select="'SuperXmlTabelle'" /></xsl:attribute>
<input name="navi" type="hidden" value="{/ergebnisse/@showNavigation}" />
<input type="hidden" name="tid">
<xsl:choose>
<xsl:when test="/ergebnisse/@isMakro='true'">
<xsl:attribute name="value"><xsl:value-of select="/ergebnisse/makro/@id" /></xsl:attribute>
</xsl:when>
<xsl:otherwise>
<xsl:attribute name="value"><xsl:value-of select="/ergebnisse/ergebnis/maskenname/@id" /></xsl:attribute>
</xsl:otherwise>
</xsl:choose>
</input>
<input type="hidden" name="UserID"><xsl:attribute name="value"><xsl:value-of select="/ergebnisse/userID" /></xsl:attribute></input>
<input type="hidden" name="reuseresult" value="true"/> <!-- gecachte Ergebnis benutzen-->
<input type="hidden" name="maxoffset" value=""/> <!--im Normalfall wird Servleteinstellung genutzt - nur Druckversion übergibt Wert-->
<input type="hidden" name="stylesheet" value="" />
<input type="hidden" name="contenttype" value="text/xsl" />
<!-- MB 5/2011 fuer Export nur sichtbarer Tabellenzeilen nach Excel/PDF -->
<input type="hidden" name="irowno" value="" />
<xsl:for-each-group select="/*/*/felder/feld[@art !='1']" group-by=".">
<!--<xsl:for-each select="distinct-values(//ergebnisse/ergebnis/felder/feld [@varname !='Lehreinheit' and @varname != 'Fakultät' and @varname != 'Studiengang'])">-->
<!-- #198418 Problem bei Feldart 1 Typ SQL Beispiel Zeitraum in COB Maske Kosten und Erlöse (Primär und Sekundär) Attribut value aus default/wert key wird nicht richtig escaped
vergl. https://stackoverflow.com/questions/8944513/disable-output-escaping-yes-no-not-working-amp-outputted-twice-in-sharepoint-
Versuche mit <option value="{key}"> sind auch fehlgeschlagen, vermutlich weil XSTL bei Attributen keine Änderung des Escapings vorsieht
https://stackoverflow.com/questions/7887016/disable-output-escaping-not-working-for-attribute-in-xslt
alter Code:
<input type="hidden">
<xsl:attribute name="name"><xsl:value-of select="@varname" /></xsl:attribute>
<xsl:attribute name="value"><xsl:value-of select="value" /></xsl:attribute>
</input>
neuer Code: -->
<xsl:text disable-output-escaping="yes"><![CDATA[<input type="hidden" name="]]></xsl:text><xsl:value-of disable-output-escaping="no" select="@varname"/><xsl:text>" value="</xsl:text>
<xsl:value-of disable-output-escaping="no" select="value"/><xsl:text>"</xsl:text>
<xsl:text disable-output-escaping="yes"><![CDATA[</input>
]]></xsl:text>
</xsl:for-each-group>
</form>
</xsl:template>
<xsl:template name="getWidthHeightPx">
<xsl:param name="wert" />
<xsl:if test="ends-with($wert,'0') or
ends-with($wert,'1') or
ends-with($wert,'2') or
ends-with($wert,'3') or
ends-with($wert,'4') or
ends-with($wert,'5') or
ends-with($wert,'6') or
ends-with($wert,'7') or
ends-with($wert,'8') or
ends-with($wert,'9') ">
<xsl:text>px</xsl:text>
</xsl:if>
</xsl:template>
<xsl:template name="viz_html_chart_viewer_css">
<link rel="stylesheet" href="../style/sx_tabelle.css" />
<link rel="stylesheet" type="text/css" href="../style/sx_viz_muster.css" />
</xsl:template>
<xsl:template name="vizPivotTable">
<table>
<tr><th></th>
<xsl:for-each select="sqlerg/row/col[@id=0]">
<th><xsl:value-of select="wert" /></th>
</xsl:for-each>
</tr>
<tr><td></td>
<xsl:for-each select="sqlerg/row">
<xsl:call-template name="pivot">
<xsl:with-param name="heading" select="wert"/>
</xsl:call-template>
</xsl:for-each>
</tr>
</table>
</xsl:template>
<xsl:template name="pivot">
<xsl:param name="heading"/>
<xsl:for-each select="sqlerg/row[col[@id=0]/[wert=$heading]]">
<td><xsl:value-of select="col/wert"/></td>
</xsl:for-each>
</xsl:template>
</xsl:stylesheet>

5
superx/xml/viz_html_chart_viewer.xsl

@ -43,7 +43,7 @@ xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:HtmlUtils="de.superx.util @@ -43,7 +43,7 @@ xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:HtmlUtils="de.superx.util
<link rel="stylesheet" href="../style/sx_tabelle.css" />
<!--<link rel="stylesheet" href="../style/superx.css" />-->
<link rel="stylesheet" href="../style/sx_viz_muster.css" />
</head>
<xsl:call-template name="nd_htmlscript" />
<xsl:call-template name="nd_tableJavascript" />
@ -71,7 +71,7 @@ xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:HtmlUtils="de.superx.util @@ -71,7 +71,7 @@ xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:HtmlUtils="de.superx.util
<xsl:call-template name="nd_progressbar" />
<div id="content">
<div id="content" class="viz_content">
<!--#Template Beginn Seitentitel-->
<xsl:variable name="masken_tid"><xsl:value-of select="/ergebnisse/ergebnis[@ordnr='0']/maskenname/@id"/></xsl:variable>
<xsl:call-template name="nd_pagetitle" >
@ -80,6 +80,7 @@ xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:HtmlUtils="de.superx.util @@ -80,6 +80,7 @@ xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:HtmlUtils="de.superx.util
<xsl:with-param name="icon_classname" select="/ergebnisse/menue/eintraege/eintrag[@isMaske='true' and tid=$masken_tid]/css_class" />
</xsl:call-template>
<xsl:call-template name="nd_TabelleFormWeiterverarbeitungHiddenInputs" />
<!--#Template Krümelpfad-->
<xsl:call-template name="nd_breadcrumb" />

Loading…
Cancel
Save