|
|
|
@ -1957,84 +1957,6 @@ function resetValidation() |
|
|
|
var el=document.getElementById('validation'); |
|
|
|
var el=document.getElementById('validation'); |
|
|
|
if(el) |
|
|
|
if(el) |
|
|
|
el.innerHTML = ""; |
|
|
|
el.innerHTML = ""; |
|
|
|
if(1==2) |
|
|
|
|
|
|
|
{ //still experimental
|
|
|
|
|
|
|
|
for(var i=1; i < felder.length; i++) |
|
|
|
|
|
|
|
{ |
|
|
|
|
|
|
|
if(felder[i]["isDynamic"]=="true") |
|
|
|
|
|
|
|
{ |
|
|
|
|
|
|
|
var tmpFname=felder[i]["name"]; |
|
|
|
|
|
|
|
var fieldID=createVarname(tmpFname); |
|
|
|
|
|
|
|
console.log("Feld " +felder[i]["name"]+ " ist dynamisch"); |
|
|
|
|
|
|
|
if(felder[i].dependsOn && felder[i].dependsOn.length >0) |
|
|
|
|
|
|
|
{ |
|
|
|
|
|
|
|
for(var k=0;k < felder[i].dependsOn.length;k++) |
|
|
|
|
|
|
|
{ |
|
|
|
|
|
|
|
var dependsOnFieldname=felder[i].dependsOn[k]; |
|
|
|
|
|
|
|
var dependsOnFieldID=createVarname(dependsOnFieldname); |
|
|
|
|
|
|
|
var dependsOnFieldvalue=""; |
|
|
|
|
|
|
|
if(document.getElementById(dependsOnFieldID)) |
|
|
|
|
|
|
|
dependsOnFieldvalue=document.getElementById(dependsOnFieldID).value; |
|
|
|
|
|
|
|
else
|
|
|
|
|
|
|
|
console.log("Feld " +dependsOnFieldname+ "existiert nicht im Formular"); |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
console.log("Feld " +tmpFname+ " hängt ab von " +dependsOnFieldname); |
|
|
|
|
|
|
|
if(dependsOnFieldvalue != "") |
|
|
|
|
|
|
|
{ |
|
|
|
|
|
|
|
console.log("requery mit "+dependsOnFieldvalue); |
|
|
|
|
|
|
|
if(felder[i]["art"]=="1") |
|
|
|
|
|
|
|
{ |
|
|
|
|
|
|
|
//reset field:
|
|
|
|
|
|
|
|
var previousValue=document.getElementById(fieldID).value; |
|
|
|
|
|
|
|
var previousValueLabel=document.getElementById("label_"+fieldID).value; |
|
|
|
|
|
|
|
console.log("prüfe Feld "+tmpFname ); |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
//Ajax Load
|
|
|
|
|
|
|
|
var callurl="../servlet/SuperXmlMaske?tid="+maskentid+"&getJSON_"+getEncoded(tmpFname)+"=xxxxxx-xxxxxx@"; |
|
|
|
|
|
|
|
var params=maskeComboOderSichtBuildParams(document.forms[0],tmpFname,1, tmpFname); //dependsOnFieldname+"="+dependsOnFieldvalue;
|
|
|
|
|
|
|
|
callurl+=params; |
|
|
|
|
|
|
|
//console.log("callurl "+callurl );
|
|
|
|
|
|
|
|
var previousValueIsStillPossible=false; |
|
|
|
|
|
|
|
var isFirstPossibleValue=true; |
|
|
|
|
|
|
|
var valueLoadedOk=getComboValue(callurl).then((jsonData) => { |
|
|
|
|
|
|
|
if(jsonData && jsonData.nodes ) //&& jsonData.nodes.length ==2 ein leeres Element + ein gefülltes, nicht mehr
|
|
|
|
|
|
|
|
{ |
|
|
|
|
|
|
|
for(var j=0;j < jsonData.nodes.length;j++) |
|
|
|
|
|
|
|
{ |
|
|
|
|
|
|
|
var node=jsonData.nodes[j]; |
|
|
|
|
|
|
|
if(previousValue==node.objectId) |
|
|
|
|
|
|
|
previousValueIsStillPossible=true; |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
//console.log("setze Feld "+tmpFname + " auf Wert "+node.objectId +" ("+node.title+")");
|
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
if(previousValueIsStillPossible) |
|
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
document.getElementById(fieldID).value=node.objectId; |
|
|
|
|
|
|
|
document.getElementById("label_"+fieldID).value=node.title; |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
else |
|
|
|
|
|
|
|
{ //Reset field:
|
|
|
|
|
|
|
|
document.getElementById(fieldID).value=""; |
|
|
|
|
|
|
|
document.getElementById("label_"+fieldID).value=""; |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
}); |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
else |
|
|
|
|
|
|
|
{ |
|
|
|
|
|
|
|
console.log("Feld " +felder[i]["name"]+ " ist nicht dynamisch"); |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
} |
|
|
|
} |
|
|
|
async function getComboValue(url) |
|
|
|
async function getComboValue(url) |
|
|
|
{ |
|
|
|
{ |
|
|
|
@ -2047,6 +1969,7 @@ async function getComboValue(url) |
|
|
|
const comboContent = await response.text(); |
|
|
|
const comboContent = await response.text(); |
|
|
|
if(comboContent)
|
|
|
|
if(comboContent)
|
|
|
|
{ |
|
|
|
{ |
|
|
|
|
|
|
|
console.log("comboContent: " +comboContent); |
|
|
|
return purgeval(comboContent); |
|
|
|
return purgeval(comboContent); |
|
|
|
} |
|
|
|
} |
|
|
|
else |
|
|
|
else |
|
|
|
@ -2119,7 +2042,6 @@ function validiereNeueMaskennr(frm,platform) |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
/* Funktionen für Javascript Baum, z.B. GANG Studiengang-Menü: */ |
|
|
|
/* Funktionen für Javascript Baum, z.B. GANG Studiengang-Menü: */ |
|
|
|
function srcUrl(url,targetElem)
|
|
|
|
function srcUrl(url,targetElem)
|
|
|
|
{ |
|
|
|
{ |
|
|
|
@ -2222,7 +2144,7 @@ function renderTreeNode(treeNodes,myNode) |
|
|
|
//hat Element kinder?
|
|
|
|
//hat Element kinder?
|
|
|
|
if(myNode.isFolder) |
|
|
|
if(myNode.isFolder) |
|
|
|
{ |
|
|
|
{ |
|
|
|
ret+="<span class=\"treeCaret\" id=\"treeCaret_\""+myNode.apnr+"\" onClick=\"renderTreeChildNodes(treeNodes,'"+myNode.apnr+"',this)\"></span> "; |
|
|
|
ret+="<span class=\"treeCaret\" id=\"treeCaret_\""+myNode.apnr+"\" onClick=\"renderTreeChildNodes(treeNodes,'"+myNode.apnr+"',this)\"></span>"; |
|
|
|
} |
|
|
|
} |
|
|
|
if(myNode.onClickHandler !="" && !myNode.isFolder) |
|
|
|
if(myNode.onClickHandler !="" && !myNode.isFolder) |
|
|
|
{ |
|
|
|
{ |
|
|
|
@ -2252,3 +2174,114 @@ function treeNodeHasChildren(treeNodes,nodeId) |
|
|
|
} |
|
|
|
} |
|
|
|
return hasChildren; |
|
|
|
return hasChildren; |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
function setDependentFields(fld) |
|
|
|
|
|
|
|
{ |
|
|
|
|
|
|
|
//still experimental
|
|
|
|
|
|
|
|
for(var i=1; i < felder.length; i++) |
|
|
|
|
|
|
|
{ |
|
|
|
|
|
|
|
if(felder[i]["isDynamic"]=="true" ) |
|
|
|
|
|
|
|
{ |
|
|
|
|
|
|
|
var tmpFname=felder[i]["htmlname"]; |
|
|
|
|
|
|
|
var fieldID=createVarname(tmpFname); |
|
|
|
|
|
|
|
console.log("Feld " +felder[i]["name"]+ " ist dynamisch"); |
|
|
|
|
|
|
|
if(felder[i].dependsOn && felder[i].dependsOn.length >0 && document.forms["maske"].elements[felder[i]["name"]].value !="") |
|
|
|
|
|
|
|
{ |
|
|
|
|
|
|
|
for(var k=0;k < felder[i].dependsOn.length;k++) |
|
|
|
|
|
|
|
{ |
|
|
|
|
|
|
|
var dependsOnFieldname=felder[i].dependsOn[k]; |
|
|
|
|
|
|
|
var dependsOnFieldID=createVarname(dependsOnFieldname); |
|
|
|
|
|
|
|
var dependsOnFieldvalue=""; |
|
|
|
|
|
|
|
if(document.getElementById(dependsOnFieldID)) |
|
|
|
|
|
|
|
dependsOnFieldvalue=document.getElementById(dependsOnFieldID).value; |
|
|
|
|
|
|
|
else
|
|
|
|
|
|
|
|
console.log("Feld " +dependsOnFieldname+ "existiert nicht im Formular"); |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
console.log("Feld " +tmpFname+ " hängt ab von " +dependsOnFieldname); |
|
|
|
|
|
|
|
if(dependsOnFieldvalue != "") |
|
|
|
|
|
|
|
{ |
|
|
|
|
|
|
|
console.log("Feld "+tmpFname +" ist abhängig von " + dependsOnFieldvalue ); |
|
|
|
|
|
|
|
if(document.getElementById(fieldID) && document.getElementById("label_"+fieldID)) |
|
|
|
|
|
|
|
{ |
|
|
|
|
|
|
|
document.getElementById(fieldID).value=""; |
|
|
|
|
|
|
|
document.getElementById("label_"+fieldID).value=""; |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
console.log("requery mit "+dependsOnFieldvalue); |
|
|
|
|
|
|
|
if(felder[i]["art"]=="1") |
|
|
|
|
|
|
|
{ |
|
|
|
|
|
|
|
//reset field:
|
|
|
|
|
|
|
|
var previousValue=document.getElementById(fieldID).value; |
|
|
|
|
|
|
|
var previousValueLabel=document.getElementById("label_"+fieldID).value; |
|
|
|
|
|
|
|
console.log("prüfe Feld "+tmpFname ); |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
//Ajax Load
|
|
|
|
|
|
|
|
var callurl="../servlet/SuperXmlMaske?tid="+maskentid+"&getJSON_"+getEncoded(tmpFname)+"=xxxxxx-xxxxxx@"; |
|
|
|
|
|
|
|
var params=maskeComboOderSichtBuildParams(document.forms["maske"],tmpFname,1, tmpFname); //dependsOnFieldname+"="+dependsOnFieldvalue;
|
|
|
|
|
|
|
|
callurl+=params; |
|
|
|
|
|
|
|
//console.log("callurl "+callurl );
|
|
|
|
|
|
|
|
//var isFirstPossibleValue=true;
|
|
|
|
|
|
|
|
try { |
|
|
|
|
|
|
|
var valueLoadedOk=getComboValue(callurl).then((jsonData) => { |
|
|
|
|
|
|
|
if(jsonData) //&& jsonData.nodes.length ==2 ein leeres Element + ein gefülltes, nicht mehr
|
|
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
console.log("jsonData: " +jsonData); |
|
|
|
|
|
|
|
if(jsonData.error) |
|
|
|
|
|
|
|
{ |
|
|
|
|
|
|
|
//reset field
|
|
|
|
|
|
|
|
console.log("Feld "+tmpFname +" Wert " + previousValue +" passt nicht mehr" ); |
|
|
|
|
|
|
|
document.getElementById(tmpFname).value=""; |
|
|
|
|
|
|
|
document.getElementById("label_"+tmpFname).value=""; |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
if(jsonData.nodes ) //&& jsonData.nodes.length ==2 ein leeres Element + ein gefülltes, nicht mehr
|
|
|
|
|
|
|
|
{ |
|
|
|
|
|
|
|
for(var j=0;j < jsonData.nodes.length;j++) |
|
|
|
|
|
|
|
{ |
|
|
|
|
|
|
|
var node=jsonData.nodes[j]; |
|
|
|
|
|
|
|
if(previousValue==node.objectId) |
|
|
|
|
|
|
|
previousValueIsStillPossible=true; |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
//console.log("setze Feld "+tmpFname + " auf Wert "+node.objectId +" ("+node.title+")");
|
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
if(previousValueIsStillPossible) |
|
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
document.getElementById(fieldID).value=node.objectId; |
|
|
|
|
|
|
|
document.getElementById("label_"+fieldID).value=node.title; |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
else |
|
|
|
|
|
|
|
{ //Reset field:
|
|
|
|
|
|
|
|
document.getElementById(fieldID).value=""; |
|
|
|
|
|
|
|
document.getElementById("label_"+fieldID).value=""; |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
//else
|
|
|
|
|
|
|
|
// previousValueIsStillPossible=true;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
}); |
|
|
|
|
|
|
|
console.log("Prüfung Feld "+tmpFname + " abgeschlossen"); |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
catch (error) |
|
|
|
|
|
|
|
{ |
|
|
|
|
|
|
|
//reset field
|
|
|
|
|
|
|
|
console.log("Ajax Fehler, Feld "+fieldID +" Wert " + previousValue +" passt nicht mehr" ); |
|
|
|
|
|
|
|
document.getElementById(fieldID).value=""; |
|
|
|
|
|
|
|
document.getElementById("label_"+fieldID).value=""; |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
else |
|
|
|
|
|
|
|
{ |
|
|
|
|
|
|
|
console.log("Feld " +felder[i]["name"]+ " ist nicht dynamisch"); |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
} |
|
|
|
|