lemonldap-ng/lemonldap-ng-manager/site/htdocs/static/js/2ndfa.min.js
2020-05-06 15:31:10 +02:00

1 line
4.7 KiB
JavaScript

(function(){var k,o,d,g;g={_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}},k={dateTitle:["_utime","_startTime","_updateTime"],sfaTitle:["_2fDevices"]},o={home:[]},angular.module("llngSessionsExplorer",["ui.tree","ui.bootstrap","llApp"]).controller("SessionsExplorerCtrl",["$scope","$translator","$location","$q","$http",function(v,t,e,n,a){var p,r,i,f;return v.links=links,v.menulinks=menulinks,v.staticPrefix=staticPrefix,v.scriptname=scriptname,v.formPrefix=formPrefix,v.availableLanguages=availableLanguages,v.waiting=!0,v.showM=!1,v.showT=!0,v.data=[],v.currentScope=null,v.currentSession=null,v.menu=o,v.searchString="",v.U2FCheck="1",v.TOTPCheck="1",v.UBKCheck="1",v.translateP=t.translateP,v.translate=t.translate,v.translateTitle=function(e){return t.translateField(e,"title")},f="persistent",v.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(v.currentNode,v),v[e.action]();break;case"string":v[e.action]();break;default:console.log(typeof e.action)}return v.showM=!1},v.search2FA=function(e){return e&&(v.searchString=""),v.currentSession=null,v.data=[],v.updateTree2("",v.data,0,0)},v.delete2FA=function(e,t){return angular.element(".data-"+t).remove(),v.waiting=!0,a.delete(scriptname+"sfa/"+f+"/"+v.currentSession.id+"?type="+e+"&epoch="+t).then(function(e){return v.waiting=!1},function(e){return v.waiting=!1}),v.showT=!1},v.stoggle=function(e){var t;return 0===(t=e.$modelValue).nodes.length&&v.updateTree(t.value,t.nodes,t.level,t.over,t.query,t.count),e.toggle()},v.displaySession=function(e){var t,n;return n=function(e){var t,n,a,r,i,o,u,s,l,c,h,p,f,d,g,m,T,w,y,_;for(c in w=e._utime,s=e._session_id,e)(_=e[c])?("string"==typeof e&&_.match(/; /)&&(e[c]=_.split("; ")),"object"!=typeof e[c]&&("_password".match(new RegExp("\b"+c+"\b"))?e[c]="********":c.match(/^(_utime|_lastAuthnUTime|_lastSeen|notification)$/)?e[c]=v.localeDate(_):c.match(/^(_startTime|_updateTime)$/)&&(d=/^(\d{4})(\d{2})(\d{2})(\d{2})(\d{2})(\d{2})$/,n=(_=_).match(d),e[c]=n[3]+"/"+n[2]+"/"+n[1]+" à "+n[4]+":"+n[5]+":"+n[6]))):delete e[c];for(i in g=[],k){for(T=[],u=0,h=(r=k[i]).length;u<h;u++)if(a=r[u],e[a])if(e[a].toString().match(/"type":\s*"(?:TOTP|U2F|UBK)"/)){for(T.push({title:"type",value:"name",epoch:"date"}),l=0,p=(t=JSON.parse(e[a])).length;l<p;l++){for(c in m=t[l])_=m[c],"type"===c&&(y=_),"name"===c&&(f=_),"epoch"===c&&(o=_);T.push({title:y,value:f,epoch:o})}delete e[a]}else e[a].toString().match(/\w+/)&&T.push({title:a,value:e[a]}),delete e[a];else delete e[a];0<T.length&&g.push({title:"__"+i+"__",nodes:T})}return{_utime:w,id:s,nodes:g}},t=(v.currentScope=e).$modelValue.session,a.get(scriptname+"sfa/"+f+"/"+t).then(function(e){return v.currentSession=n(e.data)}),v.showT=!1},v.localeDate=function(e){return new Date(1e3*e).toLocaleString()},v.getLanguage=function(e){return v.lang=e,v.form="white",v.init(),v.showM=!1},i=function(e,t,n){var a;return null!==(a=t.match(/#!?\/(\w+)/))&&!a[1].match(/^(persistent)$/)||(v.type="_session_uid"),v.init()},v.$on("$locationChangeSuccess",i),p=0,v.updateTree=function(o,u,s,l,e,t){var c,h,n;return v.waiting=!0,h=g[v.type]?g[v.type]:g._whatToTrace,c=h[s](v.type,o,e),25<t&&d[v.type]&&(n=d[v.type](v.type,o,s,l,e))?(l++,c=n,--s):l=0,a.get(scriptname+"sfa/"+f+"?"+c+"&U2FCheck="+v.U2FCheck+"&TOTPCheck="+v.TOTPCheck+"&UBKCheck="+v.UBKCheck).then(function(e){var t,n,a,r,i;if((t=e.data).result){for(n=0,a=(i=t.values).length;n<a;n++)r=i[n],p++,r.id="node"+p,s<h.length-1&&(r.nodes=[],r.level=s+1,r.query=c,r.over=l),u.push(r);""===o&&(v.total=t.total)}return v.waiting=!1},function(e){return v.waiting=!1})},v.updateTree2=function(o,u,s,l,e,t){var c,h,n;return v.waiting=!0,h=g[v.type]?g[v.type]:"_updateTime"===v.type?g._startTime:g._whatToTrace,c=h[s](v.type,o,e),25<t&&d[v.type]&&(n=d[v.type](v.type,o,s,l,e))?(l++,c=n,--s):l=0,a.get(scriptname+"sfa/"+f+"?_session_uid="+v.searchString+"*&groupBy=substr(_session_uid,"+v.searchString.length+")&U2FCheck="+v.U2FCheck+"&TOTPCheck="+v.TOTPCheck+"&UBKCheck="+v.UBKCheck).then(function(e){var t,n,a,r,i;if((t=e.data).result){for(n=0,a=(i=t.values).length;n<a;n++)r=i[n],p++,r.id="node"+p,s<h.length-1&&(r.nodes=[],r.level=s+1,r.query=c,r.over=l),u.push(r);""===o&&(v.total=t.total)}return v.waiting=!1},function(e){return v.waiting=!1})},v.init=function(){return v.waiting=!0,v.data=[],n.all([t.init(v.lang),v.updateTree("",v.data,0,0)]).then(function(){return v.waiting=!1},function(e){return v.waiting=!1}),v.activeModule="2ndFA",v.myStyle={color:"#ffb84d"}},r=e.path().match(/^\/(\w+)/),v.type=r?r[1]:"_whatToTrace"}])}).call(this);