Files
2026-08-25 14:10:21 +02:00

1 line
13 KiB
JavaScript

var doWeSupportCascading=false;function tokenize(g,b){var c=g;var f="|";var a=" ";var d;var h=c.split(f);if(a){for(d=0;d<h.length;d++){while(h[d].slice(0,a.length)==a){h[d]=h[d].slice(a.length)}while(h[d].slice(h[d].length-a.length)==a){h[d]=h[d].slice(0,h[d].length-a.length)}}}var e=new Array();if(b){for(d=0;d<h.length;d++){if(h[d]!=""){e.push(h[d])}else{e.push(0)}}}else{e=h}return e}function getExactTargetsArray(b){if(b==null){return null}var a=new Array();for(var c=0;c<b.length;c++){var f=b[c];a[a.length]=f;if(f.type!=null&&f.type=="hidden"){var e=f.nextSibling;while(e!=null){if(e.type!="hidden"&&!contains(a,e)&&e.tagName!=null){a[a.length]=e}if(e.nextSibling==null||e.nextSibling.type=="hidden"){break}e=e.nextSibling}}else{childNodes=MapElements.GetChildElementsByTagNames("INPUT",f);for(var d=0;d<childNodes.length;d++){if(!contains(a,childNodes[d])){a[a.length]=childNodes[d]}}}}return a}function isDigit(a){if(a=="0"||a=="1"||a=="2"||a=="3"||a=="4"||a=="5"||a=="6"||a=="7"||a=="8"||a=="9"){return true}return false}function hasPrefix(c){var b=c.charAt(0);var a=c.charAt(1);if(isDigit(b)&&a=="."){return true}return false}function trim(a){while(a.charAt(0)==" "){a=a.substring(1,a.length)}while(a.charAt(a.legth-1)==" "){a=a.substring(0,a.length-1)}return a}function name2Prefix(b){var c="";var a=0;var d=new String(b);d=trim(d);if(hasPrefix(d)){do{c=c+d.charAt(a++)}while(isDigit(d.charAt(a))||d.charAt(a)==".");return c}return null}function getActionElements(g,d){var b=MapElements.GetChildElementsByXid(d);var a=b;if(b==null||b.length==0){return new Array()}if(g!=null){for(var c=0;c<b.length;c++){if(name2Prefix(b[c].name)==g){a=new Array();var f=b[c];a[0]=f;if(f.type!=null&&f.type=="hidden"){var e=f.nextSibling;while(e!=null){if(e.type!="hidden"&&e.tagName!=null){a[a.length]=e}if(e.nextSibling==null||e.nextSibling.type=="hidden"){break}e=e.nextSibling}}break}}}return a}function xuiGetInputElements(f,a){var e=new Array();if(a==""){return e}var h=tokenize(a,true);for(var d=0;d<h.length;d++){var c=MapElements.xuiGetElementsWithPrefix(f,h[d]);for(var b=0;b<c.length;b++){var g=c[b];if(g==null||g.getAttribute("xid")==null||g.getAttribute("type")!="hidden"){continue}e.push(g)}}return e}function xuiCopyVal(e,d,b){if(d==null||d.length!=2){return}if(d[0]==""||d[1]==""){return}var g=tokenize(d[0],true);var a=tokenize(d[1],true);if(g.length!=a.length){return}for(var c=0;c<g.length;c++){var f=xuiGetVal(e,g[c]);if(f==null){continue}xuiSetVal(e,a[c],f,b)}}function xuiGetVal(n,t){var q=getActionElements(n,t);var r=null;for(var l=0;l<q.length;l++){var e=q[l];if(e==null||e.getAttribute("xid")==null||e.getAttribute("type")!="hidden"){continue}r=e;break}if(r==null){return}var m=xeData["xc_"+t];var i=xeData["xe_"+t];var f=(xeData["xtn_"+t]==null)?new Array():xeData["xtn_"+t];var b=xeData["xd_"+t];var o,h;var c;var p=null;switch(m){case valmap.label:if(r.nextSibling!=null){p=r.nextSibling.nodeValue}break;case valmap.textbox:case valmap.textarea:case valmap.passwdbox:p=r.nextSibling.value;break;case valmap.radio:case valmap.radio_left:if(b=="refresh"){var s=getAllRefProfiles(t)}else{var s=getAllWebEnums(t)}var h=r.nextSibling;while(h!=null){if(h.checked==true){p=h.value;break}h=h.nextSibling}break;case valmap.radio_none:if(b=="refresh"){var s=getAllRefProfiles(t)}else{var s=getAllWebEnums(t)}var h=r.nextSibling;while(h!=null){if(h.checked==true){r.value=h.value;break}h=h.nextSibling}break;case valmap.combo:var d=r.nextSibling.selectedIndex;if(b=="refresh"){var s=getAllRefProfiles(t)}else{var s=getAllWebEnums(t)}var g=s==null?0:s.length;var a=f;if(s!=null&&d<=s.length-1){p=s[d]}break;case valmap.combo_multiselect:if(r.nextSibling.xvalue!=undefined){p=r.nextSibling.xvalue}break;case valmap.checkbox:if(b=="refresh"){var s=getAllRefProfiles(t)}else{var s=getAllWebEnums(t)}if(r.nextSibling.checked==true){p=s[0]}else{p=s[1]}break;case valmap.checkboxNeg:if(b=="refresh"){var s=getAllRefProfiles(t)}else{var s=getAllWebEnums(t)}if(r.nextSibling.checked==true){p=s[1]}else{p=s[0]}break;case valmap.button:case valmap.url:case valmap.file:case valmap.hidden:p=r.value;break;default:alert("xuiGetVal: unknown control : '"+m+"' for element '"+r.name+"'");break}return p}function xuiSetVal(j,a,q,e){if(a==""){return}var m=tokenize(a,true);var n=tokenize(q,false);for(var h=0;h<m.length;h++){var o=getActionElements(j,m[h]);for(var f=0;f<o.length;f++){var g=o[f];if(g==null||g.getAttribute("xid")==null||g.getAttribute("type")!="hidden"){continue}var c=g.getAttribute("xid");var p=xeData["xc_"+c];switch(p){case valmap.label:g.value=n[h];g.setAttribute("copyVal",n[h]);break;case valmap.textbox:case valmap.textarea:case valmap.passwdbox:g.nextSibling.value=n[h];break;case valmap.hidden:g.value=n[h];break;case valmap.radio:case valmap.radio_none:case valmap.radio_left:var d=g.nextSibling;while(d!=null){if(d.value==n[h]){d.checked=true;xuiSwitchPageActions(c,g,e);break}d=d.nextSibling}break;case valmap.checkbox:ev=getAllWebEnums(c);if(ev[0]==n[h]){g.nextSibling.checked=true;g.nextSibling.value=n[h];xuiSwitchPageActions(c,g,e)}else{if(ev[1]==n[h]){g.nextSibling.checked=false;g.nextSibling.value=n[h];xuiSwitchPageActions(c,g,e)}}break;case valmap.checkboxNeg:ev=getAllWebEnums(c);if(ev[1]==n[h]){g.nextSibling.checked=true;g.nextSibling.value=n[h];xuiSwitchPageActions(c,g,e)}else{if(ev[0]==n[h]){g.nextSibling.checked=false;g.nextSibling.value=n[h];xuiSwitchPageActions(c,g,e)}}break;case valmap.combo:ev=getAllWebEnums(c);for(var l=0;l<ev.length;l++){if(ev[l]==n[h]){g.nextSibling.selectedIndex=l;xuiSwitchPageActions(c,g,e)}}break;case valmap.combo_multiselect:var b=new Array();ev=getAllWebEnums(c);for(l=0;l<ev.length;l++){if(ev[l]==n[h]){g.nextSibling.options[l].selected=true;b[b.length]=g.nextSibling.options[l].value}else{g.nextSibling.options[l].selected=false}}g.nextSibling.xvalue=xuiTypeEncode(c,b);xuiSwitchPageActions(c,g,e);break;default:alert("This is unknown control : "+p+" for element "+g.name);break}}}}function xuiShed(f,m,a,n){if(n==""){return}var o=tokenize(n,true);var l=new Array();var q=new Array();var p="INPUT,SELECT,TEXTAREA";for(var j=0;j<o.length;j++){var r=getActionElements(m,o[j]);var d=0;var e;for(var c=0;c<r.length;c++){var h=r[c];if(h==null){continue}var e=xeData["xp_"+o[j]];var b=(h.getAttribute("id")==null||h.getAttribute("id")=="")?((h.getAttribute("xid")==null)?null:h.getAttribute("xid")):h.getAttribute("id");var s=xeData["xc_"+b];if(h.getAttribute("type")!="hidden"){d=(e==valmap.read_only)?1:0}switch(f){case 0:if(s==valmap.hidden){break}if(h.tagName=="TR"){break}var g=h;while(g!=null){if(g.style!=null){g.style.display=""}if(g.tagName=="TABLE"){break}g=g.parentNode}break;case 1:if(h.style!=null){h.style.display="none"}break;case 2:if(h.nodeType==1&&p.indexOf(h.tagName)!=-1&&h.disabled==false){h.disabled=true}break;case 3:if(h.nodeType==1&&p.indexOf(h.tagName)!=-1&&h.disabled==true&&d==0){h.disabled=false}break;default:break}}}if(doWeSupportCascading){forwardDisableEvent(q,m);forwardEnableEvent(l,m)}}function forwardDisableEvent(e,d){for(var c=0;c<e.length;c++){var a=new Array();collectDependentIds(a,e[c]);for(var b=0;b<a.length;b++){xuiShed(2,d,e[c],a[b])}}}function forwardEnableEvent(e,f){var j=null;for(var c=0;c<e.length;c++){var a=e[c];var k=MapElements.GetChildElementsByXid(a);if(k==null){continue}k=getExactTargetsArray(k);for(var g=0;g<k.length;g++){var d=k[g];var h=d.type;var b=d.selectedIndex;var l=xeData["xc_"+a];if(l==valmap.checkbox&&h=="checkbox"){j=getAllWebEnums(a);xuiProcessCheckBoxActions(d,a,d.name,j[0],j[1])}else{if(l==valmap.checkboxNeg&&h=="checkbox"){j=getAllWebEnums(a);xuiProcessCheckBoxActions(d,a,d.name,j[1],j[0])}else{if(h=="radio"&&(l==valmap.radio||l==valmap.radioLeft||l==valmap.radioNone)){xuiProcessJSActions(a,d.name,d.value)}else{if(b!=-1&&l==valmap.combo){xuiProcessJSActions(a,d.name,d.value)}}}}}}}function collectDependentIds(c,b){var d=xeData["xa_"+b];if(d==null){return 0}for(var a=0;a<d.length;a+=7){if(!contains(c,d[a+3])){c[c.length]=d[a+3]}if(!contains(c,d[a+4])){c[c.length]=d[a+4]}}return 0}function xuiDelegateJSActions(e,h,c,b,g,a,f,d){++g;++g;xuiShed(0,name2Prefix(c),b,h[++g]);xuiShed(1,name2Prefix(c),b,h[++g]);xuiShed(2,name2Prefix(c),b,h[++g]);xuiShed(3,name2Prefix(c),b,h[++g]);xuiSetVal(name2Prefix(c),h[++g],h[++g],a);xuiCopyVal(name2Prefix(c),xeData["xcopy_"+b+"_"+d],a);xuiJSFunc(b,d);xuiPageRedirect(e,b,f,a);return 0}function xuiJSFunc(a,b){if(xeData["js_"+a+"_"+b]!=null){xuiRunJSFunc(xeData["js_"+a+"_"+b][0],xeData["js_"+a+"_"+b][1])}}function xuiProcessButtonActions(c,b){xuiShed(3,null,b,b);var d=xeData["xa_"+b];if(d==null){return xuiPageRedirect(c,b,xeData["xrd_"+b],valmap.onClick)}for(var a=9;a<d.length;a+=9){xuiDelegateJSActions(c,d,"",b,a,valmap.onClick,xeData["xrd_"+b],"button")}return 0}function preJSAction(){return true}function postJSAction(){return true}function xuiProcessJSActions(h,c,b,k,d){var g="";var e=true;var a=xeData["xa_"+c];if(a==null){return 0}for(var f=18;f<a.length;f+=9){g=a[f+2];if(xuiCheckActionPropertyToExec(g,d)){var l=null;var i=new RegExp(a[f]);if(i==null){alert("Invalid regular expression "+a[f]);return}l=i.exec(k);if(l!=null&&RegExp.leftContext.length==0&&RegExp.rightContext.length==0){xuiDelegateJSActions(h,a,b,c,f,d,xeData["xrd_"+c+"_"+a[f]],k);e=false;break}}}if(e==true){xuiExecDefaultJsActions(h,a,b,c,d,0)}xuiExecMandateJSActions(h,a,b,c,d,9)}function xuiExecDefaultJsActions(f,g,e,d,a,c){var b=g[c+2];if(xuiCheckActionPropertyToExec(b,a)){xuiDelegateJSActions(f,g,e,d,0,a,xeData["xrd_"+d],"default")}return}function xuiExecMandateJSActions(f,g,e,d,a,c){var b=g[c+2];if(xuiCheckActionPropertyToExec(b,a)){xuiDelegateJSActions(f,g,e,d,9,a,xeData["xrd_"+d],"mandate")}return}function xuiCheckActionPropertyToExec(b,a){if(a==valmap.onLoad){if(b=="onLoad"||b=="both"){return 1}else{return 0}}else{if(a==valmap.onChange){if(b=="onChange"||b=="both"){return 1}else{return 0}}else{return 0}}}function xuiProcessMultiSelectRefresh(g,e,f,a,c){if(!preJSAction()){return}var j=c.options;var h=new Array();xuiProcessMultiSelectActions(g,a,c.name,j,valmap.onChange);for(var d=0;d<j.length;d++){if(j[d].selected==true){h[h.length]=j[d].value}}var b=xuiTypeEncode(a,h);c.xvalue=b;var i=(xeData["xtn_"+a]==null)?new Array():xeData["xtn_"+a];if(e==true&&!contains(i,f)){formSubmit(xui_operation_reload,null,null)}}function xuiProcessMultiSelectActions(f,e,d,c,a){for(var b=0;b<c.length;b++){if(c[b].selected==true){xuiProcessJSActions(f,e,d,c[b].value,a)}}}function xuiPageRedirect(g,b,h,c){if(h==null||h.length==0){return}var e=h[0];if((c==valmap.onClick||c==valmap.onChange)&&e!="#"&&e!=null){var i=h[1];var a=xuiGetInputElements(g.parentNode.getAttribute("p"),i);for(var d=0;d<a.length;d++){a[d].setAttribute("redirectTo",true)}var f=(xeData["xt_"+b]==null)?xui_operation_redirect:xeData["xt_"+b];formSubmit(f,b,e)}}function xuiProcessOnLoadRadioGroup(){var g=xeData.rGroup;if(g==null){return}for(var e=1;e<g.length;e++){var b=g[e];var k=null;var c=0;var l=null;for(var d=0;d<b.length;d++){var a=(b[d].indexOf("$$")==-1)?b[d]:b[d].substr(2,b[d].length);var f=getRadioValue(a);var h=MapElements.GetNonTabularHiddenInputElementByXid(a);if(h==null){continue}if(h.value==f&&c==0){xeData["check_"+a]="CHECKED";c++}else{xeData["check_"+a]=""}if(b[d].indexOf("$$")!=-1){k=a}if(d==0){l=a}}if(c==0&&k!=null){xeData["check_"+k]="CHECKED"}}}function xuiProcessOnChangeRadioGroup(p,s,q,g,c,k){var r=xeData.rGroup;var b=false;var f=new Array();var a=null;for(var n=1;n<r.length;n++){var h=r[n];f=new Array();a=null;for(var m=0;m<h.length;m++){var e=(h[m].indexOf("$$")==-1)?h[m]:h[m].substr(2,h[m].length);var d=MapElements.GetRadioElementsByXid(e);for(var o=0;o<d.length;o++){f.push(d[o])}if(e==g){b=true}if(h[m].indexOf("$$")!=-1){a=d[0]}}if(b){break}}if(k==valmap.onLoad){var l=0;for(var o=0;o<f.length;o++){if(f[o].checked==true){l++}if(l>1){f[o].checked=false}}if(l==0&&a!=null){a.checked=true}}else{for(var o=0;o<f.length;o++){if(f[o]==s){continue}f[o].checked=false}xuiProcessOnChangeRefresh(s,p,q,g,c)}}function xuiProcessOnChangeRefresh(g,e,f,c,a){if(!preJSAction()){return}var i=xeData["xe_"+c];var d=xeData["xrv_"+c];var k=xeData["xd_"+c];if(k=="refresh"){var h=getAllRefProfiles(c)}else{var h=getAllWebEnums(c)}var j=(xeData["xtn_"+c]==null)?new Array():xeData["xtn_"+c];var b=(d==null)?h[f]:d;xuiProcessJSActions(g,c,a,b,valmap.onChange);if(e==true&&!contains(j,f)){formSubmit(xui_operation_reload,null,null)}}function xuiProcessCheckBoxActions(e,b,a,d,c){if(!preJSAction()){return}if(e.checked==null){return}var f=e.checked?d:c;xuiProcessJSActions(e,b,a,f,valmap.onChange)}function xuiProcessShedRefreshRadioNone(d,f,g,c,a,i){if(!preJSAction()){return}var b=c+"_prevValue";var e=null;var h=document.getElementById(b);if(h!=null){e=h.value}if(e==i){d.checked=false;h.value=null}else{if(d.checked){h.value=i}}xuiProcessOnChangeRefresh(d,f,g,c,a)};