lemonldap-ng/lemonldap-ng-manager/site/static/js/filterFunctions.min.js

1 line
1.2 KiB
JavaScript

var filterFunctions={authParams:function(b,a,c){var d=[];c.nodes.forEach(function(e){d.push(b.getKey(e))});a.all(d).then(function(){var f=false;var e=[];var g=function(i){var h=i.toLowerCase();if(h=="ad"){h="ldap"}if(h=="openidconnect"){h="oidc"}e.push(h+"Params")};if(c.nodes[0].data.match(/^(Choice|Multi)/)){c.nodes[1].data=c.nodes[0].data;if(c.nodes[0].data.match(/^Choice/)){c.nodes[2].data="Choice"}}c.nodes.forEach(function(h){g(h.data)});c.nodes_cond.forEach(function(l){if(c.nodes[0].data=="Choice"&&l.id=="choiceParams"){var k=l._nodes?l._nodes:l.nodes;if(!k[1].cnodes){k=k[1]._nodes?k[1]._nodes:k[1].nodes;k.forEach(function(n){n.data.forEach(function(m){g(m)})})}else{b.waiting=true;b.download({"$modelValue":k[1]}).then(function(){filterFunctions.authParams(b,a,c)});return}}else{if(c.nodes[0].data=="Multi"&&l.id=="multiParams"){var k=l._nodes?l._nodes:l.nodes;if(!("data" in k[0])){a.all([b.getKey(k[0]),b.getKey(k[1])]).then(function(){filterFunctions.authParams(b,a,c)});return}var h=";";var j=new RegExp(h+"\\s*(\\w+)","g");var i=""+(k[0].data?h+k[0].data:"")+(k[1].data?h+k[1].data:"");while((result=j.exec(i))!==null){g(result[1])}}}});c.nodes_cond.forEach(function(h){if(!f&&e.indexOf(h.id)==-1){h.show=false}else{h.show=true}})})}};