Dynamic auth module display for multi

environments/ppa-mbqj77/deployments/1
Xavier Guimard 10 years ago
parent e5f744654b
commit b0d8e50cd7
  1. 6
      lemonldap-ng-manager/lib/Lemonldap/NG/Manager/Attributes.pm
  2. 2
      lemonldap-ng-manager/lib/Lemonldap/NG/Manager/Tree.pm
  3. 17
      lemonldap-ng-manager/site/static/forms/authParamsText.html
  4. 18
      lemonldap-ng-manager/site/static/forms/authParamsTextContainer.html
  5. 9
      lemonldap-ng-manager/site/static/js/filterFunctions.js
  6. 2
      lemonldap-ng-manager/site/static/struct.json

@ -1963,13 +1963,13 @@ m{^(?:ldapi://[^/]*/?|\w[\w\-\.]*(?::\d{1,5})?|ldap(?:s|\+tls)?://\w[\w\-\.]*(?:
# Multi
multiAuthStack => {
type => 'text',
type => 'authParamsText',
},
multiUserDBStack => {
type => 'text',
type => 'authParamsText',
},
multiValuesSeparator => {
type => 'text',
type => 'authParamsText',
default => '; ',
documentation => 'Separator for multiple values',
},

@ -275,7 +275,7 @@ sub tree {
{
title => 'multiParams',
help => 'authmulti.html',
form => 'simpleInputContainer',
form => 'authParamsTextContainer',
nodes => [
'multiAuthStack', 'multiUserDBStack',
'multiValuesSeparator'

@ -0,0 +1,17 @@
<div class="panel panel-default">
<div class="panel-heading">
<h3 class="panel-title">{{translateTitle(currentNode)}}</h3>
</div>
<table class="table table striped">
<tr>
<th><span trspan="value"/></th>
<td><input id="textinput" class="form-control" ng-model="currentNode.data" ng-change="execFilters(_findScopeByKey('authParams'))"/></td>
</tr>
</table>
</div>
<script type="text/javascript">
buttons=[{
"title": "cancel",
"icon": "remove"
}];
</script>

@ -0,0 +1,18 @@
<div class="panel panel-default">
<div class="panel-heading">
<h3 class="panel-title">{{translateTitle(currentNode)}}</h3>
</div>
<table class="table table-striped">
<tbody>
<tr ng-repeat="n in currentNode.nodes">
<th>{{translateTitle(n)}}</th>
<td>
<input class="form-control" ng-model="n.data" ng-change="execFilters(_findScopeByKey('authParams'))" />
</td>
</tr>
</tbody>
</table>
<script type="text/javascript">
buttons=[
];
</script>

@ -50,14 +50,13 @@ var filterFunctions = {
else if (node.nodes[0].data == 'Multi' && n.id == 'multiParams') {
var nd = n._nodes ? n._nodes : n.nodes;
var sep = nd[2].data || ';';
var reg = new RegExp('(?:^|' + sep + ')(\w+)');
var s = nd[0].data + sep + nd[1].data;
var reg = new RegExp(sep + '\\s*(\\w+)', 'g');
var s = '' + (nd[0].data ? sep + nd[0].data : '') + (nd[1].data ? sep + nd[1].data : '');
while ((result = reg.exec(s)) !== null) {
p(result);
p(result[1]);
}
}
});
console.log(nToShow);
/* 2.2 Display modules */
node.nodes_cond.forEach(function(n) {
if (!all && nToShow.indexOf(n.id) == -1) {
@ -68,4 +67,4 @@ var filterFunctions = {
});
});
}
}
}

File diff suppressed because one or more lines are too long
Loading…
Cancel
Save