Merge branch 'v2.0'
This commit is contained in:
commit
28732d614b
4
COPYING
4
COPYING
|
@ -67,6 +67,10 @@ Copyright: https://www.customicondesign.com
|
|||
License: CC-BY-NC-ND-3.0
|
||||
Comment: Downloaded from https://www.iconspedia.com/
|
||||
|
||||
Files: lemonldap-ng-portal/site/htdocs/static/common/modules/Slave.png
|
||||
Copyright: Antoine Rosier <antoine.rosier@mon-refuge.fr>
|
||||
License: CC-3
|
||||
|
||||
Files: lemonldap-ng-portal/site/htdocs/static/common/modules/Twitter.png
|
||||
Copyright: Paul Schulerr, https://schulerr.deviantart.com
|
||||
License: CC-3
|
||||
|
|
2
Makefile
2
Makefile
|
@ -311,7 +311,7 @@ $(SRCMANAGERDIR)/site/htdocs/static/js/%.js: $(SRCMANAGERDIR)/site/coffee/%.coff
|
|||
|
||||
%.min.js: %.js
|
||||
@echo "Compressing $*.js"
|
||||
@uglifyjs --comments='/Copyr/i' $*.js > $*.min.js
|
||||
@uglifyjs $*.js --compress --mangle --comments='/Copyr/i' --source-map $*.min.js.map -o $*.min.js
|
||||
|
||||
fastcgi-server/man/llng-fastcgi-server.1p: fastcgi-server/sbin/llng-fastcgi-server
|
||||
@echo Update FastCGI server man page
|
||||
|
|
|
@ -125,9 +125,9 @@
|
|||
"default" : "accept"
|
||||
},
|
||||
"manager.__DNSDOMAIN__" : {
|
||||
"(?#Configuration)^/(manager\\.html|confs|$)" : "$uid eq \"dwho\"",
|
||||
"(?#Notifications)/notifications" : "$uid eq \"dwho\" or $uid eq \"rtyler\"",
|
||||
"(?#Sessions)/sessions" : "$uid eq \"dwho\" or $uid eq \"rtyler\"",
|
||||
"(?#Configuration)^/(.*?\\.(fcgi|psgi)/)?(manager\\.html|confs/|$)" : "$uid eq \"dwho\"",
|
||||
"(?#Notifications)/(.*?\\.(fcgi|psgi)/)?notifications" : "$uid eq \"dwho\" or $uid eq \"rtyler\"",
|
||||
"(?#Sessions)/(.*?\\.(fcgi|psgi)/)?sessions" : "$uid eq \"dwho\" or $uid eq \"rtyler\"",
|
||||
"default" : "$uid eq \"dwho\" or $uid eq \"rtyler\""
|
||||
},
|
||||
"test1.__DNSDOMAIN__" : {
|
||||
|
|
|
@ -28,6 +28,7 @@ totp2fActivation = 1
|
|||
totp2fSelfRegistration = 1
|
||||
captcha_mail_enabled = 0
|
||||
portalDisplayResetPassword = 1
|
||||
;pdataDomain = example.com
|
||||
|
||||
[handler]
|
||||
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
.\" Automatically generated by Pod::Man 4.10 (Pod::Simple 3.35)
|
||||
.\" Automatically generated by Pod::Man 4.09 (Pod::Simple 3.35)
|
||||
.\"
|
||||
.\" Standard preamble:
|
||||
.\" ========================================================================
|
||||
|
@ -54,20 +54,16 @@
|
|||
.\" Avoid warning from groff about undefined register 'F'.
|
||||
.de IX
|
||||
..
|
||||
.nr rF 0
|
||||
.if \n(.g .if rF .nr rF 1
|
||||
.if (\n(rF:(\n(.g==0)) \{\
|
||||
. if \nF \{\
|
||||
. de IX
|
||||
. tm Index:\\$1\t\\n%\t"\\$2"
|
||||
.if !\nF .nr F 0
|
||||
.if \nF>0 \{\
|
||||
. de IX
|
||||
. tm Index:\\$1\t\\n%\t"\\$2"
|
||||
..
|
||||
. if !\nF==2 \{\
|
||||
. nr % 0
|
||||
. nr F 2
|
||||
. \}
|
||||
. if !\nF==2 \{\
|
||||
. nr % 0
|
||||
. nr F 2
|
||||
. \}
|
||||
.\}
|
||||
.rr rF
|
||||
.\"
|
||||
.\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2).
|
||||
.\" Fear. Run. Save yourself. No user-serviceable parts.
|
||||
|
@ -133,7 +129,7 @@
|
|||
.\" ========================================================================
|
||||
.\"
|
||||
.IX Title "llng-fastcgi-server 1"
|
||||
.TH llng-fastcgi-server 1 "2019-07-10" "perl v5.28.1" "User Contributed Perl Documentation"
|
||||
.TH llng-fastcgi-server 1 "2019-08-15" "perl v5.26.1" "User Contributed Perl Documentation"
|
||||
.\" For nroff, turn off justification. Always turn off hyphenation; it makes
|
||||
.\" way too many mistakes in technical documents.
|
||||
.if n .ad l
|
||||
|
|
|
@ -302,6 +302,10 @@ languages = en, fr, vi, it, ar, de, fi
|
|||
; Read Lemonldap::NG::Portal::Main::Plugin(3pm) man page.
|
||||
;customPlugins = My::Package1, My::Package2
|
||||
|
||||
; To avoid bad/expired OTT if authssl and auth are served by different Load Balancers
|
||||
; you can override OTT configuration to store Upgrade OTT into global storage
|
||||
;forceGlobalStorageUpgradeOTT = 1
|
||||
|
||||
[handler]
|
||||
|
||||
; Handler cache configuration
|
||||
|
|
|
@ -184,7 +184,6 @@ sub defaultValues {
|
|||
'oidcServiceMetaDataCheckSessionURI' => 'checksession.html',
|
||||
'oidcServiceMetaDataEndSessionURI' => 'logout',
|
||||
'oidcServiceMetaDataFrontChannelURI' => 'flogout',
|
||||
'oidcServiceMetaDataIssuer' => 'http://auth.example.com',
|
||||
'oidcServiceMetaDataJWKSURI' => 'jwks',
|
||||
'oidcServiceMetaDataRegistrationURI' => 'register',
|
||||
'oidcServiceMetaDataTokenURI' => 'token',
|
||||
|
|
|
@ -79,6 +79,7 @@ site/htdocs/static/bwr/es5-shim/es5-shim.map
|
|||
site/htdocs/static/bwr/es5-shim/es5-shim.min.js
|
||||
site/htdocs/static/bwr/file-saver.js/FileSaver.js
|
||||
site/htdocs/static/bwr/file-saver.js/FileSaver.min.js
|
||||
site/htdocs/static/bwr/file-saver.js/FileSaver.min.js.map
|
||||
site/htdocs/static/bwr/jquery-ui/jquery-ui.js
|
||||
site/htdocs/static/bwr/jquery-ui/jquery-ui.min.js
|
||||
site/htdocs/static/bwr/jquery/dist/jquery.js
|
||||
|
@ -138,6 +139,8 @@ site/htdocs/static/forms/samlService.html
|
|||
site/htdocs/static/forms/samlSPMetaDataNode.html
|
||||
site/htdocs/static/forms/samlSPMetaDataNodeContainer.html
|
||||
site/htdocs/static/forms/select.html
|
||||
site/htdocs/static/forms/sfExtra.html
|
||||
site/htdocs/static/forms/sfExtraContainer.html
|
||||
site/htdocs/static/forms/simpleInputContainer.html
|
||||
site/htdocs/static/forms/text.html
|
||||
site/htdocs/static/forms/trool.html
|
||||
|
@ -146,24 +149,34 @@ site/htdocs/static/forms/virtualHostContainer.html
|
|||
site/htdocs/static/forms/white.html
|
||||
site/htdocs/static/js/2ndfa.js
|
||||
site/htdocs/static/js/2ndfa.min.js
|
||||
site/htdocs/static/js/2ndfa.min.js.map
|
||||
site/htdocs/static/js/conftree.js
|
||||
site/htdocs/static/js/conftree.min.js
|
||||
site/htdocs/static/js/conftree.min.js.map
|
||||
site/htdocs/static/js/diff.js
|
||||
site/htdocs/static/js/diff.min.js
|
||||
site/htdocs/static/js/diff.min.js.map
|
||||
site/htdocs/static/js/filterFunctions.js
|
||||
site/htdocs/static/js/filterFunctions.min.js
|
||||
site/htdocs/static/js/filterFunctions.min.js.map
|
||||
site/htdocs/static/js/llApp.js
|
||||
site/htdocs/static/js/llApp.min.js
|
||||
site/htdocs/static/js/llApp.min.js.map
|
||||
site/htdocs/static/js/manager.js
|
||||
site/htdocs/static/js/manager.min.js
|
||||
site/htdocs/static/js/manager.min.js.map
|
||||
site/htdocs/static/js/notifications.js
|
||||
site/htdocs/static/js/notifications.min.js
|
||||
site/htdocs/static/js/notifications.min.js.map
|
||||
site/htdocs/static/js/sessions.js
|
||||
site/htdocs/static/js/sessions.min.js
|
||||
site/htdocs/static/js/sessions.min.js.map
|
||||
site/htdocs/static/js/viewDiff.js
|
||||
site/htdocs/static/js/viewDiff.min.js
|
||||
site/htdocs/static/js/viewDiff.min.js.map
|
||||
site/htdocs/static/js/viewer.js
|
||||
site/htdocs/static/js/viewer.min.js
|
||||
site/htdocs/static/js/viewer.min.js.map
|
||||
site/htdocs/static/languages/ar.json
|
||||
site/htdocs/static/languages/de.json
|
||||
site/htdocs/static/languages/en.json
|
||||
|
@ -209,6 +222,7 @@ t/12-save-changed-conf.t
|
|||
t/14-bad-changes-in-conf.t
|
||||
t/15-combination.t
|
||||
t/16-cli.t
|
||||
t/17-extra2f.t
|
||||
t/20-test-coverage.t
|
||||
t/40-sessions.t
|
||||
t/50-notifications-DBI.t
|
||||
|
@ -227,6 +241,7 @@ t/jsonfiles/11-modified-with-confirmation.json
|
|||
t/jsonfiles/12-modified.json
|
||||
t/jsonfiles/14-bad.json
|
||||
t/jsonfiles/15-combination.json
|
||||
t/jsonfiles/17-extra2f.json
|
||||
t/jsonfiles/70-diff.json
|
||||
t/lemonldap-ng-dbi.ini
|
||||
t/lemonldap-ng-noDiff.ini
|
||||
|
|
|
@ -137,7 +137,7 @@ qr/^(?:(?:(?:(?:(?:(?:[a-zA-Z0-9][-a-zA-Z0-9]*)?[a-zA-Z0-9])[.])*(?:[a-zA-Z][-a-
|
|||
eval {
|
||||
do {
|
||||
qr/$_[0]/;
|
||||
}
|
||||
}
|
||||
};
|
||||
return $@ ? ( 0, "__badRegexp__: $@" ) : 1;
|
||||
}
|
||||
|
@ -218,8 +218,7 @@ m[^(?:(?:\-+\s*BEGIN\s+(?:PUBLIC\s+KEY|CERTIFICATE)\s*\-+\r?\n)?[a-zA-Z0-9/\+\r\
|
|||
},
|
||||
'select' => {
|
||||
'test' => sub {
|
||||
my $test =
|
||||
grep( { $_ eq $_[0]; }
|
||||
my $test = grep( { $_ eq $_[0]; }
|
||||
map( { $_->{'k'}; } @{ $_[2]{'select'}; } ) );
|
||||
return $test
|
||||
? 1
|
||||
|
@ -1593,7 +1592,7 @@ qr/^(?:\*\.)?(?:(?:(?:(?:[a-zA-Z0-9][-a-zA-Z0-9]*)?[a-zA-Z0-9])[.])*(?:[a-zA-Z][
|
|||
eval {
|
||||
do {
|
||||
qr/$_[0]/;
|
||||
}
|
||||
}
|
||||
};
|
||||
return $@ ? 0 : 1;
|
||||
},
|
||||
|
@ -2103,8 +2102,7 @@ qr/^(?:\*\.)?(?:(?:(?:(?:[a-zA-Z0-9][-a-zA-Z0-9]*)?[a-zA-Z0-9])[.])*(?:[a-zA-Z][
|
|||
'type' => 'text'
|
||||
},
|
||||
'oidcServiceMetaDataIssuer' => {
|
||||
'default' => 'http://auth.example.com',
|
||||
'type' => 'text'
|
||||
'type' => 'text'
|
||||
},
|
||||
'oidcServiceMetaDataJWKSURI' => {
|
||||
'default' => 'jwks',
|
||||
|
@ -3649,7 +3647,8 @@ qr/^(?:(?:(?:(?:(?:(?:[a-zA-Z0-9][-a-zA-Z0-9]*)?[a-zA-Z0-9])[.])*(?:[a-zA-Z][-a-
|
|||
'type' => 'text'
|
||||
},
|
||||
'vhostAliases' => {
|
||||
'type' => 'text'
|
||||
'default' => '',
|
||||
'type' => 'text'
|
||||
},
|
||||
'vhostAuthnLevel' => {
|
||||
'type' => 'int'
|
||||
|
|
|
@ -1896,7 +1896,7 @@ sub attributes {
|
|||
type => 'int',
|
||||
default => -1,
|
||||
},
|
||||
vhostAliases => { type => 'text', },
|
||||
vhostAliases => { type => 'text', default => '' },
|
||||
vhostType => {
|
||||
type => 'select',
|
||||
select => [
|
||||
|
@ -1913,7 +1913,7 @@ sub attributes {
|
|||
default => 'Main',
|
||||
documentation => 'Handler type',
|
||||
},
|
||||
vhostAuthnLevel => { type => 'int', },
|
||||
vhostAuthnLevel => { type => 'int' },
|
||||
|
||||
# SecureToken parameters
|
||||
secureTokenAllowOnError => {
|
||||
|
@ -3400,7 +3400,7 @@ m{^(?:ldapi://[^/]*/?|\w[\w\-\.]*(?::\d{1,5})?|ldap(?:s|\+tls)?://\w[\w\-\.]*(?:
|
|||
{ k => 'Mail2F', v => 'E-Mail' },
|
||||
{ k => 'REST', v => 'REST' },
|
||||
{ k => 'Ext2F', v => 'External' },
|
||||
{ k => 'Radius', v => 'Radius' },
|
||||
{ k => 'Radius', v => 'Radius' },
|
||||
],
|
||||
},
|
||||
|
||||
|
@ -3446,7 +3446,6 @@ m{^(?:ldapi://[^/]*/?|\w[\w\-\.]*(?::\d{1,5})?|ldap(?:s|\+tls)?://\w[\w\-\.]*(?:
|
|||
# OpenID Connect service
|
||||
oidcServiceMetaDataIssuer => {
|
||||
type => 'text',
|
||||
default => 'http://auth.example.com',
|
||||
documentation => 'OpenID Connect issuer',
|
||||
},
|
||||
oidcServiceMetaDataAuthorizeURI => {
|
||||
|
|
|
@ -162,10 +162,11 @@ sub zeroConf {
|
|||
},
|
||||
"manager.$domain" => {
|
||||
'default' => '$uid eq "dwho" or $uid eq "rtyler"',
|
||||
'(?#Configuration)^/(manager\.html|confs|$)' =>
|
||||
'$uid eq "dwho"',
|
||||
'(?#Sessions)/sessions' => '$uid eq "dwho" or $uid eq "rtyler"',
|
||||
'(?#Notifications)/notifications' =>
|
||||
'(?#Configuration)^/(.*?\.(fcgi|psgi)/)?(manager\.html|confs/|$)'
|
||||
=> '$uid eq "dwho"',
|
||||
'(?#Sessions)/(.*?\.(fcgi|psgi)/)?sessions' =>
|
||||
'$uid eq "dwho" or $uid eq "rtyler"',
|
||||
'(?#Notifications)/(.*?\.(fcgi|psgi)/)?notifications' =>
|
||||
'$uid eq "dwho" or $uid eq "rtyler"',
|
||||
}
|
||||
},
|
||||
|
|
|
@ -32,6 +32,7 @@ schemes =
|
|||
|
||||
overScheme =
|
||||
_whatToTrace: (t,v,level,over) ->
|
||||
console.log 'overSchema => level', level, 'over', over
|
||||
if level == 1 and v.length > over
|
||||
"#{t}=#{v}*&groupBy=substr(#{t},#{(level+over+1)})"
|
||||
else
|
||||
|
|
|
@ -68,19 +68,22 @@ overScheme =
|
|||
_whatToTrace: (t,v,level,over) ->
|
||||
# "v.length > over" avoids a loop if one user opened more than "max"
|
||||
# sessions
|
||||
console.log 'overSchema => level', level, 'over', over
|
||||
if level == 1 and v.length > over
|
||||
"#{t}=#{v}*&groupBy=substr(#{t},#{(level+over+1)})"
|
||||
else
|
||||
null
|
||||
# Note: IPv4 only
|
||||
ipAddr: (t,v,level,over) ->
|
||||
if level > 0 and level < 4
|
||||
"#{t}=#{v}*&groupBy=net(#{t},#{16*level+4*(over+1)},2)"
|
||||
console.log 'overSchema => level', level, 'over', over
|
||||
if level > 0 and level < 4 and !v.match(/^\d+\.\d/) and over < 2
|
||||
"#{t}=#{v}*&groupBy=net(#{t},#{16*level+4*(over+1)},#{1+level+over})"
|
||||
else
|
||||
null
|
||||
_startTime: (t,v,level,over) ->
|
||||
console.log 'overSchema => level', level, 'over', over
|
||||
if level > 3
|
||||
"#{t}=#{v}*&groupBy=substr(#{t},#{(9+level+over+1)})"
|
||||
"#{t}=#{v}*&groupBy=substr(#{t},#{(10+level+over)})"
|
||||
else
|
||||
null
|
||||
|
||||
|
@ -166,8 +169,6 @@ llapp.controller 'SessionsExplorerCtrl', ['$scope', '$translator', '$location',
|
|||
$scope.waiting = false
|
||||
$scope.showT = false
|
||||
|
||||
|
||||
|
||||
# Delete
|
||||
$scope.deleteSession = ->
|
||||
$scope.waiting = true
|
||||
|
|
|
@ -9,7 +9,7 @@ This file contains:
|
|||
- the AngularJS controller
|
||||
###
|
||||
|
||||
llapp = angular.module 'llngManager', ['ui.tree', 'ui.bootstrap', 'llApp', 'ngCookies']
|
||||
llapp = angular.module 'llngViewer', ['ui.tree', 'ui.bootstrap', 'llApp', 'ngCookies']
|
||||
|
||||
###
|
||||
Main AngularJS controller
|
||||
|
@ -321,6 +321,22 @@ llapp.controller 'TreeCtrl', [
|
|||
$scope.showT = false
|
||||
setHelp scope
|
||||
|
||||
$scope.keyWritable = (scope) ->
|
||||
node = scope.$modelValue
|
||||
# regexp-assemble of:
|
||||
# authChoice
|
||||
# cmbModule
|
||||
# keyText
|
||||
# menuApp
|
||||
# menuCat
|
||||
# rule
|
||||
# samlAttribute
|
||||
# samlIDPMetaDataNode
|
||||
# samlSPMetaDataNode
|
||||
# sfExtra
|
||||
# virtualHost
|
||||
return if node.type and node.type.match /^(?:s(?:aml(?:(?:ID|S)PMetaDataNod|Attribut)e|fExtra)|(?:(?:cmbMod|r)ul|authChoic)e|(?:virtualHos|keyTex)t|menu(?:App|Cat))$/ then true else false
|
||||
|
||||
# method `getKey()`:
|
||||
# - return a promise with the data:
|
||||
# - from node when set
|
||||
|
@ -351,10 +367,13 @@ llapp.controller 'TreeCtrl', [
|
|||
node.data = node['default']
|
||||
else
|
||||
node.data = data.value
|
||||
if node.data.toString().match /_Hidden_$/
|
||||
if (node.data and node.data.toString().match /_Hidden_$/)
|
||||
node.type = 'text'
|
||||
node.data = '######'
|
||||
# Cast int as int (remember that booleans are int for Perl)
|
||||
if node.type and node.type.match /^(bool|trool|boolOrExpr)$/
|
||||
if typeof node.data == 'string' and node.data.match /^(?:-1|0|1)$/
|
||||
node.data = parseInt(node.data, 10)
|
||||
if node.type and node.type.match /^int$/
|
||||
node.data = parseInt(node.data, 10)
|
||||
# Split SAML types
|
||||
|
@ -450,5 +469,4 @@ llapp.controller 'TreeCtrl', [
|
|||
unless c
|
||||
console.log "Redirecting to /view/latest"
|
||||
$location.path '/view/latest'
|
||||
|
||||
]
|
||||
|
|
|
@ -1 +1 @@
|
|||
var saveAs=saveAs||function(view){"use strict";if(typeof navigator!=="undefined"&&/MSIE [1-9]\./.test(navigator.userAgent)){return}var doc=view.document,get_URL=function(){return view.URL||view.webkitURL||view},save_link=doc.createElementNS("http://www.w3.org/1999/xhtml","a"),can_use_save_link="download"in save_link,click=function(node){var event=doc.createEvent("MouseEvents");event.initMouseEvent("click",true,false,view,0,0,0,0,0,false,false,false,false,0,null);node.dispatchEvent(event)},webkit_req_fs=view.webkitRequestFileSystem,req_fs=view.requestFileSystem||webkit_req_fs||view.mozRequestFileSystem,throw_outside=function(ex){(view.setImmediate||view.setTimeout)(function(){throw ex},0)},force_saveable_type="application/octet-stream",fs_min_size=0,arbitrary_revoke_timeout=500,revoke=function(file){var revoker=function(){if(typeof file==="string"){get_URL().revokeObjectURL(file)}else{file.remove()}};if(view.chrome){revoker()}else{setTimeout(revoker,arbitrary_revoke_timeout)}},dispatch=function(filesaver,event_types,event){event_types=[].concat(event_types);var i=event_types.length;while(i--){var listener=filesaver["on"+event_types[i]];if(typeof listener==="function"){try{listener.call(filesaver,event||filesaver)}catch(ex){throw_outside(ex)}}}},auto_bom=function(blob){if(/^\s*(?:text\/\S*|application\/xml|\S*\/\S*\+xml)\s*;.*charset\s*=\s*utf-8/i.test(blob.type)){return new Blob(["\ufeff",blob],{type:blob.type})}return blob},FileSaver=function(blob,name){blob=auto_bom(blob);var filesaver=this,type=blob.type,blob_changed=false,object_url,target_view,dispatch_all=function(){dispatch(filesaver,"writestart progress write writeend".split(" "))},fs_error=function(){if(blob_changed||!object_url){object_url=get_URL().createObjectURL(blob)}if(target_view){target_view.location.href=object_url}else{var new_tab=view.open(object_url,"_blank");if(new_tab==undefined&&typeof safari!=="undefined"){view.location.href=object_url}}filesaver.readyState=filesaver.DONE;dispatch_all();revoke(object_url)},abortable=function(func){return function(){if(filesaver.readyState!==filesaver.DONE){return func.apply(this,arguments)}}},create_if_not_found={create:true,exclusive:false},slice;filesaver.readyState=filesaver.INIT;if(!name){name="download"}if(can_use_save_link){object_url=get_URL().createObjectURL(blob);save_link.href=object_url;save_link.download=name;click(save_link);filesaver.readyState=filesaver.DONE;dispatch_all();revoke(object_url);return}if(view.chrome&&type&&type!==force_saveable_type){slice=blob.slice||blob.webkitSlice;blob=slice.call(blob,0,blob.size,force_saveable_type);blob_changed=true}if(webkit_req_fs&&name!=="download"){name+=".download"}if(type===force_saveable_type||webkit_req_fs){target_view=view}if(!req_fs){fs_error();return}fs_min_size+=blob.size;req_fs(view.TEMPORARY,fs_min_size,abortable(function(fs){fs.root.getDirectory("saved",create_if_not_found,abortable(function(dir){var save=function(){dir.getFile(name,create_if_not_found,abortable(function(file){file.createWriter(abortable(function(writer){writer.onwriteend=function(event){target_view.location.href=file.toURL();filesaver.readyState=filesaver.DONE;dispatch(filesaver,"writeend",event);revoke(file)};writer.onerror=function(){var error=writer.error;if(error.code!==error.ABORT_ERR){fs_error()}};"writestart progress write abort".split(" ").forEach(function(event){writer["on"+event]=filesaver["on"+event]});writer.write(blob);filesaver.abort=function(){writer.abort();filesaver.readyState=filesaver.DONE};filesaver.readyState=filesaver.WRITING}),fs_error)}),fs_error)};dir.getFile(name,{create:false},abortable(function(file){file.remove();save()}),abortable(function(ex){if(ex.code===ex.NOT_FOUND_ERR){save()}else{fs_error()}}))}),fs_error)}),fs_error)},FS_proto=FileSaver.prototype,saveAs=function(blob,name){return new FileSaver(blob,name)};if(typeof navigator!=="undefined"&&navigator.msSaveOrOpenBlob){return function(blob,name){return navigator.msSaveOrOpenBlob(auto_bom(blob),name)}}FS_proto.abort=function(){var filesaver=this;filesaver.readyState=filesaver.DONE;dispatch(filesaver,"abort")};FS_proto.readyState=FS_proto.INIT=0;FS_proto.WRITING=1;FS_proto.DONE=2;FS_proto.error=FS_proto.onwritestart=FS_proto.onprogress=FS_proto.onwrite=FS_proto.onabort=FS_proto.onerror=FS_proto.onwriteend=null;return saveAs}(typeof self!=="undefined"&&self||typeof window!=="undefined"&&window||this.content);if(typeof module!=="undefined"&&module.exports){module.exports.saveAs=saveAs}else if(typeof define!=="undefined"&&define!==null&&define.amd!=null){define([],function(){return saveAs})}
|
||||
var saveAs=saveAs||function(l){"use strict";if("undefined"==typeof navigator||!/MSIE [1-9]\./.test(navigator.userAgent)){var p=l.document,w=function(){return l.URL||l.webkitURL||l},v=p.createElementNS("http://www.w3.org/1999/xhtml","a"),y="download"in v,m=l.webkitRequestFileSystem,h=l.requestFileSystem||m||l.mozRequestFileSystem,i=function(e){(l.setImmediate||l.setTimeout)(function(){throw e},0)},S="application/octet-stream",O=0,E=function(e){function t(){"string"==typeof e?w().revokeObjectURL(e):e.remove()}l.chrome?t():setTimeout(t,500)},R=function(e,t,n){for(var o=(t=[].concat(t)).length;o--;){var r=e["on"+t[o]];if("function"==typeof r)try{r.call(e,n||e)}catch(e){i(e)}}},b=function(e){return/^\s*(?:text\/\S*|application\/xml|\S*\/\S*\+xml)\s*;.*charset\s*=\s*utf-8/i.test(e.type)?new Blob(["\ufeff",e],{type:e.type}):e},n=function(o,n){o=b(o);function e(){R(f,"writestart progress write writeend".split(" "))}function r(){!s&&t||(t=w().createObjectURL(o)),a?a.location.href=t:null==l.open(t,"_blank")&&"undefined"!=typeof safari&&(l.location.href=t),f.readyState=f.DONE,e(),E(t)}function i(e){return function(){if(f.readyState!==f.DONE)return e.apply(this,arguments)}}var t,a,c,f=this,u=o.type,s=!1,d={create:!0,exclusive:!1};if(f.readyState=f.INIT,n=n||"download",y)return t=w().createObjectURL(o),v.href=t,v.download=n,function(e){var t=p.createEvent("MouseEvents");t.initMouseEvent("click",!0,!1,l,0,0,0,0,0,!1,!1,!1,!1,0,null),e.dispatchEvent(t)}(v),f.readyState=f.DONE,e(),void E(t);l.chrome&&u&&u!==S&&(c=o.slice||o.webkitSlice,o=c.call(o,0,o.size,S),s=!0),m&&"download"!==n&&(n+=".download"),u!==S&&!m||(a=l),h?(O+=o.size,h(l.TEMPORARY,O,i(function(e){e.root.getDirectory("saved",d,i(function(e){function t(){e.getFile(n,d,i(function(n){n.createWriter(i(function(t){t.onwriteend=function(e){a.location.href=n.toURL(),f.readyState=f.DONE,R(f,"writeend",e),E(n)},t.onerror=function(){var e=t.error;e.code!==e.ABORT_ERR&&r()},"writestart progress write abort".split(" ").forEach(function(e){t["on"+e]=f["on"+e]}),t.write(o),f.abort=function(){t.abort(),f.readyState=f.DONE},f.readyState=f.WRITING}),r)}),r)}e.getFile(n,{create:!1},i(function(e){e.remove(),t()}),i(function(e){e.code===e.NOT_FOUND_ERR?t():r()}))}),r)}),r)):r()},e=n.prototype;return"undefined"!=typeof navigator&&navigator.msSaveOrOpenBlob?function(e,t){return navigator.msSaveOrOpenBlob(b(e),t)}:(e.abort=function(){this.readyState=this.DONE,R(this,"abort")},e.readyState=e.INIT=0,e.WRITING=1,e.DONE=2,e.error=e.onwritestart=e.onprogress=e.onwrite=e.onabort=e.onerror=e.onwriteend=null,function(e,t){return new n(e,t)})}}("undefined"!=typeof self&&self||"undefined"!=typeof window&&window||this.content);"undefined"!=typeof module&&module.exports?module.exports.saveAs=saveAs:"undefined"!=typeof define&&null!==define&&null!=define.amd&&define([],function(){return saveAs});
|
|
@ -0,0 +1 @@
|
|||
{"version":3,"sources":["lemonldap-ng-manager/site/htdocs/static/bwr/file-saver.js/FileSaver.js"],"names":["saveAs","view","navigator","test","userAgent","doc","document","get_URL","URL","webkitURL","save_link","createElementNS","can_use_save_link","webkit_req_fs","webkitRequestFileSystem","req_fs","requestFileSystem","mozRequestFileSystem","throw_outside","ex","setImmediate","setTimeout","force_saveable_type","fs_min_size","revoke","file","revoker","revokeObjectURL","remove","chrome","dispatch","filesaver","event_types","event","i","concat","length","listener","call","auto_bom","blob","type","Blob","FileSaver","name","dispatch_all","split","fs_error","blob_changed","object_url","createObjectURL","target_view","location","href","undefined","open","safari","readyState","DONE","abortable","func","apply","this","arguments","slice","create_if_not_found","create","exclusive","INIT","download","node","createEvent","initMouseEvent","dispatchEvent","click","webkitSlice","size","TEMPORARY","fs","root","getDirectory","dir","save","getFile","createWriter","writer","onwriteend","toURL","onerror","error","code","ABORT_ERR","forEach","write","abort","WRITING","NOT_FOUND_ERR","FS_proto","prototype","msSaveOrOpenBlob","onwritestart","onprogress","onwrite","onabort","self","window","content","module","exports","define","amd"],"mappings":"AAcA,IAAIA,OAASA,QAAW,SAASC,GAChC,aAEA,GAAyB,oBAAdC,YAA6B,eAAeC,KAAKD,UAAUE,WAAtE,CAGA,IACGC,EAAMJ,EAAKK,SAEXC,EAAU,WACX,OAAON,EAAKO,KAAOP,EAAKQ,WAAaR,GAEpCS,EAAYL,EAAIM,gBAAgB,+BAAgC,KAChEC,EAAoB,aAAcF,EASlCG,EAAgBZ,EAAKa,wBACrBC,EAASd,EAAKe,mBAAqBH,GAAiBZ,EAAKgB,qBACzDC,EAAgB,SAASC,IACzBlB,EAAKmB,cAAgBnB,EAAKoB,YAAY,WACtC,MAAMF,GACJ,IAEFG,EAAsB,2BACtBC,EAAc,EAKdC,EAAS,SAASC,GACL,SAAVC,IACiB,iBAATD,EACVlB,IAAUoB,gBAAgBF,GAE1BA,EAAKG,SAGH3B,EAAK4B,OACRH,IAEAL,WAAWK,EAZgB,MAe3BI,EAAW,SAASC,EAAWC,EAAaC,GAG7C,IADA,IAAIC,GADJF,EAAc,GAAGG,OAAOH,IACJI,OACbF,KAAK,CACX,IAAIG,EAAWN,EAAU,KAAOC,EAAYE,IAC5C,GAAwB,mBAAbG,EACV,IACCA,EAASC,KAAKP,EAAWE,GAASF,GACjC,MAAOZ,GACRD,EAAcC,MAKhBoB,EAAW,SAASC,GAErB,MAAI,6EAA6ErC,KAAKqC,EAAKC,MACnF,IAAIC,KAAK,CAAC,SAAUF,GAAO,CAACC,KAAMD,EAAKC,OAExCD,GAENG,EAAY,SAASH,EAAMI,GAC5BJ,EAAOD,EAASC,GAQE,SAAfK,IACDf,EAASC,EAAW,qCAAqCe,MAAM,MAGnD,SAAXC,KAEGC,GAAiBC,IACpBA,EAAa1C,IAAU2C,gBAAgBV,IAEpCW,EACHA,EAAYC,SAASC,KAAOJ,EAGbK,MADDrD,EAAKsD,KAAKN,EAAY,WACU,oBAAXO,SAElCvD,EAAKmD,SAASC,KAAOJ,GAGvBlB,EAAU0B,WAAa1B,EAAU2B,KACjCb,IACArB,EAAOyB,GAEM,SAAZU,EAAqBC,GACtB,OAAO,WACN,GAAI7B,EAAU0B,aAAe1B,EAAU2B,KACtC,OAAOE,EAAKC,MAAMC,KAAMC,YA/B5B,IAIGd,EACAE,EA+BAa,EAnCAjC,EAAY+B,KACZrB,EAAOD,EAAKC,KACZO,GAAe,EAgCfiB,EAAsB,CAACC,QAAQ,EAAMC,WAAW,GAOnD,GAJApC,EAAU0B,WAAa1B,EAAUqC,KAEhCxB,EADIA,GACG,WAEJhC,EAQH,OAPAqC,EAAa1C,IAAU2C,gBAAgBV,GACvC9B,EAAU2C,KAAOJ,EACjBvC,EAAU2D,SAAWzB,EAxGb,SAAS0B,GAClB,IAAIrC,EAAQ5B,EAAIkE,YAAY,eAC5BtC,EAAMuC,eACL,SAAS,GAAM,EAAOvE,EAAM,EAAG,EAAG,EAAG,EAAG,GACtC,GAAO,GAAO,GAAO,EAAO,EAAG,MAElCqE,EAAKG,cAAcxC,GAmGlByC,CAAMhE,GACNqB,EAAU0B,WAAa1B,EAAU2B,KACjCb,SACArB,EAAOyB,GAQJhD,EAAK4B,QAAUY,GAAQA,IAASnB,IACnC0C,EAAQxB,EAAKwB,OAASxB,EAAKmC,YAC3BnC,EAAOwB,EAAM1B,KAAKE,EAAM,EAAGA,EAAKoC,KAAMtD,GACtC0B,GAAe,GAKZnC,GAA0B,aAAT+B,IACpBA,GAAQ,aAELH,IAASnB,IAAuBT,IACnCsC,EAAclD,GAEVc,GAILQ,GAAeiB,EAAKoC,KACpB7D,EAAOd,EAAK4E,UAAWtD,EAAaoC,EAAU,SAASmB,GACtDA,EAAGC,KAAKC,aAAa,QAASf,EAAqBN,EAAU,SAASsB,GAC1D,SAAPC,IACHD,EAAIE,QAAQvC,EAAMqB,EAAqBN,EAAU,SAASlC,GACzDA,EAAK2D,aAAazB,EAAU,SAAS0B,GACpCA,EAAOC,WAAa,SAASrD,GAC5BkB,EAAYC,SAASC,KAAO5B,EAAK8D,QACjCxD,EAAU0B,WAAa1B,EAAU2B,KACjC5B,EAASC,EAAW,WAAYE,GAChCT,EAAOC,IAER4D,EAAOG,QAAU,WAChB,IAAIC,EAAQJ,EAAOI,MACfA,EAAMC,OAASD,EAAME,WACxB5C,KAGF,kCAAkCD,MAAM,KAAK8C,QAAQ,SAAS3D,GAC7DoD,EAAO,KAAOpD,GAASF,EAAU,KAAOE,KAEzCoD,EAAOQ,MAAMrD,GACbT,EAAU+D,MAAQ,WACjBT,EAAOS,QACP/D,EAAU0B,WAAa1B,EAAU2B,MAElC3B,EAAU0B,WAAa1B,EAAUgE,UAC9BhD,KACDA,GAELkC,EAAIE,QAAQvC,EAAM,CAACsB,QAAQ,GAAQP,EAAU,SAASlC,GAErDA,EAAKG,SACLsD,MACGvB,EAAU,SAASxC,GAClBA,EAAGuE,OAASvE,EAAG6E,cAClBd,IAEAnC,SAGCA,KACDA,IA7CHA,KA+CAkD,EAAWtD,EAAUuD,UAMxB,MAAyB,oBAAdhG,WAA6BA,UAAUiG,iBAC1C,SAAS3D,EAAMI,GACrB,OAAO1C,UAAUiG,iBAAiB5D,EAASC,GAAOI,KAIpDqD,EAASH,MAAQ,WACAhC,KACNL,WADMK,KACiBJ,KACjC5B,EAFgBgC,KAEI,UAErBmC,EAASxC,WAAawC,EAAS7B,KAAO,EACtC6B,EAASF,QAAU,EACnBE,EAASvC,KAAO,EAEhBuC,EAASR,MACTQ,EAASG,aACTH,EAASI,WACTJ,EAASK,QACTL,EAASM,QACTN,EAAST,QACTS,EAASX,WACR,KA3BW,SAAS9C,EAAMI,GACzB,OAAO,IAAID,EAAUH,EAAMI,MAlMP,CAgOH,oBAAT4D,MAAwBA,MACb,oBAAXC,QAA0BA,QACjC3C,KAAK4C,SAMa,oBAAXC,QAA0BA,OAAOC,QAC1CD,OAAOC,QAAQ5G,OAASA,OACI,oBAAX6G,QAAqC,OAAXA,QAAmC,MAAdA,OAAOC,KACvED,OAAO,GAAI,WACT,OAAO7G"}
|
|
@ -1,4 +1,4 @@
|
|||
// Generated by CoffeeScript 1.12.8
|
||||
// Generated by CoffeeScript 1.12.7
|
||||
|
||||
/*
|
||||
* 2ndFA Session explorer
|
||||
|
@ -42,6 +42,7 @@
|
|||
|
||||
overScheme = {
|
||||
_whatToTrace: function(t, v, level, over) {
|
||||
console.log('overSchema => level', level, 'over', over);
|
||||
if (level === 1 && v.length > over) {
|
||||
return t + "=" + v + "*&groupBy=substr(" + t + "," + (level + over + 1) + ")";
|
||||
} else {
|
||||
|
|
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
|
@ -1149,6 +1149,7 @@ function templates(tpl,key) {
|
|||
"type" : "bool"
|
||||
},
|
||||
{
|
||||
"default" : "",
|
||||
"get" : tpl+"s/"+key+"/"+"vhostAliases",
|
||||
"id" : tpl+"s/"+key+"/"+"vhostAliases",
|
||||
"title" : "vhostAliases"
|
||||
|
|
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
|
@ -1 +1 @@
|
|||
(function(){var llapp;llapp=angular.module("llngConfDiff",["ui.tree","ui.bootstrap","llApp","ngCookies"],function($rootScopeProvider){return $rootScopeProvider.digestTtl(15)});llapp.controller("DiffCtrl",["$scope","$http","$q","$translator","$location",function($scope,$http,$q,$translator,$location){var buildTree,getCfg,init,pathEvent,readDiff,reverseTree,toNodes;$scope.links=links;$scope.menulinks=menulinks;$scope.staticPrefix=staticPrefix;$scope.scriptname=scriptname;$scope.availableLanguages=availableLanguages;$scope.waiting=true;$scope.showM=false;$scope.cfg=[];$scope.data={};$scope.currentNode=null;$scope.translateTitle=function(node){return $translator.translateField(node,"title")};$scope.translateP=$translator.translateP;$scope.translate=$translator.translate;$scope.toggle=function(scope){return scope.toggle()};$scope.stoggle=function(scope,node){$scope.currentNode=node;return scope.toggle()};$scope.menuClick=function(button){if(button.popup){window.open(button.popup)}else{if(!button.action){button.action=button.title}switch(typeof button.action){case"function":button.action($scope.currentNode,$scope);break;case"string":$scope[button.action]();break;default:console.log(typeof button.action)}}return $scope.showM=false};$scope.getLanguage=function(lang){$scope.lang=lang;$scope.init();return $scope.showM=false};getCfg=function(b,n){var d;d=$q.defer();if($scope.cfg[b]==null||$scope.cfg[b]!==n){$http.get(""+confPrefix+n).then(function(response){var date;if(response&&response.data){$scope.cfg[b]=response.data;date=new Date(response.data.cfgDate*1e3);$scope.cfg[b].date=date.toLocaleString();console.log("Metadatas of cfg "+n+" loaded");return d.resolve("OK")}else{return d.reject(response)}},function(response){console.log(response);return d.reject("NOK")})}else{d.resolve()}return d.promise};init=function(){var d;$scope.message=null;$scope.currentNode=null;d=$q.defer();return $http.get(scriptname+"diff/"+$scope.cfg[0].cfgNum+"/"+$scope.cfg[1].cfgNum).then(function(response){var data;data=[];data=readDiff(response.data[0],response.data[1]);$scope.data=buildTree(data);$scope.message="";return $scope.waiting=false},function(response){return $scope.message=$scope.translate("error")+" : "+response.statusLine})};readDiff=function(c1,c2,tr){var k,res,tmp,v;if(tr==null){tr=true}res=[];for(k in c1){v=c1[k];if(tr){tmp={title:$scope.translate(k),id:k}}else{tmp={title:k}}if(!k.match(/^cfg(?:Num|Log|Author(?:IP)?|Date)$/)){if(v!=null&&typeof v==="object"){if(v.constructor==="array"){tmp.oldvalue=v;tmp.newvalue=c2[k]}else if(typeof c2[k]==="object"){tmp.nodes=readDiff(c1[k],c2[k],false)}else{tmp.oldnodes=toNodes(v,"old")}}else{tmp.oldvalue=v;tmp.newvalue=c2[k]}res.push(tmp)}}for(k in c2){v=c2[k];if(!(k.match(/^cfg(?:Num|Log|Author(?:IP)?|Date)$/)||c1[k]!=null)){if(tr){tmp={title:$scope.translate(k),id:k}}else{tmp={title:k}}if(v!=null&&typeof v==="object"){if(v.constructor==="array"){tmp.newvalue=v}else{console.log("Iteration");tmp.newnodes=toNodes(v,"new")}}else{tmp.newvalue=v}res.push(tmp)}}return res};toNodes=function(c,s){var k,res,tmp,v;res=[];for(k in c){v=c[k];tmp={title:k};if(typeof v==="object"){if(v.constructor==="array"){tmp[s+"value"]=v}else{tmp[s+"nodes"]=toNodes(c[k],s)}}else{tmp[s+"value"]=v}res.push(tmp)}return res};reverseTree=[];buildTree=function(data){var elem,found,i,j,l,len,len1,len2,m,n,node,offset,path,res;if(reverseTree==null){return data}res=[];for(j=0,len=data.length;j<len;j++){elem=data[j];offset=res;path=reverseTree[elem.id]!=null?reverseTree[elem.id].split("/"):"";for(l=0,len1=path.length;l<len1;l++){node=path[l];if(node.length>0){if(offset.length){found=-1;for(i=m=0,len2=offset.length;m<len2;i=++m){n=offset[i];if(n.id===node){found=i}}if(found!==-1){offset=offset[found].nodes}else{offset.push({id:node,title:$scope.translate(node),nodes:[]});offset=offset[offset.length-1].nodes}}else{offset.push({id:node,title:$scope.translate(node),nodes:[]});offset=offset[0].nodes}}}offset.push(elem)}return res};$scope.newDiff=function(){return $location.path("/"+$scope.cfg[0].cfgNum+"/"+$scope.cfg[1].cfgNum)};pathEvent=function(event,next,current){var n;n=next.match(new RegExp("#!?/(latest|[0-9]+)(?:/(latest|[0-9]+))?$"));if(n===null){$location.path("/latest")}else{$scope.waiting=true;$q.all([$translator.init($scope.lang),$http.get(staticPrefix+"reverseTree.json").then(function(response){reverseTree=response.data;return console.log("Structure loaded")}),getCfg(0,n[1]),n[2]!=null?getCfg(1,n[2]):void 0]).then(function(){if(n[2]!=null){return init()}else{if($scope.cfg[0].prev){$scope.cfg[1]=$scope.cfg[0];return getCfg(0,$scope.cfg[1].prev).then(function(){return init()})}else{$scope.data=[];return $scope.waiting=false}}},function(){$scope.message=$scope.translate("error");return $scope.waiting=false})}return true};return $scope.$on("$locationChangeSuccess",pathEvent)}])}).call(this);
|
||||
(function(){angular.module("llngConfDiff",["ui.tree","ui.bootstrap","llApp","ngCookies"],function(t){return t.digestTtl(15)}).controller("DiffCtrl",["$scope","$http","$q","$translator","$location",function(p,o,l,r,i){var n,u,c,t,s,h,f;return p.links=links,p.menulinks=menulinks,p.staticPrefix=staticPrefix,p.scriptname=scriptname,p.availableLanguages=availableLanguages,p.waiting=!0,p.showM=!1,p.cfg=[],p.data={},p.currentNode=null,p.translateTitle=function(t){return r.translateField(t,"title")},p.translateP=r.translateP,p.translate=r.translate,p.toggle=function(t){return t.toggle()},p.stoggle=function(t,e){return p.currentNode=e,t.toggle()},p.menuClick=function(t){if(t.popup)window.open(t.popup);else switch(t.action||(t.action=t.title),typeof t.action){case"function":t.action(p.currentNode,p);break;case"string":p[t.action]();break;default:console.log(typeof t.action)}return p.showM=!1},p.getLanguage=function(t){return p.lang=t,p.init(),p.showM=!1},u=function(n,a){var r;return r=l.defer(),null==p.cfg[n]||p.cfg[n]!==a?o.get(""+confPrefix+a).then(function(t){var e;return t&&t.data?(p.cfg[n]=t.data,e=new Date(1e3*t.data.cfgDate),p.cfg[n].date=e.toLocaleString(),console.log("Metadatas of cfg "+a+" loaded"),r.resolve("OK")):r.reject(t)},function(t){return console.log(t),r.reject("NOK")}):r.resolve(),r.promise},c=function(){return p.message=null,p.currentNode=null,l.defer(),o.get(scriptname+"diff/"+p.cfg[0].cfgNum+"/"+p.cfg[1].cfgNum).then(function(t){var e;return[],e=s(t.data[0],t.data[1]),p.data=n(e),p.message="",p.waiting=!1},function(t){return p.message=p.translate("error")+" : "+t.statusLine})},s=function(t,e,n){var a,r,o,l;for(a in null==n&&(n=!0),r=[],t)l=t[a],o=n?{title:p.translate(a),id:a}:{title:a},a.match(/^cfg(?:Num|Log|Author(?:IP)?|Date)$/)||(null!=l&&"object"==typeof l?"array"===l.constructor?(o.oldvalue=l,o.newvalue=e[a]):"object"==typeof e[a]?o.nodes=s(t[a],e[a],!1):o.oldnodes=f(l,"old"):(o.oldvalue=l,o.newvalue=e[a]),r.push(o));for(a in e)l=e[a],a.match(/^cfg(?:Num|Log|Author(?:IP)?|Date)$/)||null!=t[a]||(o=n?{title:p.translate(a),id:a}:{title:a},null!=l&&"object"==typeof l?"array"===l.constructor?o.newvalue=l:(console.log("Iteration"),o.newnodes=f(l,"new")):o.newvalue=l,r.push(o));return r},f=function(t,e){var n,a,r,o;for(n in a=[],t)r={title:n},"object"==typeof(o=t[n])?"array"===o.constructor?r[e+"value"]=o:r[e+"nodes"]=f(t[n],e):r[e+"value"]=o,a.push(r);return a},h=[],n=function(t){var e,n,a,r,o,l,i,u,c,s,f,g,d;if(null==h)return t;for(d=[],r=0,l=t.length;r<l;r++){for(e=t[r],f=d,o=0,i=(g=null!=h[e.id]?h[e.id].split("/"):"").length;o<i;o++)if(0<(s=g[o]).length)if(f.length){for(n=-1,a=c=0,u=f.length;c<u;a=++c)f[a].id===s&&(n=a);f=-1!==n?f[n].nodes:(f.push({id:s,title:p.translate(s),nodes:[]}),f[f.length-1].nodes)}else f.push({id:s,title:p.translate(s),nodes:[]}),f=f[0].nodes;f.push(e)}return d},p.newDiff=function(){return i.path("/"+p.cfg[0].cfgNum+"/"+p.cfg[1].cfgNum)},t=function(t,e,n){var a;return null===(a=e.match(new RegExp("#!?/(latest|[0-9]+)(?:/(latest|[0-9]+))?$")))?i.path("/latest"):(p.waiting=!0,l.all([r.init(p.lang),o.get(staticPrefix+"reverseTree.json").then(function(t){return h=t.data,console.log("Structure loaded")}),u(0,a[1]),null!=a[2]?u(1,a[2]):void 0]).then(function(){return null!=a[2]?c():p.cfg[0].prev?(p.cfg[1]=p.cfg[0],u(0,p.cfg[1].prev).then(function(){return c()})):(p.data=[],p.waiting=!1)},function(){return p.message=p.translate("error"),p.waiting=!1})),!0},p.$on("$locationChangeSuccess",t)}])}).call(this);
|
File diff suppressed because one or more lines are too long
|
@ -1 +1 @@
|
|||
(function(){var filterFunctions;filterFunctions={authParams:function(scope,$q,node){var i,len,n,ref,wait;wait=[];ref=node.nodes;for(i=0,len=ref.length;i<len;i++){n=ref[i];wait.push(scope.getKey(n))}return $q.all(wait).then(function(){var all,j,k,l,len1,len2,len3,len4,len5,len6,m,nToShow,nd,o,p,q,r,ref1,ref2,ref3,ref4,restart,s;all=false;nToShow=[];p=function(s){var tmp;tmp=s.toLowerCase();if(tmp==="openidconnect"){tmp="oidc"}nToShow.push(tmp+"Params");if(tmp==="ad"){return nToShow.push("ldapParams")}};ref1=node.nodes;for(j=0,len1=ref1.length;j<len1;j++){n=ref1[j];p(n.data)}ref2=node.nodes_cond;for(k=0,len2=ref2.length;k<len2;k++){n=ref2[k];restart=0;nd=n._nodes?n._nodes:n.nodes;if(node.nodes[0].data==="Choice"&&n.id==="choiceParams"){console.log("Choice is selected");if(nd[1].cnodes){restart++}else{nd=nd[1]._nodes?nd[1]._nodes:nd[1].nodes;for(l=0,len3=nd.length;l<len3;l++){m=nd[l];ref3=m.data;for(o=0,len4=ref3.length;o<len4;o++){s=ref3[o];if(typeof s==="string"){p(s)}}}}}else if(node.nodes[0].data==="Combination"&&n.id==="combinationParams"){console.log("Combination is selected");if(nd[1].cnodes){restart++}else{nd=nd[1]._nodes?nd[1]._nodes:nd[1].nodes;for(q=0,len5=nd.length;q<len5;q++){m=nd[q];p(m.data.type)}}}if(restart){scope.waiting=true;scope.download({$modelValue:nd[1]}).then(function(){return filterFunctions.authParams(scope,$q,node)});return}}ref4=node.nodes_cond;for(r=0,len6=ref4.length;r<len6;r++){n=ref4[r];if(!all&&nToShow.indexOf(n.id)===-1){n.show=false}else{n.show=true}}})}};window.filterFunctions=filterFunctions}).call(this);
|
||||
(function(){var F;F={authParams:function(C,b,y){var n,o,x,e,s;for(s=[],n=0,o=(e=y.nodes).length;n<o;n++)x=e[n],s.push(C.getKey(x));return b.all(s).then(function(){var n,o,e,s,t,a,d,i,r,l,c,f,h,u,g,m,_,p,w,P,v;for(!1,l=[],h=function(n){var o;if("openidconnect"===(o=n.toLowerCase())&&(o="oidc"),l.push(o+"Params"),"ad"===o)return l.push("ldapParams")},n=0,s=(m=y.nodes).length;n<s;n++)h((x=m[n]).data);for(o=0,t=(_=y.nodes_cond).length;o<t;o++){if(P=0,c=(x=_[o])._nodes?x._nodes:x.nodes,"Choice"===y.nodes[0].data&&"choiceParams"===x.id)if(console.log("Choice is selected"),c[1].cnodes)P++;else for(e=0,a=(c=c[1]._nodes?c[1]._nodes:c[1].nodes).length;e<a;e++)for(f=0,d=(p=c[e].data).length;f<d;f++)"string"==typeof(v=p[f])&&h(v);else if("Combination"===y.nodes[0].data&&"combinationParams"===x.id)if(console.log("Combination is selected"),c[1].cnodes)P++;else for(u=0,i=(c=c[1]._nodes?c[1]._nodes:c[1].nodes).length;u<i;u++)h(c[u].data.type);if(P)return C.waiting=!0,void C.download({$modelValue:c[1]}).then(function(){return F.authParams(C,b,y)})}for(g=0,r=(w=y.nodes_cond).length;g<r;g++)x=w[g],-1===l.indexOf(x.id)?x.show=!1:x.show=!0})}},window.filterFunctions=F}).call(this);
|
|
@ -0,0 +1 @@
|
|||
{"version":3,"sources":["lemonldap-ng-manager/site/htdocs/static/js/filterFunctions.js"],"names":["filterFunctions","authParams","scope","$q","node","i","len","n","ref","wait","nodes","length","push","getKey","all","then","j","k","l","len1","len2","len3","len4","len5","len6","nToShow","nd","o","p","q","r","ref1","ref2","ref3","ref4","restart","s","tmp","toLowerCase","data","nodes_cond","_nodes","id","console","log","cnodes","type","waiting","download","$modelValue","indexOf","show","window","call","this"],"mappings":"CACA,WACE,IAAIA,EAEJA,EAAkB,CAChBC,WAAY,SAASC,EAAOC,EAAIC,GAC9B,IAAIC,EAAGC,EAAKC,EAAGC,EAAKC,EAGpB,IAFAA,EAAO,GAEFJ,EAAI,EAAGC,GADZE,EAAMJ,EAAKM,OACWC,OAAQN,EAAIC,EAAKD,IACrCE,EAAIC,EAAIH,GACRI,EAAKG,KAAKV,EAAMW,OAAON,IAEzB,OAAOJ,EAAGW,IAAIL,GAAMM,KAAK,WACvB,IAASC,EAAGC,EAAGC,EAAGC,EAAMC,EAAMC,EAAMC,EAAMC,EAAMC,EAASC,EAASC,EAAIC,EAAGC,EAAGC,EAAGC,EAAGC,EAAMC,EAAMC,EAAMC,EAAMC,EAASC,EAenH,KAdM,EACNX,EAAU,GACVG,EAAI,SAASQ,GACX,IAAIC,EAMJ,GAJY,mBADZA,EAAMD,EAAEE,iBAEND,EAAM,QAERZ,EAAQb,KAAKyB,EAAM,UACP,OAARA,EACF,OAAOZ,EAAQb,KAAK,eAInBI,EAAI,EAAGG,GADZY,EAAO3B,EAAKM,OACYC,OAAQK,EAAIG,EAAMH,IAExCY,GADArB,EAAIwB,EAAKf,IACLuB,MAGN,IAAKtB,EAAI,EAAGG,GADZY,EAAO5B,EAAKoC,YACY7B,OAAQM,EAAIG,EAAMH,IAAK,CAI7C,GAFAkB,EAAU,EACVT,GAFAnB,EAAIyB,EAAKf,IAEFwB,OAASlC,EAAEkC,OAASlC,EAAEG,MACF,WAAvBN,EAAKM,MAAM,GAAG6B,MAA8B,iBAAThC,EAAEmC,GAEvC,GADAC,QAAQC,IAAI,sBACRlB,EAAG,GAAGmB,OACRV,SAGA,IAAKjB,EAAI,EAAGG,GADZK,EAAKA,EAAG,GAAGe,OAASf,EAAG,GAAGe,OAASf,EAAG,GAAGhB,OACnBC,OAAQO,EAAIG,EAAMH,IAGtC,IAAKS,EAAI,EAAGL,GADZW,EADIP,EAAGR,GACEqB,MACe5B,OAAQgB,EAAIL,EAAMK,IAEvB,iBADjBS,EAAIH,EAAKN,KAEPC,EAAEQ,QAKL,GAA2B,gBAAvBhC,EAAKM,MAAM,GAAG6B,MAAmC,sBAAThC,EAAEmC,GAEnD,GADAC,QAAQC,IAAI,2BACRlB,EAAG,GAAGmB,OACRV,SAGA,IAAKN,EAAI,EAAGN,GADZG,EAAKA,EAAG,GAAGe,OAASf,EAAG,GAAGe,OAASf,EAAG,GAAGhB,OACnBC,OAAQkB,EAAIN,EAAMM,IAEtCD,EADIF,EAAGG,GACHU,KAAKO,MAIf,GAAIX,EAOF,OANAjC,EAAM6C,SAAU,OAChB7C,EAAM8C,SAAS,CACbC,YAAevB,EAAG,KACjBX,KAAK,WACN,OAAOf,EAAgBC,WAAWC,EAAOC,EAAIC,KAMnD,IAAK0B,EAAI,EAAGN,GADZU,EAAO9B,EAAKoC,YACY7B,OAAQmB,EAAIN,EAAMM,IACxCvB,EAAI2B,EAAKJ,IAC8B,IAA3BL,EAAQyB,QAAQ3C,EAAEmC,IAC5BnC,EAAE4C,MAAO,EAET5C,EAAE4C,MAAO,MAOnBC,OAAOpD,gBAAkBA,IAExBqD,KAAKC"}
|
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
|
@ -1,4 +1,4 @@
|
|||
// Generated by CoffeeScript 1.12.8
|
||||
// Generated by CoffeeScript 1.12.7
|
||||
|
||||
/*
|
||||
LemonLDAP::NG Manager client
|
||||
|
|
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
|
@ -1,4 +1,4 @@
|
|||
// Generated by CoffeeScript 1.12.8
|
||||
// Generated by CoffeeScript 1.12.7
|
||||
|
||||
/*
|
||||
* Sessions explorer
|
||||
|
@ -74,6 +74,7 @@
|
|||
|
||||
overScheme = {
|
||||
_whatToTrace: function(t, v, level, over) {
|
||||
console.log('overSchema => level', level, 'over', over);
|
||||
if (level === 1 && v.length > over) {
|
||||
return t + "=" + v + "*&groupBy=substr(" + t + "," + (level + over + 1) + ")";
|
||||
} else {
|
||||
|
@ -81,15 +82,17 @@
|
|||
}
|
||||
},
|
||||
ipAddr: function(t, v, level, over) {
|
||||
if (level > 0 && level < 4) {
|
||||
return t + "=" + v + "*&groupBy=net(" + t + "," + (16 * level + 4 * (over + 1)) + ",2)";
|
||||
console.log('overSchema => level', level, 'over', over);
|
||||
if (level > 0 && level < 4 && !v.match(/^\d+\.\d/) && over < 2) {
|
||||
return t + "=" + v + "*&groupBy=net(" + t + "," + (16 * level + 4 * (over + 1)) + "," + (1 + level + over) + ")";
|
||||
} else {
|
||||
return null;
|
||||
}
|
||||
},
|
||||
_startTime: function(t, v, level, over) {
|
||||
console.log('overSchema => level', level, 'over', over);
|
||||
if (level > 3) {
|
||||
return t + "=" + v + "*&groupBy=substr(" + t + "," + (9 + level + over + 1) + ")";
|
||||
return t + "=" + v + "*&groupBy=substr(" + t + "," + (10 + level + over) + ")";
|
||||
} else {
|
||||
return null;
|
||||
}
|
||||
|
|
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
|
@ -1,4 +1,4 @@
|
|||
// Generated by CoffeeScript 1.12.7
|
||||
// Generated by CoffeeScript 1.12.8
|
||||
|
||||
/*
|
||||
diff.html script
|
||||
|
|
|
@ -1 +1 @@
|
|||
(function(){var llapp;llapp=angular.module("llngConfDiff",["ui.tree","ui.bootstrap","llApp","ngCookies"],function($rootScopeProvider){return $rootScopeProvider.digestTtl(15)});llapp.controller("DiffCtrl",["$scope","$http","$q","$translator","$location",function($scope,$http,$q,$translator,$location){var buildTree,getCfg,init,pathEvent,readDiff,reverseTree,toNodes;$scope.links=links;$scope.menulinks=menulinks;$scope.staticPrefix=staticPrefix;$scope.scriptname=scriptname;$scope.availableLanguages=availableLanguages;$scope.waiting=true;$scope.showM=false;$scope.cfg=[];$scope.data={};$scope.currentNode=null;$scope.translateTitle=function(node){return $translator.translateField(node,"title")};$scope.translateP=$translator.translateP;$scope.translate=$translator.translate;$scope.toggle=function(scope){return scope.toggle()};$scope.stoggle=function(scope,node){$scope.currentNode=node;return scope.toggle()};$scope.menuClick=function(button){if(button.popup){window.open(button.popup)}else{if(!button.action){button.action=button.title}switch(typeof button.action){case"function":button.action($scope.currentNode,$scope);break;case"string":$scope[button.action]();break;default:console.log(typeof button.action)}}return $scope.showM=false};$scope.getLanguage=function(lang){$scope.lang=lang;$scope.init();return $scope.showM=false};getCfg=function(b,n){var d;d=$q.defer();if($scope.cfg[b]==null||$scope.cfg[b]!==n){$http.get(""+confPrefix+n).then(function(response){var date;if(response&&response.data){$scope.cfg[b]=response.data;date=new Date(response.data.cfgDate*1e3);$scope.cfg[b].date=date.toLocaleString();console.log("Metadatas of cfg "+n+" loaded");return d.resolve("OK")}else{return d.reject(response)}},function(response){console.log(response);return d.reject("NOK")})}else{d.resolve()}return d.promise};init=function(){var d;$scope.message=null;$scope.currentNode=null;d=$q.defer();return $http.get(scriptname+"view/diff/"+$scope.cfg[0].cfgNum+"/"+$scope.cfg[1].cfgNum).then(function(response){var data;data=[];data=readDiff(response.data[0],response.data[1]);$scope.data=buildTree(data);$scope.message="";return $scope.waiting=false},function(response){return $scope.message=$scope.translate("error")+" : "+response.statusLine})};readDiff=function(c1,c2,tr){var k,res,tmp,v;if(tr==null){tr=true}res=[];for(k in c1){v=c1[k];if(tr){tmp={title:$scope.translate(k),id:k}}else{tmp={title:k}}if(!k.match(/^cfg(?:Num|Log|Author(?:IP)?|Date)$/)){if(v!=null&&typeof v==="object"){if(v.constructor==="array"){tmp.oldvalue=v;tmp.newvalue=c2[k]}else if(typeof c2[k]==="object"){tmp.nodes=readDiff(c1[k],c2[k],false)}else{tmp.oldnodes=toNodes(v,"old")}}else{tmp.oldvalue=v;tmp.newvalue=c2[k]}res.push(tmp)}}for(k in c2){v=c2[k];if(!(k.match(/^cfg(?:Num|Log|Author(?:IP)?|Date)$/)||c1[k]!=null)){if(tr){tmp={title:$scope.translate(k),id:k}}else{tmp={title:k}}if(v!=null&&typeof v==="object"){if(v.constructor==="array"){tmp.newvalue=v}else{console.log("Iteration");tmp.newnodes=toNodes(v,"new")}}else{tmp.newvalue=v}res.push(tmp)}}return res};toNodes=function(c,s){var k,res,tmp,v;res=[];for(k in c){v=c[k];tmp={title:k};if(typeof v==="object"){if(v.constructor==="array"){tmp[s+"value"]=v}else{tmp[s+"nodes"]=toNodes(c[k],s)}}else{tmp[s+"value"]=v}res.push(tmp)}return res};reverseTree=[];buildTree=function(data){var elem,found,i,j,l,len,len1,len2,m,n,node,offset,path,res;if(reverseTree==null){return data}res=[];for(j=0,len=data.length;j<len;j++){elem=data[j];offset=res;path=reverseTree[elem.id]!=null?reverseTree[elem.id].split("/"):"";for(l=0,len1=path.length;l<len1;l++){node=path[l];if(node.length>0){if(offset.length){found=-1;for(i=m=0,len2=offset.length;m<len2;i=++m){n=offset[i];if(n.id===node){found=i}}if(found!==-1){offset=offset[found].nodes}else{offset.push({id:node,title:$scope.translate(node),nodes:[]});offset=offset[offset.length-1].nodes}}else{offset.push({id:node,title:$scope.translate(node),nodes:[]});offset=offset[0].nodes}}}offset.push(elem)}return res};$scope.newDiff=function(){return $location.path("/"+$scope.cfg[0].cfgNum+"/"+$scope.cfg[1].cfgNum)};pathEvent=function(event,next,current){var n;n=next.match(new RegExp("#!?/(latest|[0-9]+)(?:/(latest|[0-9]+))?$"));if(n===null){$location.path("/latest")}else{$scope.waiting=true;$q.all([$translator.init($scope.lang),$http.get(staticPrefix+"reverseTree.json").then(function(response){reverseTree=response.data;return console.log("Structure loaded")}),getCfg(0,n[1]),n[2]!=null?getCfg(1,n[2]):void 0]).then(function(){if(n[2]!=null){return init()}else{if($scope.cfg[0].prev){$scope.cfg[1]=$scope.cfg[0];return getCfg(0,$scope.cfg[1].prev).then(function(){return init()})}else{$scope.data=[];return $scope.waiting=false}}},function(){$scope.message=$scope.translate("error");return $scope.waiting=false})}return true};return $scope.$on("$locationChangeSuccess",pathEvent)}])}).call(this);
|
||||
(function(){angular.module("llngConfDiff",["ui.tree","ui.bootstrap","llApp","ngCookies"],function(t){return t.digestTtl(15)}).controller("DiffCtrl",["$scope","$http","$q","$translator","$location",function(p,o,l,r,i){var n,u,c,t,s,h,f;return p.links=links,p.menulinks=menulinks,p.staticPrefix=staticPrefix,p.scriptname=scriptname,p.availableLanguages=availableLanguages,p.waiting=!0,p.showM=!1,p.cfg=[],p.data={},p.currentNode=null,p.translateTitle=function(t){return r.translateField(t,"title")},p.translateP=r.translateP,p.translate=r.translate,p.toggle=function(t){return t.toggle()},p.stoggle=function(t,e){return p.currentNode=e,t.toggle()},p.menuClick=function(t){if(t.popup)window.open(t.popup);else switch(t.action||(t.action=t.title),typeof t.action){case"function":t.action(p.currentNode,p);break;case"string":p[t.action]();break;default:console.log(typeof t.action)}return p.showM=!1},p.getLanguage=function(t){return p.lang=t,p.init(),p.showM=!1},u=function(n,a){var r;return r=l.defer(),null==p.cfg[n]||p.cfg[n]!==a?o.get(""+confPrefix+a).then(function(t){var e;return t&&t.data?(p.cfg[n]=t.data,e=new Date(1e3*t.data.cfgDate),p.cfg[n].date=e.toLocaleString(),console.log("Metadatas of cfg "+a+" loaded"),r.resolve("OK")):r.reject(t)},function(t){return console.log(t),r.reject("NOK")}):r.resolve(),r.promise},c=function(){return p.message=null,p.currentNode=null,l.defer(),o.get(scriptname+"view/diff/"+p.cfg[0].cfgNum+"/"+p.cfg[1].cfgNum).then(function(t){var e;return[],e=s(t.data[0],t.data[1]),p.data=n(e),p.message="",p.waiting=!1},function(t){return p.message=p.translate("error")+" : "+t.statusLine})},s=function(t,e,n){var a,r,o,l;for(a in null==n&&(n=!0),r=[],t)l=t[a],o=n?{title:p.translate(a),id:a}:{title:a},a.match(/^cfg(?:Num|Log|Author(?:IP)?|Date)$/)||(null!=l&&"object"==typeof l?"array"===l.constructor?(o.oldvalue=l,o.newvalue=e[a]):"object"==typeof e[a]?o.nodes=s(t[a],e[a],!1):o.oldnodes=f(l,"old"):(o.oldvalue=l,o.newvalue=e[a]),r.push(o));for(a in e)l=e[a],a.match(/^cfg(?:Num|Log|Author(?:IP)?|Date)$/)||null!=t[a]||(o=n?{title:p.translate(a),id:a}:{title:a},null!=l&&"object"==typeof l?"array"===l.constructor?o.newvalue=l:(console.log("Iteration"),o.newnodes=f(l,"new")):o.newvalue=l,r.push(o));return r},f=function(t,e){var n,a,r,o;for(n in a=[],t)r={title:n},"object"==typeof(o=t[n])?"array"===o.constructor?r[e+"value"]=o:r[e+"nodes"]=f(t[n],e):r[e+"value"]=o,a.push(r);return a},h=[],n=function(t){var e,n,a,r,o,l,i,u,c,s,f,g,d;if(null==h)return t;for(d=[],r=0,l=t.length;r<l;r++){for(e=t[r],f=d,o=0,i=(g=null!=h[e.id]?h[e.id].split("/"):"").length;o<i;o++)if(0<(s=g[o]).length)if(f.length){for(n=-1,a=c=0,u=f.length;c<u;a=++c)f[a].id===s&&(n=a);f=-1!==n?f[n].nodes:(f.push({id:s,title:p.translate(s),nodes:[]}),f[f.length-1].nodes)}else f.push({id:s,title:p.translate(s),nodes:[]}),f=f[0].nodes;f.push(e)}return d},p.newDiff=function(){return i.path("/"+p.cfg[0].cfgNum+"/"+p.cfg[1].cfgNum)},t=function(t,e,n){var a;return null===(a=e.match(new RegExp("#!?/(latest|[0-9]+)(?:/(latest|[0-9]+))?$")))?i.path("/latest"):(p.waiting=!0,l.all([r.init(p.lang),o.get(staticPrefix+"reverseTree.json").then(function(t){return h=t.data,console.log("Structure loaded")}),u(0,a[1]),null!=a[2]?u(1,a[2]):void 0]).then(function(){return null!=a[2]?c():p.cfg[0].prev?(p.cfg[1]=p.cfg[0],u(0,p.cfg[1].prev).then(function(){return c()})):(p.data=[],p.waiting=!1)},function(){return p.message=p.translate("error"),p.waiting=!1})),!0},p.$on("$locationChangeSuccess",t)}])}).call(this);
|
File diff suppressed because one or more lines are too long
|
@ -14,7 +14,7 @@ This file contains:
|
|||
(function() {
|
||||
var llapp;
|
||||
|
||||
llapp = angular.module('llngManager', ['ui.tree', 'ui.bootstrap', 'llApp', 'ngCookies']);
|
||||
llapp = angular.module('llngViewer', ['ui.tree', 'ui.bootstrap', 'llApp', 'ngCookies']);
|
||||
|
||||
|
||||
/*
|
||||
|
@ -410,6 +410,15 @@ This file contains:
|
|||
$scope.showT = false;
|
||||
return setHelp(scope);
|
||||
};
|
||||
$scope.keyWritable = function(scope) {
|
||||
var node;
|
||||
node = scope.$modelValue;
|
||||
if (node.type && node.type.match(/^(?:s(?:aml(?:(?:ID|S)PMetaDataNod|Attribut)e|fExtra)|(?:(?:cmbMod|r)ul|authChoic)e|(?:virtualHos|keyTex)t|menu(?:App|Cat))$/)) {
|
||||
return true;
|
||||
} else {
|
||||
return false;
|
||||
}
|
||||
};
|
||||
$scope.getKey = function(node) {
|
||||
var d, i, l, len, n, ref, tmp;
|
||||
d = $q.defer();
|
||||
|
@ -442,10 +451,15 @@ This file contains:
|
|||
} else {
|
||||
node.data = data.value;
|
||||
}
|
||||
if (node.data.toString().match(/_Hidden_$/)) {
|
||||
if (node.data && node.data.toString().match(/_Hidden_$/)) {
|
||||
node.type = 'text';
|
||||
node.data = '######';
|
||||
}
|
||||
if (node.type && node.type.match(/^(bool|trool|boolOrExpr)$/)) {
|
||||
if (typeof node.data === 'string' && node.data.match(/^(?:-1|0|1)$/)) {
|
||||
node.data = parseInt(node.data, 10);
|
||||
}
|
||||
}
|
||||
if (node.type && node.type.match(/^int$/)) {
|
||||
node.data = parseInt(node.data, 10);
|
||||
} else if (node.type && node.type.match(/^(saml(Service|Assertion)|blackWhiteList)$/) && !(typeof node.data === 'object')) {
|
||||
|
|
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
|
@ -5,7 +5,7 @@
|
|||
<link rel="prefetch" href="<TMPL_VAR NAME="STATIC_PREFIX">struct.json" />
|
||||
</head>
|
||||
|
||||
<body ng-app="llngManager" ng-controller="TreeCtrl" ng-csp>
|
||||
<body ng-app="llngViewer" ng-controller="TreeCtrl" ng-csp>
|
||||
|
||||
<TMPL_INCLUDE NAME="menubar.tpl">
|
||||
|
||||
|
@ -100,89 +100,6 @@
|
|||
</ol>
|
||||
</script>
|
||||
|
||||
<!-- Prompt -->
|
||||
<script type="text/ng-template" id="prompt.html">
|
||||
<div role="alertdialog" aria-labelledby="ptitle" aria-describedby="ptitle">
|
||||
<div class="modal-header">
|
||||
<h3 id="ptitle" class="modal-title" trspan="{{elem('message').title}}" />
|
||||
</div>
|
||||
<div class="modal-body">
|
||||
<div class="input-group maxw">
|
||||
<label class="input-group-addon" id="promptlabel" for="promptinput" trspan="{{elem('message').field}}"/>
|
||||
<input id="promptinput" class="form-control" ng-model="result" aria-describedby="promptlabel"/>
|
||||
</div>
|
||||
</div>
|
||||
<div class="modal-footer">
|
||||
<button class="btn btn-primary" id="promptok" ng-click="ok()" trspan="ok" role="button"></button>
|
||||
<button class="btn btn-warning" ng-click="cancel()" trspan="cancel" role="button"></button>
|
||||
</div>
|
||||
</div>
|
||||
</script>
|
||||
|
||||
<!-- Message display -->
|
||||
<script type="text/ng-template" id="message.html">
|
||||
<div role="alertdialog" aria-labelledby="mtitle" aria-describedby="mbody">
|
||||
<div class="modal-header">
|
||||
<h3 id="mtitle" class="modal-title" trspan="{{elem('message').title}}" />
|
||||
</div>
|
||||
<div id="mbody" class="modal-body">
|
||||
<div class="modal-p">{{translateP(elem('message').message)}}</div>
|
||||
<ul class="main-modal-ul" ng-model="elem('message').items">
|
||||
<li ng-repeat="item in elem('message').items" ng-include="'messageitem.html'"/>
|
||||
</ul>
|
||||
</div>
|
||||
<div class="modal-footer">
|
||||
<button class="btn btn-primary" id="messageok" ng-click="ok()" trspan="ok" role="button"></button>
|
||||
<button class="btn btn-warning" ng-click="cancel()" ng-if="elem('message').displayCancel" trspan="cancel" role="button"></button>
|
||||
</div>
|
||||
</div>
|
||||
</script>
|
||||
|
||||
<script type="text/ng-template" id="messageitem.html">
|
||||
<div class="modal-p">{{translateP(item.message)}}</div>
|
||||
<ul class="modal-ul" ng-model="item.items">
|
||||
<li ng-repeat="item in item.items" ng-include="'messageitem.html'"/>
|
||||
</ul>
|
||||
</script>
|
||||
|
||||
<!-- Password question -->
|
||||
<script type="text/ng-template" id="password.html">
|
||||
<div role="alertdialog" aria-labelledby="pwtitle" aria-describedby="pwtitle">
|
||||
<div class="modal-header">
|
||||
<h3 id="pwtitle" class="modal-title" trspan="enterPassword" />
|
||||
</div>
|
||||
<div class="modal-body">
|
||||
<div class="input-group maxw">
|
||||
<label class="input-group-addon" id="mlabel" for="mdPwd" trspan="password"/>
|
||||
<input id="mdPwd" class="form-control" ng-model="result" aria-describedby="mlabel"/>
|
||||
</div>
|
||||
</div>
|
||||
<div class="modal-footer">
|
||||
<button class="btn btn-primary" id="passwordok" ng-click="ok()" trspan="ok" role="button"></button>
|
||||
<button class="btn btn-warning" ng-click="cancel()" trspan="cancel" role="button"></button>
|
||||
</div>
|
||||
</div>
|
||||
</script>
|
||||
|
||||
<!-- Save confirm -->
|
||||
<script type="text/ng-template" id="save.html">
|
||||
<div role="alertdialog" aria-labelledby="stitle" aria-describedby="sbody">
|
||||
<div class="modal-header">
|
||||
<h3 id="stitle" class="modal-title" trspan="savingConfirmation" />
|
||||
</div>
|
||||
<div id="sbody" class="modal-body">
|
||||
<div class="input-group maxw">
|
||||
<label id="slabel" class="input-group-addon" for="longtextinput" trspan="cfgLog"/>
|
||||
<textarea id="longtextinput" rows="5" class="form-control" ng-model="result" aria-describedby="slabel" />
|
||||
</div>
|
||||
</div>
|
||||
<div class="modal-footer">
|
||||
<button class="btn btn-primary" id="saveok" ng-click="ok()" trspan="ok" role="button"></button>
|
||||
<button class="btn btn-warning" ng-click="cancel()" trspan="cancel" role="button"></button>
|
||||
</div>
|
||||
</div>
|
||||
</script>
|
||||
|
||||
<TMPL_INCLUDE NAME="scripts.tpl">
|
||||
|
||||
<!-- //if:jsminified
|
||||
|
|
|
@ -9,10 +9,10 @@ lib/Lemonldap/NG/Portal.pm
|
|||
lib/Lemonldap/NG/Portal/2F/Engines/Default.pm
|
||||
lib/Lemonldap/NG/Portal/2F/Ext2F.pm
|
||||
lib/Lemonldap/NG/Portal/2F/Mail2F.pm
|
||||
lib/Lemonldap/NG/Portal/2F/Radius.pm
|
||||
lib/Lemonldap/NG/Portal/2F/Register/TOTP.pm
|
||||
lib/Lemonldap/NG/Portal/2F/Register/U2F.pm
|
||||
lib/Lemonldap/NG/Portal/2F/Register/Yubikey.pm
|
||||
lib/Lemonldap/NG/Portal/2F/Radius.pm
|
||||
lib/Lemonldap/NG/Portal/2F/REST.pm
|
||||
lib/Lemonldap/NG/Portal/2F/TOTP.pm
|
||||
lib/Lemonldap/NG/Portal/2F/U2F.pm
|
||||
|
@ -175,6 +175,7 @@ site/htdocs/static/bootstrap/css/styles.css
|
|||
site/htdocs/static/bootstrap/css/styles.min.css
|
||||
site/htdocs/static/bootstrap/js/skin.js
|
||||
site/htdocs/static/bootstrap/js/skin.min.js
|
||||
site/htdocs/static/bootstrap/js/skin.min.js.map
|
||||
site/htdocs/static/bootstrap/totp.png
|
||||
site/htdocs/static/bootstrap/u2f.png
|
||||
site/htdocs/static/bootstrap/utotp.png
|
||||
|
@ -201,6 +202,7 @@ site/htdocs/static/bwr/bootstrap/dist/js/bootstrap.min.js
|
|||
site/htdocs/static/bwr/bootstrap/dist/js/bootstrap.min.js.map
|
||||
site/htdocs/static/bwr/fingerprintjs2/fingerprint2.js
|
||||
site/htdocs/static/bwr/fingerprintjs2/fingerprint2.min.js
|
||||
site/htdocs/static/bwr/fingerprintjs2/fingerprint2.min.js.map
|
||||
site/htdocs/static/bwr/font-awesome/css/font-awesome.css
|
||||
site/htdocs/static/bwr/font-awesome/css/font-awesome.css.map
|
||||
site/htdocs/static/bwr/font-awesome/css/font-awesome.min.css
|
||||
|
@ -212,10 +214,13 @@ site/htdocs/static/bwr/font-awesome/fonts/fontawesome-webfont.woff2
|
|||
site/htdocs/static/bwr/font-awesome/fonts/FontAwesome.otf
|
||||
site/htdocs/static/bwr/jquery-ui/jquery-ui.js
|
||||
site/htdocs/static/bwr/jquery-ui/jquery-ui.min.js
|
||||
site/htdocs/static/bwr/jquery-ui/jquery-ui.min.js.map
|
||||
site/htdocs/static/bwr/jquery.cookie/jquery.cookie.js
|
||||
site/htdocs/static/bwr/jquery.cookie/jquery.cookie.min.js
|
||||
site/htdocs/static/bwr/jquery.cookie/jquery.cookie.min.js.map
|
||||
site/htdocs/static/bwr/jquery/dist/jquery.js
|
||||
site/htdocs/static/bwr/jquery/dist/jquery.min.js
|
||||
site/htdocs/static/bwr/jquery/dist/jquery.min.js.map
|
||||
site/htdocs/static/bwr/jquery/dist/jquery.min.map
|
||||
site/htdocs/static/bwr/qrious/dist/qrious.js
|
||||
site/htdocs/static/bwr/qrious/dist/qrious.js.map
|
||||
|
@ -271,40 +276,58 @@ site/htdocs/static/common/icons/warning.png
|
|||
site/htdocs/static/common/it.png
|
||||
site/htdocs/static/common/js/2fregistration.js
|
||||
site/htdocs/static/common/js/2fregistration.min.js
|
||||
site/htdocs/static/common/js/2fregistration.min.js.map
|
||||
site/htdocs/static/common/js/autoRenew.js
|
||||
site/htdocs/static/common/js/autoRenew.min.js
|
||||
site/htdocs/static/common/js/autoRenew.min.js.map
|
||||
site/htdocs/static/common/js/confirm.js
|
||||
site/htdocs/static/common/js/confirm.min.js
|
||||
site/htdocs/static/common/js/confirm.min.js.map
|
||||
site/htdocs/static/common/js/favapps.js
|
||||
site/htdocs/static/common/js/favapps.min.js
|
||||
site/htdocs/static/common/js/favapps.min.js.map
|
||||
site/htdocs/static/common/js/idpchoice.js
|
||||
site/htdocs/static/common/js/idpchoice.min.js
|
||||
site/htdocs/static/common/js/idpchoice.min.js.map
|
||||
site/htdocs/static/common/js/info.js
|
||||
site/htdocs/static/common/js/info.min.js
|
||||
site/htdocs/static/common/js/info.min.js.map
|
||||
site/htdocs/static/common/js/kerberos.js
|
||||
site/htdocs/static/common/js/kerberos.min.js
|
||||
site/htdocs/static/common/js/kerberos.min.js.map
|
||||
site/htdocs/static/common/js/kerberosChoice.js
|
||||
site/htdocs/static/common/js/kerberosChoice.min.js
|
||||
site/htdocs/static/common/js/kerberosChoice.min.js.map
|
||||
site/htdocs/static/common/js/oidcchecksession.js
|
||||
site/htdocs/static/common/js/oidcchecksession.min.js
|
||||
site/htdocs/static/common/js/oidcchecksession.min.js.map
|
||||
site/htdocs/static/common/js/portal.js
|
||||
site/htdocs/static/common/js/portal.min.js
|
||||
site/htdocs/static/common/js/portal.min.js.map
|
||||
site/htdocs/static/common/js/redirect.js
|
||||
site/htdocs/static/common/js/redirect.min.js
|
||||
site/htdocs/static/common/js/redirect.min.js.map
|
||||
site/htdocs/static/common/js/registerbrowser.js
|
||||
site/htdocs/static/common/js/registerbrowser.min.js
|
||||
site/htdocs/static/common/js/registerbrowser.min.js.map
|
||||
site/htdocs/static/common/js/ssl.js
|
||||
site/htdocs/static/common/js/ssl.min.js
|
||||
site/htdocs/static/common/js/ssl.min.js.map
|
||||
site/htdocs/static/common/js/sslChoice.js
|
||||
site/htdocs/static/common/js/sslChoice.min.js
|
||||
site/htdocs/static/common/js/sslChoice.min.js.map
|
||||
site/htdocs/static/common/js/totpregistration.js
|
||||
site/htdocs/static/common/js/totpregistration.min.js
|
||||
site/htdocs/static/common/js/totpregistration.min.js.map
|
||||
site/htdocs/static/common/js/u2f-api.js
|
||||
site/htdocs/static/common/js/u2f-api.min.js
|
||||
site/htdocs/static/common/js/u2f-api.min.js.map
|
||||
site/htdocs/static/common/js/u2fcheck.js
|
||||
site/htdocs/static/common/js/u2fcheck.min.js
|
||||
site/htdocs/static/common/js/u2fcheck.min.js.map
|
||||
site/htdocs/static/common/js/u2fregistration.js
|
||||
site/htdocs/static/common/js/u2fregistration.min.js
|
||||
site/htdocs/static/common/js/u2fregistration.min.js.map
|
||||
site/htdocs/static/common/logos/logo_llng_400px.png
|
||||
site/htdocs/static/common/logos/logo_llng_old.png
|
||||
site/htdocs/static/common/modules/Apache.png
|
||||
|
@ -316,6 +339,7 @@ site/htdocs/static/common/modules/Kerberos.png
|
|||
site/htdocs/static/common/modules/LinkedIn.png
|
||||
site/htdocs/static/common/modules/OpenIDConnect.png
|
||||
site/htdocs/static/common/modules/SAML.png
|
||||
site/htdocs/static/common/modules/Slave.png
|
||||
site/htdocs/static/common/modules/SSL.png
|
||||
site/htdocs/static/common/modules/Twitter.png
|
||||
site/htdocs/static/common/modules/WebID.png
|
||||
|
@ -482,6 +506,7 @@ t/32-Auth-and-issuer-OIDC-implicit.t
|
|||
t/32-Auth-and-issuer-OIDC-sorted.t
|
||||
t/32-CAS-10.t
|
||||
t/32-OIDC-RP-rule.t
|
||||
t/32-OIDC-Token-Spoof.t
|
||||
t/33-Auth-and-issuer-OpenID2.t
|
||||
t/34-Auth-Proxy-and-REST-Server.t
|
||||
t/34-Auth-Proxy-and-SOAP-Server.t
|
||||
|
@ -496,6 +521,7 @@ t/36-Combination-Kerberos-or-Demo.t
|
|||
t/36-Combination-with-Choice.t
|
||||
t/36-Combination-with-over.t
|
||||
t/36-Combination-with-token.t
|
||||
t/36-Combination-with-TOTP.t
|
||||
t/36-Combination.t
|
||||
t/37-CAS-App-to-SAML-IdP-POST-with-WAYF.t
|
||||
t/37-CAS-App-to-SAML-IdP-POST.t
|
||||
|
@ -551,6 +577,7 @@ t/66-CDA-with-REST.t
|
|||
t/66-CDA-with-SOAP.t
|
||||
t/66-CDA.t
|
||||
t/67-CheckUser-with-Global-token.t
|
||||
t/67-Checkuser-with-Impersonation-and-whatToTrace.t
|
||||
t/67-CheckUser-with-issuer-SAML-POST.t
|
||||
t/67-CheckUser-with-token.t
|
||||
t/67-CheckUser.t
|
||||
|
@ -583,6 +610,7 @@ t/76-2F-Ext-with-BruteForce.t
|
|||
t/76-2F-Ext-with-CodeActivation.t
|
||||
t/76-2F-Ext-with-GrantSession.t
|
||||
t/76-2F-Ext-with-History.t
|
||||
t/77-2F-Extra.t
|
||||
t/77-2F-Mail-with-global-storage.t
|
||||
t/77-2F-Mail.t
|
||||
t/78-2F-Upgrade.t
|
||||
|
|
|
@ -98,16 +98,14 @@ sub init {
|
|||
|
||||
# Each first method must call getStack() to get the auth scheme available for
|
||||
# the current user
|
||||
|
||||
## Auth steps
|
||||
#############
|
||||
sub extractFormInfo {
|
||||
my ( $self, $req ) = @_;
|
||||
return $self->try( 0, 'extractFormInfo', $req );
|
||||
}
|
||||
|
||||
# Note that UserDB::Combination uses the same object.
|
||||
sub getUser {
|
||||
return $_[0]->try( 1, 'getUser', $_[1] );
|
||||
}
|
||||
|
||||
sub authenticate {
|
||||
return $_[0]->try( 0, 'authenticate', $_[1] );
|
||||
}
|
||||
|
@ -116,14 +114,6 @@ sub setAuthSessionInfo {
|
|||
return $_[0]->try( 0, 'setAuthSessionInfo', $_[1] );
|
||||
}
|
||||
|
||||
sub setSessionInfo {
|
||||
return $_[0]->try( 1, 'setSessionInfo', $_[1] );
|
||||
}
|
||||
|
||||
sub setGroups {
|
||||
return $_[0]->try( 1, 'setGroups', $_[1] );
|
||||
}
|
||||
|
||||
sub getForm {
|
||||
my ( $self, $req ) = @_;
|
||||
return [ split /[, ]\s*/, $self->conf->{combinationForms} ]
|
||||
|
@ -157,6 +147,21 @@ sub authLogout {
|
|||
return $res;
|
||||
}
|
||||
|
||||
## UserDB steps
|
||||
###############
|
||||
# Note that UserDB::Combination uses the same object.
|
||||
sub getUser {
|
||||
return $_[0]->try( 1, 'getUser', $_[1] );
|
||||
}
|
||||
|
||||
sub setSessionInfo {
|
||||
return $_[0]->try( 1, 'setSessionInfo', $_[1] );
|
||||
}
|
||||
|
||||
sub setGroups {
|
||||
return $_[0]->try( 1, 'setGroups', $_[1] );
|
||||
}
|
||||
|
||||
sub getStack {
|
||||
my ( $self, $req, @steps ) = @_;
|
||||
return $req->data->{combinationStack}
|
||||
|
@ -224,7 +229,6 @@ sub name {
|
|||
package Lemonldap::NG::Portal::Lib::Combination::UserLogger;
|
||||
|
||||
# This logger rewrite "warn" to "notice"
|
||||
|
||||
sub new {
|
||||
my ( $class, $realLogger ) = @_;
|
||||
return bless { logger => $realLogger }, $class;
|
||||
|
|
|
@ -39,6 +39,14 @@ has configStorage => (
|
|||
);
|
||||
has ssoMatchUrl => ( is => 'rw' );
|
||||
|
||||
has iss => (
|
||||
is => 'ro',
|
||||
lazy => 1,
|
||||
default => sub {
|
||||
$_[0]->conf->{oidcServiceMetaDataIssuer} || $_[0]->conf->{portal};
|
||||
}
|
||||
);
|
||||
|
||||
# OIDC has 7 endpoints managed here as PSGI endpoints or in run() [Main/Issuer.pm
|
||||
# manage transparent authentication for run()]:
|
||||
# - authorize : in run()
|
||||
|
@ -698,8 +706,7 @@ sub run {
|
|||
my $user_id = $req->{sessionInfo}->{$user_id_attribute};
|
||||
|
||||
my $id_token_payload_hash = {
|
||||
iss => $self->conf->{oidcServiceMetaDataIssuer}
|
||||
, # Issuer Identifier
|
||||
iss => $self->iss, # Issuer Identifier
|
||||
sub => $user_id, # Subject Identifier
|
||||
aud => [$client_id], # Audience
|
||||
exp => $id_token_exp, # expiration
|
||||
|
@ -838,8 +845,7 @@ sub run {
|
|||
my $user_id = $req->{sessionInfo}->{$user_id_attribute};
|
||||
|
||||
my $id_token_payload_hash = {
|
||||
iss => $self->conf->{oidcServiceMetaDataIssuer}
|
||||
, # Issuer Identifier
|
||||
iss => $self->iss, # Issuer Identifier
|
||||
sub => $user_id, # Subject Identifier
|
||||
aud => [$client_id], # Audience
|
||||
exp => $id_token_exp, # expiration
|
||||
|
@ -1074,8 +1080,7 @@ sub token {
|
|||
}
|
||||
|
||||
# Check we have the same client_id value
|
||||
unless ( $client_id eq $codeSession->data->{client_id} )
|
||||
{
|
||||
unless ( $client_id eq $codeSession->data->{client_id} ) {
|
||||
$self->userLogger->error( "Provided client_id does not match "
|
||||
. $codeSession->data->{client_id} );
|
||||
return $self->p->sendError( $req, 'invalid_grant', 400 );
|
||||
|
@ -1146,11 +1151,11 @@ sub token {
|
|||
my $id_token_acr = "loa-" . $apacheSession->data->{authenticationLevel};
|
||||
|
||||
my $id_token_payload_hash = {
|
||||
iss => $self->conf->{oidcServiceMetaDataIssuer}, # Issuer Identifier
|
||||
sub => $user_id, # Subject Identifier
|
||||
aud => [$client_id], # Audience
|
||||
exp => $id_token_exp, # expiration
|
||||
iat => time, # Issued time
|
||||
iss => $self->iss,
|
||||
sub => $user_id, # Subject Identifier
|
||||
aud => [$client_id], # Audience
|
||||
exp => $id_token_exp, # expiration
|
||||
iat => time, # Issued time
|
||||
auth_time => $apacheSession->data->{_lastAuthnUTime}
|
||||
, # Authentication time
|
||||
acr => $id_token_acr, # Authentication Context Class Reference
|
||||
|
@ -1462,10 +1467,9 @@ sub logout {
|
|||
->{oidcRPMetaDataOptionsUserIDAttr}
|
||||
|| $self->conf->{whatToTrace};
|
||||
my $user_id = $req->{sessionInfo}->{$user_id_attribute};
|
||||
my $iss = $self->conf->{oidcServiceMetaDataIssuer};
|
||||
$url .= ( $url =~ /\?/ ? '&' : '?' )
|
||||
. build_urlencoded(
|
||||
iss => $iss,
|
||||
iss => $self->iss,
|
||||
sid => $user_id
|
||||
);
|
||||
}
|
||||
|
@ -1495,7 +1499,7 @@ sub metadata {
|
|||
my $checksession_uri = $self->conf->{oidcServiceMetaDataCheckSessionURI};
|
||||
|
||||
my $path = $self->path . '/';
|
||||
my $issuer = $self->conf->{oidcServiceMetaDataIssuer};
|
||||
my $issuer = $self->iss;
|
||||
$path = "/" . $path unless ( $issuer =~ /\/$/ );
|
||||
my $baseUrl = $issuer . $path;
|
||||
|
||||
|
|
|
@ -34,7 +34,7 @@ has cache => (
|
|||
}
|
||||
else {
|
||||
$_[0]->{p}->logger->error(
|
||||
'Local storage not defined, token will be store in global storage'
|
||||
'Local storage not defined, token will be stored into global storage'
|
||||
);
|
||||
return undef;
|
||||
}
|
||||
|
|
|
@ -55,6 +55,19 @@ sub handler {
|
|||
}
|
||||
my $res = $self->Lemonldap::NG::Common::PSGI::Router::handler($req);
|
||||
|
||||
# Avoid permanent loop 'Portal <-> _url' if pdata cookie is not removed
|
||||
my $url64 = encode_base64( $req->userData->{_url}, '' );
|
||||
if ( $url64
|
||||
and !$req->pdata->{keepPdata}
|
||||
and $req->userData->{_session_id}
|
||||
and ( $req->{env}->{HTTP_COOKIE} =~ /$url64/ ) )
|
||||
{
|
||||
$self->logger->debug("Force cleaning pdata");
|
||||
$self->logger->warn("pdata cookie domain must be set")
|
||||
unless ( $self->conf->{pdataDomain} );
|
||||
$req->pdata( {} );
|
||||
}
|
||||
|
||||
# Save pdata
|
||||
if ( $sp or %{ $req->pdata } ) {
|
||||
my %v = (
|
||||
|
|
|
@ -314,7 +314,7 @@ sub display {
|
|||
$self->{conf}->{impersonationMergeSSOgroups} ? 'alert-warning'
|
||||
: 'alert-info'
|
||||
),
|
||||
LOGIN => $req->{userData}->{uid},
|
||||
LOGIN => $req->{userData}->{ $self->conf->{whatToTrace} },
|
||||
ATTRIBUTES => $array_attrs->[2],
|
||||
MACROS => $array_attrs->[1],
|
||||
GROUPS => $array_attrs->[0],
|
||||
|
|
|
@ -27,6 +27,10 @@ has ott => (
|
|||
|
||||
sub init {
|
||||
my ($self) = @_;
|
||||
if ( $self->conf->{forceGlobalStorageUpgradeOTT} ) {
|
||||
$self->logger->debug("Upgrade token will be stored into global storage");
|
||||
$self->ott->cache(undef);
|
||||
}
|
||||
$self->addAuthRoute( upgradesession => 'ask', ['GET'] );
|
||||
$self->addAuthRoute( upgradesession => 'confirm', ['POST'] );
|
||||
}
|
||||
|
|
|
@ -1 +1 @@
|
|||
$(document).ready(function(){$("div.message-positive").addClass("alert-success");$("div.message-warning").addClass("alert-warning");$("div.message-negative").addClass("alert-danger");$("table.info").addClass("table");$(".notifCheck").addClass("checkbox");$('.collapse li[class!="dropdown"]').on("click",function(){if(!$(".navbar-toggler").hasClass("collapsed")){$(".navbar-toggler").trigger("click")}})});
|
||||
$(document).ready(function(){$("div.message-positive").addClass("alert-success"),$("div.message-warning").addClass("alert-warning"),$("div.message-negative").addClass("alert-danger"),$("table.info").addClass("table"),$(".notifCheck").addClass("checkbox"),$('.collapse li[class!="dropdown"]').on("click",function(){$(".navbar-toggler").hasClass("collapsed")||$(".navbar-toggler").trigger("click")})});
|
|
@ -0,0 +1 @@
|
|||
{"version":3,"sources":["lemonldap-ng-portal/site/htdocs/static/bootstrap/js/skin.js"],"names":["$","document","ready","addClass","on","hasClass","trigger"],"mappings":"AAAAA,EAAEC,UAAUC,MAAM,WAGhBF,EAAE,wBAAwBG,SAAS,iBACnCH,EAAE,uBAAuBG,SAAS,iBAClCH,EAAE,wBAAwBG,SAAS,gBAEnCH,EAAE,cAAcG,SAAS,SAEzBH,EAAE,eAAeG,SAAS,YAG1BH,EAAE,mCAAmCI,GAAG,QAAS,WAC1CJ,EAAE,mBAAmBK,SAAS,cACjCL,EAAE,mBAAmBM,QAAQ"}
|
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
|
@ -5,4 +5,4 @@
|
|||
* Copyright 2013 Klaus Hartl
|
||||
* Released under the MIT license
|
||||
*/
|
||||
(function(factory){if(typeof define==="function"&&define.amd){define(["jquery"],factory)}else if(typeof exports==="object"){factory(require("jquery"))}else{factory(jQuery)}})(function($){var pluses=/\+/g;function encode(s){return config.raw?s:encodeURIComponent(s)}function decode(s){return config.raw?s:decodeURIComponent(s)}function stringifyCookieValue(value){return encode(config.json?JSON.stringify(value):String(value))}function parseCookieValue(s){if(s.indexOf('"')===0){s=s.slice(1,-1).replace(/\\"/g,'"').replace(/\\\\/g,"\\")}try{s=decodeURIComponent(s.replace(pluses," "));return config.json?JSON.parse(s):s}catch(e){}}function read(s,converter){var value=config.raw?s:parseCookieValue(s);return $.isFunction(converter)?converter(value):value}var config=$.cookie=function(key,value,options){if(value!==undefined&&!$.isFunction(value)){options=$.extend({},config.defaults,options);if(typeof options.expires==="number"){var days=options.expires,t=options.expires=new Date;t.setTime(+t+days*864e5)}return document.cookie=[encode(key),"=",stringifyCookieValue(value),options.expires?"; expires="+options.expires.toUTCString():"",options.path?"; path="+options.path:"",options.domain?"; domain="+options.domain:"",options.secure?"; secure":""].join("")}var result=key?undefined:{};var cookies=document.cookie?document.cookie.split("; "):[];for(var i=0,l=cookies.length;i<l;i++){var parts=cookies[i].split("=");var name=decode(parts.shift());var cookie=parts.join("=");if(key&&key===name){result=read(cookie,value);break}if(!key&&(cookie=read(cookie))!==undefined){result[name]=cookie}}return result};config.defaults={};$.removeCookie=function(key,options){if($.cookie(key)===undefined){return false}$.cookie(key,"",$.extend({},options,{expires:-1}));return!$.cookie(key)}});
|
||||
!function(e){"function"==typeof define&&define.amd?define(["jquery"],e):"object"==typeof exports?e(require("jquery")):e(jQuery)}(function(m){var i=/\+/g;function v(e){return k.raw?e:encodeURIComponent(e)}function x(e,n){var o=k.raw?e:function(e){0===e.indexOf('"')&&(e=e.slice(1,-1).replace(/\\"/g,'"').replace(/\\\\/g,"\\"));try{return e=decodeURIComponent(e.replace(i," ")),k.json?JSON.parse(e):e}catch(e){}}(e);return m.isFunction(n)?n(o):o}var k=m.cookie=function(e,n,o){if(void 0!==n&&!m.isFunction(n)){if("number"==typeof(o=m.extend({},k.defaults,o)).expires){var i=o.expires,r=o.expires=new Date;r.setTime(+r+864e5*i)}return document.cookie=[v(e),"=",function(e){return v(k.json?JSON.stringify(e):String(e))}(n),o.expires?"; expires="+o.expires.toUTCString():"",o.path?"; path="+o.path:"",o.domain?"; domain="+o.domain:"",o.secure?"; secure":""].join("")}for(var t,c=e?void 0:{},u=document.cookie?document.cookie.split("; "):[],a=0,d=u.length;a<d;a++){var f=u[a].split("="),p=(t=f.shift(),k.raw?t:decodeURIComponent(t)),s=f.join("=");if(e&&e===p){c=x(s,n);break}e||void 0===(s=x(s))||(c[p]=s)}return c};k.defaults={},m.removeCookie=function(e,n){return void 0!==m.cookie(e)&&(m.cookie(e,"",m.extend({},n,{expires:-1})),!m.cookie(e))}});
|
|
@ -0,0 +1 @@
|
|||
{"version":3,"sources":["lemonldap-ng-portal/site/htdocs/static/bwr/jquery.cookie/jquery.cookie.js"],"names":["factory","define","amd","exports","require","jQuery","$","pluses","encode","s","config","raw","encodeURIComponent","read","converter","value","indexOf","slice","replace","decodeURIComponent","json","JSON","parse","e","parseCookieValue","isFunction","cookie","key","options","undefined","extend","defaults","expires","days","t","Date","setTime","document","stringify","String","stringifyCookieValue","toUTCString","path","domain","secure","join","result","cookies","split","i","l","length","parts","name","shift","removeCookie"],"mappings":";;;;;;;CAOC,SAAUA,GACY,mBAAXC,QAAyBA,OAAOC,IAE1CD,OAAO,CAAC,UAAWD,GACU,iBAAZG,QAEjBH,EAAQI,QAAQ,WAGhBJ,EAAQK,QATV,CAWE,SAAUC,GAEX,IAAIC,EAAS,MAEb,SAASC,EAAOC,GACf,OAAOC,EAAOC,IAAMF,EAAIG,mBAAmBH,GA0B5C,SAASI,EAAKJ,EAAGK,GAChB,IAAIC,EAAQL,EAAOC,IAAMF,EAhB1B,SAA0BA,GACF,IAAnBA,EAAEO,QAAQ,OAEbP,EAAIA,EAAEQ,MAAM,GAAI,GAAGC,QAAQ,OAAQ,KAAKA,QAAQ,QAAS,OAG1D,IAKC,OADAT,EAAIU,mBAAmBV,EAAES,QAAQX,EAAQ,MAClCG,EAAOU,KAAOC,KAAKC,MAAMb,GAAKA,EACpC,MAAMc,KAIqBC,CAAiBf,GAC9C,OAAOH,EAAEmB,WAAWX,GAAaA,EAAUC,GAASA,EAGrD,IAAIL,EAASJ,EAAEoB,OAAS,SAAUC,EAAKZ,EAAOa,GAI7C,QAAcC,IAAVd,IAAwBT,EAAEmB,WAAWV,GAAQ,CAGhD,GAA+B,iBAF/Ba,EAAUtB,EAAEwB,OAAO,GAAIpB,EAAOqB,SAAUH,IAErBI,QAAsB,CACxC,IAAIC,EAAOL,EAAQI,QAASE,EAAIN,EAAQI,QAAU,IAAIG,KACtDD,EAAEE,SAASF,EAAW,MAAPD,GAGhB,OAAQI,SAASX,OAAS,CACzBlB,EAAOmB,GAAM,IArChB,SAA8BZ,GAC7B,OAAOP,EAAOE,EAAOU,KAAOC,KAAKiB,UAAUvB,GAASwB,OAAOxB,IAoCvCyB,CAAqBzB,GACvCa,EAAQI,QAAU,aAAeJ,EAAQI,QAAQS,cAAgB,GACjEb,EAAQc,KAAU,UAAYd,EAAQc,KAAO,GAC7Cd,EAAQe,OAAU,YAAcf,EAAQe,OAAS,GACjDf,EAAQgB,OAAU,WAAa,IAC9BC,KAAK,IAYR,IAPA,IAnDepC,EAmDXqC,EAASnB,OAAME,EAAY,GAK3BkB,EAAUV,SAASX,OAASW,SAASX,OAAOsB,MAAM,MAAQ,GAErDC,EAAI,EAAGC,EAAIH,EAAQI,OAAQF,EAAIC,EAAGD,IAAK,CAC/C,IAAIG,EAAQL,EAAQE,GAAGD,MAAM,KACzBK,GA5DU5C,EA4DI2C,EAAME,QA3DlB5C,EAAOC,IAAMF,EAAIU,mBAAmBV,IA4DtCiB,EAAS0B,EAAMP,KAAK,KAExB,GAAIlB,GAAOA,IAAQ0B,EAAM,CAExBP,EAASjC,EAAKa,EAAQX,GACtB,MAIIY,QAAmCE,KAA3BH,EAASb,EAAKa,MAC1BoB,EAAOO,GAAQ3B,GAIjB,OAAOoB,GAGRpC,EAAOqB,SAAW,GAElBzB,EAAEiD,aAAe,SAAU5B,EAAKC,GAC/B,YAAsBC,IAAlBvB,EAAEoB,OAAOC,KAKbrB,EAAEoB,OAAOC,EAAK,GAAIrB,EAAEwB,OAAO,GAAIF,EAAS,CAAEI,SAAU,MAC5C1B,EAAEoB,OAAOC"}
|
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
Binary file not shown.
|
@ -1,4 +1,4 @@
|
|||
// Generated by CoffeeScript 1.12.8
|
||||
// Generated by CoffeeScript 1.12.7
|
||||
|
||||
/*
|
||||
LemonLDAP::NG 2F registration script
|
||||
|
|
|
@ -1 +1,2 @@
|
|||
(function(){var delete2F,displayError,setMsg;setMsg=function(msg,level){$("#msg").html(window.translate(msg));$("#color").removeClass("message-positive message-warning alert-success alert-warning");$("#color").addClass("message-"+level);if(level==="positive"){level="success"}return $("#color").addClass("alert-"+level)};displayError=function(j,status,err){var res;console.log("Error",err);res=JSON.parse(j.responseText);if(res&&res.error){res=res.error.replace(/.* /,"");console.log("Returned error",res);if(res.match(/module/)){return setMsg("notAuthorized","warning")}else{return setMsg(res,"warning")}}};delete2F=function(device,epoch){if(device==="U2F"){device="u"}else if(device==="UBK"){device="yubikey"}else if(device==="TOTP"){device="totp"}else{setMsg("u2fFailed","warning")}return $.ajax({type:"POST",url:portal+"2fregisters/"+device+"/delete",data:{epoch:epoch},dataType:"json",error:displayError,success:function(resp){if(resp.error){if(resp.error.match(/notAuthorized/)){return setMsg("notAuthorized","warning")}else{return setMsg("unknownAction","warning")}}else if(resp.result){$("#delete-"+epoch).hide();return setMsg("yourKeyIsUnregistered","positive")}},error:displayError})};$(document).ready(function(){$("body").on("click",".btn-danger",function(){return delete2F($(this).attr("device"),$(this).attr("epoch"))});$("#goback").attr("href",portal);return $(".data-epoch").each(function(){var myDate;myDate=new Date($(this).text()*1e3);return $(this).text(myDate.toLocaleString())})})}).call(this);
|
||||
(function(){var e,r,t;t=function(e,r){return $("#msg").html(window.translate(e)),$("#color").removeClass("message-positive message-warning alert-success alert-warning"),$("#color").addClass("message-"+r),"positive"===r&&(r="success"),$("#color").addClass("alert-"+r)},r=function(e,r,n){var o;if(console.log("Error",n),(o=JSON.parse(e.responseText))&&o.error)return o=o.error.replace(/.* /,""),console.log("Returned error",o),o.match(/module/)?t("notAuthorized","warning"):t(o,"warning")},e=function(e,n){return"U2F"===e?e="u":"UBK"===e?e="yubikey":"TOTP"===e?e="totp":t("u2fFailed","warning"),$.ajax({type:"POST",url:portal+"2fregisters/"+e+"/delete",data:{epoch:n},dataType:"json",error:r,success:function(e){return e.error?e.error.match(/notAuthorized/)?t("notAuthorized","warning"):t("unknownAction","warning"):e.result?($("#delete-"+n).hide(),t("yourKeyIsUnregistered","positive")):void 0},error:r})},$(document).ready(function(){return $("body").on("click",".btn-danger",function(){return e($(this).attr("device"),$(this).attr("epoch"))}),$("#goback").attr("href",portal),$(".data-epoch").each(function(){var e;return e=new Date(1e3*$(this).text()),$(this).text(e.toLocaleString())})})}).call(this);
|
||||
//# sourceMappingURL=lemonldap-ng-portal/site/htdocs/static/common/js/2fregistration.min.js.map
|
|
@ -0,0 +1 @@
|
|||
{"version":3,"sources":["lemonldap-ng-portal/site/htdocs/static/common/js/2fregistration.js"],"names":["delete2F","displayError","setMsg","msg","level","$","html","window","translate","removeClass","addClass","j","status","err","res","console","log","JSON","parse","responseText","error","replace","match","device","epoch","ajax","type","url","portal","data","dataType","success","resp","result","hide","document","ready","on","this","attr","each","myDate","Date","text","toLocaleString","call"],"mappings":"CAMA,WACE,GAAIA,GAAUC,EAAcC,CAE5BA,GAAS,SAASC,EAAKC,GAOrB,MANAC,GAAE,QAAQC,KAAKC,OAAOC,UAAUL,IAChCE,EAAE,UAAUI,YAAY,gEACxBJ,EAAE,UAAUK,SAAS,WAAaN,GACpB,aAAVA,IACFA,EAAQ,WAEHC,EAAE,UAAUK,SAAS,SAAWN,IAGzCH,EAAe,SAASU,EAAGC,EAAQC,GACjC,GAAIC,EAGJ,IAFAC,QAAQC,IAAI,QAASH,IACrBC,EAAMG,KAAKC,MAAMP,EAAEQ,gBACRL,EAAIM,MAGb,MAFAN,GAAMA,EAAIM,MAAMC,QAAQ,MAAO,IAC/BN,QAAQC,IAAI,iBAAkBF,GAC1BA,EAAIQ,MAAM,UACLpB,EAAO,gBAAiB,WAExBA,EAAOY,EAAK,YAKzBd,EAAW,SAASuB,EAAQC,GAU1B,MATe,QAAXD,EACFA,EAAS,IACW,QAAXA,EACTA,EAAS,UACW,SAAXA,EACTA,EAAS,OAETrB,EAAO,YAAa,WAEfG,EAAEoB,MACPC,KAAM,OACNC,IAAKC,OAAS,eAAiBL,EAAS,UACxCM,MACEL,MAAOA,GAETM,SAAU,OACVV,MAAOnB,EACP8B,QAAS,SAASC,GAChB,MAAIA,GAAKZ,MACHY,EAAKZ,MAAME,MAAM,iBACZpB,EAAO,gBAAiB,WAExBA,EAAO,gBAAiB,WAExB8B,EAAKC,QACd5B,EAAE,WAAamB,GAAOU,OACfhC,EAAO,wBAAyB,iBAFlC,IAKTkB,MAAOnB,KAIXI,EAAE8B,UAAUC,MAAM,WAKhB,MAJA/B,GAAE,QAAQgC,GAAG,QAAS,cAAe,WACnC,MAAOrC,GAASK,EAAEiC,MAAMC,KAAK,UAAWlC,EAAEiC,MAAMC,KAAK,YAEvDlC,EAAE,WAAWkC,KAAK,OAAQX,QACnBvB,EAAE,eAAemC,KAAK,WAC3B,GAAIC,EAEJ,OADAA,GAAS,GAAIC,MAAsB,IAAjBrC,EAAEiC,MAAMK,QACnBtC,EAAEiC,MAAMK,KAAKF,EAAOG,wBAI9BC,KAAKP","file":"lemonldap-ng-portal/site/htdocs/static/common/js/2fregistration.min.js"}
|
|
@ -1,4 +1,4 @@
|
|||
// Generated by CoffeeScript 1.12.8
|
||||
// Generated by CoffeeScript 1.12.7
|
||||
(function() {
|
||||
$(document).ready(function() {
|
||||
return $('#upgrd').submit();
|
||||
|
|
|
@ -1 +1,2 @@
|
|||
(function(){$(document).ready(function(){return $("#upgrd").submit()})}).call(this);
|
||||
//# sourceMappingURL=lemonldap-ng-portal/site/htdocs/static/common/js/autoRenew.min.js.map
|
|
@ -0,0 +1 @@
|
|||
{"version":3,"sources":["lemonldap-ng-portal/site/htdocs/static/common/js/autoRenew.js"],"names":["$","document","ready","submit","call","this"],"mappings":"CACA,WACEA,EAAEC,UAAUC,MAAM,WAChB,MAAOF,GAAE,UAAUG,aAGpBC,KAAKC","file":"lemonldap-ng-portal/site/htdocs/static/common/js/autoRenew.min.js"}
|
|
@ -1,4 +1,4 @@
|
|||
// Generated by CoffeeScript 1.12.8
|
||||
// Generated by CoffeeScript 1.12.7
|
||||
(function() {
|
||||
var go, i, timer, timerIsEnabled;
|
||||
|
||||
|
|
|
@ -1 +1,2 @@
|
|||
(function(){var go,i,timer,timerIsEnabled;i=5;timerIsEnabled=0;go=function(){if(timerIsEnabled){return $("#form").submit()}};timer=function(){var h;h=$("#timer").html();if(h){timerIsEnabled=1;if(i>0){i--}h=h.replace(/\d+/,i);$("#timer").html(h);return setTimeout(timer,1e3)}};$(document).ready(function(){setTimeout(go,3e4);setTimeout(timer,1e3);return $("#refuse").on("click",function(){return $("#confirm").attr("value",$(this).attr("val"))})})}).call(this);
|
||||
(function(){var t,e,r,i;e=5,i=0,t=function(){if(i)return $("#form").submit()},r=function(){var t;if(t=$("#timer").html())return i=1,e>0&&e--,t=t.replace(/\d+/,e),$("#timer").html(t),setTimeout(r,1e3)},$(document).ready(function(){return setTimeout(t,3e4),setTimeout(r,1e3),$("#refuse").on("click",function(){return $("#confirm").attr("value",$(this).attr("val"))})})}).call(this);
|
||||
//# sourceMappingURL=lemonldap-ng-portal/site/htdocs/static/common/js/confirm.min.js.map
|
|
@ -0,0 +1 @@
|
|||
{"version":3,"sources":["lemonldap-ng-portal/site/htdocs/static/common/js/confirm.js"],"names":["go","i","timer","timerIsEnabled","$","submit","h","html","replace","setTimeout","document","ready","on","attr","this","call"],"mappings":"CACA,WACE,GAAIA,GAAIC,EAAGC,EAAOC,CAElBF,GAAI,EAEJE,EAAiB,EAEjBH,EAAK,WACH,GAAIG,EACF,MAAOC,GAAE,SAASC,UAItBH,EAAQ,WACN,GAAII,EAEJ,IADAA,EAAIF,EAAE,UAAUG,OAQd,MANAJ,GAAiB,EACbF,EAAI,GACNA,IAEFK,EAAIA,EAAEE,QAAQ,MAAOP,GACrBG,EAAE,UAAUG,KAAKD,GACVG,WAAWP,EAAO,MAI7BE,EAAEM,UAAUC,MAAM,WAGhB,MAFAF,YAAWT,EAAI,KACfS,WAAWP,EAAO,KACXE,EAAE,WAAWQ,GAAG,QAAS,WAC9B,MAAOR,GAAE,YAAYS,KAAK,QAAST,EAAEU,MAAMD,KAAK,cAInDE,KAAKD","file":"lemonldap-ng-portal/site/htdocs/static/common/js/confirm.min.js"}
|
|
@ -1 +1,2 @@
|
|||
(function(){var FavApps,ResetFavApps,switchStar;FavApps=function(star){return $.ajax({type:"POST",url:portal+"favapps",data:{id:star.attr("aid"),uri:star.attr("uri"),name:star.attr("name"),logo:star.attr("logo"),desc:star.attr("desc")},dataType:"json",success:function(resp){if(resp.error){console.log("Max number reached");return switchStar(star,0)}else if(resp.error===0){console.log("Not authorized");return switchStar(star,0)}else if(resp.result){console.log("App. registered");return switchStar(star,1)}else{console.log("App. unregistered");return switchStar(star,0)}},error:switchStar(star,"0")})};ResetFavApps=function(){return $.ajax({type:"DELETE",url:portal+"favapps",success:function(resp){if(resp.result){console.log("Favorite Apps. reset");return window.location.reload()}else{return console.log("Error")}}})};switchStar=function(star,status){return star.attr("src",window.staticPrefix+"common/icons/star"+status+".png")};$(document).ready(function(){$("body").on("click",".star",function(){return FavApps($(this))});return $("#reset").on("click",function(){return ResetFavApps()})})}).call(this);
|
||||
(function(){var r,o,t;r=function(r){return $.ajax({type:"POST",url:portal+"favapps",data:{id:r.attr("aid"),uri:r.attr("uri"),name:r.attr("name"),logo:r.attr("logo"),desc:r.attr("desc")},dataType:"json",success:function(o){return o.error?(console.log("Max number reached"),t(r,0)):0===o.error?(console.log("Not authorized"),t(r,0)):o.result?(console.log("App. registered"),t(r,1)):(console.log("App. unregistered"),t(r,0))},error:t(r,"0")})},o=function(){return $.ajax({type:"DELETE",url:portal+"favapps",success:function(r){return r.result?(console.log("Favorite Apps. reset"),window.location.reload()):console.log("Error")}})},t=function(r,o){return r.attr("src",window.staticPrefix+"common/icons/star"+o+".png")},$(document).ready(function(){return $("body").on("click",".star",function(){return r($(this))}),$("#reset").on("click",function(){return o()})})}).call(this);
|
||||
//# sourceMappingURL=lemonldap-ng-portal/site/htdocs/static/common/js/favapps.min.js.map
|
|
@ -0,0 +1 @@
|
|||
{"version":3,"sources":["lemonldap-ng-portal/site/htdocs/static/common/js/favapps.js"],"names":["FavApps","ResetFavApps","switchStar","star","$","ajax","type","url","portal","data","id","attr","uri","name","logo","desc","dataType","success","resp","error","console","log","result","window","location","reload","status","staticPrefix","document","ready","on","this","call"],"mappings":"CAMA,WACE,GAAIA,GAASC,EAAcC,CAE3BF,GAAU,SAASG,GACjB,MAAOC,GAAEC,MACPC,KAAM,OACNC,IAAKC,OAAS,UACdC,MACEC,GAAIP,EAAKQ,KAAK,OACdC,IAAKT,EAAKQ,KAAK,OACfE,KAAMV,EAAKQ,KAAK,QAChBG,KAAMX,EAAKQ,KAAK,QAChBI,KAAMZ,EAAKQ,KAAK,SAElBK,SAAU,OACVC,QAAS,SAASC,GAChB,MAAIA,GAAKC,OACPC,QAAQC,IAAI,sBACLnB,EAAWC,EAAM,IACA,IAAfe,EAAKC,OACdC,QAAQC,IAAI,kBACLnB,EAAWC,EAAM,IACfe,EAAKI,QACdF,QAAQC,IAAI,mBACLnB,EAAWC,EAAM,KAExBiB,QAAQC,IAAI,qBACLnB,EAAWC,EAAM,KAG5BgB,MAAOjB,EAAWC,EAAM,QAI5BF,EAAe,WACb,MAAOG,GAAEC,MACPC,KAAM,SACNC,IAAKC,OAAS,UACdS,QAAS,SAASC,GAChB,MAAIA,GAAKI,QACPF,QAAQC,IAAI,wBACLE,OAAOC,SAASC,UAEhBL,QAAQC,IAAI,aAM3BnB,EAAa,SAASC,EAAMuB,GAC1B,MAAOvB,GAAKQ,KAAK,MAAOY,OAAOI,aAAe,oBAAsBD,EAAS,SAG/EtB,EAAEwB,UAAUC,MAAM,WAIhB,MAHAzB,GAAE,QAAQ0B,GAAG,QAAS,QAAS,WAC7B,MAAO9B,GAAQI,EAAE2B,SAEZ3B,EAAE,UAAU0B,GAAG,QAAS,WAC7B,MAAO7B,WAIV+B,KAAKD","file":"lemonldap-ng-portal/site/htdocs/static/common/js/favapps.min.js"}
|
|
@ -1,4 +1,4 @@
|
|||
// Generated by CoffeeScript 1.12.8
|
||||
// Generated by CoffeeScript 1.12.7
|
||||
(function() {
|
||||
$(document).ready(function() {
|
||||
return $(".idploop").on('click', function() {
|
||||
|
|
|
@ -1 +1,2 @@
|
|||
(function(){$(document).ready(function(){return $(".idploop").on("click",function(){return $("#idp").val($(this).attr("val"))})})}).call(this);
|
||||
//# sourceMappingURL=lemonldap-ng-portal/site/htdocs/static/common/js/idpchoice.min.js.map
|
|
@ -0,0 +1 @@
|
|||
{"version":3,"sources":["lemonldap-ng-portal/site/htdocs/static/common/js/idpchoice.js"],"names":["$","document","ready","on","val","this","attr","call"],"mappings":"CACA,WACEA,EAAEC,UAAUC,MAAM,WAChB,MAAOF,GAAE,YAAYG,GAAG,QAAS,WAC/B,MAAOH,GAAE,QAAQI,IAAIJ,EAAEK,MAAMC,KAAK,cAIrCC,KAAKF","file":"lemonldap-ng-portal/site/htdocs/static/common/js/idpchoice.min.js"}
|
|
@ -1,4 +1,4 @@
|
|||
// Generated by CoffeeScript 1.12.8
|
||||
// Generated by CoffeeScript 1.12.7
|
||||
(function() {
|
||||
var _go, go, i, stop, timer;
|
||||
|
||||
|
|
|
@ -1 +1,2 @@
|
|||
(function(){var _go,go,i,stop,timer;i=30;_go=1;stop=function(){_go=0;return $("#divToHide").hide()};go=function(){if(_go){return $("#form").submit()}};timer=function(){var h;h=$("#timer").html();if(i>0){i--}h=h.replace(/\d+/,i);$("#timer").html(h);return window.setTimeout(timer,1e3)};$(document).ready(function(){if(window.datas["activeTimer"]){window.setTimeout(go,3e4);window.setTimeout(timer,1e3)}else{stop}return $("#wait").on("click",function(){return stop()})})}).call(this);
|
||||
(function(){var t,i,e,n,r;e=30,t=1,n=function(){return t=0,$("#divToHide").hide()},i=function(){if(t)return $("#form").submit()},r=function(){var t;return t=$("#timer").html(),e>0&&e--,t=t.replace(/\d+/,e),$("#timer").html(t),window.setTimeout(r,1e3)},$(document).ready(function(){return window.datas.activeTimer&&(window.setTimeout(i,3e4),window.setTimeout(r,1e3)),$("#wait").on("click",function(){return n()})})}).call(this);
|
||||
//# sourceMappingURL=lemonldap-ng-portal/site/htdocs/static/common/js/info.min.js.map
|
|
@ -0,0 +1 @@
|
|||
{"version":3,"sources":["lemonldap-ng-portal/site/htdocs/static/common/js/info.js"],"names":["_go","go","i","stop","timer","$","hide","submit","h","html","replace","window","setTimeout","document","ready","datas","on","call","this"],"mappings":"CACA,WACE,GAAIA,GAAKC,EAAIC,EAAGC,EAAMC,CAEtBF,GAAI,GAEJF,EAAM,EAENG,EAAO,WAEL,MADAH,GAAM,EACCK,EAAE,cAAcC,QAGzBL,EAAK,WACH,GAAID,EACF,MAAOK,GAAE,SAASE,UAItBH,EAAQ,WACN,GAAII,EAOJ,OANAA,GAAIH,EAAE,UAAUI,OACZP,EAAI,GACNA,IAEFM,EAAIA,EAAEE,QAAQ,MAAOR,GACrBG,EAAE,UAAUI,KAAKD,GACVG,OAAOC,WAAWR,EAAO,MAGlCC,EAAEQ,UAAUC,MAAM,WAOhB,MANIH,QAAOI,MAAmB,cAC5BJ,OAAOC,WAAWX,EAAI,KACtBU,OAAOC,WAAWR,EAAO,MAIpBC,EAAE,SAASW,GAAG,QAAS,WAC5B,MAAOb,WAIVc,KAAKC","file":"lemonldap-ng-portal/site/htdocs/static/common/js/info.min.js"}
|
|
@ -1,4 +1,4 @@
|
|||
// Generated by CoffeeScript 1.12.8
|
||||
// Generated by CoffeeScript 1.12.7
|
||||
(function() {
|
||||
$(document).ready(function() {
|
||||
return $.ajax(portal + '?kerberos=1', {
|
||||
|
|
|
@ -1 +1,2 @@
|
|||
(function(){$(document).ready(function(){return $.ajax(portal+"?kerberos=1",{dataType:"json",statusCode:{401:function(){return $("#lform").submit()}},success:function(data){return $("#lform").submit()},error:function(){return $("#lform").submit()}})})}).call(this);
|
||||
(function(){$(document).ready(function(){return $.ajax(portal+"?kerberos=1",{dataType:"json",statusCode:{401:function(){return $("#lform").submit()}},success:function(r){return $("#lform").submit()},error:function(){return $("#lform").submit()}})})}).call(this);
|
||||
//# sourceMappingURL=lemonldap-ng-portal/site/htdocs/static/common/js/kerberos.min.js.map
|
|
@ -0,0 +1 @@
|
|||
{"version":3,"sources":["lemonldap-ng-portal/site/htdocs/static/common/js/kerberos.js"],"names":["$","document","ready","ajax","portal","dataType","statusCode","401","submit","success","data","error","call","this"],"mappings":"CACA,WACEA,EAAEC,UAAUC,MAAM,WAChB,MAAOF,GAAEG,KAAKC,OAAS,eACrBC,SAAU,OACVC,YACEC,IAAK,WACH,MAAOP,GAAE,UAAUQ,WAGvBC,QAAS,SAASC,GAChB,MAAOV,GAAE,UAAUQ,UAErBG,MAAO,WACL,MAAOX,GAAE,UAAUQ,gBAKxBI,KAAKC","file":"lemonldap-ng-portal/site/htdocs/static/common/js/kerberos.min.js"}
|
|
@ -1,4 +1,4 @@
|
|||
// Generated by CoffeeScript 1.12.8
|
||||
// Generated by CoffeeScript 1.12.7
|
||||
(function() {
|
||||
var _krbJsAlreadySent;
|
||||
|
||||
|
|
|
@ -1 +1,2 @@
|
|||
(function(){var _krbJsAlreadySent;if(_krbJsAlreadySent===null){_krbJsAlreadySent=false}$(document).ready(function(){if(!_krbJsAlreadySent){_krbJsAlreadySent=1;console.log("Send Kerberos Ajax request");return $.ajax(portal+"?kerberos=1",{dataType:"json",statusCode:{401:function(){return $("#lformKerberos").submit()}},success:function(data){return $("#lformKerberos").submit()},error:function(){return $("#lformKerberos").submit()}})}else{return console.log("Kerberos Ajax request already sent")}})}).call(this);
|
||||
(function(){var r;null===r&&(r=!1),$(document).ready(function(){return r?console.log("Kerberos Ajax request already sent"):(r=1,console.log("Send Kerberos Ajax request"),$.ajax(portal+"?kerberos=1",{dataType:"json",statusCode:{401:function(){return $("#lformKerberos").submit()}},success:function(r){return $("#lformKerberos").submit()},error:function(){return $("#lformKerberos").submit()}}))})}).call(this);
|
||||
//# sourceMappingURL=lemonldap-ng-portal/site/htdocs/static/common/js/kerberosChoice.min.js.map
|
|
@ -0,0 +1 @@
|
|||
{"version":3,"sources":["lemonldap-ng-portal/site/htdocs/static/common/js/kerberosChoice.js"],"names":["_krbJsAlreadySent","$","document","ready","console","log","ajax","portal","dataType","statusCode","401","submit","success","data","error","call","this"],"mappings":"CACA,WACE,GAAIA,EAEsB,QAAtBA,IACFA,GAAoB,GAGtBC,EAAEC,UAAUC,MAAM,WAChB,MAAKH,GAkBII,QAAQC,IAAI,uCAjBnBL,EAAoB,EACpBI,QAAQC,IAAI,8BACLJ,EAAEK,KAAKC,OAAS,eACrBC,SAAU,OACVC,YACEC,IAAK,WACH,MAAOT,GAAE,kBAAkBU,WAG/BC,QAAS,SAASC,GAChB,MAAOZ,GAAE,kBAAkBU,UAE7BG,MAAO,WACL,MAAOb,GAAE,kBAAkBU,iBAQlCI,KAAKC","file":"lemonldap-ng-portal/site/htdocs/static/common/js/kerberosChoice.min.js"}
|
|
@ -1,4 +1,4 @@
|
|||
// Generated by CoffeeScript 1.12.8
|
||||
// Generated by CoffeeScript 1.12.7
|
||||
(function() {
|
||||
var values;
|
||||
|
||||
|
|
|
@ -1 +1,2 @@
|
|||
(function(){var values;values={};$(document).ready(function(){$("script[type='application/init']").each(function(){var e,k,results,tmp;try{tmp=JSON.parse($(this).text());results=[];for(k in tmp){results.push(values[k]=tmp[k])}return results}catch(error){e=error;return console.log("Parsing error",e)}});return window.addEventListener("message",function(e){var client_id,message,salt,session_state,ss,stat;message=e.data;console.log("message=",message);client_id=decodeURIComponent(message.split(" ")[0]);session_state=decodeURIComponent(message.split(" ")[1]);salt=decodeURIComponent(session_state.split(".")[1]);ss=btoa(client_id+" "+e.origin+" "+salt)+"."+salt;if(session_state===ss){stat="unchanged"}else{stat="changed"}return e.source.postMessage(stat,e.origin)},false)})}).call(this);
|
||||
(function(){var e;e={},$(document).ready(function(){return $("script[type='application/init']").each(function(){var n,t,o,r;try{r=JSON.parse($(this).text()),o=[];for(t in r)o.push(e[t]=r[t]);return o}catch(e){return n=e,console.log("Parsing error",n)}}),window.addEventListener("message",function(e){var n,t,o,r,i,a;return t=e.data,console.log("message=",t),n=decodeURIComponent(t.split(" ")[0]),r=decodeURIComponent(t.split(" ")[1]),o=decodeURIComponent(r.split(".")[1]),i=btoa(n+" "+e.origin+" "+o)+"."+o,a=r===i?"unchanged":"changed",e.source.postMessage(a,e.origin)},!1)})}).call(this);
|
||||
//# sourceMappingURL=lemonldap-ng-portal/site/htdocs/static/common/js/oidcchecksession.min.js.map
|
|
@ -0,0 +1 @@
|
|||
{"version":3,"sources":["lemonldap-ng-portal/site/htdocs/static/common/js/oidcchecksession.js"],"names":["values","$","document","ready","each","e","k","results","tmp","JSON","parse","this","text","push","error","console","log","window","addEventListener","client_id","message","salt","session_state","ss","stat","data","decodeURIComponent","split","btoa","origin","source","postMessage","call"],"mappings":"CACA,WACE,GAAIA,EAEJA,MAEAC,EAAEC,UAAUC,MAAM,WAehB,MAdAF,GAAE,mCAAmCG,KAAK,WACxC,GAAIC,GAAGC,EAAGC,EAASC,CACnB,KACEA,EAAMC,KAAKC,MAAMT,EAAEU,MAAMC,QACzBL,IACA,KAAKD,IAAKE,GACRD,EAAQM,KAAKb,EAAOM,GAAKE,EAAIF,GAE/B,OAAOC,GACP,MAAOO,GAEP,MADAT,GAAIS,EACGC,QAAQC,IAAI,gBAAiBX,MAGjCY,OAAOC,iBAAiB,UAAW,SAASb,GACjD,GAAIc,GAAWC,EAASC,EAAMC,EAAeC,EAAIC,CAYjD,OAXAJ,GAAUf,EAAEoB,KACZV,QAAQC,IAAI,WAAYI,GACxBD,EAAYO,mBAAmBN,EAAQO,MAAM,KAAK,IAClDL,EAAgBI,mBAAmBN,EAAQO,MAAM,KAAK,IACtDN,EAAOK,mBAAmBJ,EAAcK,MAAM,KAAK,IACnDJ,EAAKK,KAAKT,EAAY,IAAMd,EAAEwB,OAAS,IAAMR,GAAQ,IAAMA,EAEzDG,EADEF,IAAkBC,EACb,YAEA,UAEFlB,EAAEyB,OAAOC,YAAYP,EAAMnB,EAAEwB,UACnC,OAGJG,KAAKrB","file":"lemonldap-ng-portal/site/htdocs/static/common/js/oidcchecksession.min.js"}
|
|
@ -1,4 +1,4 @@
|
|||
// Generated by CoffeeScript 1.12.8
|
||||
// Generated by CoffeeScript 1.12.7
|
||||
|
||||
/*
|
||||
LemonLDAP::NG Portal jQuery scripts
|
||||
|
|
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
|
@ -1,4 +1,4 @@
|
|||
// Generated by CoffeeScript 1.12.8
|
||||
// Generated by CoffeeScript 1.12.7
|
||||
(function() {
|
||||
document.onreadystatechange = function() {
|
||||
var redirect;
|
||||
|
|
|
@ -1 +1,2 @@
|
|||
(function(){document.onreadystatechange=function(){var redirect;if(document.readyState==="complete"){redirect=document.getElementById("redirect").textContent.replace(/\s/g,"");if(redirect){if(redirect==="form"){return document.getElementById("form").submit()}else{return document.location.href=redirect}}else{return console.log("No redirection !")}}}}).call(this);
|
||||
(function(){document.onreadystatechange=function(){var e;if("complete"===document.readyState)return e=document.getElementById("redirect").textContent.replace(/\s/g,""),e?"form"===e?document.getElementById("form").submit():document.location.href=e:console.log("No redirection !")}}).call(this);
|
||||
//# sourceMappingURL=lemonldap-ng-portal/site/htdocs/static/common/js/redirect.min.js.map
|
|
@ -0,0 +1 @@
|
|||
{"version":3,"sources":["lemonldap-ng-portal/site/htdocs/static/common/js/redirect.js"],"names":["document","onreadystatechange","redirect","readyState","getElementById","textContent","replace","submit","location","href","console","log","call","this"],"mappings":"CACA,WACEA,SAASC,mBAAqB,WAC5B,GAAIC,EACJ,IAA4B,aAAxBF,SAASG,WAEX,MADAD,GAAWF,SAASI,eAAe,YAAYC,YAAYC,QAAQ,MAAO,IACtEJ,EACe,SAAbA,EACKF,SAASI,eAAe,QAAQG,SAEhCP,SAASQ,SAASC,KAAOP,EAG3BQ,QAAQC,IAAI,uBAKxBC,KAAKC","file":"lemonldap-ng-portal/site/htdocs/static/common/js/redirect.min.js"}
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue