first commit symfony 6
This commit is contained in:
98
templates/Group/edit.html.twig
Executable file
98
templates/Group/edit.html.twig
Executable file
@ -0,0 +1,98 @@
|
||||
{% extends 'base.html.twig' %}
|
||||
|
||||
{% block body %}
|
||||
{{ form_start(form) }}
|
||||
<h1 class="page-header">
|
||||
{% if mode=="update" %}
|
||||
Modification Groupe = {{group.label}}
|
||||
{% elseif mode=="submit" %}
|
||||
Création Groupe
|
||||
{% endif %}
|
||||
</h1>
|
||||
|
||||
{{ form_widget(form.submit) }}
|
||||
<a class="btn btn-secondary" href={{ path('app_'~access~'_group') }}>Annuler</a>
|
||||
{% if mode=="update" %}
|
||||
<a class="btn btn-danger float-end" href={{ path('app_'~access~'_group_delete',{id:group.id}) }} data-method="delete" data-confirm="Êtes-vous sûr de vouloir supprimer cet enregistrement ?">Supprimer</a>
|
||||
{% endif %}
|
||||
|
||||
{% if app.session.flashbag.has('error') %}
|
||||
<div class='alert alert-danger' style='margin: 5px 0px'>
|
||||
<strong>Erreur</strong><br>
|
||||
{% for flashMessage in app.session.flashbag.get('error') %}
|
||||
{{ flashMessage }}<br>
|
||||
{% endfor %}
|
||||
</div>
|
||||
{% endif %}
|
||||
|
||||
{% if app.session.flashbag.has('notice') %}
|
||||
<div class='alert alert-info' style='margin: 5px 0px'>
|
||||
<strong>Information</strong><br>
|
||||
{% for flashMessage in app.session.flashbag.get('notice') %}
|
||||
{{ flashMessage }}<br>
|
||||
{% endfor %}
|
||||
</div>
|
||||
{% endif %}
|
||||
|
||||
<div class="card mt-4">
|
||||
<div class="card-header">
|
||||
<i class="fa fa-pencil-alt fa-fw"></i> Informations
|
||||
</div>
|
||||
|
||||
<div class="card-body">
|
||||
{{ form_row(form.label) }}
|
||||
<div class='alert alert-info' style='font-size: 80%;padding: 5px;margin-top:-2px; border-radius:0px 0px 0.25rem 0.25rem'>
|
||||
Caractères interdits = caractères spéciaux sauf ' @ . - _<br>
|
||||
</div>
|
||||
|
||||
{% if form.owner is defined %}
|
||||
{{ form_row(form.owner) }}
|
||||
{% endif %}
|
||||
|
||||
{% if form.isworkgroup is defined %}
|
||||
{{ form_row(form.isworkgroup) }}
|
||||
{% endif %}
|
||||
|
||||
<div id="blockisopen">
|
||||
{{ form_row(form.isopen) }}
|
||||
</div>
|
||||
|
||||
{{ form_row(form.description) }}
|
||||
|
||||
{% if form.ldapfilter is defined %}
|
||||
{{ form_row(form.fgassoc) }}
|
||||
{{ form_row(form.ldapfilter) }}
|
||||
{% endif %}
|
||||
|
||||
{% if form.attributes is defined %}
|
||||
{{ form_row(form.fgassoc) }}
|
||||
{{ form_row(form.attributes) }}
|
||||
{% endif %}
|
||||
|
||||
{% if form.email is defined %}
|
||||
{{ form_row(form.email) }}
|
||||
{% endif %}
|
||||
|
||||
</div>
|
||||
</div>
|
||||
{{ form_end(form) }}
|
||||
{% endblock %}
|
||||
|
||||
{% block localscript %}
|
||||
<script>
|
||||
$(document).ready(function() {
|
||||
showhide();
|
||||
});
|
||||
|
||||
$(document.body).on("change","#group_isworkgroup",function(){
|
||||
showhide();
|
||||
});
|
||||
|
||||
function showhide() {
|
||||
if($("#group_isworkgroup").val()==0) $("#blockisopen").hide();
|
||||
else $("#blockisopen").show();
|
||||
}
|
||||
</script>
|
||||
|
||||
{% endblock %}
|
||||
|
47
templates/Group/list.html.twig
Normal file
47
templates/Group/list.html.twig
Normal file
@ -0,0 +1,47 @@
|
||||
{% extends 'base.html.twig' %}
|
||||
|
||||
{% block body %}
|
||||
<h1 class="page-header">Gestion des Groupes </h1>
|
||||
|
||||
{%if access=="admin" %}
|
||||
<p><a class="btn btn-success" href={{ path('app_'~access~'_group_submit') }}>Ajouter</a></p>
|
||||
{%elseif access=="user" and app.session.get("submitgroup") %}
|
||||
<p><a class="btn btn-success" href={{ path('app_'~access~'_group_submit') }}>Ajouter</a></p>
|
||||
{% endif %}
|
||||
|
||||
<div class="card mt-4">
|
||||
<div class="card-header">
|
||||
<i class="fa fa-table fa-fw"></i> Liste des Groupes
|
||||
</div>
|
||||
|
||||
<div class="card-body">
|
||||
<table class="table table-striped table-bordered table-hover" id="dataTables" style="width:100%; font-size:11px;">
|
||||
<thead>
|
||||
<tr>
|
||||
<th width="70px" class="no-sort">Action</th>
|
||||
<th>Groupe</th>
|
||||
<th>Groupe de Travail</th>
|
||||
<th>Ouvert</th>
|
||||
<th>Propriétaire</th>
|
||||
</tr>
|
||||
</thead>
|
||||
</table>
|
||||
</div>
|
||||
</div>
|
||||
{% endblock %}
|
||||
|
||||
{% block localscript %}
|
||||
<script>
|
||||
$(document).ready(function() {
|
||||
$('#dataTables').DataTable({
|
||||
columnDefs: [ { "targets": 'no-sort', "orderable": false } ],
|
||||
responsive: true,
|
||||
iDisplayLength: 100,
|
||||
order: [[ 1, "asc" ]],
|
||||
processing: true,
|
||||
serverSide: true,
|
||||
ajax: "{{ path('app_'~access~'_group_tablelist') }}",
|
||||
});
|
||||
});
|
||||
</script>
|
||||
{% endblock %}
|
161
templates/Group/users.html.twig
Normal file
161
templates/Group/users.html.twig
Normal file
@ -0,0 +1,161 @@
|
||||
{% extends 'base.html.twig' %}
|
||||
|
||||
{% block body %}
|
||||
<h1 class="page-header">Membres du Groupe = {{ group.label }}</h1>
|
||||
<a class="btn btn-secondary" href={{ path('app_'~access~'_group') }}>Fermer</a>
|
||||
|
||||
<br><br>
|
||||
|
||||
<div class="row">
|
||||
<div class="col-sm-6">
|
||||
<div class="card">
|
||||
<div class="card-header">
|
||||
<i class="fa fa-table fa-fw"></i> Liste des Utilisateurs non affectés au groupe
|
||||
</div>
|
||||
|
||||
<div class="card-body">
|
||||
<div class="dataTable_wrapper">
|
||||
<table class="table table-striped table-bordered table-hover" id="dataTablesnotin" style="width:100%">
|
||||
<thead>
|
||||
<tr>
|
||||
<th width="70px" class="no-sort">Action</th>
|
||||
<th width="70px" class="no-sort">Avatar</th>
|
||||
<th width="200px">Login</th>
|
||||
<th>Email</th>
|
||||
{% if group.isworkgroup %}
|
||||
<th class="no-sort no-visible">Permissions</th>
|
||||
{% endif %}
|
||||
</tr>
|
||||
</thead>
|
||||
</table>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="col-sm-6">
|
||||
<div class="card">
|
||||
<div class="card-header">
|
||||
<i class="fa fa-table fa-fw"></i> Liste des Utilisateurs affectés au groupe
|
||||
</div>
|
||||
|
||||
<div class="card-body">
|
||||
<div class="dataTable_wrapper">
|
||||
<table class="table table-striped table-bordered table-hover" id="dataTablesin" style="width:100%">
|
||||
<thead>
|
||||
<tr>
|
||||
<th width="70px" class="no-sort">Action</th>
|
||||
<th width="70px" class="no-sort">Avatar</th>
|
||||
<th width="200px">Login</th>
|
||||
<th>Email</th>
|
||||
{% if group.isworkgroup %}
|
||||
<th class="no-sort">Permissions</th>
|
||||
{% endif %}
|
||||
</tr>
|
||||
</thead>
|
||||
</table>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
{% endblock %}
|
||||
|
||||
{% block localscript %}
|
||||
|
||||
<script>
|
||||
$(document).ready(function() {
|
||||
$('#dataTablesnotin').DataTable({
|
||||
columnDefs: [ { "targets": 'no-sort', "orderable": false },{ "targets": 'no-visible', "visible": false } ],
|
||||
responsive: true,
|
||||
iDisplayLength: 100,
|
||||
order: [[ 2, "asc" ]],
|
||||
processing: true,
|
||||
serverSide: true,
|
||||
ajax: "{{ path('app_'~access~'_group_usersnotin',{'id':group.id}) }}",
|
||||
});
|
||||
|
||||
$('#dataTablesin').DataTable({
|
||||
columnDefs: [ { "targets": 'no-sort', "orderable": false },{ "targets": 'no-visible', "visible": false } ],
|
||||
responsive: true,
|
||||
iDisplayLength: 100,
|
||||
order: [[ 2, "asc" ]],
|
||||
processing: true,
|
||||
serverSide: true,
|
||||
ajax: {
|
||||
"url": "{{ path('app_'~access~'_group_usersin',{'id':group.id}) }}",
|
||||
"data": function ( d ) {
|
||||
return $.extend( {}, d, {
|
||||
"isworkgroup": "{{ group.isworkgroup }}"
|
||||
});
|
||||
}
|
||||
},
|
||||
});
|
||||
|
||||
|
||||
});
|
||||
|
||||
function addUsers(userid) {
|
||||
url="{{ path('app_'~access~'_group_usergroup_add',{userid:"xxx",groupid:group.id}) }}";
|
||||
url=url.replace("xxx",userid);
|
||||
|
||||
$.ajax({
|
||||
rowId: 2,
|
||||
method: "POST",
|
||||
url: url,
|
||||
success: function(data, dataType)
|
||||
{
|
||||
var row=$("#dataTablesnotin").DataTable().row("#user"+userid);
|
||||
data=row.data();
|
||||
var rowNode = row.node();
|
||||
|
||||
$("#dataTablesin").DataTable().row.add(data).draw();
|
||||
row.remove().draw();
|
||||
},
|
||||
|
||||
error: function(XMLHttpRequest, textStatus, errorThrown)
|
||||
{
|
||||
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
function delUsers(userid) {
|
||||
url="{{ path('app_'~access~'_group_usergroup_del',{userid:"xxx",groupid:group.id}) }}";
|
||||
url=url.replace("xxx",userid);
|
||||
|
||||
$.ajax({
|
||||
rowId: 2,
|
||||
method: "POST",
|
||||
url: url,
|
||||
data: "userid="+userid+"&groupid="+{{ group.id }},
|
||||
success: function(data, dataType)
|
||||
{
|
||||
var row=$("#dataTablesin").DataTable().row("#user"+userid);
|
||||
var rowNode = row.node();
|
||||
row.remove().draw();
|
||||
|
||||
$("#dataTablesnotin").DataTable().row.add(rowNode).draw();
|
||||
},
|
||||
|
||||
error: function(XMLHttpRequest, textStatus, errorThrown)
|
||||
{
|
||||
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
function changeRole(userid) {
|
||||
url="{{ path('app_'~access~'_group_usergroup_changerole',{userid:"xxx",groupid:group.id,roleid:"yyy"}) }}";
|
||||
url=url.replace("xxx",userid);
|
||||
url=url.replace("yyy",$("#roleuser-"+userid).val());
|
||||
|
||||
$.ajax({
|
||||
method: "POST",
|
||||
url: url,
|
||||
});
|
||||
|
||||
}
|
||||
|
||||
</script>
|
||||
{% endblock %}
|
Reference in New Issue
Block a user