diff --git a/lemonldap-ng-common/lib/Lemonldap/NG/Common/Conf/Constants.pm b/lemonldap-ng-common/lib/Lemonldap/NG/Common/Conf/Constants.pm index 4c233b9a5..9b6affba8 100644 --- a/lemonldap-ng-common/lib/Lemonldap/NG/Common/Conf/Constants.pm +++ b/lemonldap-ng-common/lib/Lemonldap/NG/Common/Conf/Constants.pm @@ -24,7 +24,7 @@ use constant MANAGERSECTION => "manager"; use constant SESSIONSEXPLORERSECTION => "sessionsExplorer"; use constant APPLYSECTION => "apply"; our $hashParameters = qr/^(?:(?:l(?:o(?:ca(?:lSessionStorageOption|tionRule)|goutService)|dapExportedVar|wp(?:Ssl)?Opt)|(?:(?:d(?:emo|bi)|facebook|webID)ExportedVa|exported(?:Heade|Va)|issuerDBGetParamete)r|re(?:moteGlobalStorageOption|st2f(?:Verify|Init)Arg|loadUrl)|g(?:r(?:antSessionRule|oup)|lobalStorageOption)|n(?:otificationStorageOption|ginxCustomHandler)|macro)s|o(?:idc(?:S(?:ervice(?:DynamicRegistrationEx(?:portedVar|traClaim)s|MetaDataAuthnContext)|torageOptions)|RPMetaData(?:(?:Option(?:sExtraClaim)?|ExportedVar|Macro)s|Node)|OPMetaData(?:(?:ExportedVar|Option)s|J(?:SON|WKS)|Node))|penIdExportedVars)|s(?:aml(?:S(?:PMetaData(?:(?:ExportedAttribute|Option|Macro)s|Node|XML)|torageOptions)|IDPMetaData(?:(?:ExportedAttribute|Option)s|Node|XML))|essionDataToRemember|laveExportedVars|fExtra)|c(?:as(?:A(?:ppMetaData(?:(?:ExportedVar|Option|Macro)s|Node)|ttributes)|S(?:rvMetaData(?:(?:ExportedVar|Option)s|Node)|torageOptions))|(?:ustom(?:Plugins|Add)Param|ombModule)s)|p(?:ersistentStorageOptions|o(?:rtalSkinRules|st))|a(?:ut(?:hChoiceMod|oSigninR)ules|pplicationList)|v(?:hostOptions|irtualHost)|S(?:MTPTLSOpts|SLVarIf))$/; -our $boolKeys = qr/^(?:s(?:aml(?:IDP(?:MetaDataOptions(?:(?:Check(?:S[LS]OMessageSignatur|Audienc|Tim)|IsPassiv)e|A(?:llow(?:LoginFromIDP|ProxiedAuthn)|daptSessionUtime)|Force(?:Authn|UTF8)|StoreSAMLToken|RelayStateURL)|SSODescriptorWantAuthnRequestsSigned)|S(?:P(?:MetaDataOptions(?:(?:CheckS[LS]OMessageSignatur|OneTimeUs)e|EnableIDPInitiatedURL|ForceUTF8)|SSODescriptor(?:WantAssertion|AuthnRequest)sSigned)|erviceUseCertificateInResponse)|DiscoveryProtocol(?:Activation|IsPassive)|CommonDomainCookieActivation|UseQueryStringSpecific|MetadataForceUTF8)|ingle(?:(?:UserBy)?IP|Session)|oap(?:Session|Config)Server|t(?:ayConnecte|orePasswor)d|kipRenewConfirmation|fRemovedUseNotif|laveDisplayLogo|howLanguages|slByAjax)|o(?:idc(?:RPMetaDataOptions(?:Re(?:freshToken|quirePKCE)|LogoutSessionRequired|IDTokenForceClaims|BypassConsent|AllowOffline|Public)|ServiceAllow(?:(?:AuthorizationCode|Implicit|Hybrid)Flow|DynamicRegistration)|OPMetaDataOptions(?:(?:CheckJWTSignatur|UseNonc)e|StoreIDToken))|ldNotifFormat)|c(?:a(?:ptcha_(?:register|login|mail)_enabled|sSrvMetaDataOptions(?:Gateway|Renew))|heck(?:User(?:Display(?:Empty(?:Header|Value)s|PersistentInfo))?|State|XSS)|o(?:ntextSwitchingStopWithLogout|mpactConf|rsEnabled)|da)|p(?:ortal(?:Display(?:Re(?:setPassword|gister)|GeneratePassword|PasswordPolicy)|ErrorOn(?:ExpiredSession|MailNotFound)|(?:CheckLogin|Statu)s|OpenLinkInNewWindow|RequireOldPassword|ForceAuthn|AntiFrame)|roxyUseSoap)|l(?:dap(?:(?:Group(?:DecodeSearchedValu|Recursiv)|UsePasswordResetAttribut)e|(?:AllowResetExpired|Set)Password|ChangePasswordAsUser|PpolicyControl|ITDS)|oginHistoryEnabled)|no(?:tif(?:ication(?:Server(?:(?:POS|GE)T|DELETE)?|sExplorer)?|y(?:Deleted|Other))|AjaxHook)|i(?:ssuerDB(?:OpenID(?:Connect)?|SAML|CAS|Get)Activation|mpersonationSkipEmptyValues)|to(?:tp2f(?:UserCan(?:Chang|Remov)eKey|DisplayExistingSecret)|kenUseGlobalStorage)|u(?:se(?:RedirectOn(?:Forbidden|Error)|SafeJail)|2fUserCanRemoveKey|pgradeSession)|br(?:uteForceProtection(?:IncrementalTempo)?|owsersDontStorePassword)|re(?:st(?:(?:Session|Config)Server|ExportSecretKeys)|freshSessions)|(?:mai(?:lOnPasswordChang|ntenanc)|vhostMaintenanc)e|d(?:isablePersistentStorage|biDynamicHashEnabled)|g(?:roupsBeforeMacros|lobalLogoutTimer)|h(?:ideOldPassword|ttpOnly)|yubikey2fUserCanRemoveKey|(?:activeTim|wsdlServ)er|krb(?:RemoveDomain|ByJs))$/; +our $boolKeys = qr/^(?:s(?:aml(?:IDP(?:MetaDataOptions(?:(?:Check(?:S[LS]OMessageSignatur|Audienc|Tim)|IsPassiv)e|A(?:llow(?:LoginFromIDP|ProxiedAuthn)|daptSessionUtime)|Force(?:Authn|UTF8)|StoreSAMLToken|RelayStateURL)|SSODescriptorWantAuthnRequestsSigned)|S(?:P(?:MetaDataOptions(?:(?:CheckS[LS]OMessageSignatur|OneTimeUs)e|EnableIDPInitiatedURL|ForceUTF8)|SSODescriptor(?:WantAssertion|AuthnRequest)sSigned)|erviceUseCertificateInResponse)|DiscoveryProtocol(?:Activation|IsPassive)|CommonDomainCookieActivation|UseQueryStringSpecific|MetadataForceUTF8)|oap(?:Session|Config)Server|t(?:ayConnecte|orePasswor)d|kipRenewConfirmation|fRemovedUseNotif|laveDisplayLogo|howLanguages|slByAjax)|o(?:idc(?:RPMetaDataOptions(?:Re(?:freshToken|quirePKCE)|LogoutSessionRequired|IDTokenForceClaims|BypassConsent|AllowOffline|Public)|ServiceAllow(?:(?:AuthorizationCode|Implicit|Hybrid)Flow|DynamicRegistration)|OPMetaDataOptions(?:(?:CheckJWTSignatur|UseNonc)e|StoreIDToken))|ldNotifFormat)|c(?:a(?:ptcha_(?:register|login|mail)_enabled|sSrvMetaDataOptions(?:Gateway|Renew))|heck(?:User(?:Display(?:Empty(?:Header|Value)s|PersistentInfo))?|State|XSS)|o(?:ntextSwitchingStopWithLogout|mpactConf|rsEnabled)|da)|p(?:ortal(?:Display(?:Re(?:setPassword|gister)|GeneratePassword|PasswordPolicy)|ErrorOn(?:ExpiredSession|MailNotFound)|(?:CheckLogin|Statu)s|OpenLinkInNewWindow|RequireOldPassword|ForceAuthn|AntiFrame)|roxyUseSoap)|l(?:dap(?:(?:Group(?:DecodeSearchedValu|Recursiv)|UsePasswordResetAttribut)e|(?:AllowResetExpired|Set)Password|ChangePasswordAsUser|PpolicyControl|ITDS)|oginHistoryEnabled)|no(?:tif(?:ication(?:Server(?:(?:POS|GE)T|DELETE)?|sExplorer)?|y(?:Deleted|Other))|AjaxHook)|i(?:ssuerDB(?:OpenID(?:Connect)?|SAML|CAS|Get)Activation|mpersonationSkipEmptyValues)|to(?:tp2f(?:UserCan(?:Chang|Remov)eKey|DisplayExistingSecret)|kenUseGlobalStorage)|u(?:se(?:RedirectOn(?:Forbidden|Error)|SafeJail)|2fUserCanRemoveKey|pgradeSession)|br(?:uteForceProtection(?:IncrementalTempo)?|owsersDontStorePassword)|re(?:st(?:(?:Session|Config)Server|ExportSecretKeys)|freshSessions)|(?:mai(?:lOnPasswordChang|ntenanc)|vhostMaintenanc)e|d(?:isablePersistentStorage|biDynamicHashEnabled)|g(?:roupsBeforeMacros|lobalLogoutTimer)|h(?:ideOldPassword|ttpOnly)|yubikey2fUserCanRemoveKey|(?:activeTim|wsdlServ)er|krb(?:RemoveDomain|ByJs))$/; our @sessionTypes = ( 'remoteGlobal', 'global', 'localSession', 'persistent', 'saml', 'oidc', 'cas' ); diff --git a/lemonldap-ng-common/lib/Lemonldap/NG/Common/Conf/DefaultValues.pm b/lemonldap-ng-common/lib/Lemonldap/NG/Common/Conf/DefaultValues.pm index 44d24b2ed..cb081251d 100644 --- a/lemonldap-ng-common/lib/Lemonldap/NG/Common/Conf/DefaultValues.pm +++ b/lemonldap-ng-common/lib/Lemonldap/NG/Common/Conf/DefaultValues.pm @@ -328,6 +328,9 @@ sub defaultValues { 'sfRemovedNotifTitle' => 'Second factor notification', 'sfRequired' => 0, 'showLanguages' => 1, + 'singleIP' => 0, + 'singleSession' => 0, + 'singleUserByIP' => 0, 'slaveAuthnLevel' => 2, 'slaveExportedVars' => {}, 'SMTPServer' => '', diff --git a/lemonldap-ng-manager/lib/Lemonldap/NG/Manager/Attributes.pm b/lemonldap-ng-manager/lib/Lemonldap/NG/Manager/Attributes.pm index a1d38b9fd..5174f76bc 100644 --- a/lemonldap-ng-manager/lib/Lemonldap/NG/Manager/Attributes.pm +++ b/lemonldap-ng-manager/lib/Lemonldap/NG/Manager/Attributes.pm @@ -3619,15 +3619,15 @@ qr/(?:(?:https?):\/\/(?:(?:(?:(?:(?:(?:[a-zA-Z0-9][-a-zA-Z0-9]*)?[a-zA-Z0-9])[.] }, 'singleIP' => { 'default' => 0, - 'type' => 'bool' + 'type' => 'boolOrExpr' }, 'singleSession' => { 'default' => 0, - 'type' => 'bool' + 'type' => 'boolOrExpr' }, 'singleUserByIP' => { 'default' => 0, - 'type' => 'bool' + 'type' => 'boolOrExpr' }, 'skipRenewConfirmation' => { 'default' => 0, diff --git a/lemonldap-ng-manager/lib/Lemonldap/NG/Manager/Build/Attributes.pm b/lemonldap-ng-manager/lib/Lemonldap/NG/Manager/Build/Attributes.pm index 04c40eba5..9f8b09eff 100644 --- a/lemonldap-ng-manager/lib/Lemonldap/NG/Manager/Build/Attributes.pm +++ b/lemonldap-ng-manager/lib/Lemonldap/NG/Manager/Build/Attributes.pm @@ -1968,17 +1968,17 @@ sub attributes { }, singleSession => { default => 0, - type => 'bool', + type => 'boolOrExpr', documentation => 'Allow only one session per user', }, singleIP => { default => 0, - type => 'bool', + type => 'boolOrExpr', documentation => 'Allow only one session per IP', }, singleUserByIP => { default => 0, - type => 'bool', + type => 'boolOrExpr', documentation => 'Allow only one user per IP', }, diff --git a/lemonldap-ng-manager/site/htdocs/static/js/2ndfa.min.js b/lemonldap-ng-manager/site/htdocs/static/js/2ndfa.min.js index cae0f2d1e..6c2fdba0f 100644 --- a/lemonldap-ng-manager/site/htdocs/static/js/2ndfa.min.js +++ b/lemonldap-ng-manager/site/htdocs/static/js/2ndfa.min.js @@ -1 +1 @@ -(function(){var C,o,d,f,e;e=function(e,t){return $("#msg").html(window.translate(e)),$("#color").removeClass("message-positive message-warning alert-success alert-warning"),$("#color").addClass("message-"+t),"positive"===t&&(t="success"),$("#color").addClass("alert-"+t)},f={_whatToTrace:[function(e,t){return"groupBy=substr("+e+",1)"},function(e,t){return e+"="+t+"*"}]},d={_whatToTrace:function(e,t,n,a){return console.log("overSchema => level",n,"over",a),1===n&&t.length>a?e+"="+t+"*&groupBy=substr("+e+","+(n+a+1)+")":null}},C={dateTitle:["_utime","_startTime","_updateTime"],sfaTitle:["_2fDevices"]},o={home:[]},angular.module("llngSessionsExplorer",["ui.tree","ui.bootstrap","llApp"]).controller("SessionsExplorerCtrl",["$scope","$translator","$location","$q","$http",function(k,t,e,n,a){var h,r,i;return k.links=links,k.menulinks=menulinks,k.staticPrefix=staticPrefix,k.scriptname=scriptname,k.formPrefix=formPrefix,k.availableLanguages=availableLanguages,k.waiting=!0,k.showM=!1,k.showT=!0,k.data=[],k.currentScope=null,k.currentSession=null,k.menu=o,k.searchString="",k.U2FCheck="1",k.TOTPCheck="1",k.UBKCheck="1",k.translateP=t.translateP,k.translate=t.translate,k.translateTitle=function(e){return t.translateField(e,"title")},"persistent",k.menuClick=function(e){if(e.popup)window.open(e.popup);else switch(e.action||(e.action=e.title),typeof e.action){case"function":e.action(k.currentNode,k),k[e.action]();break;case"string":k[e.action]();break;default:console.log(typeof e.action)}return k.showM=!1},k.search2FA=function(e){return e&&(k.searchString=""),k.currentSession=null,k.data=[],k.updateTree2("",k.data,0,0)},k.delete2FA=function(e,t){return angular.element(".data-"+t).remove(),k.waiting=!0,a.delete(scriptname+"sfa/persistent/"+k.currentSession.id+"?type="+e+"&epoch="+t).then(function(e){return k.waiting=!1},function(e){return k.waiting=!1}),k.showT=!1},k.stoggle=function(e){var t;return 0===(t=e.$modelValue).nodes.length&&k.updateTree(t.value,t.nodes,t.level,t.over,t.query,t.count),e.toggle()},k.displaySession=function(e){var t,n;return n=function(o){var e,t,n,a,r,i,s,u,l,c,p,h,d,f,g,m,T,w,v,y,_;for(p in e=function(e){return e},function(e,t){var n,a,r,i;for(n in r=[],a=new RegExp(e),o)i=o[n],n.match(a)&&i&&(r.push({title:n,value:i}),delete o[n]);if(0 level",n,"over",a),1===n&&t.length>a?e+"="+t+"*&groupBy=substr("+e+","+(n+a+1)+")":null}},C={dateTitle:["_utime","_startTime","_updateTime"],sfaTitle:["_2fDevices"]},o={home:[]},angular.module("llngSessionsExplorer",["ui.tree","ui.bootstrap","llApp"]).controller("SessionsExplorerCtrl",["$scope","$translator","$location","$q","$http",function(k,t,e,n,a){var p,r,i,d;return k.links=links,k.menulinks=menulinks,k.staticPrefix=staticPrefix,k.scriptname=scriptname,k.formPrefix=formPrefix,k.availableLanguages=availableLanguages,k.waiting=!0,k.showM=!1,k.showT=!0,k.data=[],k.currentScope=null,k.currentSession=null,k.menu=o,k.searchString="",k.U2FCheck="1",k.TOTPCheck="1",k.UBKCheck="1",k.translateP=t.translateP,k.translate=t.translate,k.translateTitle=function(e){return t.translateField(e,"title")},d="persistent",k.menuClick=function(e){if(e.popup)window.open(e.popup);else switch(e.action||(e.action=e.title),typeof e.action){case"function":e.action(k.currentNode,k),k[e.action]();break;case"string":k[e.action]();break;default:console.log(typeof e.action)}return k.showM=!1},k.search2FA=function(e){return e&&(k.searchString=""),k.currentSession=null,k.data=[],k.updateTree2("",k.data,0,0)},k.delete2FA=function(e,t){return angular.element(".data-"+t).remove(),k.waiting=!0,a.delete(scriptname+"sfa/"+d+"/"+k.currentSession.id+"?type="+e+"&epoch="+t).then(function(e){return k.waiting=!1},function(e){return k.waiting=!1}),k.showT=!1},k.stoggle=function(e){var t;return 0===(t=e.$modelValue).nodes.length&&k.updateTree(t.value,t.nodes,t.level,t.over,t.query,t.count),e.toggle()},k.displaySession=function(e){var t,n;return n=function(o){var e,t,n,a,r,i,s,u,l,c,h,p,d,f,g,m,T,w,v,y,_;for(h in e=function(e){return e},function(e,t){var n,a,r,i;for(n in r=[],a=new RegExp(e),o)i=o[n],n.match(a)&&i&&(r.push({title:n,value:i}),delete o[n]);if(0",g.lang),g.deferredTr=[],g.translationFields={},g.translate=function(e){return g.translationFields[e]&&(e=g.translationFields[e]),e},g.translateField=function(e,t){return g.translate(e[t])},g.translateP=function(e){return e&&g.translationFields.portal&&(e=e.replace(/__(\w+)__/g,function(e,t){return g.translate(t)})),e},this.$get=["$q","$http",function(t,n){return g.last="",g.init=function(e){var i;return e=e||g.lang,(i=new Date).setTime(i.getTime()+2592e6),document.cookie="llnglanguage="+e+"; expires="+i.toUTCString()+"; path=/",i=t.defer(),g.last!==e?(g.last=e,n.get(window.staticPrefix+"languages/"+e+".json").then(function(e){var t,n,r,a;for(g.translationFields=e.data,n=0,r=(a=g.deferredTr).length;nr.resizerMax&&(t=parseInt(r.resizerMax)),$(r.resizerLeft).css({width:t+"px"}),$(r.resizerRight).css({width:s-t+"px"})):(n=e.pageY-$("#navbar").height(),$(r.resizerTop).css({height:n+"px"}),$(r.resizerBottom).css({height:o-n+"px"}))},a=function(){return i.unbind("mousemove",n),i.unbind("mouseup",a)}}}]),e.factory("$lmhttp",["$q","$location",function(t,e){return{responseError:function(e){return 401===e.status&&window.portal?window.location=window.portal+"?url="+window.btoa(window.location).replace(/\//,"_"):t.reject(e)}}}]),e.config(["$httpProvider",function(e){return e.interceptors.push("$lmhttp")}])}).call(this); \ No newline at end of file +(function(){var e;(e=angular.module("llApp",["ngAria"])).provider("$translator",function(){var e,t,n,r,a,i,o,s,l,u,c,g;if(g={},decodeURIComponent(document.cookie).match(/llnglanguage=(\w+)/))g.lang=RegExp.$1;else if(navigator){for(r=[],a=[],l=[navigator.language],navigator.languages&&(l=navigator.languages),t=0,i=l.length;t",g.lang),g.deferredTr=[],g.translationFields={},g.translate=function(e){return g.translationFields[e]&&(e=g.translationFields[e]),e},g.translateField=function(e,t){return g.translate(e[t])},g.translateP=function(e){return e&&g.translationFields.portal&&(e=e.replace(/__(\w+)__/g,function(e,t){return g.translate(t)})),e},this.$get=["$q","$http",function(t,n){return g.last="",g.init=function(e){var i;return e||(e=g.lang),(i=new Date).setTime(i.getTime()+2592e6),document.cookie="llnglanguage="+e+"; expires="+i.toUTCString()+"; path=/",i=t.defer(),g.last!==e?(g.last=e,n.get(window.staticPrefix+"languages/"+e+".json").then(function(e){var t,n,r,a;for(g.translationFields=e.data,n=0,r=(a=g.deferredTr).length;nr.resizerMax&&(t=parseInt(r.resizerMax)),$(r.resizerLeft).css({width:t+"px"}),$(r.resizerRight).css({width:s-t+"px"})):(n=e.pageY-$("#navbar").height(),$(r.resizerTop).css({height:n+"px"}),$(r.resizerBottom).css({height:o-n+"px"}))},a=function(){return i.unbind("mousemove",n),i.unbind("mouseup",a)}}}]),e.factory("$lmhttp",["$q","$location",function(t,e){return{responseError:function(e){return 401===e.status&&window.portal?window.location=window.portal+"?url="+window.btoa(window.location).replace(/\//,"_"):t.reject(e)}}}]),e.config(["$httpProvider",function(e){return e.interceptors.push("$lmhttp")}])}).call(this); \ No newline at end of file diff --git a/lemonldap-ng-manager/site/htdocs/static/js/llApp.min.js.map b/lemonldap-ng-manager/site/htdocs/static/js/llApp.min.js.map index 4ba3970d1..bf405e91d 100644 --- a/lemonldap-ng-manager/site/htdocs/static/js/llApp.min.js.map +++ b/lemonldap-ng-manager/site/htdocs/static/js/llApp.min.js.map @@ -1 +1 @@ -{"version":3,"sources":["lemonldap-ng-manager/site/htdocs/static/js/llApp.js"],"names":["llapp","angular","module","provider","al","j","k","langs","langs2","len","len1","nl","nlangs","re","ref","res","decodeURIComponent","document","cookie","match","lang","RegExp","$1","navigator","language","languages","length","console","log","window","availableLanguages","push","substring","deferredTr","translationFields","translate","s","translateField","node","field","translateP","portal","replace","w","this","$get","$q","$http","last","init","d","Date","setTime","getTime","toUTCString","defer","get","staticPrefix","then","response","h","l","len2","ref1","data","e","f","m","resolve","reject","promise","directive","$translator","restrict","transclude","scope","trspan","link","elem","attr","text","template","params","set","key","obj","menu","$htmlParams","terminal","compile","element","t","type","JSON","parse","error","controller","$scope","$uibModalInstance","currentNode","oldValue","result","ok","close","cancel","dismiss","inSelect","value","select","$parse","attrs","fn","onReadFile","on","onChangeEvent","reader","FileReader","onload","onLoadEvent","$apply","$fileContent","target","readAsText","srcElement","files","$document","hsize","rsize","$element","$attrs","mousemove","mouseup","event","resizer","$","resizerRight","width","resizerLeft","resizerTop","height","resizerBottom","preventDefault","x","y","pageX","resizerMax","parseInt","css","pageY","unbind","factory","$location","responseError","rejection","status","location","btoa","config","$httpProvider","interceptors","call"],"mappings":"CAaA,WACE,IAAIA,GAEJA,EAAQC,QAAQC,OAAO,QAAS,CAAC,YAE3BC,SAAS,cAAe,WAC5B,IAAIC,EAAOC,EAAGC,EAAGC,EAAOC,EAAQC,EAAKC,EAAMC,EAAIC,EAAQC,EAAIC,EAAKC,EAGhE,GAFAA,EAAM,GACFC,mBAAmBC,SAASC,QAC1BC,MAAM,sBACVJ,EAAIK,KAAOC,OAAOC,QACb,GAAIC,UAAW,CAOpB,IANAhB,EAAQ,GACRC,EAAS,GACTI,EAAS,CAACW,UAAUC,UAChBD,UAAUE,YACZb,EAASW,UAAUE,WAEhBpB,EAAI,EAAGI,EAAMG,EAAOc,OAAQrB,EAAII,EAAKJ,IAIxC,IAHAM,EAAKC,EAAOP,GACZsB,QAAQC,IAAI,iBAAkBjB,GAEzBL,EAAI,EAAGI,GADZI,EAAMe,OAAOC,oBACUJ,OAAQpB,EAAII,EAAMJ,IACvCF,EAAKU,EAAIR,GACTqB,QAAQC,IAAI,kBAAmBxB,GAC/BS,EAAK,IAAIQ,OAAO,IAAMjB,EAAK,MACvBO,EAAGQ,MAAMN,IACXc,QAAQC,IAAI,oBAAqBxB,GACjCG,EAAMwB,KAAK3B,IACFA,EAAG4B,UAAU,EAAG,KAAOrB,EAAGqB,UAAU,EAAG,IAChDxB,EAAOuB,KAAK3B,GAIlBW,EAAIK,KAAOb,EAAM,GAAKA,EAAM,GAAKC,EAAO,GAAKA,EAAO,GAAK,UAEzDO,EAAIK,KAAO,KAyDb,OAvDAO,QAAQC,IAAI,mBAAoBb,EAAIK,MACpCL,EAAIkB,WAAa,GACjBlB,EAAImB,kBAAoB,GACxBnB,EAAIoB,UAAY,SAASC,GAIvB,OAHIrB,EAAImB,kBAAkBE,KACxBA,EAAIrB,EAAImB,kBAAkBE,IAErBA,GAETrB,EAAIsB,eAAiB,SAASC,EAAMC,GAClC,OAAOxB,EAAIoB,UAAUG,EAAKC,KAE5BxB,EAAIyB,WAAa,SAASJ,GAMxB,OALIA,GAAKrB,EAAImB,kBAAkBO,SAC7BL,EAAIA,EAAEM,QAAQ,aAAc,SAASvB,EAAOwB,GAC1C,OAAO5B,EAAIoB,UAAUQ,MAGlBP,GAETQ,KAAKC,KAAO,CACV,KAAM,QAAS,SAASC,EAAIC,GA+B1B,OA9BAhC,EAAIiC,KAAO,GACXjC,EAAIkC,KAAO,SAAS7B,GAClB,IAAI8B,EA0BJ,OAxBE9B,EADGA,GACIL,EAAIK,MAEb8B,EAAI,IAAIC,MACNC,QAAQF,EAAEG,UAAY,QACxBpC,SAASC,OAAS,gBAAkBE,EAAO,aAAgB8B,EAAEI,cAAiB,WAC9EJ,EAAIJ,EAAGS,QACHxC,EAAIiC,OAAS5B,GACfL,EAAIiC,KAAO5B,EACX2B,EAAMS,IAAI3B,OAAO4B,aAAe,aAAerC,EAAO,SAASsC,KAAK,SAASC,GAC3E,IAAIC,EAAGC,EAAGC,EAAMC,EAGhB,IAFAhD,EAAImB,kBAAoByB,EAASK,KAE5BH,EAAI,EAAGC,GADZC,EAAOhD,EAAIkB,YACaP,OAAQmC,EAAIC,EAAMD,KACxCD,EAAIG,EAAKF,IACPI,EAAEL,EAAEM,GAAGnD,EAAImB,kBAAkB0B,EAAEO,IAGnC,OADApD,EAAIkB,WAAa,GACViB,EAAEkB,QAAQ,6BAChB,SAAST,GACV,OAAOT,EAAEmB,OAAO,OAGlBnB,EAAEkB,QAAQ,aAELlB,EAAEoB,SAEJvD,IAGJ6B,OAGT5C,EAAMuE,UAAU,SAAU,CACxB,cAAe,SAASC,GACtB,MAAO,CACLC,SAAU,IACV/B,SAAS,EACTgC,YAAY,EACZC,MAAO,CACLC,OAAQ,KAEVC,KAAM,SAASF,EAAOG,EAAMC,GAU1B,OATIP,EAAYtC,kBAAkBO,OAChCsC,EAAKH,OAASJ,EAAYrC,UAAU4C,EAAKH,QAEzCJ,EAAYvC,WAAWF,KAAK,CAC1BkC,EAAGa,EACHZ,EAAG,OACHC,EAAGY,EAAKH,SAGLE,EAAKE,KAAKD,EAAKH,SAExBK,SAAU,OAKhBjF,EAAMG,SAAS,cAAe,WAgB5B,OAfAyC,KAAKC,KAAO,WACV,IAAIqC,EAEJ,OADAA,EAAS,GACF,CACLC,IAAK,SAASC,EAAKC,GACjB,OAAOH,EAAOE,GAAOC,GAEvBC,KAAM,WACJ,OAAOJ,EAAOI,MAEhBJ,OAAQ,WACN,OAAOA,EAAOA,UAIbtC,OAGT5C,EAAMuE,UAAU,SAAU,CACxB,cAAe,SAASgB,GACtB,MAAO,CACLd,SAAU,IACVe,UAAU,EACVC,QAAS,SAASC,EAASX,GACzB,IAAId,EAAG0B,EACP,GAAIZ,EAAKa,OAASD,EAAIZ,EAAKa,KAAKzE,MAAM,4BACpC,IACE,OAAOoE,EAAYJ,IAAIQ,EAAE,GAAIE,KAAKC,MAAMJ,EAAQ,GAAGV,OACnD,MAAOe,GACP9B,EAAI8B,EACJpE,QAAQC,IAAI,iBAAkBqC,SAQ1CjE,EAAMgG,WAAW,oBAAqB,CACpC,SAAU,oBAAqB,OAAQ,MAAO,OAAQ,SAASC,EAAQC,EAAmBpB,EAAMK,EAAKlC,GACnG,IAAIkD,EAAaC,EAsBjB,OArBW,KACXH,EAAOnB,KAAOA,EACdmB,EAAOd,IAAMA,EACbc,EAAOI,OAASpD,EAChBgD,EAAOxC,aAAe5B,OAAO4B,aAC7B0C,EAAcrB,EAAK,eACnBmB,EAAOzD,WAAasC,EAAK,cACrBqB,IACFC,EAAWD,EAAYnC,KACvBiC,EAAOE,YAAcA,GAEvBF,EAAOK,GAAK,WAEV,OADAnB,EAAI,SAAUc,EAAOI,QACdH,EAAkBK,OAAM,IAEjCN,EAAOO,OAAS,WAId,OAHIL,IACFF,EAAOE,YAAYnC,KAAOoC,GAErBF,EAAkBO,QAAQ,WAE5BR,EAAOS,SAAW,SAASC,GAChC,IAAOtG,EAAGI,EAAKK,EAEf,IAAKT,EAAI,EAAGI,GADZK,EAAMmF,EAAOE,YAAYS,QACHlF,OAAQrB,EAAII,EAAKJ,IAErC,GADIS,EAAIT,GACFC,IAAMqG,EACV,OAAO,EAGX,OAAO,MAKb3G,EAAMuE,UAAU,aAAc,CAC5B,SAAU,SAASsC,GACjB,MAAO,CACLpC,SAAU,IACVE,OAAO,EACPE,KAAM,SAASF,EAAOe,EAASoB,GAC7B,IAAIC,EAEJ,OADAA,EAAKF,EAAOC,EAAME,YACXtB,EAAQuB,GAAG,SAAU,SAASC,GACnC,IAAIC,EASJ,OARAA,EAAS,IAAIC,YACNC,OAAS,SAASC,GACvB,OAAO3C,EAAM4C,OAAO,WAClB,OAAOR,EAAGpC,EAAO,CACf6C,aAAcF,EAAYG,OAAOpB,YAIhCc,EAAOO,YAAYR,EAAcS,YAAcT,EAAcO,QAAQG,MAAM,WAO5F5H,EAAMuE,UAAU,UAAW,CACzB,YAAa,SAASsD,GACpB,IAAIC,EAAOC,EAGX,OADAA,EADAD,EAAQ,KAED,SAAS7B,EAAQ+B,EAAUC,GAChC,IAAIC,EAAWC,EAkCf,OAjCAH,EAASf,GAAG,YAAa,SAASmB,GAQhC,MAPuB,aAAnBH,EAAOI,QACTN,EAAQO,EAAEL,EAAOM,cAAcC,QAAUF,EAAEL,EAAOQ,aAAaD,QAE/DV,EAAQQ,EAAEL,EAAOS,YAAYC,SAAWL,EAAEL,EAAOW,eAAeD,SAElEP,EAAMS,iBACNhB,EAAUZ,GAAG,YAAaiB,GACnBL,EAAUZ,GAAG,UAAWkB,KAEjCD,EAAY,SAASE,GACnB,IAAIU,EAAGC,EACP,MAAuB,aAAnBd,EAAOI,SACTS,EAAIV,EAAMY,MACNf,EAAOgB,YAAcH,EAAIb,EAAOgB,aAClCH,EAAII,SAASjB,EAAOgB,aAEtBX,EAAEL,EAAOQ,aAAaU,IAAI,CACxBX,MAAOM,EAAI,OAENR,EAAEL,EAAOM,cAAcY,IAAI,CAChCX,MAAQT,EAAQe,EAAK,SAGvBC,EAAIX,EAAMgB,MAAQd,EAAE,WAAWK,SAC/BL,EAAEL,EAAOS,YAAYS,IAAI,CACvBR,OAAQI,EAAI,OAEPT,EAAEL,EAAOW,eAAeO,IAAI,CACjCR,OAASb,EAAQiB,EAAK,SAIrBZ,EAAU,WAEf,OADAN,EAAUwB,OAAO,YAAanB,GACvBL,EAAUwB,OAAO,UAAWlB,QAc3CnI,EAAMsJ,QAAQ,UAAW,CACvB,KAAM,YAAa,SAASxG,EAAIyG,GAC9B,MAAO,CACLC,cAAe,SAASC,GACtB,OAAyB,MAArBA,EAAUC,QAAkB7H,OAAOY,OAC9BZ,OAAO8H,SAAY9H,OAAOY,OAAS,QAAWZ,OAAO+H,KAAK/H,OAAO8H,UAAUjH,QAAQ,KAAM,KAEzFI,EAAGuB,OAAOoF,QAO3BzJ,EAAM6J,OAAO,CACX,gBAAiB,SAASC,GACxB,OAAOA,EAAcC,aAAahI,KAAK,gBAI1CiI,KAAKpH"} \ No newline at end of file +{"version":3,"sources":["lemonldap-ng-manager/site/htdocs/static/js/llApp.js"],"names":["llapp","angular","module","provider","al","j","k","langs","langs2","len","len1","nl","nlangs","re","ref","res","decodeURIComponent","document","cookie","match","lang","RegExp","$1","navigator","language","languages","length","console","log","window","availableLanguages","push","substring","deferredTr","translationFields","translate","s","translateField","node","field","translateP","portal","replace","w","this","$get","$q","$http","last","init","d","Date","setTime","getTime","toUTCString","defer","get","staticPrefix","then","response","h","l","len2","ref1","data","e","f","m","resolve","reject","promise","directive","$translator","restrict","transclude","scope","trspan","link","elem","attr","text","template","params","set","key","obj","menu","$htmlParams","terminal","compile","element","t","type","JSON","parse","error","controller","$scope","$uibModalInstance","currentNode","oldValue","result","ok","close","cancel","dismiss","inSelect","value","select","$parse","attrs","fn","onReadFile","on","onChangeEvent","reader","FileReader","onload","onLoadEvent","$apply","$fileContent","target","readAsText","srcElement","files","$document","hsize","rsize","$element","$attrs","mousemove","mouseup","event","resizer","$","resizerRight","width","resizerLeft","resizerTop","height","resizerBottom","preventDefault","x","y","pageX","resizerMax","parseInt","css","pageY","unbind","factory","$location","responseError","rejection","status","location","btoa","config","$httpProvider","interceptors","call"],"mappings":"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"} \ No newline at end of file diff --git a/lemonldap-ng-manager/site/htdocs/static/js/viewer.min.js b/lemonldap-ng-manager/site/htdocs/static/js/viewer.min.js index a8c3140b8..e877baaa8 100644 --- a/lemonldap-ng-manager/site/htdocs/static/js/viewer.min.js +++ b/lemonldap-ng-manager/site/htdocs/static/js/viewer.min.js @@ -1 +1 @@ -(function(){angular.module("llngViewer",["ui.tree","ui.bootstrap","llApp","ngCookies"]).controller("TreeCtrl",["$scope","$http","$location","$q","$uibModal","$translator","$cookies","$htmlParams",function(f,s,o,u,a,n,r,e){var l,c,d,g,t,m,p;if(f.links=window.links,f.menu=e.menu,f.menulinks=window.menulinks,f.staticPrefix=window.staticPrefix,f.formPrefix=window.formPrefix,f.availableLanguages=window.availableLanguages,f.waiting=!0,f.showM=!1,f.showT=!1,f.form="homeViewer",f.currentCfg={},f.viewPrefix=window.viewPrefix,f.allowDiff=window.allowDiff,f.message={},f.result="",f.translateTitle=function(e){return n.translateField(e,"title")},f.translateP=n.translateP,f.translate=n.translate,f.helpUrl="start.html#configuration",f.setShowHelp=function(e){var t;return null==e&&(e=!f.showH),f.showH=e,(t=new Date(Date.now())).setFullYear(t.getFullYear()+1),r.put("showhelp",e?"true":"false",{expires:t})},f.showH="false"!==r.get("showhelp"),null==f.showH&&f.setShowHelp(!0),m=function(e){var t,n;return t=e.status,n=e.statusLine,f.waiting=!1,403===t?f.message={title:"forbidden",message:"",items:[]}:401===t?(console.log("Authentication needed"),f.message={title:"authenticationNeeded",message:"__waitOrF5__",items:[]}):f.message=400===t?{title:"badRequest",message:n,items:[]}:0