function setHeaderExpanded(si, tid, id, state) { document.getElementById('progressbar').style.display = ""; var url = location.protocol + '//' + location.host + '/superx/servlet/SuperXmlTabelle'; //if (si) url+=';jsessionid='+si; url += '?tid=' + tid + "&reuseresult=true&"; if (state == true) url += "openHeader=" + id; else url += "closeHeader=" + id; self.location.href = url; } function createLinkForTable(refapp,colset='',colsort='') { let stylesheet = 'tabelle_html.xsl'; let ausgabe_text = 'Standard HTML mit Navigation'; let contenttype = "text/html"; let navigation = ""; //alert("Ausgabe: " + ausgabe_text + "\nstylesheet: "+ stylesheet); if (ausgabe_text.indexOf('Navi') >= 0 ){ navigation = "&navi=true"; } if (stylesheet=='tabelle_xls.xsl'){ contenttype = "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet"; } else if (stylesheet=='tabelle_fo_pdf.xsl') { contenttype = "application/pdf"; } else if (stylesheet=='tabelle_html_p.xsl') { contenttype = "text/html"; } else if (stylesheet=='tabelle_xml.xsl') { contenttype = "text/xml"; } else { //speziells Stylesheet contenttype = stylesheetcontenttype[stylesheet]; } let url = location.protocol+'//'+location.host + '/superx/servlet/SuperXmlTabelle?'; let url_sso = location.protocol+'//'+location.host + '/' + refapp + '/rds?state=redirect&sso=superx&utarget=/superx/servlet/SuperXmlTabelle?'; let params = ""; let params_sso = ''; let fields = $(document.forms[0]).serializeArray(); jQuery.each( fields, function( i, field ) { let htmlname= ''; for (j = 1; j < felder.length; j++) { if(field.name==felder[j]["htmlname"]) htmlname=felder[j]["htmlname"]; } if (field.name != 'UserID' && field.name.indexOf('contenttype') == -1 && htmlname.indexOf('##line##') == -1 && field.name.indexOf('stylesheet') == -1 && field.name.indexOf('reuseresult') == -1 && field.name.indexOf('navi') == -1 && field.value != '' && field.name.indexOf('maxoffset') == -1) { params += ( '&' + encodeURIComponent(field.name) + '=' + encodeURIComponent(field.value)); params_sso += ( '&' + field.name + '=' + field.value); } }); params += '&contenttype=' + encodeURIComponent(contenttype); params += '&stylesheet=' + encodeURIComponent(stylesheet) + navigation; params_sso += '&contenttype=' + contenttype; params_sso += '&stylesheet=' + stylesheet + navigation; if (colset!='') {params+='&colset='+encodeURIComponent(colset).replace('|','%7C');params_sso+='colset='+colset.replace('|','%7C');} if (colsort!='') {params+='&colsort='+encodeURIComponent(colsort).replace('|','%7C');params_sso+='colsort='+colset.replace('|','%7C');} if(platform=="his1") { document.getElementById('lesezeichenlink').href=url_sso + encodeURIComponent(params); } else { document.getElementById('lesezeichenlink').href=url + params; } } function lesezeichen(servlet, tid, MandantenID, params, title) { if (servlet == 'allg_vorlage') { url = 'javascript:applyMerkmale("' + params + '");'; } else { url = location.protocol + '//' + location.host + servlet + '?tid=' + tid; if (MandantenID != 'default') url += '&MandatenID=' + MandantenID; //beim IE 6 klappen die Javascript-Bookmarks nicht if (navigator.appName != "Microsoft Internet Explorer" || (navigator.appName == "Microsoft Internet Explorer" && navigator.appVersion.indexOf( "MSIE 6") == -1)) { url = 'javascript:url="' + url + '";' + params + ';for(i=0;i= 0; // Firefox 1.0+ var isFirefox = typeof InstallTrigger !== 'undefined'; // At least Safari 3+: "[object HTMLElementConstructor]" var isSafari = Object.prototype.toString.call(window.HTMLElement).indexOf( 'Constructor') > 0; // Internet Explorer 6-11 var isIE = /*@cc_on!@*/ false || !!document.documentMode; // Edge 20+ var isEdge = !isIE && !!window.StyleMedia; // Chrome 1+ var isChrome = !!window.chrome && !!window.chrome.webstore; // Blink engine detection var isBlink = (isChrome || isOpera) && !!window.CSS; document.getElementById('lesezeichenlink').href = url; document.getElementById('lesezeichenlink').innerHTML = title; if (isIE || isEdge) { document.getElementById('lesezeicheninfoIE').style.display = ''; document.getElementById('lesezeicheninfoFF').style.display = 'none'; document.getElementById('lesezeicheninfoOther').style.display = 'none'; } else if (isFirefox) { document.getElementById('lesezeicheninfoIE').style.display = 'none'; document.getElementById('lesezeicheninfoFF').style.display = ''; document.getElementById('lesezeicheninfoOther').style.display = 'none'; } else { document.getElementById('lesezeicheninfoIE').style.display = 'none'; document.getElementById('lesezeicheninfoFF').style.display = 'none'; document.getElementById('lesezeicheninfoOther').style.display = ''; } try { document.getElementById('lesezeichen_abbrechen').style.display = 'none'; document.getElementById('lesezeichen_ok').style.display = 'none'; document.getElementById('lesezeichenlinkdiv').style.display = ''; document.getElementById('lesezeichen_konfig').style.display = 'none'; } catch (e) { //falls nicht definiert auch nicht tragisch } } function lesezeichen2(servlet, tid, MandantenID, params, title) { if (servlet == 'allg_vorlage') { url = 'javascript:applyMerkmale("' + params + '");'; } else { url = location.protocol + '//' + location.host + servlet + '?tid=' + tid; if (MandantenID != 'default') { url += '&MandatenID=' + MandantenID; } url += params; } document.getElementById('lesezeichenlink').href = url; document.getElementById('lesezeichenlink').innerHTML = title; // Opera 8.0+ var isOpera = (!!window.opr && !!opr.addons) || !!window.opera || navigator.userAgent .indexOf(' OPR/') >= 0; // Firefox 1.0+ var isFirefox = typeof InstallTrigger !== 'undefined'; // At least Safari 3+: "[object HTMLElementConstructor]" var isSafari = Object.prototype.toString.call(window.HTMLElement).indexOf( 'Constructor') > 0; // Internet Explorer 6-11 var isIE = /*@cc_on!@*/ false || !!document.documentMode; // Edge 20+ var isEdge = !isIE && !!window.StyleMedia; // Chrome 1+ var isChrome = !!window.chrome && !!window.chrome.webstore; // Blink engine detection var isBlink = (isChrome || isOpera) && !!window.CSS; document.getElementById('lesezeichenlink').href = url; document.getElementById('lesezeichenlink').innerHTML = title; if (isIE || isEdge) { document.getElementById('lesezeicheninfoIE').style.display = ''; document.getElementById('lesezeicheninfoFF').style.display = 'none'; document.getElementById('lesezeicheninfoOther').style.display = 'none'; } else if (isFirefox) { document.getElementById('lesezeicheninfoIE').style.display = 'none'; document.getElementById('lesezeicheninfoFF').style.display = ''; document.getElementById('lesezeicheninfoOther').style.display = 'none'; } else { document.getElementById('lesezeicheninfoIE').style.display = 'none'; document.getElementById('lesezeicheninfoFF').style.display = 'none'; document.getElementById('lesezeicheninfoOther').style.display = ''; } try { document.getElementById('lesezeichen_abbrechen').style.display = 'none'; document.getElementById('lesezeichen_ok').style.display = 'none'; document.getElementById('lesezeichenlinkdiv').style.display = ''; document.getElementById('lesezeichen_konfig').style.display = 'none'; } catch (e) { //falls nicht definiert auch nicht tragisch } } //masken_funktionen // function maskeComboauswahlUebernehmen() { selIndex = document.forms['comboform'].elements['comboselect'].selectedIndex; if (selIndex > -1) { isFirst = true; val = ""; label = ""; for (i = 0; i < document.forms['comboform'].elements['comboselect'].options.length; i++) { if (document.forms['comboform'].elements['comboselect'].options[i].selected == true) { if (isFirst == false) { val += ","; label += ";"; } else isFirst = false; val += document.forms['comboform'].elements['comboselect'].options[i].value; label += document.forms['comboform'].elements['comboselect'].options[i].text; } } document.forms[0].elements[Feldname].value = val; //document.getElementById("label_"+Feldname).innerHTML=label; //document.forms[0].elements["label_"+Feldname].value=label; document.forms[0].elements["label_" + createVarname(Feldname)].value = label; } else { document.forms[0].elements[Feldname].value = ''; //document.getElementById("label_"+Feldname).innerHTML='nichts gewählt'; document.forms[0].elements["label_" + createVarname(Feldname)].value = "nichts gewählt"; } zeigeCombosIE6(); } // end combo // start sicht function suchauswahlUebernehmen() { keys = ""; names = ""; itemcount = 0; for (i = 0; i < document.getElementById('suchselect').options.length; i++) { if (document.getElementById('suchselect').options[i].selected) { if (itemcount > 0) { keys += ","; names += ","; } itemcount++; keys += document.getElementById('suchselect').options[i].value; names += document.getElementById('suchselect').options[i].text; } } //document.getElementById("label_"+Feldname).innerHTML=names; document.forms[0].elements["label_" + createVarname(Feldname)].value = names; document.forms[0].elements[Feldname].value = keys; zeigeCombosIE6(); } function maskeSichtauswahlUebernehmen() { var selnodes = dojo.widget.byId("treeSelector").selectedNodes; if (selnodes.length && selnodes.length > 0) { keys = ""; names = ""; for (i = 0; i < selnodes.length; i++) { if (i > 0) { keys += ","; names += ","; } keys += selnodes[i].objectId; names += selnodes[i].title; } //document.getElementById("label_"+Feldname).innerHTML=names; if (document.forms[0].elements["label_" + createVarname(Feldname)]) document.forms[0].elements["label_" + createVarname(Feldname)].value = names; document.forms[0].elements[Feldname].value = keys; } else { document.forms[0].elements[Feldname].value = ""; //document.getElementById("label_"+Feldname).innerHTML="nichts gewählt"; document.forms[0].elements["label_" + createVarname(Feldname)].value = "nichts gewählt"; } zeigeCombosIE6(); } //copy in TreeLoadingControllerSx function purgeval(data) { var res; var commentOK = false; //dojo.debug("check:"+data.indexOf+" "+data.indexOf("\/\*")+" "+data.lastIndexOf("\*\/")); if (data.indexOf && data.indexOf("\/\*") > -1 && data.lastIndexOf("\*\/") > 1) commentOK = true; if (commentOK) { // dojo.debug("go"); //dojo.debug(data.substring(data.indexOf("\/\*")+2)); //dojo.debug(data.substring(0,data.lastIndexOf("\*\/"))); //dojo.debug(data.substring(data.indexOf("\/\*")+2, data.lastIndexOf("\*\/"))); data = data.substring(data.indexOf("\/\*") + 2, data.lastIndexOf("\*\/")); //dojo.debug("to parse:"+data); res = eval(data, "UTF-8"); //dojo.debug("res:"+res); } if (!commentOK || !res) { alert("Unerwartete Serverantwort " + res); } return res; } // start date stuff function isDate(str) { var result = false; if (str) { var pos1 = str.indexOf('.'); //dojo.debug(str+pos1); var pos2 = str.lastIndexOf('.'); //dojo.debug(pos2) if (pos1 && pos1 > -1 && pos2 && pos2 > pos1 && str.length > pos2) { var day = str.substring(0, pos1); if (day && day >= 1 && day <= 31) { var month = str.substring(pos1 + 1, pos2); if (month && month > 0 && month <= 12) { var year = str.substring(pos2 + 1); if (year <= 30) year = '20' + year; if (year > 30 && year < 100) year = '19' + year; //dojo.debug(month+" "+day+" "+year); var d = Date.parse(month + " " + day + " " + year); //var date=new Date(year,month,day); date = new Date(d); //dojo.debug(date); //dojo.debug(date.toString()); result = true; } } } } //dojo.debug(str+" "+result); return result; } function isToday(str) { var result = false; if (str) { var pos1 = str.indexOf('.'); var pos2 = str.lastIndexOf('.'); if (pos1 && pos1 > -1 && pos2 && pos2 > pos1 && str.length > pos2) { var day = str.substring(0, pos1); if (day && day >= 1 && day <= 31) { var month = str.substring(pos1 + 1, pos2); if (month && month > 0 && month <= 12) { var year = str.substring(pos2 + 1); if (year <= 30) year = '20' + year; if (year > 30 && year < 100) year = '19' + year; var d = Date.parse(month + " " + day + " " + year); var date = new Date(d); var today = new Date(); if (date.getDate() == today.getDate() && date.getMonth() == today.getMonth() && date.getYear() == today.getYear()) result = true; } } } } //dojo.debug(str+" "+result); return result; } // end date stuff //zu versuchszwecken derzeit nicht im Einsatz function sx_encode(text) { var f = escape(text); //Umlaut in Standard URL-Encoding nicht Unicode //äöüÄÖÜß + f = f.replace(/ä/g, "%E4"); // f = f.replace(/Ä/g, "%C4"); // f = f.replace(/ü/g, "%FC"); // f = f.replace(/Ü/g, "%DC"); // f = f.replace(/ö/g, "%F6"); // f = f.replace(/Ö/g, "%D6"); // f = f.replace(/ß/g, "%DF"); // alert(f); return f; } function adaptFeldnameHTML(Feldname) { var f = Feldname; f = f.replace(/ä/g, "ä"); f = f.replace(/Ä/g, "Ä"); f = f.replace(/ü/g, "ü"); f = f.replace(/Ü/g, "Ü"); f = f.replace(/ö/g, "ö"); f = f.replace(/Ö/g, "Ö"); f = f.replace(/ß/g, "ß"); return f; } //ACHTUNG: muss funktion in xsl_functions.xsl entsprechen! function createVarname(Feldname) { var f = Feldname; f = f.replace(/\u00e4/g, "ae"); f = f.replace(/\u00c4/g, "Ae"); f = f.replace(/\u00f6/g, "oe"); f = f.replace(/\u00d6/g, "ae"); f = f.replace(/\u00fc/g, "ue"); f = f.replace(/\u00dc/g, "Ue"); f = f.replace(/\u00df/g, "ss"); f = f.replace(/ä/g, "ae"); f = f.replace(/Ä/g, "Ae"); f = f.replace(/ü/g, "ue"); f = f.replace(/Ü/g, "Ue"); f = f.replace(/ö/g, "oe"); f = f.replace(/Ö/g, "Oe"); f = f.replace(/ß/g, "ss"); f = f.replace(/ /g, "_"); f = f.replace(/,/g, ""); f = f.replace(/\?/g, ""); f = f.replace(/!/g, ""); f = f.replace(/\^/g, ""); f = f.replace(/%/g, ""); f = f.replace(/\//g, ""); f = f.replace(/\*/g, ""); f = f.replace(/#/g, ""); f = f.replace(/\|/g, ""); f = f.replace(/\$/g, ""); f = f.replace(/\(/g, ""); f = f.replace(/\)/g, ""); return f; } //not needed now function sx_adaptUrl(url, MandantenId) { if (url.indexOf('jsession') > -1) { newurl = url.substring(0, url.indexOf('jsession') - 1) + url.substring(url.indexOf( '?'), url.length); url = newurl; } url = paramRaus(url, 'kennung'); url = paramRaus(url, 'passwort'); url = paramRaus(url, 'cachingcontrol'); if (MandantenId != 'default') url += "&MandantenID=" + MandantenId; return url; } function paramRaus(url, param) { newurl = url; parampos = url.indexOf(param); if (parampos > -1) { newurl = url.substring(0, parampos - 1); //alert(newurl); pos2 = url.substring(parampos, url.length - 1).indexOf('&'); //alert(pos2) if (pos2 > -1) newurl = newurl + url.substring(parampos + pos2, url.length); } return newurl; } // ---------------------------------------------------------------------- function sichtEintraegeSuchen(was) { var callurl = '/superx/servlet/SuperXmlMaske'; //if(jsessionid != '') // callurl += ';jsessionid='+jsessionid; callurl += '?tid=' + maskentid + '&getJSON_' + getEncoded(Feldname) + '=search:' + getEncoded(was); document.getElementById('progressbar').style.display = ""; dojo.io.bind({ url: callurl, encoding: "UTF-8", method: "get", handler: function(type, data, evt) { var da = purgeval(data); if (type == 'error' || da.error) { document.getElementById('progressbar').style.display = "none"; if (da.error) msg = da.error; else msg = data.message; alert('Fehler beim Lesen der Daten!\n' + msg); } else { document.getElementById('suchok').style.display = 'none'; document.getElementById('suchselect').options.length = 0; if (da.length > 0) { document.getElementById('suchuebernehmen').style.display = ''; for (i = 0; i < da.length; i++) { document.getElementById('suchselect').options[i] = new Option(da[i].title, da[i].objectId); } } else { document.getElementById('suchselect').options[0] = new Option( "kein Eintrag gefunden", "-999999"); document.getElementById('suchuebernehmen').style.display = 'none'; } document.getElementById('suchselect').style.display = ''; document.getElementById('progressbar').style.display = "none"; } } }); } // params sollten schon passend escaped sein function maskeSichtLaden(fname, cap, params1) { resetValidation(); if (fname) Feldname = fname; caption = cap; // // var callurl = '/superx/servlet/SuperXmlMaske'; //if(jsessionid != '') //callurl += ';jsessionid='+jsessionid; callurl += '?tid=' + maskentid + '&getJSON_' + getEncoded(Feldname) + '=xxxxxx-xxxxxx@'; // MB 1/2016 auch fuer Sichtenladen Parameter uebergeben var params = ""; for (i = 1; i < felder.length; i++) { //alert(i+"_"+felder[i]["htmlname"]); e = document.forms['maske'].elements[felder[i]["htmlname"]]; //alert(felder[i]["htmlname"]+" "+e); if (e) { var t = e.type; var name = felder[i]["name"]; if (name == Feldname || t == 'button' || t == 'submit' || t == 'reset' || t == 'hidden') continue; //todo bei startsWith select_ label_ auch überspringen if (e.value != '') //leere Felder müssen auch übergeben werden MB!! // 1/2016 MB dies geht nicht weil ISO kodiert //params+="&"+felder[i]["cb_name"]+"="+encodeURIComponent(e.value); params += "&" + getEncoded(felder[i]["htmlname"]) + "=" + getEncoded(e.value); else params += "&" + getEncoded(felder[i]["htmlname"]) + "=--leer--"; } } if (params1) callurl += "&" + params1; callurl += params; // alert(callurl); versteckeCombosIE6(); document.getElementById('progressbar').style.display = ""; dojo.widget.byId("selTree").setChildren(new Array()); dojo.io.bind({ url: callurl, encoding: "UTF-8", method: "get", handler: function(type, data, evt) { var da = purgeval(data); if (type == 'error' || da.error) { document.getElementById('progressbar').style.display = "none"; // if (da.error) msg = da.error; else msg = data.message; alert('Fehler beim Lesen der Daten!\n' + msg); } else { dojo.widget.byId("treeLoadingController").setRpcActionParam('getJSON_' + getEncoded(Feldname)); sichten = da.sichten; dojo.widget.byId('treeSelector').allowedMulti = sichten.isMultiSelection; dojo.widget.byId('treeSelector').deselectAll(); //alte Selektionen entfernen if (sichten.isMultiSelection) { document.getElementById("sichthintmulti").style.display = ""; document.getElementById("suchselect").multiple = true; } else { document.getElementById("sichthintmulti").style.display = "none"; document.getElementById("suchselect").multiple = false; } dojo.widget.byId("selTree").setChildren(da.nodes); if (!caption || caption == '') caption = Feldname; document.getElementById("sichtElementName").innerHTML = 'Auswahl ' + caption; if (sichten.count > 1) { document.getElementById("sicht").style.display = ""; document.getElementById("sicht").innerHTML = "Sicht: " + sichten .selected.name; document.getElementById("sichtbutton").style.display = ""; document.forms['sichtauswahlform'].sichtselect.options.length = 0; document.forms['sichtauswahlform'].sichtselect.options[0] = new Option( sichten.selected.name, sichten.selected.name_intern); for (i = 0; i < sichten.other.length; i++) { document.forms['sichtauswahlform'].sichtselect.options[i + 1] = new Option( sichten.other[i].name, sichten.other[i].name_intern); } } else { document.getElementById("sicht").style.display = "none"; document.getElementById("sichtbutton").style.display = "none"; } if (sichten.selected.stand == true) { document.getElementById("stand").style.display = ""; document.getElementById("stand").innerHTML = "Stand: " + sichten .stand; document.getElementById("standbutton").style.display = ""; } else { document.getElementById("stand").style.display = "none"; document.getElementById("standbutton").style.display = "none"; } if (da.nodes.length == 1) { var d = dojo.widget.byId('treeLoadingController').expandToLevel(dojo.widget .byId('selTree'), 1); //d.addCallback(function() { alert('done') }); } document.getElementById('progressbar').style.display = "none"; sichtdlg.show(); } } }); } // // function maskeTextareaUebernehmen() { var eingabe = document.forms['textareaform'].elements['textarea_fld'].value; if (eingabe != "") { if (eingabe.length > 50) label = eingabe.substring(0, 49) + ".."; else label = eingabe; document.forms[0].elements[createVarname(Feldname)].value = eingabe; document.forms[0].elements["label_" + createVarname(Feldname)].value = label; } else { document.forms[0].elements[createVarname(Feldname)].value = ''; document.forms[0].elements["label_" + createVarname(Feldname)].value = "nichts gewählt"; } zeigeCombosIE6(); } function textareaLaden(fname, cap) { Feldname = fname; caption = cap; if (!cap || cap == '') caption = Feldname; document.getElementById("textareaElementName").innerHTML = 'Eingabe ' + caption; document.forms['textareaform'].elements["textarea_fld"].value = document.forms[ 0].elements[Feldname].value; versteckeCombosIE6(); textareadlg.show(); } // function initMaske(e) { sichtdlg = dojo.widget.byId("sichtdlg"); //dojo.debugDeep(sichtdlg); sichtdlg._onKey = null; combodlg = dojo.widget.byId("combodlg"); combodlg._onKey = null; textareadlg = dojo.widget.byId("textareadlg"); combodlg._onKey = null; lesezeichendlg = dojo.widget.byId("lesezeichendlg"); combodlg._onKey = null; sichtauswahl = dojo.widget.byId("sichtauswahl"); combodlg._onKey = null; selector = dojo.widget.byId("treeSelector"); dojo.widget.byId('Standeingabedlg')._onKey = null; for (i = 0; i < document.forms['maske'].elements.length; i++) { e = document.forms['maske'].elements[i]; if (e.getAttribute('class') == "schluesselfeld") e.style.display = "none"; } document.getElementById('progressbar').style.display = "none"; } function maskeSichtstandAendern() { var eingabe = document.getElementById('gewuenschterStand').value; if (eingabe && eingabe != '' && eingabe != sichten.stand) { sichten.stand = eingabe; maskeSichtLaden(Feldname, caption, getEncoded(Feldname) + "-aktualisieren=true&" + getEncoded(Feldname) + "-Stand=" + eingabe); document.forms['maske'].elements[createVarname(Feldname) + "_Standmerker"].value = eingabe; } } function maskeSichtAendern() { index = document.forms['sichtauswahlform'].sichtselect.selectedIndex; sichtname_intern = document.forms['sichtauswahlform'].sichtselect.options[ index].value; maskeSichtLaden(Feldname, caption, getEncoded(Feldname) + "-aktualisieren=true&" + getEncoded(Feldname) + "-Sicht=" + getEncoded( sichtname_intern)); document.forms['maske'].elements[createVarname(Feldname) + "_Sichtmerker"].value = sichtname_intern; sichtauswahl.hide(); } function maskeTogglekeyfields() { document.forms['maske'].elements.keyfieldsused.value = "true"; for (i = 0; i < document.forms['maske'].elements.length; i++) { e = document.forms['maske'].elements[i]; if (e.getAttribute('class') == "schluesselfeld" || e.className == "schluesselfeld") if (e.style.display != "none") { e.style.display = "none"; } else e.style.display = ""; } } //ende 1 // start Lesezeichen function maskepreparelesezeichendlg() { document.getElementById('lesezeichenlinkdiv').style.display = 'none'; document.getElementById('lesezeichen_konfig').style.display = ''; document.getElementById('lesezeichen_abbrechen').style.display = ''; document.getElementById('lesezeichen_ok').style.display = ''; x = document.getElementById('lesezeichen_checkboxen'); while (x.hasChildNodes()) x.removeChild(x.childNodes[0]); for (var i = 1; i <= felder.length - 1; i++) { if (felder[i]["attribut"] != 'hidden') { if (document.getElementById(felder[i]["name"]) != null && document.getElementById( felder[i]["name"]).value != '') { p = document.createElement("p"); p.appendChild(document.createTextNode(felder[i]["caption_short"] + ':' + document.getElementById(felder[i]["name"]).value)); cb = document.createElement("input"); cb.type = "checkbox"; cb.name = "lesezeichen_fuer_feld_" + felder[i]["htmlname"]; //MB 29.9.2008 htmlname statt cb_name cb.fieldId = felder[i]["name"]; cb.value = "on"; cb.defaultChecked = true; p.appendChild(cb); x.appendChild(p); } } } } // don't encode in IE function sx_part_encode(str) { if (navigator.appVersion.indexOf("MSIE") == -1) { //str=encodeURIComponent(str); str = getEncoded(str); } return str; } //somebody explain why FF needs encoding, IE not for Maskenservlet, different in Tabelle --> //weitere Parameter wie z.B. stylesheet werden nicht berücksichtigt function prepareLesezeichenLink() { allg_vorlage = document.getElementById('lesezeichen_vorlage').checked; if (allg_vorlage) { if (navigator.appVersion.indexOf("MSIE 6") == -1) { servlet = 'allg_vorlage'; title = 'Meine Vorlage'; var lis = document.getElementById('lesezeichen_checkboxen').getElementsByTagName( "input"); params = '/*(['; var count = 0; for (var x = 0; x < lis.length; x++) { if (lis[x].checked == true) { if (count > 0) params += ','; count++; feldname = lis[x].name.substring(22, lis[x].name.length); //adaptFeldnameHTML(feldname) hat Ärger im IE gemacht params += "{n:'" + sx_part_encode(feldname) + "',k:'" + sx_part_encode( document.getElementById(lis[x].fieldId).value) + "'"; if (document.forms['maske'].elements[lis[x].fieldId + "_Sichtmerker"]) params += ",sichtparam:'" + sx_part_encode(document.forms['maske'].elements[ lis[x].fieldId + "_Sichtmerker"].value) + "'"; if (document.forms['maske'].elements[lis[x].fieldId + "_Standmerker"]) { var stand = document.forms['maske'].elements[lis[x].fieldId + "_Standmerker"].value; if (stand && isDate(stand) && !isToday(stand)) params += ",standparam:'" + stand + "'"; } params += "}"; } } params += '])*/'; } else { alert( 'Mit dem Browser Internet Explorer 6 ist diese Funktion leider nicht nutzbar' ); } } else { servlet = '/superx/servlet/SuperXmlMaske'; title = 'Maske ' + maskenname; var lis = document.getElementById('lesezeichen_checkboxen').getElementsByTagName( "input"); params = 'p=['; for (var x = 0; x < lis.length; x++) { if (lis[x].checked == true) { feldname = lis[x].name.substring(22, lis[x].name.length); params += "{\"n\":\"" + sx_part_encode(feldname) + "\",\"k\":\"" + sx_part_encode(document.getElementById(lis[x].fieldId).value) + "\"},"; if (document.forms['maske'].elements[lis[x].fieldId + "_Sichtmerker"]) params += "{\"n\":\"" + sx_part_encode(feldname) + "-Sicht\",\"k\":\"" + sx_part_encode(document.forms['maske'].elements[lis[x].fieldId + "_Sichtmerker"].value) + "\"},"; if (document.forms['maske'].elements[lis[x].fieldId + "_Standmerker"]) { var stand = document.forms['maske'].elements[lis[x].fieldId + "_Standmerker"].value; if (stand && isDate(stand) && !isToday(stand)) params += "{\"n\":\"" + sx_part_encode(feldname) + "-Stand\",\"k\":\"" + document.forms['maske'].elements[lis[x].fieldId + "_Standmerker"].value + "\"},"; } //title+=" "+feldname+":"+document.getElementById(lis[x].fieldId).value; } } params = params.substring(0, params.length - 1) + "]"; //letztes Komma überschreiben } lesezeichen(servlet, maskentid, mandantenID, params, title); } // // function prepareLesezeichenLink2() { allg_vorlage = document.getElementById('lesezeichen_vorlage').checked; if (allg_vorlage) { if (navigator.appVersion.indexOf("MSIE 6") == -1) { servlet = 'allg_vorlage'; title = 'Meine Vorlage'; var lis = document.getElementById('lesezeichen_checkboxen').getElementsByTagName( "input"); params = '/*(['; var count = 0; for (var x = 0; x < lis.length; x++) { if (lis[x].checked == true) { if (count > 0) params += ','; count++; feldname = lis[x].name.substring(22, lis[x].name.length); //adaptFeldnameHTML(feldname) hat Ärger im IE gemacht params += "{n:'" + sx_part_encode(feldname) + "',k:'" + sx_part_encode( document.getElementById(lis[x].fieldId).value) + "'"; if (document.forms['maske'].elements[lis[x].fieldId + "_Sichtmerker"]) params += ",sichtparam:'" + sx_part_encode(document.forms['maske'].elements[ lis[x].fieldId + "_Sichtmerker"].value) + "'"; if (document.forms['maske'].elements[lis[x].fieldId + "_Standmerker"]) { var stand = document.forms['maske'].elements[lis[x].fieldId + "_Standmerker"].value; if (stand && isDate(stand) && !isToday(stand)) params += ",standparam:'" + stand + "'"; } params += "}"; } } params += '])*/'; } else { alert( 'Mit dem Browser Internet Explorer 6 ist diese Funktion leider nicht nutzbar' ); } } else { servlet = '/superx/servlet/SuperXmlMaske'; title = 'Maske '+maskenname; var lis = document.getElementById('lesezeichen_checkboxen').getElementsByTagName( "input"); params = ''; for (var x = 0; x < lis.length; x++) { if (lis[x].checked == true) { params += "&"; feldname = lis[x].name.substring(22, lis[x].name.length); params += sx_part_encode(feldname) + "=" + sx_part_encode(document.getElementById( lis[x].fieldId).value); if (document.forms['maske'].elements[lis[x].fieldId + "_Sichtmerker"]) params += "&" + sx_part_encode(feldname) + "-Sicht=" + sx_part_encode( document.forms['maske'].elements[lis[x].fieldId + "_Sichtmerker"].value); if (document.forms['maske'].elements[lis[x].fieldId + "_Standmerker"]) { var stand = document.forms['maske'].elements[lis[x].fieldId + "_Standmerker"].value; if (stand && isDate(stand) && !isToday(stand)) params += "&" + sx_part_encode(feldname) + "-Stand=" + document.forms[ 'maske'].elements[lis[x].fieldId + "_Standmerker"].value; } //title+=" "+feldname+":"+document.getElementById(lis[x].fieldId).value; } } } params+= "&navi=true"; lesezeichen2(servlet, maskentid, mandantenID, params, title); } function maskeComboLaden(fname, caption) { resetValidation(); Feldname = fname; var callurl = '/superx/servlet/SuperXmlMaske'; //if (jsessionid!='') callurl+=";jsessionid="+jsessionid; callurl += "?tid=" + maskentid + "&getJSON_" + getEncoded(Feldname) + '=xxxxxx-xxxxxx@'; var params = ""; /* for (i=0;i-1) splitchar="\|"; var currentFieldValueArray = currentFieldValue.split(splitchar); var currentFieldValueCount=currentFieldValueArray.length; combodlg.show(); dojo.io.bind({ url: callurl + params, encoding: "UTF-8", method: "get", handler: function(type, data, evt) { var da = purgeval(data); if (type == 'error' || da.error) { // if (da.error) msg = da.error; else msg = data.message; document.getElementById('progressbar').style.display = "none"; alert('Fehler beim Lesen der Daten!\n' + msg); combodlg.hide(); } else { nodes = da.nodes; document.forms['comboform'].comboselect.options.length = 0; if (nodes.length == 0) { document.forms['comboform'].comboselect.options[0] = new Option( "keine Auswahl möglich", ""); } else { if (da.zeilenanzahl > 1 && nodes.length > 1) { document.forms['comboform'].comboselect.size = 10; document.forms['comboform'].comboselect.multiple = true; document.getElementById("multiselecthint").style.display = ""; document.getElementById("suchselect").multiple = true; } else { document.forms['comboform'].comboselect.size = 1; document.forms['comboform'].comboselect.multiple = false; document.getElementById("multiselecthint").style.display = "none"; document.getElementById("suchselect").multiple = false; } for (i = 0; i < nodes.length; i++) { sel = false; if (nodes[i].isSelected && nodes[i].objectId !="") sel = true; if(currentFieldValue && nodes[i].objectId !="" && currentFieldValueArray.includes(nodes[i].objectId) ) sel=true; //-------------------HIER IST DER ANGEPASSTE CODE------------------------------------------------------------------------ title = nodes[i].title; var o = new Option(title, nodes[i].objectId, sel, sel); document.forms['comboform'].comboselect.options[i] = o; if (nodes[i].nodeattrib && nodes[i].nodeattrib == 3) o.innerHTML = "  " + title; //---------------------------------------- BIS HIER ------------------------------------------------------------- } document.getElementById("comboload").style.display = "none"; document.getElementById("comboselect").style.display = ""; } document.getElementById('progressbar').style.display = "none"; } } }); } function validateForm(frm, platform) { //Prüft ob Pflichtfelder ausgefüllt sind. var anzElem = frm.elements.length - 1; var fieldok = false; var zs = ""; var zsradio = ""; var anzFelder = felder.length; var achtung = "Achtung:
"; if (platform == "his1") achtung = ""; var his1_stern = ""; if (platform == "his1") his1_stern = "* "; for (var i = 1; i < anzFelder; i++) { //e=frm.elements[i]; //if (e.getAttribute('class')=="maskinputPflicht" || e.className=="maskinputPflicht") if (felder[i]["obligatorisch"] == '1') { e = frm.elements[felder[i]["htmlname"]]; if (e) { if (e.type == "text" || e.type == "textarea" || e.type == "hidden" || e.type == "password") { if (e.value != "") fieldok = true; } else { if (e.type == "select-one") { if (e.options[e.selectedIndex].value != "") fieldok = true; } else { if (e.type == "radio") { if (zs.indexOf(e.name.toUpperCase()) < 0) { if (getRadioValue(frm, e.name) != "") fieldok = true; } else fieldok = true; } else //alle anderen Felder werden nicht validiert fieldok = true; } } if (!fieldok) { var e_name = e.name; if (e_name.indexOf("select_") == 0) e_name = e_name.substring(7, e_name.length); zs += his1_stern + "Bitte füllen Sie das Feld " + felder[i][ "caption_short" ] + " aus.
"; //zs+=his1_stern+"Bitte füllen Sie das Feld "+felder[i]["caption_short"]+ " aus.
"; //zs+=his1_stern+"Bitte fuellen Sie das Feld "+e_name + " aus.
"; } zsradio = ""; fieldok = false; } //Wenn Feld überhaupt drin ist } } var semester_ok = semester_validate(); if (!semester_ok) { zs += his1_stern + "Bitte wählen Sie in Seit Semester ein Semester aus welches vor Bis Semester liegt.
"; //zs +=his1_stern+"Bitte wählen Sie in Seit Semester ein Semester aus welches vor Bis Semester liegt."; } var release_year_ok = release_year_validate(); if (!release_year_ok) { zs += his1_stern + "Publikationsjahr von: Der eingegebene Wert ist größer als der eingegebene Wert in Publikationsjahr bis.
"; //zs +=his1_stern+"Publikationsjahr von: Der eingegebene Wert ist größer als der eingegebene Wert in Publikationsjahr_bis."; } var release_from_year_ok = release_from_year_as_jjjj_validate(); if (!release_from_year_ok) { zs += his1_stern + "Publikationsjahr von: entspricht nicht dem Format jjjj.
"; //zs +=his1_stern+"Publikationsjahr von: entspricht nicht dem Format "jjjj"."; } var release_until_year_ok = release_until_year_as_jjjj_validate(); if (!release_until_year_ok) { zs += his1_stern + "Publikationsjahr bis: entspricht nicht dem Format jjjj.
"; //zs +=his1_stern+"Publikationsjahr bis: entspricht nicht dem Format "jjjj"."; } var semesterverl_ok = semesterverl_validate(); if (!semesterverl_ok) { zs += his1_stern + "Bitte wählen Sie in Einschreibsemester ein Semester aus welches vor Bis Semester und vor Verlaufsbetr. bis. liegt sowie in Bis Semester ein Semester aus welches vor Verlaufsbetr. bis. liegt.
"; //zs +=his1_stern+"Bitte wählen Sie in Seit Semester ein Semester aus welches vor Bis Semester liegt."; } var datenblatt_ok = datenblatt_validate(); if (!datenblatt_ok) { zs += his1_stern + "Wenn Sie in dem Button Bericht das generische Standardlayout wählen, müssen Sie bei dem Button Ausgabeformat HTML auswählen.
"; zs += his1_stern + "Bericht: " + document.getElementById( 'select_tablestylesheet').value + "
Ausgabeformat: " + document.getElementById( 'select_Ausgabeformat').value + "
"; //zs +=his1_stern+"Bitte wählen Sie in Seit Semester ein Semester aus welches vor Bis Semester liegt."; } if (zs == "") { frm.stylesheet.value = ''; //wenn alles OK ist noch ggfs bei Texteingabefelder art=0 und Defaultwert ggfs. "--leer--" statt Leerstring setzen, damit evtl. vorhandener Defaultwert aus DB den Leerstring nicht überschreibt for (var i = 1; i < felder.length; i++) { if (felder[i]["art"] == '0' && felder[i]["hasDefaultDbValue"] != null && felder[i]["hasDefaultDbValue"] == 'true') { var tmp_field = document.getElementById(felder[i]["name"]); if (tmp_field.value == null || tmp_field.value == "") tmp_field.value = "--leer--"; } } return true; } else { document.getElementById('validation').innerHTML = "

" + achtung + zs + "

"; return false; } } function semester_validate() { if ((document.getElementById('select_Seit_Semester') != null) && (document.getElementById( 'select_Bis_Semester') != null)) { sem_von = document.getElementById('select_Seit_Semester').value; sem_bis = document.getElementById('select_Bis_Semester').value; if ((sem_von != "" && sem_bis != "")) { if (sem_von <= sem_bis) { return true; } else { return false; } } else { return true; } } else { return true; } } function release_year_validate() { if ((document.getElementById('select_Publikationsjahr_von') != null) && (document.getElementById( 'select_Publikationsjahr_bis') != null)) { Publikationsjahr_von = document.getElementById('select_Publikationsjahr_von').value; Publikationsjahr_bis = document.getElementById('select_Publikationsjahr_bis').value; if ((Publikationsjahr_von != "" && Publikationsjahr_bis != "")) { if (Publikationsjahr_von <= Publikationsjahr_bis) { return true; } else { return false; } } else { return true; } } else { return true; } } function release_from_year_as_jjjj_validate() { if (document.getElementById('Publikationsjahr_von') != null) { Publikationsjahr_von = document.getElementById('Publikationsjahr_von').value; if (Publikationsjahr_von !== "") { if (Publikationsjahr_von > 999 && Publikationsjahr_von < 3000) { return true; } else { return false; } } else { return true; } } else { return true; } } function release_until_year_as_jjjj_validate() { if (document.getElementById('Publikationsjahr_bis') != null) { Publikationsjahr_bis = document.getElementById('Publikationsjahr_bis').value; if (Publikationsjahr_bis !== "") { if (Publikationsjahr_bis > 999 && Publikationsjahr_bis < 3000) { return true; } else { return false; } } else { return true; } } else { return true; } } function semesterverl_validate() { if ((document.getElementById('select_Einschreibsemester') != null) && ( document.getElementById('select_Verlaufsbetr._bis') != null)) { sem_bis = document.getElementById('select_Bis_Semester').value; einschreibsemester = document.getElementById('select_Einschreibsemester').value; verlaufsbetrbis = document.getElementById('select_Verlaufsbetr._bis').value; if (sem_bis != "") { if ((einschreibsemester != "") && (verlaufsbetrbis != "")) { if (einschreibsemester <= sem_bis) { if (sem_bis <= verlaufsbetrbis) { //alert('richtig'); return true; } else { //alert('falsch'); return false; } } else { //alert('falsch'); return false; } } else { return false; } } else { if (einschreibsemester <= verlaufsbetrbis) { //alert('richtig1'); return true; } else { //alert('falsch1'); return false; } } } else { return true; } } function datenblatt_validate() { if ((document.getElementById('select_tablestylesheet') != null) && (document.getElementById( 'select_Ausgabeformat') != null)) { bericht = document.getElementById('select_tablestylesheet').value; ausgfor = document.getElementById('select_Ausgabeformat').value; if ((bericht != "" && ausgfor != "")) { if (bericht == "tabelle_html.xsl" && ausgfor != "text/html") { return false; } else { return true; } } else { return true; } } else { return true; } } function report_validate() { if ((document.getElementById('select_tablestylesheet') != null) && (document.getElementById( 'select_Ausgabeformat') != null)) { bericht = document.getElementById('select_tablestylesheet').value; ausgfor = document.getElementById('select_Ausgabeformat').value; if (bericht != "" && ausgfor != "" && ausgfor == "text/html") { if (/.jrxml/.test(bericht)) { $("#SuperXMaske").prop("target", "_blank"); } else { $("#SuperXMaske").prop("target", ""); } return true; } return true; } return true; } function versteckeCombosIE6() //Dies ist ein Workaround für den IE //Comboboxen scheinen beim IE durch Layer durch. //siehe http://support.microsoft.com/default.aspx?scid=http://support.microsoft.com:80/support/kb/articles/q177/3/78.asp&NoWebContent=1 //oder http://dotnetjunkies.com/WebLog/jking/archive/2003/07/21/488.aspx //Alle Combos ausser Sichtenauswahlbuttons werden ausgeblendet. { if (navigator.appVersion.indexOf("MSIE 6") > -1) { for (var i = 0; i < document.forms[0].elements.length; i++) { //alert(document.forms[0].elements[i].type +'-'+document.forms[0].elements[i].name); if (document.forms[0].elements[i].type && document.forms[0].elements[i].type .indexOf("select-one") > -1) document.forms[0].elements[i].style.display = "none"; } } } function zeigeCombosIE6() { if (navigator.appVersion.indexOf("MSIE 6") > -1) { for (var i = 0; i < document.forms[0].elements.length; i++) { if (document.forms[0].elements[i].type && document.forms[0].elements[i].type .indexOf("select-one") > -1) document.forms[0].elements[i].style.display = "inline"; } } } function enterClicksButton(buttonName, e) { //the purpose of this function is to allow the enter key to //point to the correct button to click. var key; if (window.event) key = window.event.keyCode; //IE else key = e.which; //firefox if (key == 13) { //Get the button the user wants to have clicked var btn = document.getElementById(buttonName); if (btn != null) { //If we find the button click it btn.click(); // e.keyCode = 0 } } } function getEncoded(fname_orig) { //diese Zeile wird beim build mit utf8 oder iso belegt: var myEncoding = "UTF-8"; var fname_encoded = "unknown"; //nur bei Unicode darf encodeURIComponent benutzt werden if (myEncoding.charAt(0) == "U") //Platzhalter für Unicode, soll beim build nicht ersetzt werden fname_encoded = encodeURIComponent(fname_orig); else fname_encoded = escape(fname_orig).replace("+", "%2B"); return fname_encoded; } function getFieldName(position) { return felder[position]["htmlname"]; } var cssdropdown = { disappeardelay: 250, // Millisekunden in denen das Menü verschwindet dropdownindicator: '', // Pfeil nach unten nach dem Test im Dropdownmenü enablereveal: [true, 5], // swipe effect aktivieren? [true/false, stufen (Nummer der Animationsstufen. Integer zwischen 1-20. je kleiner die Zahl, desto schneller öffnet sich das Manü)] enableiframeshim: 1, // für IE5.5 - IE7? (1=ja, 0=nein) dropmenuobj: null, asscmenuitem: null, domsupport: document.all || document.getElementById, standardbody: null, iframeshimadded: false, revealtimers: {}, getposOffset: function(what, offsettype) { var totaloffset = (offsettype == "left") ? what.offsetLeft : what.offsetTop; var parentEl = what.offsetParent; while (parentEl != null) { totaloffset = (offsettype == "left") ? totaloffset + parentEl.offsetLeft : totaloffset + parentEl.offsetTop; parentEl = parentEl.offsetParent; } return totaloffset; }, css: function(el, targetclass, action) { var needle = new RegExp("(^|\\s+)" + targetclass + "($|\\s+)", "ig") if (action == "check") return needle.test(el.className) else if (action == "remove") el.className = el.className.replace(needle, "") else if (action == "add" && !needle.test(el.className)) el.className += " " + targetclass }, showmenu: function(dropmenu, e) { if (this.enablereveal[0]) { if (!dropmenu._trueheight || dropmenu._trueheight < 10) dropmenu._trueheight = dropmenu.offsetHeight clearTimeout(this.revealtimers[dropmenu.id]) dropmenu.style.height = dropmenu._curheight = 0 dropmenu.style.overflow = "hidden" dropmenu.style.visibility = "visible" this.revealtimers[dropmenu.id] = setInterval(function() { cssdropdown.revealmenu(dropmenu) }, 10) } else { dropmenu.style.visibility = "visible" } this.css(this.asscmenuitem, "selected", "add") }, revealmenu: function(dropmenu, dir) { var curH = dropmenu._curheight, maxH = dropmenu._trueheight, steps = this.enablereveal[1] if (curH < maxH) { var newH = Math.min(curH, maxH) dropmenu.style.height = newH + "px" dropmenu._curheight = newH + Math.round((maxH - newH) / steps) + 1 } else { dropmenu.style.height = "auto" dropmenu.style.overflow = "hidden" clearInterval(this.revealtimers[dropmenu.id]) } }, clearbrowseredge: function(obj, whichedge) { var edgeoffset = 0 if (whichedge == "rightedge") { var windowedge = document.all && !window.opera ? this.standardbody.scrollLeft + this.standardbody.clientWidth - 15 : window.pageXOffset + window.innerWidth - 15 var dropmenuW = this.dropmenuobj.offsetWidth if (windowedge - this.dropmenuobj.x < dropmenuW) edgeoffset = dropmenuW - obj.offsetWidth } else { var topedge = document.all && !window.opera ? this.standardbody.scrollTop : window.pageYOffset var windowedge = document.all && !window.opera ? this.standardbody.scrollTop + this.standardbody.clientHeight - 15 : window.pageYOffset + window.innerHeight - 18 var dropmenuH = this.dropmenuobj._trueheight if (windowedge - this.dropmenuobj.y < dropmenuH) { edgeoffset = dropmenuH + obj.offsetHeight if ((this.dropmenuobj.y - topedge) < dropmenuH) edgeoffset = this.dropmenuobj.y + obj.offsetHeight - topedge } } return edgeoffset }, dropit: function(obj, e, dropmenuID) { if (this.dropmenuobj != null) this.hidemenu() this.clearhidemenu() this.dropmenuobj = document.getElementById(dropmenuID) this.asscmenuitem = obj this.showmenu(this.dropmenuobj, e) this.dropmenuobj.x = this.getposOffset(obj, "left") this.dropmenuobj.y = this.getposOffset(obj, "top") this.dropmenuobj.style.left = this.dropmenuobj.x - this.clearbrowseredge( obj, "rightedge") + "px" this.dropmenuobj.style.top = this.dropmenuobj.y - this.clearbrowseredge(obj, "bottomedge") + obj.offsetHeight + 1 + "px" this.positionshim() }, positionshim: function() { if (this.iframeshimadded) { if (this.dropmenuobj.style.visibility == "visible") { this.shimobject.style.width = this.dropmenuobj.offsetWidth + "px" this.shimobject.style.height = this.dropmenuobj._trueheight + "px" this.shimobject.style.left = parseInt(this.dropmenuobj.style.left) + "px" this.shimobject.style.top = parseInt(this.dropmenuobj.style.top) + "px" this.shimobject.style.display = "block" } } }, hideshim: function() { if (this.iframeshimadded) this.shimobject.style.display = 'none' }, isContained: function(m, e) { var e = window.event || e var c = e.relatedTarget || ((e.type == "mouseover") ? e.fromElement : e.toElement) while (c && c != m) try { c = c.parentNode } catch (e) { c = m } if (c == m) return true else return false }, dynamichide: function(m, e) { if (!this.isContained(m, e)) { this.delayhidemenu() } }, delayhidemenu: function() { this.delayhide = setTimeout("cssdropdown.hidemenu()", this.disappeardelay) }, hidemenu: function() { this.css(this.asscmenuitem, "selected", "remove") this.dropmenuobj.style.visibility = 'hidden' this.dropmenuobj.style.left = this.dropmenuobj.style.top = "-1000px" this.hideshim() }, clearhidemenu: function() { if (this.delayhide != "undefined") clearTimeout(this.delayhide) }, addEvent: function(target, functionref, tasktype) { if (target.addEventListener) target.addEventListener(tasktype, functionref, false); else if (target.attachEvent) target.attachEvent('on' + tasktype, function() { return functionref.call(target, window.event) }); }, startdropdown: function() { if (!this.domsupport) return this.standardbody = (document.compatMode == "CSS1Compat") ? document.documentElement : document.body for (var ids = 0; ids < arguments.length; ids++) { var menuitems = document.getElementById(arguments[ids]).getElementsByTagName( "a") for (var i = 0; i < menuitems.length; i++) { if (menuitems[i].getAttribute("rel")) { var relvalue = menuitems[i].getAttribute("rel") var asscdropdownmenu = document.getElementById(relvalue) this.addEvent(asscdropdownmenu, function() { cssdropdown.clearhidemenu() }, "mouseover") this.addEvent(asscdropdownmenu, function(e) { cssdropdown.dynamichide(this, e) }, "mouseout") this.addEvent(asscdropdownmenu, function() { cssdropdown.delayhidemenu() }, "click") try { menuitems[i].innerHTML = menuitems[i].innerHTML + " " + this.dropdownindicator } catch (e) {} this.addEvent(menuitems[i], function(e) { if (!cssdropdown.isContained(this, e)) { var evtobj = window.event || e cssdropdown.dropit(this, evtobj, this.getAttribute("rel")) } }, "mouseover") this.addEvent(menuitems[i], function(e) { cssdropdown.dynamichide(this, e) }, "mouseout") this.addEvent(menuitems[i], function() { cssdropdown.delayhidemenu() }, "click") } } } if (this.enableiframeshim && document.all && !window.XDomainRequest && ! this.iframeshimadded) { document.write( '' ) this.shimobject = document.getElementById("iframeshim") this.shimobject.style.filter = 'progid:DXImageTransform.Microsoft.Alpha(style=0,opacity=0)' this.iframeshimadded = true } } } function prepareExport(which) { if (which == 'excel') { document.forms[0].stylesheet.value = 'tabelle_xls.xsl'; document.forms[0].contenttype.value = 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet'; } if (which == 'pdf') { document.forms[0].stylesheet.value = 'tabelle_fo_pdf.xsl'; document.forms[0].contenttype.value = 'application/pdf'; document.forms[0].target = '_blank'; } if (which == 'druckversion') { document.forms[0].stylesheet.value = 'tabelle_html_p.xsl'; document.forms[0].contenttype.value = 'text/html'; document.forms[0].target = '_blank'; } if (which == 'xml') { document.forms[0].stylesheet.value = 'tabelle_xml.xsl'; document.forms[0].contenttype.value = 'text/xml'; document.forms[0].target = '_blank'; } document.forms[0].offset.value='0'; document.forms[0].maxoffset.value = '1000000'; document.forms[0].reuseresult.value = 'true'; if (isTreeTable) { dojo.widget.byId("ttexdlg").show(); //ruft function exportandhidedlg auf } else { startExport(); } } function exportandhidedlg(what) { rows = ''; if (what == 'some rows') { tableId = "table1"; table = document.getElementById(tableId); rowChildren = table.getElementsByTagName('tr'); for (i = 0; i < rowChildren.length; i++) { if (index = rowChildren[i].id.indexOf('_')) { if (rowChildren[i].style.display == '') rows = rows + rowChildren[i].getAttribute( "irowno") + ","; } } rows = rows.replace("null,", ""); } document.forms[0].irowno.value = rows; // alert(rows); dojo.widget.byId("ttexdlg").hide(); startExport(); } function startExport() { document.forms[0].submit(); } function enwicklerServletLaden(param) { document.getElementById('progressbar').style.display = ""; dojo.io.bind({ url: "/superx/servlet/de.superx.servlet.Entwicklung?param=" + param, encoding: "UTF-8", method: "get", handler: function(type, data, evt) { //dojo.debug(data); var da = purgeval(data); //dojo.debugDeep(da) document.getElementById('progressbar').style.display = "none" if (type == 'error' || da.error) { // eigentlich sollte immer type gleich error geliefert werden, aber bug in dojo if (da.error) msg = da.error; else msg = data.message; alert('Fehler beim Lesen der Daten!' + msg); } else { var help = ''; if (param == 'maskxml') help += "Masken-XML"; if (param == 'sql1') help += "SQL-Quelle"; if (param == 'sql2') help += "SQL nach 1. Transformation"; if (param == 'sql3') help += "nach Freemarker Transformation"; if (param == 'tablexml') help += "Tabellen-XML"; if (param == 'sqlparams') help += "Parameter"; help += " Ausblenden
"; document.getElementById(param).innerHTML = help + '-- ' + da.maskinfo + '
' + da.txt; //dojo.widget.byId('sqldlg').show() ; } } }) } function purgeEnwicklerServletDiv(param) { document.getElementById(param).innerHTML = ""; } function createLinkForMask(refapp, colset='',colsort='') { var stylesheet = jQuery('#deeplinkausgabe').val(); var ausgabe_text = jQuery('#deeplinkausgabe option:selected').text(); var contenttype = "text/html"; var contenttype_portlet = ""; var navigation = ""; //alert("Ausgabe: " + ausgabe_text + "\nstylesheet: "+ stylesheet); if (ausgabe_text.indexOf('Navi') >= 0 ){ navigation = "&navi=true"; } if (stylesheet == 'tabelle_xls.xsl') { contenttype = "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet"; } else if (stylesheet == 'tabelle_fo_pdf.xsl') { contenttype = "application/pdf"; } else if (stylesheet == 'tabelle_html_p.xsl') { contenttype = "text/html"; } else if (stylesheet == 'tabelle_xml.xsl') { contenttype = "text/xml"; } else if (stylesheet.indexOf(".jrxml") > -1) { contenttype = jQuery('#jasper_ausgabeformat').val(); contenttype_portlet = jQuery('#jasper_ausgabeformat option:selected').text(); } else { //speziells Stylesheet contenttype = stylesheetcontenttype[stylesheet]; } var url = location.protocol + '//' + location.host + '/superx/servlet/SuperXmlTabelle?'; var url_sso = location.protocol + '//' + location.host + '/' + refapp + '/rds?state=redirect&sso=superx&utarget=/superx/servlet/SuperXmlTabelle?'; var params = ""; var params_sso = ''; var tablestyle = ''; var fields = $(document.forms[0]).serializeArray(); jQuery.each(fields, function(i, field) { var htmlname = ''; for (j = 1; j < felder.length; j++) { if (field.name == felder[j]["htmlname"]) htmlname = felder[j]["htmlname"]; } if (field.name != 'UserID' && field.name.indexOf('contenttype') == -1 && htmlname.indexOf('##line##') == -1 && field.name.indexOf('stylesheet') == -1 && field.name.indexOf('reuseresult') == -1 && field.name.indexOf('navi') == -1 && field.value != '' && field.name.indexOf('maxoffset') == -1) { params += ('&' + encodeURIComponent(field.name) + '=' + encodeURIComponent( field.value)); params_sso += ('&' + field.name + '=' + field.value); } if (field.name == 'tablestylesheet') { tablestyle = 'table'; } }); params += '&contenttype=' + encodeURIComponent(contenttype); params += '&' + tablestyle + 'stylesheet=' + encodeURIComponent(stylesheet) + navigation; if (contenttype_portlet == "Portlet") { params +='&cachingcontrol=clearmask'; } params_sso += '&contenttype=' + contenttype; params_sso += '&stylesheet=' + stylesheet + navigation; if (colset!='') {params+='&colset='+encodeURIComponent(colset).replace('|','%7C');params_sso+='colset='+colset.replace('|','%7C');} if (colsort!='') {params+='&colsort='+encodeURIComponent(colsort).replace('|','%7C');params_sso+='colsort='+colset.replace('|','%7C');} var linksForMask=""; if (platform == "his1") { linksForMask+='HISinOne SSO-Link (komplett):\n' + url_sso + encodeURIComponent(params)+'\n\n'; linksForMask+='HISinOne SSO-Link für Portlets lokale Serverfunktion:\n' + '/rds?state=redirect&sso=superx&utarget=/superx/servlet/SuperXmlTabelle?' + encodeURIComponent(params+"&cachingcontrol=clearmask")+'\n\n'; } linksForMask+=" Direkter Link:\n\n" + url + params; document.getElementById('deeplinktext').innerHTML =linksForMask; } function deeplinkerzeugen(refapp) { var url = location.protocol + '//' + location.host + '/superx/servlet/SuperXmlTabelle?tid='; var url_sso = location.protocol + '//' + location.host + '/' + refapp + '/rds?state=redirect&sso=superx&utarget=/superx/servlet/SuperXmlTabelle?tid='; var fieldsep = "&"; if (refapp != "" && refapp != "null") { //his1: url = location.protocol + '//' + location.host + '/' + refapp + '/rds?state=redirect&sso=superx&utarget=/superx/servlet/SuperXmlTabelle?tid='; fieldsep = "%26"; } url += getTid(); var params = getParams('direkt'); var deeplinka = document.getElementById('deeplinkausgabe'); var stylesheet = deeplinka.options[deeplinka.selectedIndex].value; params = params + fieldsep + "stylesheet=" + stylesheet; if (fieldsep == "%26") params = params.replace(/&/g, '%26'); var offset = true; var contenttype = "contenttype="; if (stylesheet == 'tabelle_xls.xsl') { contenttype += "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet"; } else if (stylesheet == 'tabelle_fo_pdf.xsl') { contenttype += "application/pdf"; } else if (stylesheet == 'tabelle_html_p.xsl') { contenttype += "text/html"; } else if (stylesheet == 'tabelle_xml.xsl') { contenttype += "text/xml"; } else if (stylesheet.indexOf(".jrxml") > -1) { offset = false; var h = document.getElementById("jasper_ausgabeformat"); contenttype += h.options[h.selectedIndex].value; } else { //speziells Stylesheet contenttype += stylesheetcontenttype[stylesheet]; } params += fieldsep + contenttype; if (offset) { params += fieldsep + "maxoffset=1000000"; } document.getElementById('deeplinktext').innerHTML = url + params + "\n" + url_sso + encodeURIComponent(params); } function deeplink_ausgabeformat() { var deeplinka = document.getElementById('deeplinkausgabe'); var stylesheet = deeplinka.options[deeplinka.selectedIndex].value; if (stylesheet.indexOf(".jrxml") > -1) document.getElementById('div_jasper_ausgabeformat').style.display = ""; else document.getElementById('div_jasper_ausgabeformat').style.display = "none"; document.getElementById('deeplinktext').innerHTML = ""; } function maskSubmit(event) { //alert("Submit"); return report_validate(); //event.preventDefault(); } /*$(document).ready(function() { $("#SuperXMaske").submit(maskSubmit); }); */ function toggleCheckbox(fldname) { //alert(fldname); if(document.forms[0].elements['chkbx_'+fldname].checked) document.forms[0].elements[fldname].value="true"; else document.forms[0].elements[fldname].value="false"; } function copyText(mydiv) { var ergtabelle=document.getElementById(mydiv); const selection = window.getSelection(); const range = document.createRange(); range.selectNodeContents(ergtabelle); selection.removeAllRanges(); selection.addRange(range); document.execCommand('copy'); selection.removeAllRanges(); //alert("Angezeigte Tabelle wurde in die Zwischenablage kopiert."); } function expandMinimizeTextArea(mytextarea,rowsSmall,rowsLarge) { var ta=document.getElementById(mytextarea); if(ta.rows==rowsSmall) ta.rows=rowsLarge; else ta.rows=rowsSmall; } //Spalten in Tabelle die beim scrollen mitlaufen sollen function tableRowHeaderSticky(fixedColumnCount_width) { if (fixedColumnCount_width === undefined) { fixedColumnCount_width = 0; } //Variable für fixen Abstand von links, wird im lauf immer erweitert. var column_width=0; var tableRaws = document.getElementById("table1").getElementsByTagName('tbody')[0].getElementsByTagName('tr'); var numTableRaws = tableRaws.length; // // Versucht Header mit Colgroupfilds zu fixieren ohne thead. Funktioniert bisher nur bei Firefox // //var header_top=68; //var header_top_add=0; // //var tableHeadersRaws = document.getElementById("table1").getElementsByTagName('thead')[0]; //var numTableHeadersRaws = tableHeadersRaws.length; //var tableHeadersCols = document.getElementById("table1").getElementsByTagName('thead')[0].getElementsByTagName('tr'); //var numTableHeadersCols = tableHeadersCols.length; //alert("Rows: " + numTableHeadersRaws + "| Cols: " + numTableHeadersCols); // //// for-Schleife über alle Zeilen im HEADER - Wichtig falls Header mehr als eine Zeile hat //for (var r=0; r < numTableHeadersRaws; r++) { // for (var h=0; h < numTableHeadersCols; h++) { // //Tabellenheader Abstand oben // document.getElementById("table1").getElementsByTagName('thead')[0].getElementsByTagName('tr')[r].getElementsByTagName('th')[h].style.top=header_top + "px"; // header_top_add=document.getElementById("table1").getElementsByTagName('thead')[0].getElementsByTagName('tr')[0].getElementsByTagName('th')[c].offsetWidth; // } // header_top+=header_top_add; //} //erste for-Schleife über Anzahl der Spalten die mitlaufen sollen for (var c=0; c < fixedColumnCount_width; c++) { //Überschriften Spalten, die mitlaufen sollen - Abstand links, Ebene und Position setzen document.getElementById("table1").getElementsByTagName('thead')[0].getElementsByTagName('tr')[0].getElementsByTagName('th')[c].style.left=column_width + "px"; document.getElementById("table1").getElementsByTagName('thead')[0].getElementsByTagName('tr')[0].getElementsByTagName('th')[c].style.zIndex=5; document.getElementById("table1").getElementsByTagName('thead')[0].getElementsByTagName('tr')[0].getElementsByTagName('th')[c].style.position="sticky"; //zweite (innere) for-Schleife über alle Zeilen (dessen Spalten mitlaufen sollen) for (var i=0; i < numTableRaws; i++) { //normale Spalten, die mitlaufen sollen - Abstand links, Hintergrundfarbe, Ebene und Position setzen document.getElementById("table1").getElementsByTagName('tbody')[0].getElementsByTagName('tr')[i].getElementsByTagName('td')[c].style.left=column_width + "px"; //eigene Farbgebung raus, statt dessen inherit damit nicht durchscheint und ursprüngliche Farbe erhalten bleibt #293635c7 //document.getElementById("table1").getElementsByTagName('tbody')[0].getElementsByTagName('tr')[i].getElementsByTagName('td')[c].style.backgroundColor="#c4c4c4"; document.getElementById("table1").getElementsByTagName('tbody')[0].getElementsByTagName('tr')[i].getElementsByTagName('td')[c].style.backgroundColor="inherit"; document.getElementById("table1").getElementsByTagName('tbody')[0].getElementsByTagName('tr')[i].getElementsByTagName('td')[c].style.zIndex=3; document.getElementById("table1").getElementsByTagName('tbody')[0].getElementsByTagName('tr')[i].getElementsByTagName('td')[c].style.position="sticky"; } //weite der aktuellen Spalte auslesen var this_column_width = document.getElementById("table1").getElementsByTagName('thead')[0].getElementsByTagName('tr')[0].getElementsByTagName('th')[c].offsetWidth; //und dann der Variable für fixen Abstand von links ergänzen column_width+=this_column_width; } } function resetValidation() { var el=document.getElementById('validation'); if(el) el.innerHTML = ""; }