forked from Deuxfleurs/guichet
222 lines
7.2 KiB
HTML
222 lines
7.2 KiB
HTML
{{define "title"}}Explorateur LDAP |{{end}}
|
|
|
|
{{define "body"}}
|
|
|
|
<div class="d-flex">
|
|
<h4>LDAP-Explorer</h4>
|
|
<a class="ml-auto btn btn-info" href="/">Main Menu</a>
|
|
</div>
|
|
|
|
<div class="mt-4">
|
|
<nav aria-label="breadcrumb">
|
|
<ol class="breadcrumb">
|
|
{{range .Path}}
|
|
{{if .Active}}
|
|
<li class="breadcrumb-item active" aria-current="page">{{.Identifier}}</li>
|
|
{{else}}
|
|
<li class="breadcrumb-item"><a href="/admin/ldap/{{.DN}}">{{.Identifier}}</a></li>
|
|
{{end}}
|
|
{{end}}
|
|
</ol>
|
|
</nav>
|
|
</div>
|
|
|
|
<table class="table mt-4">
|
|
<tbody>
|
|
{{range .Children}}
|
|
<tr>
|
|
<td>
|
|
<a href="/admin/ldap/{{.DN}}">
|
|
{{.Identifier}}
|
|
</a>
|
|
</td>
|
|
<td>{{.Name}}</td>
|
|
</tr>
|
|
{{end}}
|
|
</tbody>
|
|
</table>
|
|
|
|
{{if .CanAddChild}}
|
|
<div class="mt-2">
|
|
<a class="btn btn-sm btn-success" href="/admin/create/user/{{.DN}}">+user</a>
|
|
<a class="ml-4 btn btn-sm btn-success" href="/admin/create/group/{{.DN}}">+group</a>
|
|
<a class="ml-4 btn btn-sm btn-success" href="/admin/create/ou/{{.DN}}">+ou</a>
|
|
<a class="ml-4 btn btn-sm btn-success" href="/admin/create/generic/{{.DN}}">+object</a>
|
|
</div>
|
|
<hr class="mt-4" />
|
|
{{end}}
|
|
|
|
{{if .Success}}
|
|
<div class="alert alert-success mt-2">Modifications have been saved.</div>
|
|
{{end}}
|
|
{{if .Error}}
|
|
<div class="alert alert-danger mt-2">
|
|
Impossible to execute the requested change.
|
|
<div style="font-size: 0.8em">{{.Error}}</div>
|
|
</div>
|
|
{{end}}
|
|
|
|
<h5>Attributes</h5>
|
|
<div class="container">
|
|
{{range $key, $value := .Props}}
|
|
{{if $value.Editable}}
|
|
<div class="row mt-4">
|
|
<div class="col-md-3"><strong>{{$value.Name}}</strong></div>
|
|
|
|
<div class="col-md-7">
|
|
<form method="POST">
|
|
<div class="form-row">
|
|
<input type="hidden" name="action" value="modify" />
|
|
<input type="hidden" name="attr" value="{{$key}}" />
|
|
<textarea name="values" rows="{{len $value.Values}}" class="form-control col-md-9">{{range $i, $x := $value.Values}}{{if $i}}{{"\n"}}{{end}}{{$x}}{{end}}</textarea>
|
|
<div class="col-md-3">
|
|
<input type="submit" value="Modifier" class="form-control btn btn-primary" />
|
|
</div>
|
|
</div>
|
|
</form>
|
|
</div>
|
|
|
|
<div class="col-md-1">
|
|
{{if $value.Deletable}}
|
|
<form method="POST" onsubmit="return confirm('Do you really want to delete this attribute ?');">
|
|
<input type="hidden" name="action" value="delete" />
|
|
<input type="hidden" name="attr" value="{{$key}}" />
|
|
<input type="submit" value="Suppr." class="form-control btn btn-danger btn-sm" />
|
|
</form>
|
|
{{end}}
|
|
</div>
|
|
</div>
|
|
{{end}}
|
|
{{end}}
|
|
{{range $key, $value := .Props}}
|
|
{{if not $value.Editable}}
|
|
<div class="row mt-4">
|
|
<div class="col-md-3"><strong>{{$key}}</strong></div>
|
|
<div class="col-md-9">
|
|
{{range $value.Values}}
|
|
<div>{{.}}</div>
|
|
{{end}}
|
|
</div>
|
|
</div>
|
|
{{end}}
|
|
{{end}}
|
|
<form method="POST">
|
|
<div class="row mt-4">
|
|
<div class="col-md-3">
|
|
<input type="hidden" name="action" value="add" />
|
|
<input class="form-control" type="text" name="attr" placeholder="Add an attribute..." />
|
|
</div>
|
|
<div class="col-md-7">
|
|
<div class="form-row">
|
|
<textarea name="values" placeholder="Value(s)..." rows="2" class="form-control col-md-9"></textarea>
|
|
<div class="col-md-3">
|
|
<input type="submit" value="Ajouter" class="form-control btn btn-success" />
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</form>
|
|
</div>
|
|
|
|
{{if .HasMembers}}
|
|
<hr class="mt-4" />
|
|
<h5 class="mt-4">Members</h5>
|
|
<div class="container">
|
|
{{range .Members}}
|
|
<div class="row mt-4">
|
|
<div class="col-md-3">
|
|
<strong>{{.Name}}</strong>
|
|
</div>
|
|
<div class="col-md-5">
|
|
<a href="/admin/ldap/{{.DN}}">{{.DN}}</a>
|
|
</div>
|
|
<div class="col-md-2">
|
|
<form method="POST" onsubmit="return confirm('Remove from Group ?');">
|
|
<input type="hidden" name="action" value="delete-member" />
|
|
<input type="hidden" name="member" value="{{.DN}}" />
|
|
<input type="submit" value="Supprimer" class="form-control btn btn-danger btn-sm" />
|
|
</form>
|
|
</div>
|
|
</div>
|
|
{{end}}
|
|
<form method="POST">
|
|
<input type="hidden" name="action" value="add" />
|
|
<input type="hidden" name="attr" value="member" />
|
|
<div class="row mt-4">
|
|
<div class="col-md-3"><strong>Add to Group :</strong>
|
|
</div>
|
|
<div class="col-md-5">
|
|
<input class="form-control" type="text" list="users" name="values" placeholder="User..." />
|
|
<datalist id="users">
|
|
{{range .PossibleNewMembers}}
|
|
<option value="{{.DN}}">{{.Name}}</option>
|
|
{{end}}
|
|
</datalist>
|
|
</div>
|
|
<div class="col-md-2">
|
|
<input type="submit" value="Add" class="form-control btn btn-success btn-sm" />
|
|
</div>
|
|
</form>
|
|
</div>
|
|
{{end}}
|
|
|
|
{{if .HasGroups}}
|
|
<hr class="mt-4" />
|
|
<h5 class="mt-4">Member of</h5>
|
|
<div class="container">
|
|
{{range .Groups}}
|
|
<div class="row mt-4">
|
|
<div class="col-md-3">
|
|
<strong>{{.Name}}</strong>
|
|
</div>
|
|
<div class="col-md-5">
|
|
<a href="/admin/ldap/{{.DN}}">{{.DN}}</a>
|
|
</div>
|
|
<div class="col-md-2">
|
|
<form method="POST" onsubmit="return confirm('Delete from Group ?');">
|
|
<input type="hidden" name="action" value="delete-from-group" />
|
|
<input type="hidden" name="group" value="{{.DN}}" />
|
|
<input type="submit" value="Supprimer" class="form-control btn btn-danger btn-sm" />
|
|
</form>
|
|
</div>
|
|
</div>
|
|
{{end}}
|
|
<form method="POST">
|
|
<input type="hidden" name="action" value="add-to-group" />
|
|
<div class="row mt-4">
|
|
<div class="col-md-3"><strong>New group :</strong>
|
|
</div>
|
|
<div class="col-md-5">
|
|
<input class="form-control" list="groups" type="text" name="group" placeholder="Group..." />
|
|
<datalist id="groups">
|
|
{{range .PossibleNewGroups}}
|
|
<option value="{{.DN}}">{{.Name}}</option>
|
|
{{end}}
|
|
</datalist>
|
|
</div>
|
|
<div class="col-md-2">
|
|
<input type="submit" value="Add" class="form-control btn btn-success btn-sm" />
|
|
</div>
|
|
</form>
|
|
</div>
|
|
{{end}}
|
|
|
|
{{if .CanDelete}}
|
|
<hr class="mt-4">
|
|
<h5 class="mt-4">Delete the Object</h5>
|
|
<div class="alert alert-danger">
|
|
Attention, this action is irreversible !
|
|
</div>
|
|
<form method="POST" onsubmit="return confirm('Do you REALLY want to delete this object forever ?');">
|
|
<div class="form-row">
|
|
<input type="hidden" name="action" value="delete-object" />
|
|
<div class="col-sm-5"></div>
|
|
<input type="submit" value="DELETE" class="form-control btn btn-danger col-sm-2" />
|
|
<div class="col-sm-5"></div>
|
|
</div>
|
|
</form>
|
|
{{end}}
|
|
|
|
<hr class="mt-4" />
|
|
|
|
{{end}}
|