Visualisierungsmodul für SuperX
http://www.superx-projekt.de/doku/viz_modul/
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
1900 lines
70 KiB
1900 lines
70 KiB
<?xml version="1.0" encoding="UTF-8"?> |
|
<xsl:stylesheet version="1.0" |
|
xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:HtmlUtils="de.superx.util.HtmlUtils"> |
|
<xsl:import href="xsl_functions.xsl" /> |
|
<xsl:import href="resultset_html.xsl" /> |
|
<xsl:import href="interLinks_html.xsl" /> |
|
<xsl:import href="pageComponents_html.xsl" /> |
|
<xsl:import href="pageComponents_html_final.xsl" /> |
|
<xsl:import href="menue_html_dojo.xsl" /> |
|
<!--In diesem Stylesheet können Sie individuelle templates unterbringen, |
|
die in ihrer Präzedenz das normale Stylesheet |
|
pageComponents_html.xsl überragt. --> |
|
<xsl:import href="pageComponents_html_final.xsl" /> |
|
|
|
<xsl:decimal-format name="German" grouping-separator="." NaN="" zero-digit ="0" decimal-separator="," /> |
|
|
|
<!-- wichtig für DOJO!--> |
|
<xsl:output method="xml" media-type="text/html" doctype-public="-//W3C//DTD XHTML 1.0 Strict//EN" |
|
doctype-system="DTD/xhtml1-strict.dtd" cdata-section-elements="script style" indent="yes" encoding="UTF-8"/> |
|
|
|
<xsl:template match="/"> |
|
<xsl:call-template name="table"/> |
|
</xsl:template> |
|
|
|
<!-- start table main--> |
|
<xsl:template name="table"> |
|
<html> |
|
<xsl:choose> |
|
<xsl:when test="/ergebnisse/@hisinone_active='true'"> |
|
<xsl:call-template name="head_hisinone" ><xsl:with-param name="title" select="concat('Ergebnis ',/ergebnisse/ergebnis[ position()=1]/maskenname)" /></xsl:call-template> |
|
</xsl:when> |
|
<xsl:otherwise> |
|
<xsl:call-template name="head_superx_viz" ><xsl:with-param name="title" select="concat('Ergebnis ',/ergebnisse/ergebnis[ position()=1]/maskenname)" /></xsl:call-template> |
|
</xsl:otherwise> |
|
</xsl:choose> |
|
<xsl:call-template name="tableCSS"></xsl:call-template> |
|
<xsl:call-template name="pccustomize"><xsl:with-param name="position" select="'table_pre_javascript'"></xsl:with-param></xsl:call-template> |
|
<xsl:call-template name="tablecustomize"><xsl:with-param name="position" select="'table_pre_javascript'"></xsl:with-param></xsl:call-template> |
|
<xsl:call-template name="tableJavascript_viz"></xsl:call-template> |
|
<xsl:call-template name="pccustomize"><xsl:with-param name="position" select="'table_post_javascript'"></xsl:with-param></xsl:call-template> |
|
<xsl:call-template name="tablecustomize"><xsl:with-param name="position" select="'table_post_javascript'"></xsl:with-param></xsl:call-template> |
|
|
|
<!-- start Body--> |
|
<body onload="document.getElementById('progressbar').style.display='none';tableonload();"> <!-- tableonload definiert in pageComponents.pccustomize position table_post_javascript --> |
|
<div id="progressbar" style="position:absolute; width:150px; height:150px; left:200px; top:200px; background:#AAAAAA"> |
|
<p> <b>Laden...</b><br/><img src="/superx/images/progress_bar.gif"></img><br/></p></div> |
|
|
|
<xsl:if test="/ergebnisse/@showNavigation='true'"> |
|
<xsl:for-each select="/ergebnisse/menue"> |
|
<xsl:call-template name="menuFrame" /> |
|
</xsl:for-each> |
|
</xsl:if> |
|
<div> |
|
<xsl:if test="/ergebnisse/@showNavigation='true'"> |
|
<xsl:attribute name="class"><xsl:text>page-wrap</xsl:text></xsl:attribute> |
|
<xsl:for-each select="/ergebnisse/menue"> |
|
<xsl:call-template name="topbar_menue" /> |
|
</xsl:for-each> |
|
</xsl:if> |
|
|
|
<div> |
|
<xsl:if test="/ergebnisse/@showNavigation='true'"> |
|
<xsl:attribute name="id"><xsl:text>wrapper</xsl:text></xsl:attribute> |
|
</xsl:if> |
|
<xsl:call-template name="customheader"/> |
|
<xsl:call-template name="topbar_table" /> |
|
<xsl:call-template name="pccustomize"><xsl:with-param name="position" select="'table_pre_center'"></xsl:with-param></xsl:call-template> |
|
<xsl:call-template name="tablecustomize"><xsl:with-param name="position" select="'table_pre_center'"></xsl:with-param></xsl:call-template> |
|
<xsl:call-template name="viz_canvas"/> |
|
<xsl:call-template name="pccustomize"><xsl:with-param name="position" select="'table_post_center'"></xsl:with-param></xsl:call-template> |
|
<xsl:call-template name="tablecustomize"><xsl:with-param name="position" select="'table_post_center'"></xsl:with-param></xsl:call-template> |
|
|
|
<xsl:call-template name="tableDialogs"></xsl:call-template> |
|
<!--<div class="dontprint" id="dojoDebug"></div>--> |
|
<xsl:call-template name="bottombar" /> |
|
<xsl:comment>customfooter</xsl:comment> |
|
</div> |
|
</div> |
|
<xsl:call-template name="footer" /> |
|
</body> |
|
<!-- end body --> |
|
</html> |
|
</xsl:template> |
|
<!-- end main --> |
|
<!-- start css --> |
|
<xsl:template name="tableCSS"> |
|
|
|
<style type="text/css"> |
|
.dojoDialog {background : #eee; border : 1px solid #999;-moz-border-radius : 5px;padding : 4px;width:650;height:420px;overflow:scroll} |
|
.treebutton { |
|
border:none; |
|
margin: 0 4px 0 0; |
|
} |
|
@media print{ |
|
.dontprint{display:none;} |
|
} |
|
|
|
div.bar { |
|
width:20px; |
|
height:20px; |
|
margin-top:2px; |
|
background-color:darkblue; |
|
color:white; |
|
font:10px san-serif; |
|
text-align:right; |
|
padding:3px; |
|
} |
|
|
|
div.section |
|
{ |
|
margin-bottom:5px; |
|
padding-bottom:10px; |
|
/*border-bottom:thick solid gray;*/ |
|
} |
|
|
|
</style> |
|
|
|
</xsl:template> |
|
<!-- end css --> |
|
|
|
<!-- start Javascript--> |
|
<xsl:template name="tableJavascript_viz"> |
|
<script language="Javascript" type="text/javascript" src="/superx/xml/js/viz/d3.min.js" /> |
|
<script language="Javascript" type="text/javascript" src="/superx/xml/js/viz/plot.js" /> |
|
<xsl:for-each select="/ergebnisse/ergebnis/ergebniselement/vizTypes/vizType[@srcpath !='/superx/xml/js/viz/d3.min.js' and @srcpath != '/superx/xml/js/viz/plot.js']"> |
|
<script language="Javascript" type="text/javascript" src="{@srcpath}" /> |
|
</xsl:for-each> |
|
|
|
<script><xsl:text><![CDATA[ |
|
|
|
//document.body.append(Plot.plot(options)); |
|
|
|
function commonChartProperty(name, |
|
caption, |
|
isMandatory, |
|
inputType, |
|
staticValues, |
|
range_from, |
|
range_to, |
|
defaultValue, |
|
explanation, |
|
groupCaption, |
|
groupUniquename, |
|
rendererUniquename, |
|
groupVariableName, |
|
variableName, |
|
propValueType |
|
) |
|
{ |
|
this.name=name; |
|
this.caption=caption; |
|
this.staticValues=staticValues; |
|
this.range_from=range_from; |
|
this.range_to=range_from; |
|
this.isMandatory=isMandatory; |
|
this.inputType=inputType; |
|
this.defaultValue=defaultValue; |
|
this.explanation=explanation; |
|
this.groupCaption=groupCaption; |
|
this.groupUniquename=groupUniquename; |
|
this.rendererUniquename=rendererUniquename; |
|
this.groupVariableName=groupVariableName; |
|
this.variableName=variableName; |
|
this.propValueType=propValueType; |
|
this.getValueResultset = function () { |
|
var valueOptions=[]; |
|
var optionCounter=0; |
|
var staticValueArray = staticValues.split(/\|/); |
|
for(var j=0;j < staticValueArray.length;j++) |
|
{ |
|
var isDefault=false; |
|
if(staticValueArray[j]) |
|
{ |
|
if(staticValueArray[j]==this.defaultValue) |
|
isDefault=true; |
|
var o=new selectionPropertyValue(optionCounter,staticValueArray[j],staticValueArray[j],isDefault); |
|
valueOptions[optionCounter]=o; |
|
optionCounter++; |
|
} |
|
} |
|
return valueOptions; |
|
} |
|
} |
|
function commonChartPropertyGroup(caption,groupUniquename,groupVariableName) |
|
{ |
|
this.caption=caption; |
|
this.groupUniquename=groupUniquename; |
|
this.groupVariableName=groupVariableName; |
|
} |
|
|
|
|
|
|
|
var commonChartProperties=[]; |
|
]]></xsl:text> |
|
<xsl:for-each select="/ergebnisse/ergebnis/ergebniselement/chartProperties/commonChartProperty"> |
|
<xsl:text> |
|
var newCommonChartProperty = new commonChartProperty("</xsl:text> |
|
<xsl:value-of select="@prop_uniquename" /> |
|
<xsl:text>","</xsl:text> |
|
<xsl:value-of select="@caption" /> |
|
<xsl:text>",</xsl:text><xsl:choose> |
|
<xsl:when test="@is_mandatory=1"><xsl:text>true</xsl:text> |
|
</xsl:when> |
|
<xsl:otherwise>false</xsl:otherwise> |
|
</xsl:choose> |
|
<xsl:text>,"</xsl:text> |
|
<xsl:value-of select="@input_type_uniquename" /> |
|
<xsl:text>" |
|
,"</xsl:text> |
|
<xsl:value-of select="@static_values" /> |
|
<xsl:text>","</xsl:text> |
|
<xsl:value-of select="@prop_range_from" /> |
|
<xsl:text>","</xsl:text> |
|
<xsl:value-of select="@prop_range_to" /> |
|
<xsl:text>","</xsl:text> |
|
<xsl:value-of select="@prop_default" /> |
|
<xsl:text>","</xsl:text> |
|
<xsl:value-of select="@explanation" /> |
|
<xsl:text>","</xsl:text> |
|
<xsl:value-of select="@group_caption" /> |
|
<xsl:text>","</xsl:text> |
|
<xsl:value-of select="@group_uniquename" /> |
|
<xsl:text>","</xsl:text> |
|
<xsl:value-of select="@renderer_uniquename" /> |
|
<xsl:text>","</xsl:text> |
|
<xsl:value-of select="@group_variable_name" /> |
|
<xsl:text>","</xsl:text> |
|
<xsl:value-of select="@variable_name" /> |
|
<xsl:text>","</xsl:text> |
|
<xsl:value-of select="@propValueType" /> |
|
<xsl:text>"); |
|
commonChartProperties.push(newCommonChartProperty); |
|
</xsl:text> |
|
</xsl:for-each> |
|
<xsl:text> |
|
var newCommonChartProperty = new commonChartProperty("caption", |
|
"Titel des Diagramms", |
|
false, |
|
"TEXTAREA", |
|
"", |
|
"", |
|
"", |
|
"</xsl:text> |
|
<xsl:value-of select="/ergebnisse/ergebnis/maskenname" /><xsl:text>", |
|
"wird unter dem Diagramm angezeigt", |
|
"Diagrammkopf", |
|
"", |
|
"plot", |
|
"layout", |
|
"caption", |
|
"string"); |
|
commonChartProperties.push(newCommonChartProperty); |
|
|
|
</xsl:text> |
|
<xsl:text> |
|
function vizTypeProperty(propUniquename,caption,typeUniquename,groupUniquename,isMandatory) |
|
{ |
|
this.propUniquename=propUniquename; |
|
this.caption=caption; |
|
this.groupUniquename=groupUniquename; |
|
this.typeUniquename=typeUniquename; |
|
this.isMandatory=isMandatory; |
|
} |
|
|
|
var vizTypeProperties=[]; |
|
</xsl:text> |
|
<xsl:for-each select="/ergebnisse/ergebnis/ergebniselement/viz_type_properties/viz_type_property"> |
|
<xsl:text> |
|
var newVizTypeProperty = new vizTypeProperty("</xsl:text> |
|
<xsl:value-of select="@uniquename" /> |
|
<xsl:text>","</xsl:text> |
|
<xsl:value-of select="@caption" /> |
|
<xsl:text>","</xsl:text> |
|
<xsl:value-of select="@viz_type_uniquename" /> |
|
<xsl:text>","</xsl:text> |
|
<xsl:value-of select="@viz_property_group_uniquename" /> |
|
<xsl:text>",</xsl:text> |
|
<xsl:value-of select="@is_mandatory" /><xsl:text> |
|
); |
|
vizTypeProperties.push(newVizTypeProperty); |
|
</xsl:text> |
|
</xsl:for-each> |
|
|
|
</script> |
|
<script language="Javascript" type="text/javascript" src="../xml/js/viz/viz_functions.js" /> |
|
|
|
</xsl:template> |
|
|
|
<xsl:template name="tableJavascript"> |
|
<script language="Javascript" type="text/javascript" src="/superx/xml/js/jquery-2.1.1.min.js" /> |
|
<script language="JavaScript" type="text/javascript"> |
|
function getTid(){ |
|
<xsl:choose> |
|
<xsl:when test="/ergebnisse/@isMakro='true'"> |
|
<xsl:text>tid=</xsl:text><xsl:value-of select="/ergebnisse/makro/@id" /><xsl:text>; |
|
</xsl:text> |
|
</xsl:when> |
|
<xsl:otherwise> |
|
<xsl:text>tid=</xsl:text><xsl:value-of select="/ergebnisse/ergebnis/maskenname/@id" /><xsl:text>; |
|
</xsl:text> |
|
</xsl:otherwise> |
|
</xsl:choose> |
|
return tid; |
|
} |
|
|
|
<xsl:call-template name="jsHis1Pinger" /> |
|
|
|
function jsDisableInput(datei) { |
|
var dateiendungArray = datei.split("."); |
|
var dateiendung = dateiendungArray[dateiendungArray.length - 1]; |
|
if(dateiendung=="jrxml") { |
|
document.Weiterverarbeitung.jr_contenttype.disabled=false; |
|
} |
|
else { |
|
document.Weiterverarbeitung.jr_contenttype.disabled=true; |
|
} |
|
} |
|
|
|
</script> |
|
<script language="JavaScript" type="text/javascript" src="/superx/xml/js/memtext/sx_functions.js"></script> |
|
<script language="JavaScript" type="text/javascript"> |
|
var isTreeTable=false; |
|
<xsl:if test="/ergebnisse/@isMakro!='true' and /ergebnisse/ergebnis/ergebniselement/sqlerg/@istreetable='true'"> |
|
isTreeTable=true; |
|
</xsl:if> |
|
</script> |
|
|
|
|
|
<!-- start normale Abfragen - nicht makros dojo/ggfs. Treetable--> |
|
<xsl:if test="/ergebnisse/@isMakro!='true'"> |
|
<script language="JavaScript" type="text/javascript"> |
|
djConfig = { |
|
bindEncoding: "UTF-8", |
|
isDebug: false, |
|
debugAtAllCosts:false, |
|
debugContainerId:"dojoDebug" |
|
}; |
|
</script> |
|
<script language="JavaScript" type="text/javascript" src="/superx/xml/js/dojo/dojo.js"></script> |
|
|
|
|
|
<script language="JavaScript" type="text/javascript"> |
|
dojo.require("dojo.widget.Dialog"); |
|
dojo.require("dojo.widget.Button"); |
|
dojo.require("dojo.event.*"); |
|
dojo.require("dojo.dnd.*"); |
|
dojo.require("dojo.io.*"); |
|
dojo.require("dojo.widget.ContentPane"); |
|
dojo.require("dojo.widget.DropdownContainer"); |
|
dojo.hostenv.writeIncludes(); |
|
var configdlg; |
|
var spaltenliste,spaltentrash; |
|
|
|
|
|
</script> |
|
<!-- javascript array mit Feldern - bei Makros ist Feld-XML noch nicht drin--> |
|
<xsl:text disable-output-escaping="yes"><![CDATA[<script type="text/javascript"> |
|
|
|
// für Druck ohne Menü |
|
function printDiv(divName) { |
|
var printContents = document.getElementById(divName).innerHTML; |
|
w=window.open(); |
|
w.document.write(printContents); |
|
w.print(); |
|
w.close(); |
|
} |
|
|
|
var felder = new Array();]]></xsl:text> |
|
<xsl:for-each select="/ergebnisse/ergebnis/felder/feld"> |
|
<xsl:text>felder[</xsl:text><xsl:value-of select="position()" /><xsl:text>]= new Object(); |
|
felder[</xsl:text><xsl:value-of select="position()" /><xsl:text>]["htmlname"]='</xsl:text><xsl:value-of select="@varname"/><xsl:text>'; |
|
felder[</xsl:text><xsl:value-of select="position()" /><xsl:text>]["name"]='</xsl:text><xsl:call-template name="create_varname"><xsl:with-param name="string"><xsl:value-of select="@varname"/></xsl:with-param></xsl:call-template><xsl:text>'; |
|
felder[</xsl:text><xsl:value-of select="position()" /><xsl:text>]["cb_name"]='</xsl:text><xsl:call-template name="umlaut_urlencode"><xsl:with-param name="s1"><xsl:value-of select="@varname"/></xsl:with-param></xsl:call-template><xsl:text>'; |
|
</xsl:text> |
|
<!-- in sql-variablen könnte auch " vorkommen als %22 codieren--> |
|
<xsl:variable name="quot">"</xsl:variable> |
|
<xsl:variable name="r"><xsl:value-of disable-output-escaping="yes" select="value"/></xsl:variable> |
|
<xsl:text>felder[</xsl:text><xsl:value-of select="position()" /><xsl:text>]["value"]="</xsl:text> |
|
<xsl:call-template name="search_replace"> |
|
<xsl:with-param name="string" select="$r"/> |
|
<xsl:with-param name="search" select="$quot" /> |
|
<xsl:with-param name="replace" select="'%22'" /> |
|
</xsl:call-template><xsl:text>"; |
|
</xsl:text> |
|
</xsl:for-each> |
|
var stylesheetcontenttype = new Array(); |
|
<xsl:for-each select="/ergebnisse/stylesheets/stylesheet"> |
|
stylesheetcontenttype['<xsl:value-of select="filename"/>'] = '<xsl:value-of select="contenttype"/>'; |
|
</xsl:for-each> |
|
<xsl:text disable-output-escaping="yes"><![CDATA[</script>]]></xsl:text> |
|
|
|
|
|
<!-- start x für Tabellenfixierung--> |
|
<script type='text/javascript' src='/superx/xml/js/x/x_core.js'></script> |
|
<script type='text/javascript' src='/superx/xml/js/x/lib/xaddeventlistener.js'></script> |
|
<script type='text/javascript' src='/superx/xml/js/x/lib/xtablefixed.js'></script> |
|
|
|
|
|
<!-- start xTableHeaderFixed --> |
|
<script type='text/javascript'> |
|
var addBehavior = false, ss = '/superx/xml/js/x/xthf.css'; |
|
|
|
if (window.XMLHttpRequest) { |
|
addBehavior = true; |
|
} |
|
else { |
|
/*@cc_on |
|
@if (@_jscript_version == 5.6) // IE6 |
|
if(navigator.appName=="Microsoft Internet Explorer" ) |
|
ss = '/superx/xml/js/x/xthf_ie6.css'; |
|
addBehavior = false; |
|
@end @*/ |
|
} |
|
if (addBehavior) { |
|
var e = document.createElement('link'); |
|
e.rel = 'stylesheet'; |
|
e.type = 'text/css'; |
|
e.href = ss; |
|
document.getElementsByTagName('head')[0].appendChild(e); |
|
xAddEventListener(window, 'load', appOnload, false); |
|
xAddEventListener(window, 'unload', function(){if (window.xthf) window.xthf.unload();}, false); |
|
} |
|
|
|
function appOnload() |
|
{ |
|
//window.xthf = new xTableHeaderFixed('idFixedHeaderContainer', 'clsFixedHeaderTable', 'leftColumn', 1, 1, 'table1', 'table2', 'table3'); |
|
//window.xthf = new xTableHeaderFixed('idFixedHeaderContainer', 'clsFixedHeaderTable', 'leftColumn', 1, 1); |
|
// window.xtcf = new xTableColumnsFixed('idFixedColumnsContainer', 'clsFixedColumnsTable', 'leftColumn', 1, 1,false,2,'table1'); |
|
var fixedColumnCount=<xsl:value-of select="/ergebnisse/ergebnis/ergebniselement/sqlerg/headers/@fixed_column_count"/>; |
|
window.xthf = new xTableFixed('idFixedHeaderContainer', 'clsFixedHeaderTable','idFixedColumnsContainer', 'clsFixedColumnsTable', 'leftColumn', 1, 1,false,fixedColumnCount,'table1'); |
|
//dojo.debug(window.xthf); |
|
} |
|
|
|
</script> |
|
<!-- end xtableheaderfixed --> |
|
<!-- end x--> |
|
|
|
<!-- start xy--> |
|
<script language="JavaScript" type="text/javascript"> |
|
<xsl:text>headers=eval("([</xsl:text> |
|
<xsl:for-each select="/ergebnisse/ergebnis/ergebniselement/sqlerg/headers/header[not (starts-with(f_name,'hidden'))]"> |
|
<xsl:text>{key:'</xsl:text><xsl:value-of select="f_name"/><xsl:text>',name:'</xsl:text> |
|
<xsl:call-template name='json_adapt'> |
|
<xsl:with-param name="string" select="wert" /> |
|
</xsl:call-template><xsl:text>'}</xsl:text> |
|
<xsl:if test="position() != last()"><xsl:text>,</xsl:text></xsl:if> |
|
</xsl:for-each> |
|
<xsl:text>])"); |
|
var count=1; |
|
<![CDATA[for (var i=0;i<headers.length;i++) if (headers[i].name.replace(/\s+$/,"")=='') {headers[i].name='Leerspalte '+count;count++;}]]> |
|
</xsl:text> |
|
<xsl:text>complete_headers=eval("([</xsl:text> |
|
<!--MB 04/2010 versteckte Spalten nicht --> |
|
<xsl:for-each select="/ergebnisse/ergebnis/ergebniselement/sqlerg/complete_headers/header[not (starts-with(f_name,'hidden'))]"> |
|
<xsl:text>{key:'</xsl:text><xsl:value-of select="f_name"/><xsl:text>',name:'</xsl:text> |
|
<xsl:call-template name='json_adapt'> |
|
<xsl:with-param name="string" select="wert" /> |
|
</xsl:call-template><xsl:text>'}</xsl:text> |
|
<xsl:if test="position() != last()"><xsl:text>,</xsl:text></xsl:if> |
|
</xsl:for-each> |
|
<xsl:text>])");</xsl:text> |
|
var count=1; |
|
<![CDATA[for (var i=0;i<complete_headers.length;i++) if (complete_headers[i].name.replace(/\s+$/,"")=='') {complete_headers[i].name='Leerspalte '+count;count++;}]]> |
|
|
|
function init(e) { |
|
configdlg = dojo.widget.byId("configdlg"); |
|
spaltenliste=document.getElementById('spaltenliste'); |
|
//spaltentrash=document.getElementById('spaltentrash'); |
|
new dojo.dnd.HtmlDropTarget(spaltenliste, ["spaltenobjekt"]); |
|
//new dojo.dnd.HtmlDropTarget(document.getElementById('spaltentrash'), ["spaltenobjekt"]); |
|
|
|
document.getElementById('progressbar').style.display="none"; |
|
} |
|
dojo.addOnLoad(init); |
|
|
|
<!-- start showConfig --> |
|
function showConfig() |
|
{ |
|
<xsl:choose> |
|
<xsl:when test="/ergebnisse/ergebnis/ergebniselement/sqlerg/headers/@hasAggregationHeaders='true'"> |
|
alert("Konfiguration bei diesem komplexen Layout nicht moeglich"); |
|
</xsl:when> |
|
<xsl:otherwise> |
|
//Spaltenreihenfolge |
|
while (spaltenliste.hasChildNodes()) |
|
spaltenliste.removeChild(spaltenliste.childNodes[0]); |
|
//while (spaltentrash.hasChildNodes()) spaltentrash.removeChild(spaltentrash.childNodes[0]); |
|
//var newLI = document.createElement("li"); newLI.appendChild(document.createTextNode("nicht dargestellte Spalten")); spaltentrash.appendChild(newLI); |
|
<![CDATA[ |
|
for (var i=0;i<complete_headers.length;i++) |
|
{ |
|
var newLI = document.createElement("li"); |
|
newLI.setAttribute("key",complete_headers[i].key); |
|
spaltenliste.appendChild(newLI); |
|
|
|
var newLIText = document.createTextNode(complete_headers[i].name+" "); |
|
var b = document.createElement ("b"); |
|
b.setAttribute("style","cursor:pointer;"); |
|
var sp= document.createElement("span"); |
|
b.appendChild(sp); |
|
sp.appendChild(newLIText); |
|
newLI.appendChild(b); |
|
var cb = document.createElement("input"); |
|
cb.type = "checkbox"; |
|
cb.name = "checkboxHeader"+i; |
|
cb.id= "checkboxHeader"+i; |
|
var vis=false; |
|
for (var i2=0;i2<headers.length;i2++) |
|
{ |
|
if (complete_headers[i].key==headers[i2].key) vis=true; |
|
} |
|
cb.checked = cb.defaultChecked=vis; |
|
newLI.appendChild(cb); |
|
newLI.appendChild(document.createTextNode("anzeigen")); |
|
} |
|
var lis = document.getElementById('spaltenliste').getElementsByTagName("li"); |
|
for(var x=0; x<lis.length; x++){ |
|
new dojo.dnd.HtmlDragSource(lis[x], "spaltenobjekt"); |
|
} |
|
]]> |
|
//Spaltensortierung |
|
var sortierspalten=document.getElementById('sortierspalten'); |
|
while (sortierspalten.hasChildNodes()) sortierspalten.removeChild(sortierspalten.childNodes[0]); |
|
<![CDATA[ |
|
if (!isTreeTable){ |
|
for (var i=0;i<complete_headers.length&&i<5;i++) |
|
{ |
|
var lbl=document.createElement("label"); |
|
lbl.innerHTML=(i+1)+"."; |
|
sortierspalten.appendChild(lbl); |
|
var newSelect = document.createElement("select"); |
|
newSelect.id="sortcol"+i; |
|
newSelect.options[0]=new Option("","nocol_selected"); |
|
for (var i2=0;i2<complete_headers.length;i2++) |
|
{newSelect.options[i2+1]=new Option(complete_headers[i2].name,complete_headers[i2].key);} |
|
sortierspalten.appendChild(newSelect); |
|
var asc=document.createElement("select"); |
|
asc.id = "sortcol"+i+"-asc"; |
|
asc.options[0]=new Option("aufsteigend","-A"); |
|
asc.options[1]=new Option("absteigend","-D"); |
|
sortierspalten.appendChild(asc); |
|
sortierspalten.appendChild(document.createElement("br")); |
|
} |
|
} |
|
]]> |
|
|
|
configdlg.show(); |
|
</xsl:otherwise> |
|
</xsl:choose> |
|
} |
|
<!-- end show config--> |
|
<!-- start tableReload--> |
|
function tableReload(colsetParam,colsortParam) |
|
{ |
|
document.getElementById('progressbar').style.display=""; |
|
<xsl:text>var callurl="/superx/servlet/SuperXmlTabelle</xsl:text> |
|
<!--<xsl:if test="/ergebnisse/@jsessionid!=''">;jsessionid=<xsl:value-of select="/ergebnisse/@jsessionid"/></xsl:if>--> |
|
<xsl:text>?tid=</xsl:text><xsl:value-of select="/ergebnisse/ergebnis/ergebniselement/@id"/> |
|
<xsl:text><![CDATA[&navi=true&stylesheet=tabelle_html.xsl&reuseresult=true&colset=";]]></xsl:text> |
|
<![CDATA[ |
|
if (colsetParam=='restore') |
|
callurl+='restore'; |
|
else |
|
{ |
|
var lis = document.getElementById('spaltenliste').getElementsByTagName("li"); |
|
|
|
for(var x=0; x<lis.length; x++){ |
|
if (lis[x].getElementsByTagName('input')[0].checked) |
|
{ |
|
for (var i=0;i<complete_headers.length;i++) |
|
if (complete_headers[i].key==lis[x].getAttribute("key")) callurl+=escape(complete_headers[i].key); |
|
if (x<(lis.length-1)){ callurl+="%7C";} //Pipe Zeichen selbst wird als unsicher betrachtet, muss codiert werden |
|
} |
|
} |
|
|
|
} |
|
if (!isTreeTable) |
|
{ |
|
callurl+='&colsort='; |
|
if (colsortParam=='restore') |
|
callurl+='restore'; |
|
else |
|
{ |
|
|
|
for (var i=0;i<complete_headers.length&&i<5;i++) |
|
{ |
|
|
|
var sortcol=document.getElementById('sortcol'+i); |
|
var sortcolasc=document.getElementById('sortcol'+i+'-asc'); |
|
var sel=sortcol.options[sortcol.selectedIndex].value; |
|
if (i==0&&sel!='nocol_selected') callurl+=sel+sortcolasc.options[sortcolasc.selectedIndex].value; |
|
if (i>0&&sel!='nocol_selected') callurl+="%7C"+sel+sortcolasc.options[sortcolasc.selectedIndex].value;//Pipe Zeichen selbst wird als unsicher betrachtet, muss codiert werden |
|
} |
|
} |
|
} |
|
]]> |
|
; |
|
self.location=callurl; |
|
} |
|
<!-- end table reload --> |
|
|
|
</script> |
|
|
|
|
|
<!-- end dojo--> |
|
<!-- start treetable --> |
|
<xsl:if test="/ergebnisse/ergebnis/ergebniselement/sqlerg/@istreetable='true'"> |
|
<script type="text/javascript" src="/superx/xml/js/treetable.js"></script> |
|
<script type="text/javascript"> |
|
treetable_callbacks['eventRowStateChanged'] = 'treetable_eventRowChanged'; |
|
|
|
function treetable_eventRowChanged(rowId, state) { |
|
try{ |
|
//normalerweise ist Grafik in erster Spalte, kann aber auch 2. sein |
|
//var row=document.getElementById(rowId); //macht im FF plötzlich Ärger |
|
//dojo.debug("rowid:"+rowId); |
|
var row=xGetElementById(rowId); |
|
//dojo.debug("row"+row); |
|
var tds= row.getElementsByTagName('td'); |
|
//dojo.debug("tds:"+tds); |
|
//todo komisch hier läuft was schief??! |
|
//dojo.debug("tds length"+tds.length); |
|
var td0=tds[0] |
|
var td0img= td0.getElementsByTagName('img'); |
|
if (td0img.length>0) img=td0img[0]; |
|
else |
|
{ |
|
tds=row.getElementsByTagName('td'); |
|
//dojo.debug("tds :"+tds); |
|
//dojo.debug("tds length"+tds.length); |
|
var td1=tds[1]; |
|
var td1img= td1.getElementsByTagName('img'); |
|
|
|
if (td1img.length>0) img = td1img[0]; |
|
} |
|
|
|
if (state == 1) { |
|
img.src = '/superx/xml/minus_circ.svg'; |
|
} else { |
|
img.src = '/superx/xml/plus_circ.svg'; |
|
} |
|
} |
|
catch (e) { |
|
} |
|
return (true); |
|
} |
|
</script> |
|
<script type="text/javascript"> |
|
function ajaxNodeToggle(nodeid, internalrowno) |
|
{ |
|
|
|
//if children already loaded, no ajax request necessary |
|
//dojo.debug(document.getElementById(nodeid+"_0")); |
|
if (!document.getElementById(nodeid+"_0")) |
|
{ |
|
document.getElementById('progressbar').style.display=""; |
|
<xsl:text>var callurl="/superx/servlet/SuperXmlTabelle</xsl:text> |
|
<!-- <xsl:if test="/ergebnisse/@jsessionid!=''">;jsessionid=<xsl:value-of select="/ergebnisse/@jsessionid"/></xsl:if>--> |
|
<xsl:text>?tid=</xsl:text><xsl:value-of select="/ergebnisse/ergebnis/ergebniselement/@id"/><xsl:text>"; |
|
</xsl:text> |
|
<![CDATA[ |
|
callurl+="&treetableid="+nodeid+"&getKidRows="+internalrowno; |
|
]]> |
|
dojo.io.bind({url:callurl,encoding: "ISO-8859-1",method: "post", |
|
handler: function(type,data,evt) |
|
{ |
|
// dojo.debug(data); |
|
document.getElementById('progressbar').style.display="none"; |
|
if (type=='error') { |
|
msg='Fehler beim Lesen der Daten!\n'; |
|
if (data.message) msg+=data.message; |
|
else msg+=data.error; |
|
alert(msg); |
|
//dojo.debugDeep(data); |
|
} |
|
else |
|
{ |
|
|
|
var help=document.createElement("div"); |
|
help.innerHTML=data; |
|
var pos=document.getElementById(nodeid).sectionRowIndex; |
|
//dojo.debug("pos: "+pos); |
|
var newrows=help.getElementsByTagName("tr"); |
|
<![CDATA[ |
|
for (i=0;i<newrows.length;i++) |
|
{ |
|
|
|
var newrow=document.getElementById("table1").tBodies[0].insertRow(pos+i+1); |
|
newrow.id=nodeid+"_"+i; |
|
//IE kann nicht in TR-innerHTML schreiben |
|
//newrow.innerHTML=newrows[i].innerHTML; |
|
for (i2=0;i2<newrows[i].attributes.length;i2++) |
|
{ |
|
newrow.setAttribute(newrows[i].attributes[i2].name,newrows[i].getAttribute(newrows[i].attributes[i2].name)); |
|
} |
|
//fuck IE |
|
newrow.setAttribute("className", newrows[i].getAttribute("className")); |
|
for (i2=0;i2<newrows[i].cells.length;i2++) |
|
{ |
|
newcell=newrow.insertCell(i2); |
|
newcell.innerHTML=newrows[i].cells[i2].innerHTML; |
|
//Attribut wie class wird nicht durch innerHTML übernommen |
|
for (i3=0;i3<newrows[i].cells[i2].attributes.length;i3++) |
|
{ |
|
newcell.setAttribute(newrows[i].cells[i2].attributes[i3].name,newrows[i].cells[i2].getAttribute(newrows[i].cells[i2].attributes[i3].name)); |
|
} |
|
//fuck IE |
|
newcell.setAttribute("className", newrows[i].cells[i2].getAttribute("className")); |
|
} |
|
} |
|
treetable_toggleRow(nodeid,1,1); |
|
treetable_eventRowChanged(nodeid, 1); |
|
if (window.xthf) window.xthf.init(); |
|
document.getElementById('progressbar').style.display="none"; |
|
]]> |
|
} |
|
} |
|
} |
|
); |
|
|
|
} |
|
else //kein Nachladen per Dojo nötig |
|
{ |
|
treetable_toggleRow(nodeid); |
|
// treetable_zuklappen(nodeid); |
|
// var starttime=(new Date).getTime(); |
|
// while (starttime+400>(new Date).getTime()){}; |
|
// treetable_toggleRow(nodeid,-1,-1); |
|
} |
|
if (window.xthf) window.xthf.init(); |
|
//dojo.debugDeep(window.xthf); |
|
|
|
} |
|
|
|
</script> |
|
|
|
|
|
</xsl:if> |
|
<!-- end treetable--> |
|
|
|
<!-- start Lesezeichen/applyMerkmale--> |
|
<script language="JavaScript" type="text/javascript"> |
|
|
|
<!-- von Lesezeichen oder template Merkmale eintragen |
|
geht nur für normale Masken da Javascript-array für Felder korrekt gefüllt sein muss |
|
anders definiert als in maske_html, muss genauso heißen, damit allgemeine Vorlage sowohl masken als auch bei Tabellen greifen |
|
--> |
|
function applyMerkmale(merkmale) |
|
{ |
|
<xsl:text><![CDATA[url=location.protocol+'//'+location.host+"/superx/servlet/SuperXmlTabelle";]]> |
|
</xsl:text> |
|
<!-- <xsl:if test="/ergebnisse/@jsessionid!=''"><xsl:text>url+=';jsessionid=</xsl:text><xsl:value-of select="/maske/@jsessionid"/><xsl:text>'; |
|
</xsl:text></xsl:if>--> |
|
<xsl:text>url+="?tid="+getTid();</xsl:text> |
|
<xsl:if test="/ergebnisse/@MandantenID!='default'"> |
|
<xsl:text><![CDATA[url+="&MandantenID=]]></xsl:text><xsl:value-of select="/ergebnisse/@MandantenID"/><xsl:text>";</xsl:text> |
|
</xsl:if> |
|
var merkmale2=merkmale.replace(/n:'/g,'n:"'); |
|
var merkmale3=merkmale2.replace(/',k:'/g,'",k:"'); |
|
var merkmale4=merkmale3.replace(/'}/g,'"}'); |
|
var merkmale5=merkmale4.replace(/',sichtparam:'/g,'",sichtparam:"'); |
|
var merkmale6=merkmale5.replace(/',standparam:'/g,'",standparam:"'); |
|
var m=purgeval(merkmale6); |
|
<![CDATA[ |
|
for (i=0;i<m.length;i++) |
|
{ |
|
url+="&"+getEncoded(m[i].n)+"="+getEncoded(m[i].k); |
|
if (m[i].sichtparam) url+="&"+getEncoded(m[i].n)+"-Sicht="+getEncoded(m[i].sichtparam); |
|
if (m[i].standparam) url+="&"+getEncoded(m[i].n)+"-Stand="+m[i].standparam; |
|
} |
|
]]> |
|
<!--falls ein Feld nicht als Merkmal belegt ist und es für ein Feld auf der Maske eine Auswahl gibt, diese übernehmen--> |
|
<![CDATA[ |
|
for(var i1=1;i1<= felder.length-1; i1++) |
|
{ |
|
var merkmalvorhanden=false; |
|
for (i=0;i<m.length;i++) |
|
{ |
|
if (getEncoded(m[i].n)==getEncoded(felder[i1]["htmlname"])) merkmalvorhanden=true; |
|
} |
|
if (!merkmalvorhanden) |
|
{ |
|
var val=felder[i1]["value"]; |
|
url+="&"+getEncoded(felder[i1]["htmlname"])+"="+getEncoded(val); |
|
} |
|
} |
|
]]> |
|
<xsl:if test="/ergebnisse/@isMakro!='true'"> |
|
<xsl:if test="/ergebnisse/ergebnis/ergebniselement/sqlerg/headers/@colset!=''"> |
|
<xsl:text><![CDATA[url+="&colset=]]></xsl:text><xsl:value-of select="/ergebnisse/ergebnis/ergebniselement/sqlerg/headers/@colset"/><xsl:text>"; |
|
</xsl:text> |
|
</xsl:if> |
|
<xsl:if test="/ergebnisse/ergebnis/ergebniselement/sqlerg/headers/@colsort!=''"> |
|
<xsl:text><![CDATA[url+="&colsort=]]></xsl:text><xsl:value-of select="/ergebnisse/ergebnis/ergebniselement/sqlerg/headers/@colsort"/><xsl:text>"; |
|
</xsl:text> |
|
</xsl:if> |
|
</xsl:if> |
|
//dojo.debug(url); |
|
document.getElementById('progressbar').style.display=""; |
|
location.href=url; |
|
} |
|
<!-- für Zurück-Button bei normalen Abfragen und Lesezeichen |
|
--> |
|
|
|
function getParams(method) <!--direkt für Zurückbutton, ohne Speicherung als Bookmarklet--> |
|
{ |
|
// check for fieldsep argument |
|
var fieldsep = '&'; // default |
|
var params=""; |
|
//alert("getparams - method: " + method); |
|
if (method!='direkt') params+="p=["; |
|
|
|
<xsl:for-each select="/ergebnisse/ergebnis/felder/feld"> |
|
<xsl:if test="@varname!='##line##'"> |
|
<xsl:if test="value!='' and value!='null' and @art!='8' and @art!='13'"> <!-- bei Duisburger Sichten vorgekommen--> |
|
if (method!='direkt') |
|
<xsl:text>params+="{\"n\":\"</xsl:text><xsl:value-of select="@varname"/><xsl:text>\",\"k\":\"</xsl:text> |
|
<xsl:value-of select="value"/><xsl:text>\"},"; |
|
</xsl:text> |
|
else |
|
<xsl:text><![CDATA[params+=fieldsep+getEncoded("]]></xsl:text><xsl:value-of select="@varname"/><xsl:text>")+"="+getEncoded("</xsl:text><xsl:value-of select="value"/><xsl:text>"); |
|
</xsl:text> |
|
|
|
|
|
|
|
<!-- Probleme im IE wenn kleiner als, Prozent oder sowas vorkommt |
|
title+=" </xsl:text> |
|
<xsl:choose> <xsl:when test="caption_short!= '' and caption_short != 'null'"><![CDATA[]]><xsl:value-of select="caption_short" /><![CDATA[]]> |
|
</xsl:when> |
|
<xsl:otherwise> <xsl:value-of select="@varname" /> </xsl:otherwise> </xsl:choose><xsl:text>: </xsl:text><xsl:value-of select="value"/><xsl:text>"; |
|
</xsl:text> |
|
--> |
|
</xsl:if> |
|
<!-- MB Stand und Sicht in Lesezeichen --> |
|
<xsl:if test="@stand!=''"> |
|
<xsl:text>var stand="</xsl:text><xsl:value-of select="@stand"/><xsl:text>"; |
|
</xsl:text> |
|
|
|
if (<![CDATA[stand&&isDate(stand)&&!isToday(stand)]]>) <!-- wenn Stand today ist, braucht er nicht in bookmarklet noch in zurückbutton--> |
|
{ |
|
if (method!='direkt') |
|
<xsl:text>params+="{\"n\":\"</xsl:text><xsl:value-of select="@varname"/><xsl:text>-Stand\",\"k\":\"</xsl:text><xsl:value-of select="@stand"/><xsl:text>\"},"; |
|
</xsl:text> |
|
else |
|
<xsl:text><![CDATA[params+=fieldsep+"]]></xsl:text><xsl:value-of select="@varname"/><xsl:text>"+"-Stand=</xsl:text><xsl:value-of select="@stand"/><xsl:text>"; |
|
</xsl:text> |
|
} |
|
</xsl:if> |
|
<xsl:if test="sicht/@name_intern!=''"> |
|
if (method!='direkt') |
|
<xsl:text>params+="{\"n\":\"</xsl:text><xsl:value-of select="@varname"/><xsl:text>-Sicht\",\"k\":\"</xsl:text><xsl:value-of select="sicht/@name_intern"/><xsl:text>\"},"; |
|
</xsl:text> |
|
else |
|
<xsl:text><![CDATA[params+=fieldsep+"]]></xsl:text><xsl:value-of select="@varname"/><xsl:text>"+"-Sicht="+"</xsl:text><xsl:value-of select="sicht/@name_intern"/><xsl:text>"; |
|
</xsl:text> |
|
</xsl:if> |
|
</xsl:if> |
|
</xsl:for-each> |
|
<!-- bei Methode direkt auch -leer- uebergeben --> |
|
<xsl:for-each select="/ergebnisse/ergebnis/completefields/feld"> |
|
<xsl:if test="(value='' or value='null') and @art!='8' and @art!='13'"> |
|
<xsl:text><![CDATA[ if (method=='direkt') params+="&"+getEncoded("]]></xsl:text><xsl:value-of select="@varname"/><xsl:text>")+"=--leer--";</xsl:text> |
|
</xsl:if> |
|
</xsl:for-each> |
|
|
|
if (method!='direkt') params=params.substring(0,params.length-1)+"]";//letztes Komma überschreiben |
|
//alert(params); |
|
|
|
return params; |
|
} |
|
|
|
<!-- Tabelle_esezeichen erstellen - bei Makros ist dojo zu aufwändig--> |
|
function lesezeichen_erstellen() |
|
{ |
|
params=getParams(); |
|
<xsl:choose> |
|
<xsl:when test="/ergebnisse/@isMakro='true'"> |
|
title='Tab <xsl:value-of select="/ergebnisse/makro/name" />'; |
|
</xsl:when> |
|
<xsl:otherwise> |
|
title='Tab <xsl:value-of select="/ergebnisse/ergebnis/maskenname"/>'; |
|
<xsl:if test="/ergebnisse/ergebnis/ergebniselement/sqlerg/headers/@colset!=''"> |
|
<xsl:text><![CDATA[params+=";p[p.length]={\"n\":\"colset\",\"k\":\"]]></xsl:text><xsl:value-of select="/ergebnisse/ergebnis/ergebniselement/sqlerg/headers/@colset"/><xsl:text>\"}"; |
|
</xsl:text> |
|
</xsl:if> |
|
<xsl:if test="/ergebnisse/ergebnis/ergebniselement/sqlerg/headers/@colsort!=''"> |
|
<xsl:text><![CDATA[params+=";p[p.length]={\"n\":\"colsort\",\"k\":\"]]></xsl:text><xsl:value-of select="/ergebnisse/ergebnis/ergebniselement/sqlerg/headers/@colsort"/><xsl:text>\"}"; |
|
</xsl:text> |
|
</xsl:if> |
|
</xsl:otherwise> |
|
</xsl:choose> |
|
|
|
//dojo.debug(params); |
|
//lesezeichen funktion setzt nur noch Titel, Params hier obsolet |
|
<xsl:text>lesezeichen('/superx/servlet/SuperXmlTabelle',getTid(),'</xsl:text><xsl:value-of select="/ergebnisse/@MandantenID"/><xsl:text>',params,title); |
|
createLinkForTable('</xsl:text><xsl:value-of select="/ergebnisse/@hisinone_refapp" /><xsl:text>','</xsl:text><xsl:value-of select="/ergebnisse/ergebnis/ergebniselement/sqlerg/headers/@colset"/><xsl:text>','</xsl:text><xsl:value-of select="/ergebnisse/ergebnis/ergebniselement/sqlerg/headers/@colsort"/><xsl:text>');</xsl:text> |
|
dojo.widget.byId("lesezeichendlg").show(); |
|
|
|
} |
|
|
|
function deeplink_dialog() |
|
{ |
|
dojo.widget.byId("deeplinkdlg").show(); |
|
} |
|
|
|
</script> |
|
<!-- end lesezeichen --> |
|
</xsl:if> |
|
<!-- end normale Abfragen - nicht makros--> |
|
</xsl:template> |
|
<!-- end javascript--> |
|
|
|
<!-- start tablecenter--> |
|
|
|
<xsl:template name="tableCenter"> |
|
<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="HtmlUtils:encodeURL('SuperXmlTabelle',/ergebnisse/@jsessionid)" /></xsl:attribute> |
|
<!-- start Kopf--> |
|
<xsl:call-template name="pccustomize"><xsl:with-param name="position" select="'table_inform'"></xsl:with-param></xsl:call-template> |
|
<xsl:call-template name="tablecustomize"><xsl:with-param name="position" select="'table_inform'"></xsl:with-param></xsl:call-template> |
|
<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="" /> |
|
<!-- MB 5/2011 fuer Export nur sichtbarer Tabellenzeilen nach Excel/PDF --> |
|
<input type="hidden" name="irowno" value="" /> |
|
<xsl:for-each select="/ergebnisse/ergebnis/felder/feld"> |
|
<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> |
|
</xsl:for-each> |
|
|
|
<xsl:call-template name="tablePrintsaveexport"/> |
|
|
|
<xsl:call-template name="tablepretitle"/> <!--defined in pageComponents--> |
|
|
|
<xsl:if test="/ergebnisse/@isMakro='true'"> |
|
<h1><xsl:value-of select="/ergebnisse/makro/name" /></h1> |
|
</xsl:if> |
|
<p></p> |
|
|
|
<!-- end Kopf--> |
|
<!-- start tabelle--> |
|
<xsl:for-each select="ergebnisse/ergebnis/ergebniselement"> |
|
<xsl:choose> |
|
<xsl:when test="@typ='image'"> |
|
<img><xsl:attribute name="src"><xsl:value-of select="@url" /></xsl:attribute></img><hr/> |
|
<xsl:text> |
|
</xsl:text> |
|
</xsl:when> |
|
<xsl:when test="@typ='tabelle'"> |
|
<xsl:call-template name="tableSingletable"/> |
|
</xsl:when> |
|
<xsl:otherwise> |
|
<xsl:text> Nicht unterstützter Ergebnistyp </xsl:text><xsl:value-of select="@type" /> |
|
</xsl:otherwise> |
|
</xsl:choose> |
|
<!-- end tabelle--> |
|
<!-- start fuß--> |
|
<xsl:choose> |
|
<xsl:when test="/ergebnisse/@isMakro!='true' and /ergebnisse/ergebnis/ergebniselement/sqlerg/@istreetable!='true'"> |
|
<xsl:call-template name="navigationsfuss" /> |
|
</xsl:when> |
|
<xsl:otherwise> <!-- input für offset ist wichtig für Exporte, normalerweise im Navigationsfuß definiert --> |
|
<input type="hidden" name="offset"> |
|
<xsl:attribute name="value"><xsl:value-of select="sqlerg/@offset" /></xsl:attribute> |
|
</input> |
|
</xsl:otherwise> |
|
</xsl:choose> |
|
<xsl:call-template name="pccustomize"><xsl:with-param name="position" select="'table_pre_explanation'"></xsl:with-param></xsl:call-template> |
|
<xsl:call-template name="tablecustomize"><xsl:with-param name="position" select="'table_pre_explanation'"></xsl:with-param></xsl:call-template> |
|
|
|
<xsl:choose> |
|
<xsl:when test="/menue/@hisinone_active='true'"> |
|
<script language="Javascript"> |
|
var platform='his1'; |
|
</script> |
|
</xsl:when> |
|
<xsl:otherwise> |
|
<script language="Javascript"> |
|
var platform='superx'; |
|
</script> |
|
</xsl:otherwise> |
|
</xsl:choose> |
|
|
|
<xsl:if test="count(sqlerg/headers/header/caption_long) > 0"><xsl:call-template name="explanation" /></xsl:if> |
|
<xsl:call-template name="pccustomize"><xsl:with-param name="position" select="'table_post_explanation'"></xsl:with-param></xsl:call-template> |
|
<xsl:call-template name="tablecustomize"><xsl:with-param name="position" select="'table_post_explanation'"></xsl:with-param></xsl:call-template> |
|
|
|
</xsl:for-each> |
|
</form> |
|
<!-- end fuß--> |
|
</xsl:template> |
|
<!-- end tablecenter--> |
|
<!-- start printsaveExport--> |
|
<!-- printsave/export in pageComponents definiert - kann also überlagert werden--> |
|
<xsl:template name="tablePrintsaveexport"> |
|
<table class="dontprint" border="0"><tr><td align="left"> |
|
<xsl:call-template name="printsaveButtons" /> |
|
</td> |
|
<td align="right"><xsl:call-template name="exportButtons" /> |
|
</td> |
|
</tr></table> |
|
</xsl:template> |
|
<!-- end printsave --> |
|
|
|
<!-- start singleTable--> |
|
<xsl:template name="tableSingletable"> |
|
<xsl:comment>Template tableSingletable in file tabelle_html.xsl</xsl:comment> |
|
<xsl:call-template name="pccustomize"><xsl:with-param name="position" select="'table_pre_title'"></xsl:with-param></xsl:call-template> |
|
<xsl:call-template name="tablecustomize"><xsl:with-param name="position" select="'table_pre_title'"></xsl:with-param></xsl:call-template> |
|
|
|
<p class="maskentitel"><xsl:value-of select="../maskenname" /></p> |
|
<xsl:call-template name="pccustomize"><xsl:with-param name="position" select="'table_post_title'"></xsl:with-param></xsl:call-template> |
|
<xsl:call-template name="tablecustomize"><xsl:with-param name="position" select="'table_post_title'"></xsl:with-param></xsl:call-template> |
|
|
|
<xsl:call-template name="legende" /> |
|
<xsl:if test="/ergebnisse/@isMakro!='true' and /ergebnisse/ergebnis/ergebniselement/sqlerg/@istreetable!='true' and /ergebnisse/ergebnis/ergebniselement/sqlerg/@max > 19"> |
|
<xsl:call-template name="navigationsmenue" /> |
|
</xsl:if> |
|
|
|
</xsl:template> |
|
<xsl:template name="tableheader"> |
|
<!--Spaltenüberschriften: zunächst wird geprüft, ob Spaltenüberschriften verknüpft werden sollen |
|
|
|
<xsl:variable name="spanned_cols"> |
|
<xsl:for-each select="sqlerg/headers/header"> |
|
<xsl:if test="contains(wert,'\000')"> |
|
<xsl:text>true</xsl:text> |
|
</xsl:if> |
|
</xsl:for-each> |
|
</xsl:variable> |
|
|
|
<xsl:when test="contains($spanned_cols,'true')"> |
|
<xsl:variable name="headers_str"> |
|
<xsl:for-each select="sqlerg/headers/header"> |
|
<xsl:value-of select="concat('^',wert)" /> |
|
</xsl:for-each> |
|
</xsl:variable> |
|
<xsl:value-of select="HtmlUtils:headers2html($headers_str)" disable-output-escaping="yes"/> |
|
--> |
|
<xsl:choose> |
|
<xsl:when test="/ergebnisse/ergebnis/ergebniselement/sqlerg/headers/@hasAggregationHeaders='true'"> |
|
<xsl:for-each select="sqlerg/aggregationHeaders/tr"> |
|
<tr> |
|
<!--auch bei aggregierten Headers Spalten die mit hidden_starten nicht anzeigen--> |
|
<xsl:for-each select="th [not (starts-with(@f_name,'hidden')) and @isHidden!='true']"> |
|
<th class="header"> |
|
<xsl:if test="@colspan!=''"><xsl:attribute name="colspan"><xsl:value-of select="@colspan"/></xsl:attribute></xsl:if> |
|
<xsl:if test="@rowspan!=''"><xsl:attribute name="rowspan"><xsl:value-of select="@rowspan"/></xsl:attribute></xsl:if> |
|
<xsl:attribute name="scope"> |
|
<xsl:choose> |
|
<xsl:when test="@colspan!='' and @colspan!='1'"><xsl:text>colgroup</xsl:text></xsl:when> |
|
<xsl:otherwise><xsl:text>col</xsl:text></xsl:otherwise> |
|
</xsl:choose> |
|
</xsl:attribute> |
|
<xsl:choose> |
|
<xsl:when test="@isopen='true'"> |
|
<a class='bildnavi' > |
|
<xsl:attribute name="href"><xsl:text>javascript:setHeaderExpanded('</xsl:text> |
|
<xsl:value-of select="/ergebnisse/@jsessionid"/><xsl:text>',</xsl:text><xsl:value-of select="/ergebnisse/ergebnis/maskenname/@id" /> |
|
<xsl:text>,</xsl:text><xsl:value-of select="@id"/><xsl:text>,false);</xsl:text></xsl:attribute> |
|
<img border='0' src='/superx/xml/folder_green_open.gif'/>  |
|
<xsl:call-template name="removeBackslashN" > |
|
<xsl:with-param name="derwert"><xsl:value-of select="." /></xsl:with-param> |
|
<xsl:with-param name="format"><xsl:value-of select="'html'" /></xsl:with-param> |
|
</xsl:call-template> |
|
</a> |
|
</xsl:when> |
|
<xsl:when test="@isopen='false'"> |
|
<a class='bildnavi'> |
|
<xsl:attribute name="href"><xsl:text>javascript:setHeaderExpanded('</xsl:text> |
|
<xsl:value-of select="/ergebnisse/@jsessionid"/><xsl:text>',</xsl:text><xsl:value-of select="/ergebnisse/ergebnis/maskenname/@id" /> |
|
<xsl:text>,</xsl:text><xsl:value-of select="@id"/><xsl:text>,true);</xsl:text></xsl:attribute> |
|
<img border='0' src='/superx/xml/folder_green.gif'/>  |
|
<xsl:call-template name="removeBackslashN" > |
|
<xsl:with-param name="derwert"><xsl:value-of select="." /></xsl:with-param> |
|
<xsl:with-param name="format"><xsl:value-of select="'html'" /></xsl:with-param> |
|
</xsl:call-template> |
|
</a> |
|
</xsl:when> |
|
<xsl:otherwise> |
|
<xsl:call-template name="removeBackslashN" > |
|
<xsl:with-param name="derwert"><xsl:value-of select="." /></xsl:with-param> |
|
<xsl:with-param name="format"><xsl:value-of select="'html'" /></xsl:with-param> |
|
</xsl:call-template> |
|
</xsl:otherwise> |
|
</xsl:choose> |
|
</th> |
|
|
|
</xsl:for-each> |
|
</tr> |
|
</xsl:for-each> |
|
</xsl:when> |
|
<xsl:otherwise> |
|
<!-- alt Normale headers --> |
|
<xsl:variable name="headers_str"> |
|
<xsl:for-each select="sqlerg/headers/header[not (starts-with(f_name,'hidden'))]"> |
|
<xsl:value-of select="concat('^',wert)" /> |
|
</xsl:for-each> |
|
</xsl:variable> |
|
<xsl:value-of select="HtmlUtils:headers2html($headers_str)" disable-output-escaping="yes"/> |
|
|
|
<!--<xsl:call-template name="removeBackslashN" > |
|
<xsl:with-param name="derwert"><xsl:value-of select="." /></xsl:with-param> |
|
<xsl:with-param name="format"><xsl:value-of select="'html'" /></xsl:with-param> |
|
</xsl:call-template> |
|
<tr> |
|
<xsl:for-each select="sqlerg/headers/header"> |
|
<th class="header" scope="col"> |
|
<xsl:call-template name="removeBackslashN" > |
|
<xsl:with-param name="derwert"><xsl:value-of select="wert" /></xsl:with-param> |
|
<xsl:with-param name="format"><xsl:value-of select="'html'" /></xsl:with-param> |
|
</xsl:call-template> |
|
</th> |
|
</xsl:for-each> |
|
</tr>--> |
|
</xsl:otherwise> |
|
</xsl:choose> |
|
</xsl:template> |
|
|
|
<xsl:template name="tablebody"> |
|
<xsl:variable name="erglevelmax"><xsl:text>5</xsl:text> |
|
<!-- todo: auch bei treetable variable Zeilenebenen |
|
<xsl:if test="count(sqlerg/row/col [ f_name = 'ebene' ]) > 0"> |
|
<xsl:choose> |
|
<xsl:when test="count(sqlerg/row/col [ f_name = 'ebene' ] /wert [ . = '4']) > 0"> |
|
<xsl:text>4</xsl:text> |
|
</xsl:when> |
|
<xsl:when test="count(sqlerg/row/col [ f_name = 'ebene' ] /wert [ . = '3']) > 0"> |
|
<xsl:text>3</xsl:text> |
|
</xsl:when> |
|
<xsl:when test="count(sqlerg/row/col [ f_name = 'ebene' ] /wert [ . = '2']) > 0"> |
|
<xsl:text>2</xsl:text> |
|
</xsl:when> |
|
<xsl:when test="count(sqlerg/row/col [ f_name = 'ebene' ] /wert [ . = '1']) > 0"> |
|
<xsl:text>1</xsl:text> |
|
</xsl:when> |
|
<xsl:otherwise> |
|
<xsl:text>5</xsl:text> |
|
</xsl:otherwise> |
|
</xsl:choose> |
|
</xsl:if>--> |
|
</xsl:variable> |
|
<xsl:for-each select="sqlerg/row"> |
|
<!-- MB ausgelagert nach resultset.xsl--> |
|
<xsl:call-template name="resultrow"> |
|
<xsl:with-param name="row" select="."/> |
|
<xsl:with-param name="erglevelmax" select="$erglevelmax"/> |
|
<!-- wenn versteckte Links angegeben sind, nach dem Schema hidden_fname diese anzeigen--> |
|
<xsl:with-param name="showlinks"><xsl:text>true</xsl:text></xsl:with-param> |
|
</xsl:call-template> |
|
</xsl:for-each> |
|
</xsl:template> |
|
<!-- end singleTable--> |
|
<!-- start DOJO Dialoge--> |
|
<xsl:template name="tableDialogs"> |
|
<!--todo:Export nach SVG, PDF etc.--> |
|
</xsl:template> |
|
<!-- end DOjo dialoge--> |
|
<!-- start obsolet --> |
|
<xsl:template name="tabwert"> |
|
<xsl:choose> |
|
<xsl:when test="wert/@type='numeric'"><xsl:value-of select="wert" /> |
|
<!--<xsl:value-of select="format-number(wert,'#.###.##0,00','de_DE')" />--> |
|
</xsl:when> |
|
<xsl:otherwise><xsl:value-of select="wert" /></xsl:otherwise> |
|
</xsl:choose> |
|
</xsl:template> |
|
<!-- end --> |
|
<!-- start customize standard ist leer, kann von Spezialstylesheets überlagert werden --> |
|
<xsl:template name="tablecustomize"> |
|
<xsl:param name="position"/> |
|
</xsl:template> |
|
<!-- end customize--> |
|
<xsl:template name="viz_canvas"> |
|
<xsl:comment>Template viz_canvas in file viz_html_barchart_horiz.xsl</xsl:comment> |
|
<xsl:if test="/ergebnisse/@isMakro='true'"> |
|
<h1><xsl:value-of select="/ergebnisse/makro/name" /></h1> |
|
</xsl:if> |
|
<p></p> |
|
|
|
<!-- end Kopf--> |
|
<!-- start Grafik--> |
|
<xsl:for-each select="ergebnisse/ergebnis/ergebniselement"> |
|
|
|
<!--Beginn Selektions-Card--> |
|
<!--Beginn Berichtstitel, Pfad, Knopfleiste--> |
|
<section class="hero-body has-background-light"> |
|
<div class="columns is-mobile is-left"> |
|
<div class="card has-background-light"> |
|
<div class="card-content"> |
|
<p class="title is-4">Konfigurationsassistent Datenvisualisierung: <xsl:value-of select="../maskenname" /></p> |
|
|
|
<xsl:call-template name="legende" /> |
|
<!--<xsl:if test="/ergebnisse/@isMakro!='true' and /ergebnisse/ergebnis/ergebniselement/sqlerg/@istreetable!='true' and /ergebnisse/ergebnis/ergebniselement/sqlerg/@max > 19"> |
|
<xsl:call-template name="navigationsmenue" /> |
|
</xsl:if>--> |
|
<xsl:call-template name="buildVizRs" /> |
|
|
|
<span class="separator"> </span> |
|
|
|
<!--Beginn NavTabs--> |
|
<div class="tabs is-left is-small" id="viznav"> |
|
<ul> |
|
<li data-target="viznav-tab1" id="1"> |
|
<a onclick="showVizNavTab(1);"><span>Diagramm-Daten</span></a> |
|
</li> |
|
<li data-target="viznav-tab2" id="2"> |
|
<a onclick="showVizNavTab(2);"><span>Diagramm-Layout</span></a> |
|
</li> |
|
<li data-target="viznav-tab3" id="3"> |
|
<a onclick="showVizNavTab(3);"><span>Diagramm-Nutzung</span></a> |
|
</li> |
|
</ul> |
|
</div> |
|
|
|
<div class="tab-content"> |
|
<!-- tab-1--> |
|
<div class="viznav-tab1" id="tab-1" style="display:block"> <!--Diagramm-Daten--> |
|
<xsl:call-template name="diagrammdaten" /> |
|
|
|
</div> |
|
<div class="viznav-tab2" id="tab-2" style="display:none"> <!--Diagramm-Layout--> |
|
<xsl:call-template name="diagrammlayout" /> |
|
|
|
</div> |
|
<div class="viznav-tab3" id="tab-3" style="display:none"> <!--Diagramm-Nutzung--> |
|
<xsl:call-template name="diagrammnutzung" /> |
|
|
|
</div> |
|
|
|
|
|
|
|
</div><!--tab-content --> |
|
</div> <!-- card-content --> |
|
</div><!--card --> |
|
</div> <!-- column --> |
|
</section> |
|
</xsl:for-each> |
|
</xsl:template> |
|
<xsl:template name="getColumnNameJS"> |
|
<xsl:param name="columnNameFromDB" /> |
|
<xsl:choose> |
|
<xsl:when test="contains($columnNameFromDB,'?')"> |
|
<xsl:value-of select="concat('column_',@id+1)"/> |
|
</xsl:when> |
|
<xsl:otherwise> |
|
<xsl:value-of select="$columnNameFromDB"/> |
|
</xsl:otherwise> |
|
</xsl:choose> |
|
</xsl:template> |
|
<xsl:template name="head_superx_viz"> |
|
<xsl:param name="css" /> |
|
<xsl:param name="title" /> |
|
<head> |
|
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> |
|
</meta><!-- <link rel="stylesheet" type="text/css" href="/superx/xml/his1/css/superx_menue_html.css" /> --> |
|
<link rel="stylesheet" type="text/css" href="../style/superx.css"/> |
|
<link rel="stylesheet" type="text/css" href="../xml/menue_html.css"/> |
|
<link rel="stylesheet" type="text/css" href="../xml/superxml_html.css"/> |
|
<link rel="stylesheet" type="text/css" href="../xml/maske_html.css" /> |
|
<link rel="stylesheet" type="text/css" href="../xml/tabelle_html.css" /> |
|
|
|
|
|
<link rel="stylesheet" type="text/css" href="../xml/css/fontello-codes.css" /> |
|
<link rel="stylesheet" type="text/css" href="../xml/css/start_portlet.css" /> |
|
|
|
<link rel="stylesheet" type="text/css" href="../style/bulma.css" /> |
|
<link rel="stylesheet" type="text/css" href="../style/sx_viz_muster.css" /> |
|
|
|
</head> |
|
|
|
</xsl:template> |
|
<xsl:template name="buildVizRs"> |
|
<script language="Javascript"> |
|
|
|
<xsl:text> |
|
function dataRowMetaData(nr,colname,colcaption,coltype,colfunction) |
|
{ |
|
this.nr=nr; |
|
this.colname=colname; |
|
this.colcaption=colcaption; |
|
this.coltype=coltype; |
|
this.colfunction=colfunction; |
|
} |
|
|
|
function dataRow(rownr</xsl:text> |
|
<xsl:for-each select="sqlerg/complete_headers/header"> |
|
<xsl:text>,</xsl:text> |
|
<xsl:call-template name="getColumnNameJS"> |
|
<xsl:with-param name="columnNameFromDB" select="f_name"/> |
|
</xsl:call-template> |
|
</xsl:for-each> |
|
<xsl:text> |
|
) |
|
{ |
|
this.rownr=rownr; |
|
</xsl:text> |
|
<xsl:for-each select="sqlerg/complete_headers/header"> |
|
<xsl:text>this.</xsl:text><xsl:call-template name="getColumnNameJS"> |
|
<xsl:with-param name="columnNameFromDB" select="f_name"/> |
|
</xsl:call-template><xsl:text>=</xsl:text> |
|
<xsl:call-template name="getColumnNameJS"> |
|
<xsl:with-param name="columnNameFromDB" select="f_name"/> |
|
</xsl:call-template><xsl:text>; |
|
</xsl:text> |
|
</xsl:for-each><xsl:text> |
|
} |
|
|
|
var rsMetaData=new Array(); |
|
var rs= new Array(); |
|
|
|
</xsl:text> |
|
|
|
<xsl:for-each select="sqlerg/complete_headers/header"> |
|
<xsl:variable name="rownr"> |
|
<xsl:value-of select="position()"/> |
|
</xsl:variable> |
|
<xsl:text> |
|
rsMetaData.push(new dataRowMetaData(</xsl:text> |
|
<xsl:value-of select="$rownr"/> |
|
<xsl:text>,'</xsl:text> |
|
<xsl:call-template name="getColumnNameJS"> |
|
<xsl:with-param name="columnNameFromDB" select="f_name"/> |
|
</xsl:call-template> |
|
<xsl:text>','</xsl:text> |
|
<xsl:call-template name="remove_linebreaksAndQuot"> |
|
<xsl:with-param name="volltext" select="wert" /> |
|
</xsl:call-template> |
|
<xsl:text>',0,null));</xsl:text> <!--coltype noch unbekannt, colfunction unnötig--> |
|
</xsl:for-each> |
|
|
|
|
|
|
|
<xsl:for-each select="sqlerg/row"> |
|
<xsl:variable name="rownr"> |
|
<xsl:value-of select="position()"/> |
|
</xsl:variable> |
|
<xsl:if test="$rownr=1"> |
|
<!-- first metadata --> |
|
<xsl:for-each select="col"> |
|
<xsl:variable name="colnr"> |
|
<xsl:value-of select="position()"/> |
|
</xsl:variable> |
|
<xsl:text> |
|
rsMetaData[</xsl:text><xsl:value-of select="number($colnr)-1"/><xsl:text>].coltype=</xsl:text><xsl:value-of select="@typ"/> |
|
<xsl:text>; |
|
</xsl:text> |
|
</xsl:for-each> |
|
|
|
</xsl:if> |
|
<!--now resultset--> |
|
<xsl:text> |
|
rs.push(new dataRow(</xsl:text><xsl:value-of select="$rownr"/> |
|
<xsl:for-each select="col"> |
|
<xsl:text>,</xsl:text> |
|
<xsl:choose> |
|
<xsl:when test="@typ='1'"><xsl:text>'</xsl:text> |
|
<xsl:call-template name="remove_linebreaksAndQuot"> |
|
<xsl:with-param name="volltext" select="wert" /> |
|
</xsl:call-template> |
|
<xsl:text>'</xsl:text></xsl:when> |
|
<!--todo:Typ Datum --> |
|
<xsl:when test="string-length(wert)=0"><xsl:text>null</xsl:text> |
|
</xsl:when> |
|
<xsl:otherwise> |
|
<xsl:value-of select="wert"/> |
|
</xsl:otherwise> |
|
</xsl:choose> |
|
</xsl:for-each> |
|
<xsl:text>)); |
|
</xsl:text> |
|
</xsl:for-each> |
|
|
|
|
|
</script> |
|
</xsl:template> |
|
<xsl:template name="diagrammdaten"> |
|
|
|
<!--Aufruf/Anzeige Diagrammdaten--> |
|
<div class="field is-grouped"> |
|
<div class="label-container"> |
|
<label class="label is-required is-small"><strong>Daten-Tabelle</strong></label> |
|
</div> |
|
|
|
<span class="separator"> </span> |
|
<span class="separator"> </span> |
|
|
|
<!--<button class="button is-small is-rounded is-white is-outlined" |
|
onClick="showDataTable('dataDivTable',rs,rsMetaData,10);"> |
|
<span class="icon is-small"><i class="../images/more.svg"></i> |
|
<img src="../images/more.svg" title="Laden" /> |
|
</span> |
|
</button>--> |
|
|
|
<a |
|
onClick="showDataTable('dataDivTable',rs,rsMetaData,10);"> |
|
<span class="icon"> |
|
<img src="../images/icons/more.svg" title="Laden" /> |
|
</span> |
|
</a> |
|
|
|
</div> |
|
|
|
<div id="dataDiv"> <!--class="section">--> |
|
<div id="dataDivTable"> <!--style="border:thin solid black">--> |
|
</div> |
|
</div> |
|
|
|
<span class="separator"> </span> |
|
<span class="separator"> </span> |
|
|
|
<!--Aufruf/Anzeige Formular Datenauswahl--> |
|
<div class="field is-grouped"> |
|
<div class="label-container"> |
|
<label class="label is-required is-small"><strong>Daten-Auswahl</strong></label> |
|
</div> |
|
|
|
<span class="separator"> </span> |
|
<span class="separator"> </span> |
|
|
|
<!--<button class="button is-small is-rounded is-white is-outlined" |
|
onClick="fillDataSelectionForm('dataSelectionFormDiv');"> |
|
<span class="icon is-small"><i class="../images/more.svg"></i> |
|
<img src="../images/more.svg" title="Laden" /> |
|
</span> |
|
</button>--> |
|
<a |
|
onClick="fillDataSelectionForm('dataSelectionFormDiv');"> |
|
<span class="icon"> |
|
<img src="../images/icons/more.svg" title="Laden" /> |
|
</span> |
|
</a> |
|
|
|
</div> |
|
|
|
<div id="dataSelectionDiv"> <!--class="section"--> |
|
<form name="dataSelectionForm" id="dataSelectionForm"> |
|
|
|
<div id="dataSelectionFormDiv" style="display:none"> |
|
|
|
<div class="field is-grouped"> |
|
<div class="label-container"> |
|
<label class="label is-required is-small">Dimension 1</label> |
|
</div> |
|
<span class="separator"> </span> |
|
<span class="separator"> </span> |
|
|
|
<div class="field is-active"> |
|
<p class="control-new"> |
|
<div class="select is-small is-fullwidth is-focused"> |
|
<select class="maskinputPflicht" id="dimension1" name="dimension1" tabindex="210"> |
|
<option class="maskinput" value="" selected="selected"><!--211122BF Bitte wählen Sie Dimension 1--></option> |
|
</select> |
|
</div> |
|
</p> |
|
</div> |
|
|
|
<span class="separator"> </span> |
|
<span class="separator"> </span> |
|
|
|
<span class="info" onclick="window.open('https://super-ics.de/superx/doku/kern_modul/admin/f_Patcheinspielen.htm','_blank','directories=no,location=no,menubar=no,scrollbars=yes,resizable=yes,toolbar=no,width=800,height=660');"> |
|
<figure class="image is-24x24"> |
|
<img src="../images/information_grey_liberation.svg" /> |
|
</figure> |
|
</span> |
|
|
|
<span class="separator"> </span> |
|
<span class="separator"> </span> |
|
<span class="separator"> </span> |
|
<span class="separator"> </span> |
|
|
|
<div class="field is-active"> |
|
<p class="control-new"> |
|
<div class="select is-small is-fullwidth"> |
|
<select id="dimension1_fn" name="dimension1_fn" tabindex="210"> |
|
<option class="maskinput" value="" selected="selected">Optional: Vordefinierte Transformation></option> |
|
</select> |
|
</div> |
|
</p> |
|
</div> |
|
|
|
<span class="separator"> </span> |
|
<span class="separator"> </span> |
|
|
|
<span class="info" onclick="window.open('https://super-ics.de/superx/doku/kern_modul/admin/f_Patcheinspielen.htm','_blank','directories=no,location=no,menubar=no,scrollbars=yes,resizable=yes,toolbar=no,width=800,height=660');"> |
|
<figure class="image is-24x24"> |
|
<img src="../images/information_grey_liberation.svg" /> |
|
</figure> |
|
</span> |
|
</div> |
|
|
|
<div class="field is-grouped"> |
|
<div class="label-container"> |
|
<label class="label is-required is-small">Dimension 2</label> |
|
</div> |
|
|
|
<span class="separator"> </span> |
|
<span class="separator"> </span> |
|
|
|
<div class="field is-active"> |
|
<p class="control-new"> |
|
<div class="select is-small is-fullwidth is-focused"> |
|
<select class="maskinputPflicht" id="dimension2" name="dimension2" tabindex="210"> |
|
<option class="maskinput" value="" selected="selected"><!--211122BFBitte wählen Sie Dimension 2--></option> |
|
</select> |
|
</div> |
|
</p> |
|
</div> |
|
|
|
<span class="separator"> </span> |
|
<span class="separator"> </span> |
|
|
|
<span class="info" onclick="window.open('https://super-ics.de/superx/doku/kern_modul/admin/f_Patcheinspielen.htm','_blank','directories=no,location=no,menubar=no,scrollbars=yes,resizable=yes,toolbar=no,width=800,height=660');"> |
|
<figure class="image is-24x24"> |
|
<img src="../images/information_grey_liberation.svg" /> |
|
</figure> |
|
</span> |
|
|
|
<span class="separator"> </span> |
|
<span class="separator"> </span> |
|
<span class="separator"> </span> |
|
<span class="separator"> </span> |
|
|
|
<div class="field is-active"> |
|
<p class="control-new"> |
|
<div class="select is-small is-fullwidth"> |
|
<select id="dimension2_fn" name="dimension2_fn" tabindex="210"> |
|
<option class="maskinput" value="" selected="selected">Optional: Vordefinierte Transformation</option> |
|
</select> |
|
</div> |
|
</p> |
|
</div> |
|
|
|
<span class="separator"> </span> |
|
<span class="separator"> </span> |
|
|
|
<span class="info" onclick="window.open('https://super-ics.de/superx/doku/kern_modul/admin/f_Patcheinspielen.htm','_blank','directories=no,location=no,menubar=no,scrollbars=yes,resizable=yes,toolbar=no,width=800,height=660');"> |
|
<figure class="image is-24x24"> |
|
<img src="../images/information_grey_liberation.svg" /> |
|
</figure> |
|
</span> |
|
</div> |
|
|
|
|
|
<div class="field is-grouped"> |
|
<div class="label-container"> |
|
<label class="label is-required is-small">Maß</label> |
|
</div> |
|
|
|
<span class="separator"> </span> |
|
<span class="separator"> </span> |
|
|
|
<div class="field is-active"> |
|
<p class="control-new"> |
|
<div class="select is-small is-fullwidth"> |
|
<select class="maskinputPflicht" id="measure1" name="measure1" tabindex="230" > |
|
<option class="maskinput" value="" selected="selected"><!--211122BF Bitte wählen Sie die Maßangabe--></option> |
|
</select> |
|
</div> |
|
</p> |
|
</div> |
|
<!--***Maß |
|
<select class="maskinputPflicht" id="measure1" name="measure1" tabindex="220"> |
|
<option class="maskinput" value="" selected="selected">Bitte wählen</option></select> |
|
<select id="measure1_fn" name="measure1_fn" tabindex="230"> |
|
<option class="maskinput" value="" selected="selected">vordefinierte Funktionen:</option></select> |
|
Maß***--> |
|
|
|
<span class="separator"> </span> |
|
<span class="separator"> </span> |
|
|
|
<span class="info" onclick="window.open('https://super-ics.de/superx/doku/kern_modul/admin/f_Patcheinspielen.htm','_blank','directories=no,location=no,menubar=no,scrollbars=yes,resizable=yes,toolbar=no,width=800,height=660');"> |
|
<figure class="image is-24x24"> |
|
<img src="../images/information_grey_liberation.svg" /> |
|
</figure> |
|
</span> |
|
|
|
<span class="separator"> </span> |
|
<span class="separator"> </span> |
|
<span class="separator"> </span> |
|
<span class="separator"> </span> |
|
|
|
<div class="field is-active"> |
|
<p class="control-new"> |
|
<div class="select is-small is-fullwidth is-focused"> |
|
<select id="measure1_fn" name="measure1_fn" tabindex="230"> |
|
<option class="maskinput" value="" selected="selected">Optional: Vordefinierte Transformation</option> |
|
</select> |
|
</div> |
|
</p> |
|
</div> |
|
|
|
<span class="separator"> </span> |
|
<span class="separator"> </span> |
|
|
|
<span class="info" onclick="window.open('https://super-ics.de/superx/doku/kern_modul/admin/f_Patcheinspielen.htm','_blank','directories=no,location=no,menubar=no,scrollbars=yes,resizable=yes,toolbar=no,width=800,height=660');"> |
|
<figure class="image is-24x24"> |
|
<img src="../images/information_grey_liberation.svg" /> |
|
</figure> |
|
</span> |
|
</div> |
|
|
|
<!--dq orig--> |
|
<!-- |
|
<table> |
|
<tr><th>Dimension</th><th>Auswahl</th><th>Transformation (optional)</th></tr> |
|
<tr><td>Dimension 1:</td> |
|
<td><select class="maskinputPflicht" id="dimension1" NAME="dimension1" tabindex="210"> |
|
<option class="maskinput" value="">Bitte wählen</option> |
|
</select> |
|
</td> |
|
<td><select id="dimension1_fn" NAME="dimension1_fn" tabindex="210"> |
|
<option class="maskinput" value="">vordefinierte Funktionen:</option> |
|
</select> |
|
</td> |
|
</tr> |
|
<tr><td>Dimension 2:</td> |
|
<td><select class="maskinputPflicht" id="dimension2" NAME="dimension2" tabindex="210"> |
|
<option class="maskinput" value="">Bitte wählen</option> |
|
</select> |
|
</td> |
|
<td><select id="dimension2_fn" NAME="dimension2_fn" tabindex="210"> |
|
<option class="maskinput" value="">vordefinierte Funktionen:</option> |
|
</select> |
|
</td> |
|
</tr> |
|
<tr><td>Maß:</td> |
|
<td><select class="maskinputPflicht" id="measure1" NAME="measure1" tabindex="220"> |
|
<option class="maskinput" value="">Bitte wählen</option> |
|
</select> |
|
</td> |
|
<td> |
|
<select id="measure1_fn" NAME="measure1_fn" tabindex="230"> |
|
<option class="maskinput" value="">vordefinierte Funktionen:</option> |
|
</select> |
|
</td> |
|
</tr> |
|
</table>--> |
|
|
|
</div> |
|
</form> |
|
</div> |
|
<!--Ende Formular Datenauswahl--> |
|
|
|
<span class="separator"> </span> |
|
<span class="separator"> </span> |
|
|
|
<!--Aufruf/Anzeige Daten-Vorschau--> |
|
<div class="field is-grouped"> |
|
<div class="label-container"> |
|
<label class="label is-required is-small"><strong>Daten-Vorschau</strong></label> |
|
</div> |
|
|
|
<span class="separator"> </span> |
|
<span class="separator"> </span> |
|
|
|
<!--<button class="button is-small is-rounded is-white is-outlined" |
|
onClick="selectionResultPreview('selectionResultPreviewTable');"> |
|
<span class="icon is-small"><i class="../images/more.svg"></i> |
|
<img src="../images/more.svg" title="Laden" /> |
|
</span> |
|
</button>--> |
|
<a |
|
onClick="selectionResultPreview('selectionResultPreviewTable');"> |
|
<span class="icon"> |
|
<img src="../images/icons/more.svg" title="Laden" /> |
|
</span> |
|
</a> |
|
|
|
</div> |
|
|
|
<div id="selectionResultPreview"> <!--class="section">--> |
|
<div id="selectionResultPreviewTable" style="display:none"></div> |
|
</div> |
|
|
|
<!--footer BF: nach unten verschoben--> |
|
<footer class="card-footer"> |
|
<!--<p class="card-footer-item"><button class="button is-link is-outlined is-small" onclick="selectionResultPreview('selectionResultPreviewTable');">Daten-Vorschau</button></p>--> |
|
<p class="card-footer-item"><button class="button is-link is-outlined is-small" type="submit">Speichern</button></p> |
|
<p class="card-footer-item"><button class="button is-link is-outlined is-small" type="reset">Zurücksetzen</button></p> |
|
</footer> |
|
|
|
</xsl:template> |
|
|
|
<xsl:template name="diagrammlayout"> |
|
|
|
<!--Formular Allg. Layoutmerkmale--> |
|
<div id="chartProperties"> <!--class="section">--> |
|
<form name="chartPropertiesForm"> |
|
<!--<table border="0"> |
|
<tr><td>Ausgabetyp:</td> |
|
<td><select class="maskinputPflicht" id="viz_chart_type" NAME="viz_chart_type" tabindex="200" onChange="prepareChartProperties(this.value)" > |
|
<option class="maskinput" value="">Bitte wählen</option> |
|
<option class="maskinput" value="sample">Beispiel</option> |
|
<option class="maskinput" value="bar_x">Balkendiagramm horizontal (einfach)</option> |
|
<option class="maskinput" value="bar_y">Balkendiagramm vertikal (einfach)</option> |
|
<option class="maskinput" value="area_y">Flächendiagramm vertikal (einfach)</option> |
|
<option class="maskinput" value="line">Liniendiagramm vertikal (einfach)</option> |
|
</select> |
|
</td> |
|
</tr> |
|
</table>--> |
|
|
|
<div class="label-container"> |
|
<label class="label is-required is-small"><strong>Basismerkmale</strong></label> |
|
</div> |
|
|
|
<span class="separator"> </span> |
|
<span class="separator"> </span> |
|
|
|
<div class="field is-grouped"> |
|
<div class="label-container"> |
|
<label class="label is-required is-small">Diagramm-Typ</label> |
|
</div> |
|
|
|
<div class="field is-active"> |
|
<p class="control-new"> |
|
<div class="select is-small is-fullwidth"> |
|
<select class="maskinputPflicht" id="viz_chart_type" NAME="viz_chart_type" tabindex="200" onChange="prepareChartProperties(this.value)" > |
|
<option class="maskinput" value="" selected="selected">Bitte wählen Sie</option> |
|
<xsl:for-each select="/ergebnisse/ergebnis/ergebniselement/vizTypes/vizType"> |
|
<option class="maskinput" value="{@uniquename}"><xsl:value-of select="@caption" /></option> |
|
</xsl:for-each> |
|
</select> |
|
</div> |
|
</p> |
|
</div> |
|
|
|
<span class="separator"> </span> |
|
<span class="separator"> </span> |
|
|
|
<span class="info" onclick="window.open('https://super-ics.de/superx/doku/kern_modul/admin/f_Patcheinspielen.htm','_blank','directories=no,location=no,menubar=no,scrollbars=yes,resizable=yes,toolbar=no,width=800,height=660');"> |
|
<figure class="image is-24x24"> |
|
<img src="../images/information_grey_liberation.svg" /> |
|
</figure> |
|
</span> |
|
</div> |
|
<div id="chartPropertiesForm"> <!--style="visibility:hidden" class="section"--></div> |
|
|
|
<span class="separator"> </span> |
|
<span class="separator"> </span> |
|
|
|
<!--Formular Erweiterte Layoutmerkmale--> |
|
<div class="field is-grouped"> |
|
<div class="label-container"> |
|
<label class="label is-required is-small"><strong>Zusatzmerkmale</strong></label> |
|
</div> |
|
|
|
<span class="separator"> </span> |
|
<span class="separator"> </span> |
|
|
|
<!--<button class="button is-small is-rounded is-white is-outlined" |
|
onClick="showChartPropertiesForm();"> |
|
<span class="icon is-small"><i class="../images/more.svg"></i> |
|
<img src="../images/more.svg" title="Laden" /> |
|
</span> |
|
</button>--> |
|
|
|
<a |
|
onClick="showChartPropertiesForm();"> |
|
<span class="icon"> |
|
<img src="../images/icons/more.svg" title="Laden" /> |
|
</span> |
|
</a> |
|
|
|
</div> |
|
<div id="chartPropertiesFormDetails" style="display:none"><!--<p>Eigenschaften</p>--> </div> |
|
</form> |
|
</div> |
|
<!--Ende Formular Erweiterte Layoutmerkmale--> |
|
|
|
<span class="separator"> </span> |
|
<span class="separator"> </span> |
|
|
|
<!--Aufruf/Anzeige Layout-Vorschau--> |
|
<div class="field is-grouped"> |
|
<div class="label-container"> |
|
<label class="label is-required is-small"><strong>Layout-Vorschau</strong></label> |
|
</div> |
|
|
|
<span class="separator"> </span> |
|
<span class="separator"> </span> |
|
|
|
<!--<button class="button is-small is-rounded" |
|
onClick="createChart('chartDiv');"> |
|
<span class="icon is-small"><i class="../images/more.svg"></i> |
|
<img src="../images/more.svg" title="Laden" /> |
|
</span> |
|
</button>--> |
|
<a |
|
onClick="showChartDiv('chartDiv');"> |
|
<span class="icon"> |
|
<img src="../images/icons/more.svg" title="Laden" /> |
|
</span> |
|
</a> |
|
</div> |
|
|
|
<div id="chartCanvas"> <!--class="section"--> |
|
<!--<div id="chartCanvasHeader"> </div>--> |
|
<div id="chartDiv"> <!--style="border:thin solid black"--></div> |
|
<!--<div id="chartCanvasFooter"></div>--> |
|
</div> |
|
|
|
<!--footer (BF nach unten verschoben)--> |
|
<footer class="card-footer"> |
|
<!--<p class="card-footer-item"><button class="button is-link is-outlined is-small" onClick="createChart();">Layout-Vorschau</button></p>--> |
|
<p class="card-footer-item"><button class="button is-link is-outlined is-small" type="submit">Speichern</button></p> |
|
<!--****noch anzupassen: <input name="navi" type="hidden" value="true"><input type="hidden" name="tid" value="16000"><input type="hidden" name="UserID" value="4"><input type="hidden" name="reuseresult" value="true"><input type="hidden" name="maxoffset" value=""><input type="hidden" name="contenttype" value="application/jrxml"><input type="hidden" name="irowno" value=""><input type="hidden" name="Köpfe oder Fälle ?" value="studiengang_nr = 1 and fach_nr = 1"><input type="hidden" name="Stichtag" value="6"><input type="hidden" name="Seit Semester" value="20161"><input type="hidden" name="Bis Semester" value="20221"><input type="hidden" name="Studiengang" value=""><input type="hidden" name="Fächer" value=""><input type="hidden" name="Status" value="1,2,3,5,6"><input type="hidden" name="##line##" value="1"><input type="hidden" name="Hörerstatus" value="1=1"><input type="hidden" name="##line##" value="1"><input type="hidden" name="RPTPageOrientation" value="Landscape"><input type="hidden" name="RPTPagination" value="False"></ul>--> |
|
<p class="card-footer-item"><button class="button is-link is-outlined is-small" type="reset">Zurücksetzen</button></p> |
|
</footer> |
|
|
|
</xsl:template> |
|
<xsl:template name="diagrammnutzung"> |
|
<!-- Aufruf/Anzeige Diagramm-Vorschau--> |
|
<div class="field is-grouped"> |
|
<div class="label-container"> |
|
<label class="label is-required is-small"><strong>Diagramm-Vorschau</strong></label> |
|
</div> |
|
|
|
<span class="separator"> </span> |
|
<span class="separator"> </span> |
|
|
|
<!--<button class="button is-small is-rounded is-white is-outlined" |
|
onClick="createChart('chartDiv2');"> |
|
<span class="icon is-small"><i class="../images/more.svg"></i> |
|
<img src="../images/more.svg" title="Laden" /> |
|
</span> |
|
</button>--> |
|
<a |
|
onClick="showChartDiv('chartDiv2'); createChart('chartDiv2');"> |
|
<span class="icon"> |
|
<img src="../images/icons/more.svg" title="Laden" /> |
|
</span> |
|
</a> |
|
</div> |
|
|
|
<div id="chartCanvas"> <!--class="section"--> |
|
<!--<div id="chartCanvasHeader"> </div>--> |
|
<div id="chartDiv2"> </div> |
|
<!--<div id="chartCanvasFooter"></div>--> |
|
</div> |
|
|
|
<span class="separator"> </span> |
|
<span class="separator"> </span> |
|
|
|
<!-- Aufruf/Anzeige SVG-Quellcode--> |
|
<div class="field is-grouped"> |
|
<div class="label-container"> |
|
<label class="label is-required is-small"><strong>Diagramm-Code (svg)</strong></label> |
|
</div> |
|
|
|
<span class="separator"> </span> |
|
<span class="separator"> </span> |
|
|
|
<!--<button class="button is-small is-rounded is-white is-outlined" |
|
onClick="showSrcCode();"> |
|
<span class="icon is-small"><i class="../images/more.svg"></i> |
|
<img src="../images/more.svg" title="Laden" /> |
|
</span> |
|
</button>--> |
|
<a |
|
onClick="showSrcCode();"> |
|
<span class="icon"> |
|
<img src="../images/icons/more.svg" title="Laden" /> |
|
</span> |
|
</a> |
|
</div> |
|
|
|
<div id="chartSVGsrcDiv"> <!--class="section">--> |
|
<div id="chartSVGsrc" style="display:none"> |
|
<textarea id="chartSrc" name="chartSrc" class="textarea" placeholder="Quellcode..."> <!--cols="100" rows="20"--></textarea><!--<button class="sx_buttondiv_submit" onClick="copySrcCode('chartSrc');">Kopieren</button>--> |
|
</div> |
|
</div> |
|
|
|
<!--footer (BF eingefügt *** Klärungsbedarf bzgl. notwendiger Buttons)--> |
|
<footer class="card-footer"> |
|
<!--<p class="card-footer-item"><button class="button is-link is-outlined is-small" onClick="createChart();">Diagramm-Vorschau</button></p> --> |
|
<p class="card-footer-item"><button class="button is-link is-outlined is-small" type="submit" onClick="copySrcCode('chartSrc');">Kopieren</button></p> |
|
<!--<p class="card-footer-item"><button class="button is-link is-outlined is-small" type="reset">Zurücksetzen</button></p>--> |
|
</footer> |
|
|
|
</xsl:template> |
|
</xsl:stylesheet>
|
|
|