V-Beta-1.0.0

Vision is out of alpha !
This commit is contained in:
Xbird
2022-02-02 17:46:29 +01:00
parent 797bf35b47
commit 9f22f5b1ee
2297 changed files with 278438 additions and 76 deletions

View File

@@ -0,0 +1,5 @@
{% if currentPath != path('admin_group_view', {'id': group.id}) %}
<a href="{{ path('admin_group_view', {'id': group.id}) }}" class="btn btn-primary btn-sm" data-bs-toggle="tooltip" data-placement="top" title="{% trans %}tooltip_view{% endtrans %}"><i class="far fa-eye"></i></a>
{% endif %}
<a href="{{ path('admin_group_edit', {'id': group.id}) }}" class="btn btn-success btn-sm" data-bs-toggle="tooltip" data-placement="top" title="{% trans %}tooltip_edit{% endtrans %}"><i class="far fa-edit"></i></a>
<a href="{{ path('admin_group_delete', {'id': group.id}) }}" class="btn btn-danger btn-sm" data-bs-toggle="tooltip" data-placement="top" title="{% trans %}tooltip_delete{% endtrans %}" onclick="return confirm('{% trans %}confirm_ok_delete{% endtrans %}')"><i class="fa fa-trash"></i></a>

View File

@@ -0,0 +1,3 @@
<a href="{{ path('admin_logs_view', {'filename': filename}) }}" class="btn btn-success btn-sm mx-1" data-bs-toggle="tooltip" data-placement="top" title="{% trans %}tooltip_view{% endtrans %}"><i class="fas fa-eye"></i></a>
<a href="{{ path('admin_logs_download', {'filename': filename}) }}" target="_blank" class="btn btn-info btn-sm mx-1" data-bs-toggle="tooltip" data-placement="top" title="{% trans %}tooltip_download{% endtrans %}"><i class="fas fa-file-download"></i></a>
<a href="{{ path('admin_logs_delete', {'filename': filename}) }}" class="btn btn-danger btn-sm" data-bs-toggle="tooltip" data-placement="top" title="{% trans %}tooltip_delete{% endtrans %}" onclick="return confirm('{% trans %}confirm_ok_delete{% endtrans %}')"><i class="fa fa-trash"></i></a>

View File

@@ -0,0 +1,6 @@
{% if currentPath != path('admin_group_rank_view', {'id': rank.id}) %}
<a href="{{ path('admin_group_rank_view', {'id': rank.id}) }}" class="btn btn-primary btn-sm" data-bs-toggle="tooltip" data-placement="top" title="{% trans %}tooltip_view{% endtrans %}"><i class="far fa-eye"></i></a>
{% endif %}
<a href="{{ path('admin_group_rank_edit', {'id': rank.id}) }}" class="btn btn-success btn-sm" data-bs-toggle="tooltip" data-placement="top" title="{% trans %}tooltip_edit{% endtrans %}"><i class="far fa-edit"></i></a>
<a href="{{ path('admin_group_rank_delete', {'id': rank.id}) }}" class="btn btn-danger btn-sm" data-bs-toggle="tooltip" data-placement="top" title="{% trans %}tooltip_delete{% endtrans %}" onclick="return confirm('{% trans %}confirm_ok_delete{% endtrans %}')"><i class="fa fa-trash"></i></a>
<a href="{{ path('admin_group_rank_copy', {'id': rank.id}) }}" class="btn btn-info btn-sm" data-bs-toggle="tooltip" data-placement="top" title="{% trans %}tooltip_copy{% endtrans %}"><i class="fas fa-copy"></i></a>

View File

@@ -0,0 +1,5 @@
{% if currentPath != path('admin_group_subgroup_view', {'id': subgroup.id}) %}
<a href="{{ path('admin_group_subgroup_view', {'id': subgroup.id}) }}" class="btn btn-primary btn-sm" data-bs-toggle="tooltip" data-placement="top" title="{% trans %}tooltip_view{% endtrans %}"><i class="far fa-eye"></i></a>
{% endif %}
<a href="{{ path('admin_group_subgroup_edit', {'id': subgroup.id}) }}" class="btn btn-success btn-sm" data-bs-toggle="tooltip" data-placement="top" title="{% trans %}tooltip_edit{% endtrans %}"><i class="far fa-edit"></i></a>
<a href="{{ path('admin_group_subgroup_delete', {'id': subgroup.id}) }}" class="btn btn-danger btn-sm" data-bs-toggle="tooltip" data-placement="top" title="{% trans %}tooltip_delete{% endtrans %}" onclick="return confirm('{% trans %}confirm_ok_delete{% endtrans %}')"><i class="fa fa-trash"></i></a>

View File

@@ -0,0 +1,10 @@
{% if currentPath != path('admin_user_view', {'id': user.id}) %}
<a href="{{ path('admin_user_view', {'id': user.id}) }}" class="btn btn-primary btn-sm" data-bs-toggle="tooltip" data-placement="top" title="{% trans %}tooltip_view{% endtrans %}"><i class="far fa-eye"></i></a>
{% endif %}
<a href="{{ path('admin_user_edit', {'id': user.id}) }}" class="btn btn-success btn-sm" data-bs-toggle="tooltip" data-placement="top" title="{% trans %}tooltip_edit{% endtrans %}"><i class="far fa-edit"></i></a>
{% if user.isDesactivated %}
<a href="{{ path('admin_user_disable', {'id': user.id}) }}" class="btn btn-warning btn-sm" data-bs-toggle="tooltip" data-placement="top" title="{% trans %}tooltip_user_enable{% endtrans %}"><i class="fas fa-user-check"></i></a>
{% else %}
<a href="{{ path('admin_user_disable', {'id': user.id}) }}" class="btn btn-danger btn-sm" data-bs-toggle="tooltip" data-placement="top" title="{% trans %}tooltip_user_disable{% endtrans %}"><i class="fas fa-user-times"></i></a>
{% endif %}
<a href="{{ path('home', { _want_to_be_this_user: user.email }) }}" class="btn btn-info btn-sm" data-bs-toggle="tooltip" data-placement="top" title="{% trans %}tooltip_become_user{% endtrans %}"><i class="fas fa-user-secret"></i></a>

View File

@@ -0,0 +1,14 @@
<ul class="list-group list-group-flush">
<li class="list-group-item list-group-item-dark">{% trans %}title_full_name{% endtrans %} : {{user.fullName}}</li>
<li class="list-group-item list-group-item-dark">{% trans %}title_email{% endtrans %} : <span class="hidethis">{{user.email}}</span></li>
<li class="list-group-item list-group-item-dark">{% trans %}title_roles{% endtrans %} : {% for r in user.roles %}[ {{ r }} ] {% endfor %}</li>
<li class="list-group-item list-group-item-dark">{% trans %}title_group{% endtrans %} : {{user.mainGroup ? user.mainGroup.name : 'value_no_group'|trans}}</li>
<li class="list-group-item list-group-item-dark">{% trans %}title_rank{% endtrans %} : {{user.mainRank ? user.mainRank.name : 'value_no_group'|trans}}</li>
<li class="list-group-item list-group-item-dark">{% trans %}title_subgroups{% endtrans %} : {% if user.subGroups %}
{% for sg in user.subGroups %}{{ sg.name}}{% if loop.last == false %}, {% endif %}{% endfor %}
{% else %}{{'value_no_subgroups'|trans}}{% endif %}</li>
<li class="list-group-item list-group-item-dark">{% trans %}title_verified{% endtrans %} : {{user.isVerified ? 'value_yes'|trans : 'value_no'|trans }}</li>
<li class="list-group-item list-group-item-dark">{% trans %}title_desactivated{% endtrans %} : {{user.isDesactivated ? 'value_yes'|trans : 'No'}}</li>
<li class="list-group-item list-group-item-dark">{% trans %}title_created_at{% endtrans %} : {{user.createdAt |date('_datetime.format'|trans)}}</li>
<li class="list-group-item list-group-item-dark">{% trans %}title_admin_mode{% endtrans %} : {{user.adminMode ? 'value_yes'|trans : 'value_no'|trans }}</li>
</ul>

View File

@@ -0,0 +1,41 @@
<div class="table-responsive">
<table class="table table-dark table-striped">
<thead>
<tr>
<th scope="col">#</th>
{% if noemail is not defined %}
<th scope="col">{% trans %}title_email{% endtrans %}</th>
{% endif %}
<th scope="col">{% trans %}title_full_name{% endtrans %}</th>
<th scope="col">{% trans %}title_group{% endtrans %}</th>
<th scope="col">{% trans %}title_verified{% endtrans %}</th>
<th scope="col">{% trans %}title_created_at{% endtrans %}</th>
{% if noaction is not defined %}
<th scope="col">{% trans %}title_actions{% endtrans %}</th>
{% endif %}
</tr>
</thead>
<tbody>
{% for i in users %}
<tr>
<th scope="row">{{i.id}}</th>
{% if noemail is not defined %}
<td><span class="hidethis">{{i.email}}</span></td>
{% endif %}
<td>
{{ i.fullName }} {% if 'ROLE_ADMIN' in i.roles %}<span class="text-warning">({% trans %}title_user_admin{% endtrans %})</span>{% endif %}
{% if i.isDesactivated %}<span class="text-danger">({% trans %}title_desactivated{% endtrans %})</span>{% endif %}
</td>
<td>{{i.mainGroup ? i.mainGroup.shortName : 'value_no_group'|trans}}, {{i.mainRank ? i.mainRank.shortName : 'value_no_rank'|trans}}</td>
<td>{{i.isVerified ? 'value_yes'|trans : 'value_no'|trans}}</td>
<td>{{i.createdAt |date('_datetime.format'|trans)}}</td>
{% if noaction is not defined %}
<td>
{% include '_cells/adminUserActions.html.twig' with {'user': i} %}
</td>
{% endif %}
</tr>
{% endfor %}
</tbody>
</table>
</div>

View File

@@ -0,0 +1,6 @@
{% if is_granted('edit', comment) %}
<a href="{{ path('comment_edit', {'id': comment.id}) }}" class="btn btn-success btn-sm" data-bs-toggle="tooltip" data-placement="top" title="{% trans %}tooltip_edit{% endtrans %}"><i class="far fa-edit"></i></a>
{% endif %}
{% if is_granted('delete', comment) %}
<a href="{{ path('comment_delete', {'id': comment.id}) }}" class="btn btn-danger btn-sm" data-bs-toggle="tooltip" data-placement="top" title="{% trans %}tooltip_delete{% endtrans %}" onclick="return confirm('{% trans %}confirm_ok_delete{% endtrans %}')"><i class="fa fa-trash"></i></a>
{% endif %}

View File

@@ -0,0 +1,50 @@
{% if currentPath != path('directory_view', {'id': directory.id}) and noview is not defined %}
<a href="{{ path('directory_view', {'id': directory.id}) }}" class="btn btn-primary btn-sm" data-bs-toggle="tooltip" data-placement="top" title="{% trans %}tooltip_view{% endtrans %}"><i class="far fa-eye"></i></a>
{% endif %}
{% if is_granted('edit', directory) and noedit is not defined %}
<a href="{{ path('directory_edit', {'id': directory.id}) }}" class="btn btn-success btn-sm" data-bs-toggle="tooltip" data-placement="top" title="{% trans %}tooltip_edit{% endtrans %}"><i class="far fa-edit"></i></a>
{% endif %}
{% if is_granted('delete', directory) and nodelete is not defined %}
<a href="{{ path('directory_delete', {'id': directory.id}) }}" class="btn btn-danger btn-sm" data-bs-toggle="tooltip" data-placement="top" title="{% trans %}tooltip_delete{% endtrans %}" onclick="return confirm('{% trans %}confirm_ok_delete{% endtrans %}')"><i class="fa fa-trash"></i></a>
{% endif %}
{% if currentPath == path('directory_view', {'id': directory.id}) and noview is not defined %}
{% if is_granted('merge', directory) and nodelete is not defined %}
<span data-bs-toggle="tooltip" data-placement="top" title="{% trans %}tooltip_merge{% endtrans %}">
<button type="button" class="btn btn-info btn-sm" data-bs-toggle="modal" data-bs-target="#combinedirectorymodal" ><i class="fas fa-compress"></i></button>
</span>
{% endif %}
{% endif %}
{% if addtofolder is defined %}
<a href="{{ path('folder_directory_add', {'id': addtofolder, 'Directory': directory.id}) }}" class="btn btn-success btn-sm" data-bs-toggle="tooltip" data-placement="top" title="{% trans %}tooltip_add_to_folder{% endtrans %}"><i class="fas fa-folder-plus"></i></a>
{% endif %}
{% if removefromfolder is defined %}
<a href="{{ path('folder_directory_remove', {'id': removefromfolder, 'Directory': directory.id}) }}" class="btn btn-danger btn-sm" data-bs-toggle="tooltip" data-placement="top" title="{% trans %}tooltip_remove_from_folder{% endtrans %}" onclick="return confirm('{% trans %}confirm_ok_remove_from_folder{% endtrans %}')"><i class="fas fa-folder-minus"></i></a>
{% endif %}
{% if is_granted('merge', directory) and nodelete is not defined %}
<!-- Modal -->
<div class="modal fade" id="combinedirectorymodal" tabindex="-1" role="dialog" aria-labelledby="combinedirectorymodalLabel" aria-hidden="true">
<div class="modal-dialog modal-dialog-centered" role="document">
<form method="POST" action="{{ path('directory_merge_router') }}">
<div class="modal-content">
<div class="modal-header">
<h5 class="modal-title" id="combinedirectorymodalLabel">{% trans %}title_merge_directory{% endtrans %}</h5>
<button type="button" class="btn-close" data-bs-dismiss="modal" aria-label="Close"></button>
</div>
<div class="modal-body">
<div class="form-group">
<label for="recipient-name" class="col-form-label">{% trans %}title_form_id_merge_into{% endtrans %} :</label>
<input type="text" class="form-control" id="directory-main" name="directory-main" placeholder="1...." />
<input type="hidden" value="{{ directory.id }}" id="directory-child" name="directory-child" />
</div>
</div>
<div class="modal-footer">
<button type="button" class="btn btn-secondary" data-bs-dismiss="modal">{% trans %}button_cancel{% endtrans %}</button>
<button type="submit" class="btn btn-primary">{% trans %}button_ok{% endtrans %}</button>
</div>
</div>
</form>
</div>
</div>
{% endif %}

View File

@@ -0,0 +1,78 @@
<div class="card user-card user-card-1">
<div class="card-header">{{ directory.fullname}} <span class="float-end">{% include '_cells/directoryActions.html.twig' with {'directory': directory} %}</span></div>
<div class="card-body pb-0">
{% if directory.dead %}<p class="text-danger">{% trans %}title_directory_dead{% endtrans %}</p>{% endif %}
{% if directory.wanted %}<p class="text-danger">{% trans %}title_directory_wanted{% endtrans %}</p>{% endif %}
<div class="row">
{% set path_directories_uploads = 'uploads/directories' %}
{% if directory.faceImageSize != 0 %}{% set faceImage = path_directories_uploads ~ '/' ~ directory.faceImageName %}{% else %}{% set faceImage = 'img/nophoto.jpg' %}{% endif %}
<div class="col-2">
<a data-toggle="lightbox" data-gallery="directory" data-bs-toggle="tooltip" data-placement="top" title="{% trans %}title_faceImage{% endtrans %}: {{ directory.faceImageDate ? directory.faceImageDate|date('_datetime.format'|trans) : 'value_no_picture'|trans }}" data-caption="{{ directory.fullname}} | {% trans %}title_faceImage{% endtrans %}: {{ directory.faceImageDate ? directory.faceImageDate|date('_datetime.format'|trans) : 'value_no_picture'|trans }}" href="{{ asset(faceImage) }}"><img class="img-fluid m-1 wid-80 directory-picture-card" src="{{ asset(faceImage) }}" alt="{{ directory.fullname}}"></a>
</div>
{% if directory.backImageSize != 0 %}{% set backImage = path_directories_uploads ~ '/' ~ directory.backImageName %}{% else %}{% set backImage = 'img/nophoto.jpg' %}{% endif %}
<div class="col-2">
<a data-toggle="lightbox" data-gallery="directory" data-bs-toggle="tooltip" data-placement="top" title="{% trans %}title_backImage{% endtrans %}: {{ directory.backImageDate ? directory.backImageDate|date('_datetime.format'|trans) : 'value_no_picture'|trans }}" data-caption="{{ directory.fullname}} | {% trans %}title_backImage{% endtrans %}: {{ directory.backImageDate ? directory.backImageDate|date('_datetime.format'|trans) : 'value_no_picture'|trans }}" href="{{ asset(backImage) }}"><img class="img-fluid m-1 wid-80 directory-picture-card" src="{{ asset(backImage) }}" alt="{{ directory.fullname}}"></a>
</div>
{% if directory.rightImageSize != 0 %}{% set rightImage = path_directories_uploads ~ '/' ~ directory.rightImageName %}{% else %}{% set rightImage = 'img/nophoto.jpg' %}{% endif %}
<div class="col-2">
<a data-toggle="lightbox" data-gallery="directory" data-bs-toggle="tooltip" data-placement="top" title="{% trans %}title_rightImage{% endtrans %}: {{ directory.rightImageDate ? directory.rightImageDate|date('_datetime.format'|trans) : 'value_no_picture'|trans }}" data-caption="{{ directory.fullname}} | {% trans %}title_rightImage{% endtrans %}: {{ directory.rightImageDate ? directory.rightImageDate|date('_datetime.format'|trans) : 'value_no_picture'|trans }}" href="{{ asset(rightImage) }}"><img class="img-fluid m-1 wid-80 directory-picture-card" src="{{ asset(rightImage) }}" alt="{{ directory.fullname}}"></a>
</div>
{% if directory.leftImageSize != 0 %}{% set leftImage = path_directories_uploads ~ '/' ~ directory.leftImageName %}{% else %}{% set leftImage = 'img/nophoto.jpg' %}{% endif %}
<div class="col-2">
<a data-toggle="lightbox" data-gallery="directory" data-bs-toggle="tooltip" data-placement="top" title="{% trans %}title_leftImage{% endtrans %}: {{ directory.leftImageDate ? directory.leftImageDate|date('_datetime.format'|trans) : 'value_no_picture'|trans }}" data-caption="{{ directory.fullname}} | {% trans %}title_leftImage{% endtrans %}: {{ directory.leftImageDate ? directory.leftImageDate|date('_datetime.format'|trans) : 'value_no_photo'|trans }}" href="{{ asset(leftImage) }}"><img class="img-fluid m-1 wid-80 directory-picture-card" src="{{ asset(leftImage) }}" alt="{{ directory.fullname}}"></a>
</div>
{% if directory.idCardImageSize != 0 %}
<div class="col-2">
<a data-toggle="lightbox" data-gallery="directory" href="{{ asset(path_directories_uploads ~ '/' ~ directory.idCardImageName) }}"><img class="img-fluid m-1 wid-80 directory-picture-card" src="{{ asset(path_directories_uploads ~ '/' ~ directory.idCardImageName) }}" alt="{% trans %}tooltip_id_card{% endtrans %}"></a>
</div>
{% endif %}
{% if app.user.hasPermission('general_legal_view') %}
{% if directory.carLicenceImageSize != 0 %}
<div class="col-2">
<a data-toggle="lightbox" data-gallery="directory" href="{{ asset(path_directories_uploads ~ '/' ~ directory.carLicenceImageName) }}"><img class="img-fluid m-1 wid-80 directory-picture-card" src="{{ asset(path_directories_uploads ~ '/' ~ directory.carLicenceImageName) }}" alt="{% trans %}tooltip_car_licence{% endtrans %}"></a>
</div>
{% endif %}
{% if directory.motorcycleLicenceImageSize != 0 %}
<div class="col-2">
<a data-toggle="lightbox" data-gallery="directory" href="{{ asset(path_directories_uploads ~ '/' ~ directory.motorcycleLicenceImageName) }}"><img class="img-fluid m-1 wid-80 directory-picture-card" src="{{ asset(path_directories_uploads ~ '/' ~ directory.motorcycleLicenceImageName) }}" alt="{% trans %}tooltip_motorcycle_licence{% endtrans %}"></a>
</div>
{% endif %}
{% if directory.truckLicenceImageSize != 0 %}
<div class="col-2">
<a data-toggle="lightbox" data-gallery="directory" href="{{ asset(path_directories_uploads ~ '/' ~ directory.truckLicenceImageName) }}"><img class="img-fluid m-1 wid-80 directory-picture-card" src="{{ asset(path_directories_uploads ~ '/' ~ directory.truckLicenceImageName) }}" alt="{% trans %}tooltip_truck_licence{% endtrans %}"></a>
</div>
{% endif %}
{% if directory.boatLicenceImageSize != 0 %}
<div class="col-2">
<a data-toggle="lightbox" data-gallery="directory" href="{{ asset(path_directories_uploads ~ '/' ~ directory.boatLicenceImageName) }}"><img class="img-fluid m-1 wid-80 directory-picture-card" src="{{ asset(path_directories_uploads ~ '/' ~ directory.boatLicenceImageName) }}" alt="{% trans %}tooltip_boat_licence{% endtrans %}"></a>
</div>
{% endif %}
{% endif %}
</div>
<ul class="list-group list-group-flush fa-ul">
<li class="list-group-item"><span class="fa-li"><i class="fas fa-birthday-cake"></i></span>{% trans %}title_birthdate{% endtrans %} : {{ directory.birthdate ? directory.birthdate | date("d/m/Y") : 'value_no_value'|trans }}{% if directory.dead %}, {% trans %}title_dead{% endtrans %}{% endif %}</li>
<li class="list-group-item"><span class="fa-li"><i class="fas fa-phone"></i></span>{% trans %}title_phone{% endtrans %} : {{ directory.phone | default('value_no_value'|trans) }}</li>
<li class="list-group-item"><span class="fa-li"><i class="fas fa-transgender-alt"></i></span>{% trans %}title_gender{% endtrans %} : {{ directory.gender | default('value_no_value'|trans) }}</li>
<li class="list-group-item"><span class="fa-li"><i class="fas fa-arrows-alt-v"></i></span>{% trans %}title_height{% endtrans %} : {{ directory.height | default('value_no_value'|trans) }}</li>
<li class="list-group-item"><span class="fa-li"><i class="fas fa-weight"></i></span>{% trans %}title_weight{% endtrans %} : {{ directory.weight | default('value_no_value'|trans) }}</li>
{% if app.user.hasPermission('general_legal_view') %}
<li class="list-group-item"><span class="fa-li"><i class="fas fa-wheelchair"></i></span>Groupe associé : {% if directory.gang %} <a href="{{ path('document_view', {id: directory.gang.id}) }}">{{ directory.gang.title }}</a> {% endif %}</li>
{% if directory.wanted %}
<li class="list-group-item text-danger"><span class="fa-li"><i class="far fa-id-badge"></i></span>{% trans %}title_directory_wanted_light{% endtrans %} : {{ directory.wantedReason | default('value_no_value'|trans) }}</li>
{% endif %}
{% endif %}
</ul>
<div class="card">
<div class="card-header"><i class="fas fa-home"></i> {% trans %}title_address{% endtrans %}</div>
<div class="card-body">
{{ directory.address | default('value_no_value'|trans) | raw }}
</div>
</div>
</div>
</div>
{% if app.user.hasPermission('general_medical_view') %}
{% include '_cells/directoryCardMedical.html.twig' with {'directory': directory} %}
{% endif %}

View File

@@ -0,0 +1,38 @@
<div class="card user-card user-card-1">
<div class="card-header">{% trans %}title_medical_informations{% endtrans %}
{% if is_granted('edit', directory) %}
<span class="float-end">
<a href="{{ path('directory_edit', {'id': directory.id}) }}" class="btn btn-success btn-sm" data-bs-toggle="tooltip" data-placement="top" title="{% trans %}tooltip_edit_medical{% endtrans %}"><i class="far fa-edit"></i></a>
</span>
{% endif %}</div>
<div class="card-body pb-0">
<div class=" mb-2 p-2 border">
<p>{% trans %}title_medical_family_history{% endtrans %}</p><hr>
{{ directory.medicalFamilyHistory | raw }}
</div>
<div class=" mb-2 p-2 border">
<p>{% trans %}title_medical_history{% endtrans %}</p><hr>
{{ directory.medicalHistory | raw }}
</div>
<div class=" mb-2 p-2 border">
<p>{% trans %}title_medical_allergies{% endtrans %}</p><hr>
{{ directory.medicalAllergies | raw }}
</div>
<div class=" mb-2 p-2 border">
<p>{% trans %}title_medical_blood{% endtrans %}</p><hr>
{{ directory.medicalBloodGroup | raw }}
</div>
<div class=" mb-2 p-2 border">
<p>{% trans %}title_medical_drugs{% endtrans %}</p><hr>
{{ directory.medicalDrugs | raw }}
</div>
<div class=" mb-2 p-2 border">
<p>{% trans %}title_medical_alcohol{% endtrans %}</p><hr>
{{ directory.medicalAlcohol | raw }}
</div>
<div class=" mb-2 p-2 border">
<p>{% trans %}title_medical_treatment{% endtrans %}</p><hr>
{{ directory.medicalTreatment | raw }}
</div>
</div>
</div>

View File

@@ -0,0 +1,39 @@
{% if directories|length > 0 %}
<div class="table-responsive">
<table class="table table-dark table-striped">
<thead>
<tr>
<th scope="col">{% trans %}title_full_name{% endtrans %}</th>
{% if date is not defined %}<th scope="col">{% trans %}title_informations{% endtrans %}</th>{% endif %}
{% if noaction is not defined %}
<th scope="col">{% trans %}title_actions{% endtrans %}</th>
{% endif %}
</tr>
</thead>
<tbody>
{% for i in directories %}
<tr>
<td>
<a href="{{ path('directory_view', {'id': i.id}) }}" data-bs-toggle="tooltip" data-placement="top" title="{% trans %}tooltip_view{% endtrans %}"># {{i.id}} - {{i.fullName}}{% if i.dead %}, {% trans %}title_dead{% endtrans %}{% endif %}</a>
{% if i.wanted %}<p class="text-danger">{% trans %}title_directory_wanted_light{% endtrans %}</p>{% endif %}
</td>
<td>
<ul>
{% if nogender is not defined %}<li>{% trans %}title_gender{% endtrans %}: {{i.gender}}</li>{% endif %}
{% if nophone is not defined %}<li>{% trans %}title_phone{% endtrans %}: {{i.phone}}</li>{% endif %}
{% if nodate is not defined %}<li>{% trans %}title_created_at{% endtrans %}: {{i.createdAt |date('_datetime.format'|trans)}}</li>{% endif %}
</ul>
</td>
{% if noaction is not defined %}
<td>
{% include '_cells/directoryActions.html.twig' with {'directory': i} %}
</td>
{% endif %}
</tr>
{% endfor %}
</tbody>
</table>
</div>
{% else %}
<p>{% trans %}no_data{% endtrans %}</p>
{% endif %}

View File

@@ -0,0 +1,27 @@
{% if is_granted('view', document) %}
{% if currentPath != path('document_view', {'id': document.id}) and noview is not defined %}
<a href="{{ path('document_view', {'id': document.id}) }}" class="btn btn-primary btn-sm" data-bs-toggle="tooltip" data-placement="top" title="{% trans %}tooltip_view{% endtrans %}"><i class="far fa-eye"></i></a>
{% endif %}
{% if is_granted('edit', document) and noedit is not defined %}
<a href="{{ path('document_edit', {'id': document.id}) }}" class="btn btn-success btn-sm" data-bs-toggle="tooltip" data-placement="top" title="{% trans %}tooltip_edit{% endtrans %}"><i class="far fa-edit"></i></a>
{% endif %}
{% if is_granted('delete', document) and nodelete is not defined %}
<a href="{{ path('document_delete', {'id': document.id}) }}" class="btn btn-danger btn-sm" data-bs-toggle="tooltip" data-placement="top" title="{% trans %}tooltip_delete{% endtrans %}" onclick="return confirm('{% trans %}confirm_ok_delete{% endtrans %}')"><i class="fa fa-trash"></i></a>
{% endif %}
{% if document.allowShare and noshare is not defined %}
<a href="{{ path('share', {'share': document.share}) }}" class="btn btn-info btn-sm" data-bs-toggle="tooltip" data-placement="top" title="{% trans %}tooltip_share_link{% endtrans %}" target="_blank"><i class="fa fa-link"></i></a>
{% endif %}
{% if is_granted('archive', document) and noarchive is not defined %}
<a href="{{ path('document_archive', {'id': document.id}) }}" class="btn btn-{% if document.archive %}danger{% else %}info{% endif %} btn-sm" data-bs-toggle="tooltip" data-placement="top" title="{% if document.archive %}{% trans %}tooltip_unarchive{% endtrans %}{% else %}{% trans %}tooltip_archive{% endtrans %}{% endif %}" onclick="return confirm('Are you ok to {% if document.archive %}un{% endif %}archive this ?')"><i class="fas fa-archive"></i></a>
{% endif %}
{% if addtofolder is defined %}
<a href="{{ path('folder_document_add', {'id': addtofolder, 'Document': document.id}) }}" class="btn btn-success btn-sm" data-bs-toggle="tooltip" data-placement="top" title="{% trans %}tooltip_add_to_folder{% endtrans %}"><i class="fas fa-folder-plus"></i></a>
{% endif %}
{% if removefromfolder is defined %}
<a href="{{ path('folder_document_remove', {'id': removefromfolder, 'Document': document.id}) }}" class="btn btn-danger btn-sm" data-bs-toggle="tooltip" data-placement="top" title="{% trans %}tooltip_remove_from_folder{% endtrans %}" onclick="return confirm('{% trans %}confirm_ok_remove_from_folder{% endtrans %}')"><i class="fas fa-folder-minus"></i></a>
{% endif %}
{% else %}
<span class="text-danger"><i class="fas fa-eye-slash"></i></span>
{% endif %}

View File

@@ -0,0 +1,122 @@
{% if documents[0].directory is not defined %}{% set nodirectorylink = true %}{% endif %}
{% set slicelimit = (limit is defined)? limit : null %}
{% set counter = 0 %}
{% if documents|length > 0 %}
<div class="table-responsive">
<table class="table table-dark table-striped table-hover align-middle">
<thead>
<tr>
{% if noicon is not defined and notype is not defined %}
<th scope="col">
{% if notype is not defined %}
{% trans %}title_type{% endtrans %}
{% endif %}
</th>
{% endif %}
<th scope="col">{% trans %}title_title{% endtrans %}</th>
<th scope="col">{% if noauthor is not defined %}{% trans %}title_author{% endtrans %} / {% endif %}{% trans %}title_date{% endtrans %}</th>
{% if noaction is not defined %}
<th scope="col">{% trans %}title_actions{% endtrans %}</th>
{% endif %}
</tr>
</thead>
<tbody>
{% for i in documents |slice(0, slicelimit) %}
{% set counter = counter + 1 %}
<tr>
{% if noicon is not defined and notype is not defined %}
<td>
{% if noicon is not defined %}
{% set groupLogo = 'img/nologo.png' %}
{% if i.mainGroup %}
{% if i.mainGroup.imageSize != 0 %}
{% set groupLogo = 'uploads/groups/' ~ i.mainGroup.imageName %}
{% endif %}
{% endif %}
<img src="{{ asset(groupLogo) }}" alt="{{ i.mainGroup.name }} " class="img-icon">
{% endif %}
{% if notype is not defined %}
{{ ("documentType_" ~ i.classShort)|trans }}<br /><small>N°: #{{i.id}}</small>
{% endif %}
</td>
{% endif %}
<td>
<a href="{{ path('document_view', {'id': i.id}) }}" class="text-{{ (i.archive)? 'danger' : 'primary' }}" {% if i.archive %} data-bs-toggle="tooltip" data-placement="top" title="{% trans %}tooltip_archived{% endtrans %}" {% endif %} >`{{i.title | u.truncate(20, '...')}}`</a>
{% if notype is defined %}
<br /><small>N°: #{{i.id}}</small>
{% endif %}
{% if i.status is defined %}
<br /><small>{% trans %}title_status{% endtrans %}:</small>
<small>{{ i.status|trans }}</small>
{% endif %}
{% if i.removingDate is defined %}
<br /><small>{% trans %}title_can_be_removed_at{% endtrans %}:</small>
<small class="text-{% if date(i.removingDate) < date() %}danger{% endif %}{% if date(i.removingDate) == date() %}warning{% endif %}{% if date(i.removingDate) > date() %}success{% endif %}">{{ i.removingDate|date('_datetime.format'|trans) }}</small>
{% endif %}
{% if i.type is defined and i.type is not null %}
<br /><small>{% trans %}title_type{% endtrans %}:</small>
<small>{{ i.type|trans }}</small>
{% endif %}
{% if i.numberplate is defined and i.numberplate is not null %}
<br /><small>{% trans %}title_numberplate{% endtrans %}:</small>
<small>{{ i.numberplate }}</small>
{% endif %}
{% if i.directory is defined and nodirectoryinfo is not defined %}
<br /><small>{% trans %}title_directory{% endtrans %}:</small>
<small><a href="{{ path('directory_view', {'id': i.directory.id}) }}" >{{ i.directory.firstname | u.truncate(2, '.')}} {{ i.directory.lastname }} {% if i.directory.dead %}, {% trans %}title_dead{% endtrans %}{% endif %}</a></small>
{% endif %}
{% if i.user is defined %}
<br /><small>{% trans %}title_user{% endtrans %}:</small>
<small><a href="{{ path('user_view', {'id': i.user.id}) }}" >{{ i.user.firstname | u.truncate(2, '.')}} {{ i.user.lastname }}</a></small>
{% endif %}
{% if i.article is defined %}
<br /><small>{% trans %}title_article{% endtrans %}:</small>
<small data-bs-toggle="tooltip" data-placement="top" title="{{ i.article }}">{{ i.article| u.truncate(10, '...') }}</small>
{% endif %}
{% if i.amountMoney is defined %}
<br /><small>{% trans %}title_amount{% endtrans %}:</small>
<small>{{ i.amountMoney ? i.amountMoney ~ ' ' ~'currency_symbol'|trans :'value_no_value'|trans }}</small>
{% endif %}
{% if i.amountTime is defined %}
<br /><small>{% trans %}title_hours{% endtrans %}:</small>
<small>{{ i.amountTime ? i.amountTime ~ ' h' :'value_no_value'|trans}}</small>
{% endif %}
{% if i.accessorySentence is defined and i.accessorySentence is not null %}
<br /><small data-bs-toggle="tooltip" data-placement="top" title="{{ i.accessorySentence|striptags }}">{% trans %}title_accessorySentence{% endtrans %} : {{ 'value_yes'|trans}}</small>
{% endif %}
</td>
<td>
{% if noauthor is not defined %}
<a href="{{ path('user_view', {'id': i.creator.id }) }}" >{{i.creator.firstname | u.truncate(2, '.')}} {{i.creator.lastname}}, {{i.creator.mainGroup ? i.creator.mainGroup.shortname : 'value_no_group'|trans}}</a><br />
{% endif %}
{{i.createdAt |date('_datetime.format'|trans)}}
</td>
{% if noaction is not defined %}
<td>
{% include '_cells/documentActions.html.twig' with {'document': i} %}
</td>
{% endif %}
</tr>
{% endfor %}
</tbody>
</table>
</div>
{% if slicelimit is not null and documents|length > slicelimit %}
<div class="row my-2">
<div class="col">
{% if nodirectorylink is not defined %}
<a class="btn btn-primary btn-sm" href="{{ path('document_list', {'type': documents[0].classShort, 'directory': documents[0].directory.id}) }}">{% trans %}button_view_more{% endtrans %}</a>
{% else %}
<a class="btn btn-primary btn-sm" href="{{ path('document_list', {'type': documents[0].classShort}) }}">{% trans %}button_view_more{% endtrans %}</a>
{% endif %}
</div>
</div>
{% endif %}
{% else %}
<p>{% trans %}no_data{% endtrans %}</p>
{% endif %}

View File

@@ -0,0 +1,48 @@
<h5>{% trans %}title_order_from_last_old{% endtrans %}</h5>
<hr>
{% for i in history %}
<div class="row border m-2">
<div class="col-md-8">
<p class="text-info">{{ ('history_' ~ i.action)|trans }} : {{ i.loggedAt |date('_datetime.format'|trans) }}
{% if i.username %}
{% trans %}title_author{% endtrans %}: {% if '@' in i.username and app.user.adminmode == false %} {% trans %}hided_email{% endtrans %} {% else %} {{ i.username }} {% endif %}
{% else %}
{% trans %}title_noauthor{% endtrans %}
{% endif %}
</p>
{% if notype is not defined %}
<p>{{ i.objectClass }} (# {{ i.objectId }})</p>
{% endif %}
<p>{{ ('title_data_' ~ i.action)|trans }}</p>
<div class="table-responsive">
<table class="table table-dark table-striped table-bordered">
<thead>
<tr>
<th scope="col">{% trans %}title_field{% endtrans %}</th>
<th scope="col">{% trans %}title_value{% endtrans %}</th>
</tr>
</thead>
{% for field, value in i.data %}
<tr>
<td>
{{ ('form_label_' ~ field)|trans }}
</td>
<td>
{% if value is iterable %}
{% for x, y in value %}
{{ x }} : {% if y is iterable %}{'iterable_value'|trans }}{% else %}{{ y }}{% endif %}
{% endfor %}
{% elseif value.timestamp is defined %}
{{ value|date('_datetime.format'|trans) }}
{% else %}
{{ value? value|raw : 'value_no_value'|trans }}
{% endif %}
</td>
</tr>
{% endfor %}
</table>
</div>
</div>
</div>
{% endfor %}

View File

@@ -0,0 +1,4 @@
{% if i.readed == false %}
<a href="{{ path('notification_markread', {'id': notification.id}) }}" class="btn btn-success btn-sm" data-bs-toggle="tooltip" data-placement="top" title="{% trans %}tooltip_markread{% endtrans %}"><i class="fas fa-check"></i></a>
{% endif %}
<a href="{{ path('notification_delete', {'id': notification.id}) }}" class="btn btn-danger btn-sm" data-bs-toggle="tooltip" data-placement="top" title="{% trans %}tooltip_delete{% endtrans %}" onclick="return confirm('{% trans %}confirm_ok_delete{% endtrans %}')"><i class="fa fa-trash"></i></a>

View File

@@ -0,0 +1,33 @@
{% if notifications|length > 0 %}
<div class="table-responsive">
<table class="table table-dark table-striped">
<thead>
<tr>
<th scope="col">{% if nosender is not defined %}{% trans %}title_sender{% endtrans %} / {% endif %}{% trans %}title_date{% endtrans %}</th>
<th scope="col">{% trans %}title_notification{% endtrans %}</th>
{% if noaction is not defined %}<th>{% trans %}title_actions{% endtrans %}</th>{% endif %}
</tr>
</thead>
<tbody>
{% for i in notifications %}
<tr>
<th scope="row">
{% if nosender is not defined %}
<a href="{{ path('user_view', {'id': i.sender.id }) }}" >{{i.sender.firstname | u.truncate(2, '.')}} {{i.sender.lastname}}, {{i.sender.mainGroup ? i.sender.mainGroup.shortname : 'value_no_group'|trans}}</a><br />
{% endif %}
{{i.createdAt |date('_datetime.format'|trans)}}
</th>
<td>{{ i.content|raw }}</td>
{% if noaction is not defined %}
<td>
{% include '_cells/notificationActions.html.twig' with {'notification': i} %}
</td>
{% endif %}
</tr>
{% endfor %}
</tbody>
</table>
</div>
{% else %}
<p>{% trans %}no_data{% endtrans %}</p>
{% endif %}

View File

@@ -0,0 +1,12 @@
{% if currentPath != path('user_view', {'id': user.id}) %}
<a href="{{ path('user_view', {'id': user.id}) }}" class="btn btn-primary btn-sm" data-bs-toggle="tooltip" data-placement="top" title="{% trans %}tooltip_view{% endtrans %}"><i class="far fa-eye"></i></a>
{% endif %}
{% if is_granted('fire', user.mainGroup) and nofire is not defined %}
<a href="{{ path('group_fire', {'id': user.id}) }}" class="btn btn-danger btn-sm" data-bs-toggle="tooltip" data-placement="top" title="{% trans %}tooltip_fire{% endtrans %}"><i class="fas fa-user-slash"></i></a>
{% endif %}
{% if is_granted('employee', user.mainGroup) and noemployee is not defined %}
<a href="{{ path('group_employee', {'id': user.id}) }}" class="btn btn-success btn-sm" data-bs-toggle="tooltip" data-placement="top" title="{% trans %}tooltip_employee{% endtrans %}"><i class="fas fa-user-cog"></i></a>
{% endif %}
{% if is_granted('sanction', user.mainGroup) and nosanction is not defined %}
<a href="{{ path('document_create_user', {type: 'sanction', user: user.id}) }}" class="btn btn-warning btn-sm" data-bs-toggle="tooltip" data-placement="top" title="{% trans %}tooltip_sanction{% endtrans %}"><i class="fas fa-user-times"></i></a>
{% endif %}

View File

@@ -0,0 +1,10 @@
<ul class="list-group list-group-flush">
<li class="list-group-item list-group-item-dark">{% trans %}title_full_name{% endtrans %} : <a href="{{ path('user_view', {'id': user.id}) }}">{{user.fullName}}</a></li>
<li class="list-group-item list-group-item-dark">{% trans %}title_group{% endtrans %} : {{user.mainGroup ? user.mainGroup.name : 'value_no_group'|trans }}</li>
<li class="list-group-item list-group-item-dark">{% trans %}title_rank{% endtrans %} : {{user.mainRank ? user.mainRank.name : 'value_no_rank'|trans}}</li>
<li class="list-group-item list-group-item-dark">{% trans %}title_subgroups{% endtrans %} : {% if user.subGroups %}
{% for sg in user.subGroups %}{{ sg.name}}{% if loop.last == false %}, {% endif %}{% endfor %}
{% else %}{{'value_no_subgroups'|trans}}{% endif %}</li>
<li class="list-group-item list-group-item-dark">{% trans %}title_phone{% endtrans %} : {{user.phone ? user.phone : 'value_no_value'|trans}}</li>
<li class="list-group-item list-group-item-dark">{% trans %}title_created_at{% endtrans %} : {{user.createdAt |date('_datetime.format'|trans)}}</li>
</ul>

View File

@@ -0,0 +1,22 @@
<div class="table-responsive">
<table class="table table-dark table-striped">
<thead>
<tr>
<th scope="col">{% trans %}title_full_name{% endtrans %}</th>
<th scope="col">{% trans %}title_group{% endtrans %} / {% trans %}title_rank{% endtrans %}</th>
<th scope="col">{% trans %}title_actions{% endtrans %}</th>
</tr>
</thead>
<tbody>
{% for i in users %}
<tr>
<td>{{ i.fullName }}<br><small>{% trans %}title_phone{% endtrans %}: {{i.phone ? i.phone : 'value_no_value'|trans}}</small></td>
<td>{{i.mainGroup ? i.mainGroup.shortName : 'value_no_group'|trans}}<br><small>{{i.mainRank ? i.mainRank.name : 'value_no_rank'|trans}}</small></td>
<td>
{% include '_cells/userActions.html.twig' with {'user': i} %}
</td>
</tr>
{% endfor %}
</tbody>
</table>
</div>

View File

@@ -0,0 +1,129 @@
<!doctype html>
<html>
<head>
<meta name="viewport" content="width=device-width">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Vision</title>
<style>
@media only screen and (max-width: 620px) {
table[class=body] h1 {
font-size: 28px !important;
margin-bottom: 10px !important;
}
table[class=body] p,
table[class=body] ul,
table[class=body] ol,
table[class=body] td,
table[class=body] span,
table[class=body] a {
font-size: 16px !important;
}
table[class=body] .wrapper,
table[class=body] .article {
padding: 10px !important;
}
table[class=body] .content {
padding: 0 !important;
}
table[class=body] .container {
padding: 0 !important;
width: 100% !important;
}
table[class=body] .main {
border-left-width: 0 !important;
border-radius: 0 !important;
border-right-width: 0 !important;
}
table[class=body] .btn table {
width: 100% !important;
}
table[class=body] .btn a {
width: 100% !important;
}
table[class=body] .img-responsive {
height: auto !important;
max-width: 100% !important;
width: auto !important;
}
}
@media all {
.ExternalClass {
width: 100%;
}
.ExternalClass,
.ExternalClass p,
.ExternalClass span,
.ExternalClass font,
.ExternalClass td,
.ExternalClass div {
line-height: 100%;
}
.apple-link a {
color: inherit !important;
font-family: inherit !important;
font-size: inherit !important;
font-weight: inherit !important;
line-height: inherit !important;
text-decoration: none !important;
}
#MessageViewBody a {
color: inherit;
text-decoration: none;
font-size: inherit;
font-family: inherit;
font-weight: inherit;
line-height: inherit;
}
.btn-primary table td:hover {
background-color: #34495e !important;
}
.btn-primary a:hover {
background-color: #34495e !important;
border-color: #34495e !important;
}
}
</style>
</head>
<body class="" style="background-color: #f6f6f6; font-family: sans-serif; -webkit-font-smoothing: antialiased; font-size: 14px; line-height: 1.4; margin: 0; padding: 0; -ms-text-size-adjust: 100%; -webkit-text-size-adjust: 100%;">
<h1 align="center">{% trans %}email_template_title{% endtrans %}</h1>
<table border="0" cellpadding="0" cellspacing="0" class="body" style="border-collapse: separate; mso-table-lspace: 0pt; mso-table-rspace: 0pt; width: 100%; background-color: #f6f6f6;">
<tr>
<td style="font-family: sans-serif; font-size: 14px; vertical-align: top;">&nbsp;</td>
<td class="container" style="font-family: sans-serif; font-size: 14px; vertical-align: top; display: block; Margin: 0 auto; max-width: 580px; padding: 10px; width: 580px;">
<div class="content" style="box-sizing: border-box; display: block; Margin: 0 auto; max-width: 580px; padding: 10px;">
<!-- START CENTERED WHITE CONTAINER -->
<span class="preheader" style="color: transparent; display: none; height: 0; max-height: 0; max-width: 0; opacity: 0; overflow: hidden; mso-hide: all; visibility: hidden; width: 0;">{% trans %}email_template_subtitle{% endtrans %}</span>
<table class="main" style="border-collapse: separate; mso-table-lspace: 0pt; mso-table-rspace: 0pt; width: 100%; background: #ffffff; border-radius: 3px;">
<!-- START MAIN CONTENT AREA -->
<tr>
<td class="wrapper" style="font-family: sans-serif; font-size: 14px; vertical-align: top; box-sizing: border-box; padding: 20px;">
{% block emailcontent %}{% endblock %}
</td>
</tr>
<!-- END MAIN CONTENT AREA -->
</table>
<!-- START FOOTER -->
<div class="footer" style="clear: both; Margin-top: 10px; text-align: center; width: 100%;">
<table border="0" cellpadding="0" cellspacing="0" style="border-collapse: separate; mso-table-lspace: 0pt; mso-table-rspace: 0pt; width: 100%;">
<tr>
<td class="content-block" style="font-family: sans-serif; vertical-align: top; padding-bottom: 10px; padding-top: 10px; font-size: 12px; color: #999999; text-align: center;">
<span class="apple-link" style="text-decoration: underline;color: #999999; font-size: 12px; text-align: center;">{% trans %}email_template_title_send_from{% endtrans %} <a href="{{ url('home') }}">{{ url('home') }}</a></span>
</td>
</tr>
</table>
</div>
<!-- END FOOTER -->
<!-- END CENTERED WHITE CONTAINER -->
</div>
</td>
<td style="font-family: sans-serif; font-size: 14px; vertical-align: top;">&nbsp;</td>
</tr>
</table>
</body>
</html>

View File

@@ -0,0 +1,14 @@
{% extends '_emails/_template.html.twig' %}
{% block emailcontent %}
<h1>{% trans %}email_title_confirm_email{% endtrans %}</h1>
<p>
{% trans %}email_text_confirm_by_clicking{% endtrans %}: <br><br>
<a href="{{ signedUrl }}">{% trans %}email_link_confirm_my_email{% endtrans %}</a>.
{% trans %}email_text_link_expire_in{% endtrans %} {{ expiresAtMessageKey|trans(expiresAtMessageData, 'VerifyEmailBundle') }}.
</p>
<p>
{% trans %}cheers{% endtrans %} !
</p>
{% endblock %}

View File

@@ -0,0 +1,12 @@
{% extends '_emails/_template.html.twig' %}
{% block emailcontent %}
<h1>{% trans %}hi{% endtrans %}</h1>
<p>{% trans %}email_text_confirm_by_clicking{% endtrans %}</p>
<a href="{{ url('app_reset_password', {token: resetToken.token}) }}">{{ url('app_reset_password', {token: resetToken.token}) }}</a>
<p>{% trans %}email_text_link_expire_in{% endtrans %} {{ resetToken.expirationMessageKey|trans(resetToken.expirationMessageData, 'ResetPasswordBundle') }}.</p>
<p>{% trans %}cheers{% endtrans %} !</p>
{% endblock %}

View File

@@ -0,0 +1 @@
<a href="{{ path('user_view', {id: sender.id}) }}">{{ sender.fullname }}</a> {{ 'commented_your'|trans }} {{ ("documentType_" ~ document.getClassShort)|trans }} <a href="{{ path('document_view', {id: document.id}) }}">{{ document.title }}</a>

View File

@@ -0,0 +1 @@
<a href="{{ path('user_view', {id: sender.id}) }}">{{ sender.fullname }}</a> {{ 'removed_your'|trans }} {{ 'comment'|trans }} {{ 'on'|trans }} {{ ("documentType_" ~ document.getClassShort)|trans }} <a href="{{ path('document_view', {id: document.id}) }}">{{ document.title }}</a>

View File

@@ -0,0 +1 @@
<a href="{{ path('user_view', {id: sender.id}) }}">{{ sender.fullname }}</a> {{ 'edited_your'|trans }} {{ 'comment'|trans }} {{ 'on'|trans }} {{ ("documentType_" ~ document.getClassShort)|trans }} <a href="{{ path('document_view', {id: document.id}) }}">{{ document.title }}</a>

View File

@@ -0,0 +1 @@
<a href="{{ path('user_view', {id: sender.id}) }}">{{ sender.fullname }}</a> {{ 'removed_your'|trans }} {{ ("documentType_" ~ document.getClassShort)|trans }} {{ document.title }}

View File

@@ -0,0 +1 @@
<a href="{{ path('user_view', {id: sender.id}) }}">{{ sender.fullname }}</a> {{ 'edited_your'|trans }} {{ ("documentType_" ~ document.getClassShort)|trans }} <a href="{{ path('document_view', {id: document.id}) }}">{{ document.title }}</a>

View File

@@ -0,0 +1,42 @@
{% extends 'base.html.twig' %}
{% block title %}{% trans %}title_group_list{% endtrans %}{% endblock %}
{% block subtitle %}{% trans %}title_group_list{% endtrans %} <a href="{{ path('admin_group_add') }}"><span class="badge rounded-pill bg-success"><i class="fa fa-plus"></i> {% trans %}button_create{% endtrans %}</span></a>{% endblock %}
{% block body %}
<div class="row">
<div class="col-5">{{ form(searchForm) }}</div>
</div>
<div class="row">
<div class="col-md-8">
<table class="table table-dark table-striped">
<thead>
<tr>
<th scope="col">#</th>
<th scope="col">{% trans %}title_icon{% endtrans %}</th>
<th scope="col">{% trans %}title_name{% endtrans %}</th>
<th scope="col">{% trans %}title_created_at{% endtrans %}</th>
<th scope="col">{% trans %}title_actions{% endtrans %}</th>
</tr>
</thead>
<tbody>
{% for i in pagination %}
{% set groupLogo = 'img/nologo.png' %}
{% if i.imageSize != 0 %} {% set groupLogo = 'uploads/groups/' ~ i.imageName %} {% endif %}
<tr>
<th scope="row">{{i.id}}</th>
<td><img src="{{ asset(groupLogo) }}" alt="{{i.shortname}}" class="img-icon"></td>
<td>{{ i.name }}</td>
<td>{{i.createdAt |date('_datetime.format'|trans)}}</td>
<td>
{% include '_cells/adminGroupActions.html.twig' with {'group': i} %}
</td>
</tr>
{% endfor %}
</tbody>
</table>
</div>
</div>
<div class="row">{{ knp_pagination_render(pagination) }}</div>
{% endblock %}

View File

@@ -0,0 +1,11 @@
{% extends 'base.html.twig' %}
{% block title %}{% trans %}title_group_creation{% endtrans %}{% endblock %}
{% block body %}
<div class="row">
<div class="col-lg-6">
{{form(form)}}
</div>
</div>
{% endblock %}

View File

@@ -0,0 +1,36 @@
{% extends 'base.html.twig' %}
{% block title %}{% trans %}title_group_view_documents{% endtrans %}{% endblock %}
{% block body %}
{% set groupLogo = 'img/nologo.png' %}
{% if group.imageSize != 0 %}
{% set groupLogo = 'uploads/groups/' ~ group.imageName %}
{% endif %}
<div class="row">
<div class="col-12 col-md-5">{{form(searchForm)}}</div>
</div>
<div class="row">
<div class="col-md-8">
<h2>{% trans %}title_documents{% endtrans %}</h2>
<hr>
{% include '_cells/documentTable.html.twig' with {'documents': pagination} %}
</div>
<div class="col-md-4">
<h2>{% trans %}title_informations{% endtrans %}</h2>
<div class="row">
<div class="col-md-12 my-5">
<div class="text-center">
<img src="{{ asset(groupLogo) }}" alt="{{group.shortname}}" class="img-fluid">
</div>
<h3>{{group.name}}</h3>
<h4>{% trans %}title_shortname{% endtrans %}: <small>{{group.shortname}}</small><span class="float-end">{% include '_cells/adminGroupActions.html.twig' with {'group': group} %}</span></h4>
</div>
</div>
</div>
</div>
<div class="row">{{ knp_pagination_render(pagination) }}</div>
{% endblock %}

View File

@@ -0,0 +1,29 @@
{% extends 'base.html.twig' %}
{% block title %}{% trans %}title_group_edition{% endtrans %}{% endblock %}
{% block body %}
{% set groupLogo = 'img/nologo.png' %}
{% if group.imageSize != 0 %}
{% set groupLogo = 'uploads/groups/' ~ group.imageName %}
{% endif %}
<div class="row">
<div class="col-lg-6">
{{form(form)}}
</div>
<div class="col-lg-6">
<div class="card">
<div class="card-header">{% trans %}form_label_group_logo{% endtrans%}</div>
<div class="card-body">
<p class="card-text">
<a data-toggle="lightbox" href="{{ asset(groupLogo) }}">
<img class="img-fluid" src="{{ asset(groupLogo) }}" alt="{{ group.name}}">
</a>
</p>
</div>
</div>
</div>
</div>
{% endblock %}

View File

@@ -0,0 +1,11 @@
{% extends 'base.html.twig' %}
{% block title %}{% trans %}title_group_rank_creation{% endtrans %}{% endblock %}
{% block body %}
<div class="row">
<div class="col-lg-6">
{{form(form)}}
</div>
</div>
{% endblock %}

View File

@@ -0,0 +1,11 @@
{% extends 'base.html.twig' %}
{% block title %}{% trans %}title_group_rank_edition{% endtrans %}{% endblock %}
{% block body %}
<div class="row">
<div class="col-lg-6">
{{form(form)}}
</div>
</div>
{% endblock %}

View File

@@ -0,0 +1,22 @@
{% extends 'base.html.twig' %}
{% block title %}{% trans %}title_group_rank_view{% endtrans %}{% endblock %}
{% block body %}
<div class="row">
<div class="col-lg-6">
<h2>{% trans %}title_rank{% endtrans %}: {{rank.name}} {% include '_cells/adminRankActions.html.twig' with {'rank': rank} %}</h2>
<hr>
<h3>{% trans %}title_members{% endtrans %}</h3>
<hr>
{% include '_cells/adminUserTable.html.twig' with {'users': rank.users} %}
</div>
<div class="col-lg-6">
<h3>{% trans %}title_permissions{% endtrans %}</h3>
<hr>
{% for i in rank.permissions %}
<p>{{i}}</p>
{% endfor %}
</div>
</div>
{% endblock %}

View File

@@ -0,0 +1,11 @@
{% extends 'base.html.twig' %}
{% block title %}{% trans %}title_group_subgroup_creation{% endtrans %}{% endblock %}
{% block body %}
<div class="row">
<div class="col-lg-6">
{{form(form)}}
</div>
</div>
{% endblock %}

View File

@@ -0,0 +1,11 @@
{% extends 'base.html.twig' %}
{% block title %}{% trans %}title_group_subgroup_edition{% endtrans %}{% endblock %}
{% block body %}
<div class="row">
<div class="col-lg-6">
{{form(form)}}
</div>
</div>
{% endblock %}

View File

@@ -0,0 +1,15 @@
{% extends 'base.html.twig' %}
{% block title %}{% trans %}title_group_subgroup_view{% endtrans %}{% endblock %}
{% block body %}
<div class="row">
<div class="col-lg-6">
<h2>{% trans %}title_subgroup{% endtrans %}: {{subgroup.name}} {% include '_cells/adminSubGroupActions.html.twig' with {'subgroup': subgroup} %}</h2>
<hr>
<h3>{% trans %}title_members{% endtrans %}</h3>
<hr>
{% include '_cells/adminUserTable.html.twig' with {'users': subgroup.users} %}
</div>
</div>
{% endblock %}

View File

@@ -0,0 +1,101 @@
{% extends 'base.html.twig' %}
{% block title %}{% trans %}title_group_view{% endtrans %}{% endblock %}
{% block body %}
{% set groupLogo = 'img/nologo.png' %}
{% if group.imageSize != 0 %}
{% set groupLogo = 'uploads/groups/' ~ group.imageName %}
{% endif %}
<div class="row">
<div class="col-md-8">
<h2>{% trans %}title_group_ranks{% endtrans %} <a href="{{ path('admin_group_rank_add', {id: group.id}) }}"><span class="badge rounded-pill bg-success"><i class="fa fa-plus"></i> {% trans %}button_create{% endtrans %}</span></a></h2>
<hr>
<table class="table table-dark table-striped">
<thead>
<tr>
<th scope="col">#</th>
<th scope="col">{% trans %}title_name{% endtrans %}</th>
<th scope="col">{% trans %}title_shortname{% endtrans %}</th>
<th scope="col">{% trans %}title_power{% endtrans %}</th>
<th scope="col">{% trans %}title_created_at{% endtrans %}</th>
<th scope="col">{% trans %}title_actions{% endtrans %}</th>
</tr>
</thead>
<tbody>
{% for i in group.ranks %}
<tr>
<th scope="row">{{i.id}}</th>
<td>{{ i.name }}</td>
<td>{{ i.shortname }}</td>
<td>{{ i.power }}</td>
<td>{{i.createdAt |date('_datetime.format'|trans)}}</td>
<td>
{% include '_cells/adminRankActions.html.twig' with {'rank': i} %}
</td>
</tr>
{% endfor %}
</tbody>
</table>
<h2>{% trans %}title_group_subgroups{% endtrans %} <a href="{{ path('admin_group_subgroup_add', {id: group.id}) }}"><span class="badge rounded-pill bg-success"><i class="fa fa-plus"></i> {% trans %}button_create{% endtrans %}</span></a></h2>
<hr>
<table class="table table-dark table-striped">
<thead>
<tr>
<th scope="col">#</th>
<th scope="col">{% trans %}title_name{% endtrans %}</th>
<th scope="col">{% trans %}title_shortname{% endtrans %}</th>
<th scope="col">{% trans %}title_created_at{% endtrans %}</th>
<th scope="col">{% trans %}title_actions{% endtrans %}</th>
</tr>
</thead>
<tbody>
{% for i in group.subGroups %}
<tr>
<th scope="row">{{i.id}}</th>
<td>{{ i.name }}</td>
<td>{{ i.shortname }}</td>
<td>{{i.createdAt |date('_datetime.format'|trans)}}</td>
<td>
{% include '_cells/adminSubGroupActions.html.twig' with {'subgroup': i} %}
</td>
</tr>
{% endfor %}
</tbody>
</table>
<h2>{% trans %}title_members{% endtrans %}</h2>
<hr>
{% include '_cells/adminUserTable.html.twig' with {'users': group.users} %}
<h2>{% trans %}title_documents{% endtrans %}</h2>
<hr>
<a href="{{ path('admin_group_documents', {id: group.id}) }}" class="btn btn-primary">{{ 'button_group_view_documents'|trans }}</a>
</div>
<div class="col-md-4">
<h2>{% trans %}title_informations{% endtrans %}</h2>
<div class="row">
<div class="col-md-12 my-5">
<div class="text-center">
<img src="{{ asset(groupLogo) }}" alt="{{group.shortname}}" class="img-fluid">
</div>
<h3>{{group.name}}</h3>
<h4>{% trans %}title_shortname{% endtrans %}: <small>{{group.shortname}}</small><span class="float-end">{% include '_cells/adminGroupActions.html.twig' with {'group': group} %}</span></h4>
</div>
<div class="col-md-12">
<h6>{% trans %}title_motd{% endtrans %}</h6>
<hr>
<div class="border-start p-3">
<div class="card">
<div class="card-body">{{ app.user.mainGroup.motd | raw }}</div>
<div class="card-footer">{% trans %}title_last_update{% endtrans %} : {{ app.user.mainGroup.motdUpdatedAt | date('_datetime.format'|trans) }}</div>
</div>
</div>
</div>
</div>
</div>
</div>
{% endblock %}

View File

@@ -0,0 +1,101 @@
{% extends 'base.html.twig' %}
{% block title %}{% trans %}title_administration{% endtrans %}{% endblock %}
{% block body %}
<div class="row">
<div class="col-md-6">
<div class="card flat-card">
<div class="row-table">
<div class="col-sm-6 card-body br">
<div class="row">
<div class="col-sm-4">
<i class="material-icons-two-tone text-primary mb-1">person</i>
</div>
<div class="col-sm-8 text-md-center">
<h5>{{ users|length }}</h5>
<span>{% trans %}title_users{% endtrans %}</span>
</div>
</div>
</div>
<div class="col-sm-6 d-none d-md-table-cell d-lg-table-cell d-xl-table-cell card-body br">
<div class="row">
<div class="col-sm-4">
<i class="material-icons-two-tone text-primary mb-1">sticky_note_2</i>
</div>
<div class="col-sm-8 text-md-center">
<h5>{{ documents|length }}</h5>
<span>{% trans %}title_documents{% endtrans %}</span>
</div>
</div>
</div>
<div class="col-sm-6 card-body">
<div class="row">
<div class="col-sm-4">
<i class="material-icons-two-tone text-primary mb-1">account_box</i>
</div>
<div class="col-sm-8 text-md-center">
<h5>{{ directories|length }}</h5>
<span>{% trans %}title_directories{% endtrans %}</span>
</div>
</div>
</div>
</div>
<div class="row-table">
<div class="col-sm-6 card-body br">
<div class="row">
<div class="col-sm-4">
<i class="material-icons-two-tone text-primary mb-1">accessible</i>
</div>
<div class="col-sm-8 text-md-center">
<h5>{{ gangs|length }}</h5>
<span>{% trans %}title_gangs{% endtrans %}</span>
</div>
</div>
</div>
<div class="col-sm-6 d-none d-md-table-cell d-lg-table-cell d-xl-table-cell card-body br">
<div class="row">
<div class="col-sm-4">
<i class="material-icons-two-tone text-primary mb-1">folder_special</i>
</div>
<div class="col-sm-8 text-md-center">
<h5>{{ folders|length }}</h5>
<span>{% trans %}title_folders{% endtrans %}</span>
</div>
</div>
</div>
<div class="col-sm-6 card-body">
<div class="row">
<div class="col-sm-4">
<i class="material-icons-two-tone text-primary mb-1">people</i>
</div>
<div class="col-sm-8 text-md-center">
<h5>{{ groups|length }}</h5>
<span>{% trans %}title_groups{% endtrans %}</span>
</div>
</div>
</div>
</div>
</div>
<h6>{% trans %}title_last_users{% endtrans %}</h6>
<hr>
{% include '_cells/adminUserTable.html.twig' with {'users': users, 'noaction': true, 'noemail': true} %}
<h6>{% trans %}title_last_gangs{% endtrans %}</h6>
<hr>
{% include '_cells/documentTable.html.twig' with {'documents': gangs, 'noaction': true} %}
</div>
<div class="col-md-6">
<h6>{% trans %}title_last_directories{% endtrans %}</h6>
<hr>
{% include '_cells/directoryTable.html.twig' with {'directories': directories, 'noaction': true} %}
<h6>{% trans %}title_last_documents{% endtrans %}</h6>
<hr>
{% include '_cells/documentTable.html.twig' with {'documents': documents, 'noaction': true} %}
<h6>{% trans %}title_last_folders{% endtrans %}</h6>
<hr>
{% include '_cells/documentTable.html.twig' with {'documents': folders, 'noaction': true} %}
</div>
</div>
{% endblock %}

View File

@@ -0,0 +1,27 @@
{% extends 'base.html.twig' %}
{% block title %}{% trans %}title_administration_logs{% endtrans %}{% endblock %}
{% block body %}
<div class="row">
<div class="col-lg-12">
<table class="table table-dark table-striped">
<thead>
<tr>
<th scope="col">fichier</th>
<th scope="col">Actions</th>
</tr>
</thead>
<tbody>
{% for i in files %}
<tr>
<th scope="row">{{i.filename}}</th>
<td>{% include '_cells/adminLogsActions.html.twig' with {'filename': i.filename} %}</td>
</tr>
{% endfor %}
</tbody>
</table>
</div>
</div>
{% endblock %}

View File

@@ -0,0 +1,28 @@
{% extends 'base.html.twig' %}
{% block title %}{% trans %}title_administration_logs{% endtrans %}{% endblock %}
{% block body %}
<div class="row">
<div class="col-lg-12">
<div class="card shadow mb-4">
<div class="card-header py-3">
<h6 class="m-0 font-weight-bold">
{{ name }} {% include '_cells/adminLogsActions.html.twig' with {'filename': name} %}
</h6>
</div>
<div class="card-body">
<pre class="text-wrap">
{{ content |raw |nl2br}}
</pre>
</div>
</div>
</div>
</div>
{% endblock %}

View File

@@ -0,0 +1,15 @@
{% extends 'base.html.twig' %}
{% block title %}{% trans %}title_users_list{% endtrans %}{% endblock %}
{% block body %}
<div class="row">
<div class="col-5">{{form(searchForm)}}</div>
</div>
<div class="row">
<div class="col-8">
{% include '_cells/adminUserTable.html.twig' with {'users': pagination} %}
</div>
</div>
<div class="row">{{ knp_pagination_render(pagination) }}</div>
{% endblock %}

View File

@@ -0,0 +1,11 @@
{% extends 'base.html.twig' %}
{% block title %}{% trans %}title_user_edition{% endtrans %}{% endblock %}
{% block body %}
<div class="row">
<div class="col-lg-6">
{{form(form)}}
</div>
</div>
{% endblock %}

View File

@@ -0,0 +1,21 @@
{% extends 'base.html.twig' %}
{% block title %}{% trans %}title_user_view{% endtrans %}{% endblock %}
{% block body %}
<div class="row">
<div class="col-md-4">
<h2>{% trans %}title_informations{% endtrans %} - {% trans %}title_admin_version{% endtrans %}</h2>
<hr>
{% include '_cells/adminUserActions.html.twig' with {'user': user} %}
<hr>
{% include '_cells/adminUserInformations.html.twig' with {'user': user} %}
</div>
<div class="col-lg-6">
<h2>{% trans %}title_documents{% endtrans %}</h2>
<hr>
{% include '_cells/documentTable.html.twig' with {'documents': pagination} %}
<div class="row">{{ knp_pagination_render(pagination) }}</div>
</div>
</div>
{% endblock %}

View File

@@ -0,0 +1,16 @@
{% extends 'base.html.twig' %}
{% block title %}{% trans %}title_administration_watchdog{% endtrans %}{% endblock %}
{% block subtitle %}{% trans %}subtitle_administration_watchdog{% endtrans %}{% endblock %}
{% block body %}
<div class="row">
<div class="col">
{% include '_cells/historyDisplay.html.twig' with {'history': pagination} %}
</div>
</div>
<div class="row">
{{ knp_pagination_render(pagination) }}
</div>
{% endblock %}

383
templates/base.html.twig Normal file
View File

@@ -0,0 +1,383 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0, user-scalable=0, minimal-ui">
<meta name="description" content="Public services panel">
<title>Vision - {% block title %}{% trans %}page_title{% endtrans %}{% endblock %}</title>
<!-- HTML5 Shim and Respond.js IE11 support of HTML5 elements and media queries -->
<!-- WARNING: Respond.js doesn't work if you view the page via file:// -->
<!--[if lt IE 11]>
<script src="https://oss.maxcdn.com/libs/html5shiv/3.7.0/html5shiv.js"></script>
<script src="https://oss.maxcdn.com/libs/respond.js/1.4.2/respond.min.js"></script>
<![endif]-->
<!-- Meta -->
<!-- Favicon icon -->
<link rel="icon" href="{{ asset('favicon.ico') }}" type="image/x-icon">
<link rel="shortcut icon" href="{{ asset('favicon.ico') }}" type="image/x-icon">
<link rel="icon" href="{{ asset('favicon.png') }}" type="image/png">
<link rel="icon" sizes="32x32" href="{{ asset('favicon-32.png') }}" type="image/png">
<link rel="icon" sizes="64x64" href="{{ asset('favicon-64.png') }}" type="image/png">
<link rel="icon" sizes="96x96" href="{{ asset('favicon-96.png') }}" type="image/png">
<link rel="icon" sizes="196x196" href="{{ asset('favicon-196.png') }}" type="image/png">
<link rel="apple-touch-icon" sizes="152x152" href="{{ asset('apple-touch-icon.png') }}">
<link rel="apple-touch-icon" sizes="60x60" href="{{ asset('apple-touch-icon-60x60.png') }}">
<link rel="apple-touch-icon" sizes="76x76" href="{{ asset('apple-touch-icon-76x76.png') }}">
<link rel="apple-touch-icon" sizes="114x114" href="{{ asset('apple-touch-icon-114x114.png') }}">
<link rel="apple-touch-icon" sizes="120x120" href="{{ asset('apple-touch-icon-120x120.png') }}">
<link rel="apple-touch-icon" sizes="144x144" href="{{ asset('apple-touch-icon-144x144.png') }}">
<meta name="msapplication-TileImage" content="{{ asset('favicon-144.png') }}">
<meta name="msapplication-TileColor" content="#FFFFFF">
<!-- font css -->
<link rel="stylesheet" href="{{ asset('fonts/feather.css') }}">
<link rel="stylesheet" href="{{ asset('fonts/fontawesome.css') }}">
<link rel="stylesheet" href="{{ asset('fonts/material.css') }}">
<!-- theme css -->
<link rel="stylesheet" href="{{ asset('css/style.css') }}" id="main-style-link">
<link rel="stylesheet" href="{{ asset('css/custom.css') }}">
{% block stylesheets %} {% endblock %}
{% if app.request.attributes.get('_route') is not null %}
{% set currentPath = path(app.request.attributes.get('_route'), app.request.attributes.get('_route_params')) %}
{% else %}
{% set currentPath = null %}
{% endif %}
</head>
<body>
<!-- [ Pre-loader ] start -->
<div class="loader-bg">
<div class="loader-track">
<div class="loader-fill"></div>
</div>
</div>
<!-- [ Pre-loader ] End -->
{% if app.user and shared is not defined%} <!-- [ user is connected ] Start -->
<!-- [ Mobile header ] start -->
<div class="pc-mob-header pc-header">
<div class="pcm-logo">
<a href="{{ path('home') }}"><img src="{{ asset('img/logo.png') }}" alt="" class="logo logo-lg img-fluid"></a>
</div>
<div class="pcm-toolbar">
<a href="#!" class="pc-head-link" id="mobile-collapse">
<div class="hamburger hamburger--arrowturn">
<div class="hamburger-box">
<div class="hamburger-inner"></div>
</div>
</div>
</a>
{% if is_granted('IS_IMPERSONATOR') or is_granted('ROLE_ADMIN') %}
<a href="#!" class="pc-head-link" id="headerdrp-collapse">
<i data-feather="align-right"></i>
</a>
{% endif %}
<a href="#!" class="pc-head-link {% if user_notifications_count > 0 %}pulse{% endif %}" id="header-collapse">
<i data-feather="more-vertical"></i>
</a>
</div>
</div>
<!-- [ Mobile header ] End -->
<!-- [ navigation menu ] start -->
<nav class="pc-sidebar ">
<div class="navbar-wrapper">
<div class="m-header">
<a href="{{ path('home') }}" class="b-brand">
<img src="{{ asset('img/logo.png') }}" alt="VISION" class="logo logo-lg">
<img src="{{ asset('img/logo-sm.png') }}" alt="VISION" class="logo logo-sm">
</a>
</div>
<div class="navbar-content">
<ul class="pc-navbar">
<li class="pc-item pc-caption">
<label>{% trans %}title_navigation{% endtrans %}</label>
</li>
<li class="pc-item">
<a href="{{ path('home') }}" class="pc-link"><span class="pc-micon"><i class="material-icons-two-tone">home</i></span><span class="pc-mtext">{% trans %}title_home{% endtrans %}</span></a>
</li>
<li class="pc-item">
<a href="{{ path('user_list') }}" class="pc-link"><span class="pc-micon"><i class="material-icons-two-tone">view_list</i></span><span class="pc-mtext">{% trans %}title_book{% endtrans %}</span></a>
</li>
<li class="pc-item">
<a href="{{ path('directory_list') }}" class="pc-link"><span class="pc-micon"><i class="material-icons-two-tone">account_box</i></span><span class="pc-mtext">{% trans %}title_directories{% endtrans %}</span></a>
</li>
<li class="pc-item">
<a href="{{ path('document_list', {type: 'folder'}) }}" class="pc-link"><span class="pc-micon"><i class="material-icons-two-tone">folder_special</i></span><span class="pc-mtext">{% trans %}title_folders{% endtrans %}</span></a>
</li>
<li class="pc-item">
<a href="{{ path('document_list', {type: 'gang'}) }}" class="pc-link"><span class="pc-micon"><i class="material-icons-two-tone">accessible</i></span><span class="pc-mtext">{% trans %}title_gangs{% endtrans %}</span></a>
</li>
<li class="pc-item">
<a href="{{ path('document_list', {type: 'report'}) }}" class="pc-link"><span class="pc-micon"><i class="material-icons-two-tone">sticky_note_2</i></span><span class="pc-mtext">{% trans %}title_reports{% endtrans %}</span></a>
</li>
<li class="pc-item">
<a href="{{ path('document_list', {type: 'certificate'}) }}" class="pc-link"><span class="pc-micon"><i class="material-icons-two-tone">content_paste</i></span><span class="pc-mtext">{% trans %}title_certificates{% endtrans %}</span></a>
</li>
<li class="pc-item">
<a href="{{ path('document_list', {type: 'complaint'}) }}" class="pc-link"><span class="pc-micon"><i class="material-icons-two-tone">feedback</i></span><span class="pc-mtext">{% trans %}title_complaints{% endtrans %}</span></a>
</li>
<li class="pc-item">
<a href="{{ path('document_list', {type: 'infringement'}) }}" class="pc-link"><span class="pc-micon"><i class="material-icons-two-tone">paid</i></span><span class="pc-mtext">{% trans %}title_infringements{% endtrans %}</span></a>
</li>
<li class="pc-item">
<a href="{{ path('document_list', {type: 'jail'}) }}" class="pc-link"><span class="pc-micon"><i class="material-icons-two-tone">receipt</i></span><span class="pc-mtext">{% trans %}title_jails{% endtrans %}</span></a>
</li>
<li class="pc-item">
<a href="{{ path('document_list', {type: 'bracelet'}) }}" class="pc-link"><span class="pc-micon"><i class="material-icons-two-tone">share_location</i></span><span class="pc-mtext">{% trans %}title_bracelets{% endtrans %}</span></a>
</li>
<li class="pc-item">
<a href="{{ path('document_list', {type: 'criminal'}) }}" class="pc-link"><span class="pc-micon"><i class="material-icons-two-tone">policy</i></span><span class="pc-mtext">{% trans %}title_criminals{% endtrans %}</span></a>
</li>
<li class="pc-item">
<a href="{{ path('document_list', {type: 'stolenvehicle'}) }}" class="pc-link"><span class="pc-micon"><i class="material-icons-two-tone">taxi_alert</i></span><span class="pc-mtext">{% trans %}title_stolen_vehicles{% endtrans %}</span></a>
</li>
<li class="pc-item">
<a href="{{ path('document_list', {type: 'medical'}) }}" class="pc-link"><span class="pc-micon"><i class="material-icons-two-tone">vaccines</i></span><span class="pc-mtext">{% trans %}title_medicals{% endtrans %}</span></a>
</li>
{% if app.user.hasPermission('group_administrate') %}
<li class="pc-item pc-caption">
<label>{% trans %}title_management{% endtrans %}</label>
<span>{% trans %}subtitle_management{% endtrans %}</span>
</li>
<li class="pc-item">
<a href="{{ path('group_index') }}" class="pc-link"><span class="pc-micon"><i class="material-icons-two-tone">engineering</i></span><span class="pc-mtext">{% trans %}title_general{% endtrans %}</span></a>
</li>
<li class="pc-item">
<a href="{{ path('document_list', {type: 'template'}) }}" class="pc-link"><span class="pc-micon"><i class="material-icons-two-tone">description</i></span><span class="pc-mtext">{% trans %}title_templates{% endtrans %}</span></a>
</li>
<li class="pc-item">
<a href="{{ path('document_list', {type: 'sanction'}) }}" class="pc-link"><span class="pc-micon"><i class="material-icons-two-tone">warning</i></span><span class="pc-mtext">{% trans %}title_sanctions{% endtrans %}</span></a>
</li>
{% endif %}
{% if is_granted('ROLE_ADMIN') %}
<li class="pc-item pc-caption">
<label>{% trans %}title_administration{% endtrans %}</label>
<span>{% trans %}subtitle_administration{% endtrans %}</span>
</li>
<li class="pc-item">
<a href="{{ path('admin_index') }}" class="pc-link"><span class="pc-micon"><i class="material-icons-two-tone">dashboard</i></span><span class="pc-mtext">{% trans %}title_dashboard{% endtrans %}</span></a>
</li>
<li class="pc-item">
<a href="{{ path('admin_user_list') }}" class="pc-link"><span class="pc-micon"><i class="material-icons-two-tone">person</i></span><span class="pc-mtext">{% trans %}title_users{% endtrans %}</span></a>
</li>
<li class="pc-item">
<a href="{{ path('admin_group_list') }}" class="pc-link"><span class="pc-micon"><i class="material-icons-two-tone">people</i></span><span class="pc-mtext">{% trans %}title_groups{% endtrans %}</span></a>
</li>
<li class="pc-item">
<a href="{{ path('admin_watchdog') }}" class="pc-link"><span class="pc-micon"><i class="material-icons-two-tone">fingerprint</i></span><span class="pc-mtext">{% trans %}title_watchdog{% endtrans %}</span></a>
</li>
<li class="pc-item">
<a href="{{ path('admin_logs') }}" class="pc-link"><span class="pc-micon"><i class="material-icons-two-tone">list</i></span><span class="pc-mtext">{% trans %}title_logs{% endtrans %}</span></a>
</li>
{% endif %}
</ul>
</div>
</div>
</nav>
<!-- [ navigation menu ] end -->
<!-- [ Header ] start -->
<header class="pc-header">
<div class="header-wrapper">
<div class="me-auto pc-mob-drp">
<ul class="list-unstyled">
{% if is_granted('ROLE_ADMIN') %}
<li class="pc-h-item">
{% if app.user.adminmode %}
<a class="pc-head-link active arrow-none me-0" href="{{ path('admin_mode') }}" role="button">
<i class="fas fa-user-tie me-2 text-success"></i> {% trans %}adminmode_exit{% endtrans %}
</a>
{% else %}
<a class="pc-head-link active arrow-none me-0" href="{{ path('admin_mode') }}" role="button">
<i class="fas fa-user-tie me-2 text-danger"></i> {% trans %}adminmode_enter{% endtrans %}
</a>
{% endif %}
</li>
{% endif %}
{% if is_granted('IS_IMPERSONATOR') %}
<li class="pc-h-item">
<a class="pc-head-link active arrow-none me-0" href="{{ impersonation_exit_path() }}" role="button">
<i class="fas fa-user-secret me-2 text-success"></i> {% trans %}impersonation_exit{% endtrans %}
</a>
</li>
{% endif %}
</ul>
</div>
<div class="ms-auto">
<ul class="list-unstyled">
{% set groupLogo = 'img/nologo.png' %}
{% if app.user.mainGroup %}
{% if app.user.mainGroup.imageSize != 0 %}
{% set groupLogo = 'uploads/groups/' ~ app.user.mainGroup.imageName %}
{% endif %}
{% endif %}
<li class="dropdown pc-h-item">
<a class="pc-head-link dropdown-toggle arrow-none me-0" data-bs-toggle="dropdown" href="#" role="button" aria-haspopup="false" aria-expanded="false">
<img src="{{ asset(groupLogo) }}" alt="{% trans %}title_group{% endtrans %}" class="user-avtar {% if user_notifications_count > 0 %}pulse{% endif %}">
<span>
<span class="user-name">{% if app.user.mainRank %}{{ app.user.mainRank.shortname }}. {% endif %}{{ app.user.fullName }}
</span>
<span class="user-desc">{% if app.user.mainGroup %}{{ app.user.mainGroup.name }}{% endif %}</span>
</span>
</a>
<div class="dropdown-menu dropdown-menu-end pc-h-dropdown" style="margin: 0px;">
{% if user_notifications_count > 0 %}
{% for notif in user_notifications_list %}
<div class="dropdown-item notification_box">
{{ (notif.icon|trans)|raw }}
<span>{{ notif.content|raw }} <a href="{{ path('notification_markread', {'id': notif.id}) }}" class="mark-notification-readed text-success" data-bs-toggle="tooltip" data-placement="top" title="{% trans %}tooltip_markread{% endtrans %}"><i class="fas fa-check"></i></a></span>
</div>
{% endfor %}
<hr />
{% endif %}
<a href="{{ path('me_index') }}" class="dropdown-item">
<i class="material-icons-two-tone">account_circle</i>
<span>{% trans %}title_profile{% endtrans %}</span>
</a>
<a href="{{ path('notification_list') }}" class="dropdown-item">
<i class="material-icons-two-tone">contactless</i>
<span>{% trans %}title_notifications{% endtrans %}</span>
</a>
<a href="{{ path('app_logout') }}" class="dropdown-item">
<i class="material-icons-two-tone">power_settings_new</i>
<span>{% trans %}title_logout{% endtrans %}</span>
</a>
</div>
</li>
</ul>
</div>
</div>
</header>
<!-- [ Header ] end -->
<!-- [ Main Content ] start -->
<div class="pc-container">
<div class="pcoded-content">
<!-- [ breadcrumb ] start -->
<div class="page-header">
<div class="page-block">
<div class="row align-items-center">
<div class="col-md-12">
{% include 'breadcrumb.html.twig' with {'items': null} %}
</div>
</div>
</div>
</div>
<!-- [ breadcrumb ] end -->
<div class="row mb-3">
<h5>{% block subtitle %}{{ block('title') }}{% endblock %}</h5>
<hr>
</div>
<!-- [ page ] start -->
{{ block('body') }}
<!-- [ Page ] end -->
</div>
</div>
<!-- [ Main Content ] end -->
{% else %} <!-- [ user is connected (here : not)] else -->
<!-- [ page ] start -->
{{ block('body') }}
<!-- [ Page ] end -->
{% endif %} <!-- [ user is connected ] end -->
<div class="position-fixed bottom-0 end-0 p-3" style="z-index: 11">
<div class="toast-container">
{% for l, x in app.flashes %}
{% for k, m in x %}
<!-- [ toast ] start -->
<div id="{{ l }}-{{ k }}" class="toast hide bg-{{ l }} text-black" role="alert" aria-live="assertive" aria-atomic="true">
<div class="toast-header bg-{{ l }} text-black">
{% if l == 'success' %}<i class="fas fa-check-circle"></i>
{% elseif l == 'danger' %}<i class="fas fa-times-circle"></i>
{% elseif l == 'warning' %}<i class="fas fa-exclamation-triangle"></i>
{% else %}<i class="fas fa-info-circle"></i>
{% endif %}&nbsp;
{% if l == 'success' %}<strong class="me-auto">{% trans %}alert_title_success{% endtrans %}</strong>
{% elseif l == 'danger' %}<strong class="me-auto">{% trans %}alert_title_danger{% endtrans %}</strong>
{% elseif l == 'warning' %}<strong class="me-auto">{% trans %}alert_title_warning{% endtrans %}</strong>
{% else %}<strong class="me-auto">{% trans %}alert_title_information{% endtrans %}</strong>
{% endif %}
<button type="button" class="btn-close" data-bs-dismiss="toast" aria-label="Close"></button>
</div>
<div class="toast-body">
{{ m |trans }}
</div>
</div>
<!-- [ toast ] end -->
{% endfor %}
{% endfor %}
</div>
</div>
<!-- [ Main Content ] end -->
<!-- Warning Section start -->
<!-- Older IE warning message -->
<!--[if lt IE 11]>
<div class="ie-warning">
<h1>Warning!!</h1>
<p>You are using an outdated version of Internet Explorer, please upgrade
<br/>to any of the following web browsers to access this website.
</p>
<div class="iew-container">
<ul class="iew-download">
<li>
<a href="http://www.google.com/chrome/">
<img src="img/browser/chrome.png" alt="Chrome">
<div>Chrome</div>
</a>
</li>
<li>
<a href="https://www.mozilla.org/en-US/firefox/new/">
<img src="img/browser/firefox.png" alt="Firefox">
<div>Firefox</div>
</a>
</li>
<li>
<a href="http://www.opera.com">
<img src="img/browser/opera.png" alt="Opera">
<div>Opera</div>
</a>
</li>
<li>
<a href="https://www.apple.com/safari/">
<img src="img/browser/safari.png" alt="Safari">
<div>Safari</div>
</a>
</li>
<li>
<a href="http://windows.microsoft.com/en-us/internet-explorer/download-ie">
<img src="img/browser/ie.png" alt="">
<div>IE (11 & above)</div>
</a>
</li>
</ul>
</div>
<p>Sorry for the inconvenience!</p>
</div>
<![endif]-->
<!-- Warning Section Ends -->
<!-- Required Js -->
<script src="{{ asset('js/vendor-all.min.js') }}"></script>
<script src="{{ asset('js/plugins/bootstrap.bundle.min.js') }}"></script>
<script src="{{ asset('js/plugins/feather.min.js') }}"></script>
<script src="{{ asset('js/pcoded.min.js') }}"></script>
<script src="{{ asset('js/tinymce/tinymce.min.js') }}"></script>
<script src="{{ asset('js/bs5-lightbox.bundle.min.js') }}"></script>
<script src="{{ asset('js/custom.js') }}"></script>
{% block javascripts %}{% endblock %}
</body>
</html>

View File

@@ -0,0 +1,168 @@
<ul class="breadcrumb">
<li class="breadcrumb-item" data-bs-toggle="tooltip" data-placement="top" title="{% trans %}breadcrumb_home{% endtrans %}"><a href="{{ path('home') }}"><i class="fas fa-home"></i></a></li>
{% if app.request.attributes.get('_controller')|extractControllerName == 'Home' %}
{% set notDefined = false %}
<li class="breadcrumb-item" ><a href="{{ path('home') }}">{% trans %}breadcrumb_home{% endtrans %}</a></li>
{% endif %}
{% if app.request.attributes.get('_controller') == 'error_controller' %}
<li class="breadcrumb-item" >{% trans %}breadcrumb_error{% endtrans %} {{ app.request.attributes.get('exception').statusCode }}</li>
{% endif %}
{% if app.request.attributes.get('_controller')|extractControllerName == 'Me' %}
{% set notDefined = false %}
<li class="breadcrumb-item" ><a href="{{ path('me_index') }}">{% trans %}breadcrumb_me{% endtrans %}</a></li>
{% if app.request.attributes.get('_controller')|extractActionName == 'password' %}
<li class="breadcrumb-item"><a href="{{ path( 'me_password' ) }}">{{ 'breadcrumb_me_password'|trans }}</a></li>
{% endif %}
{% endif %}
{% if app.request.attributes.get('_controller')|extractControllerName == 'Document' %}
{% set notDefined = false %}
{% if app.request.attributes.get("Document") %}
<li class="breadcrumb-item"><a href="{{ path( 'document_list', {type: app.request.attributes.get('Document').classShort} ) }}">{{ ('breadcrumb_' ~ app.request.attributes.get("Document").classShort ~ 's')|trans }}</a></li>
{% if app.request.attributes.get("Document").Directory is defined %}
<li class="breadcrumb-item"><a href="{{ path( 'directory_view', {id: app.request.attributes.get('Document').Directory.id } ) }}">{{ app.request.attributes.get("Document").Directory.fullName }}</a></li>
{% endif %}
<li class="breadcrumb-item"><a href="{{ path( 'document_view', {id:app.request.attributes.get('Document').id } ) }}">"{{ app.request.attributes.get("Document").title }}" (# {{ app.request.attributes.get("Document").id }})</a></li>
{% else %}
<li class="breadcrumb-item"><a href="{{ path( 'document_list', {type: app.request.attributes.get('type')} ) }}">{{ ('breadcrumb_' ~ app.request.attributes.get('type')|capitalize ~ 's')|trans }}</a></li>
{% endif %}
<li class="breadcrumb-item"><a href="{{ path( app.request.attributes.get('_route'), app.request.attributes.get('_route_params') ) }}">{{ ('breadcrumb_' ~ app.request.attributes.get('_controller')|extractActionName)|trans }}</a></li>
{% endif %}
{% if app.request.attributes.get('_controller')|extractControllerName == 'User' %}
{% set notDefined = false %}
<li class="breadcrumb-item"><a href="{{ path( 'user_list' ) }}">{{ ('breadcrumb_' ~ app.request.attributes.get('_controller')|extractControllerName ~ 's')|trans }}</a></li>
{% if app.request.attributes.get("User") %}
<li class="breadcrumb-item"><a href="{{ path( 'user_view', {id: app.request.attributes.get('User').id}) }}">{{ app.request.attributes.get("User").fullName }}</a></li>
{% endif %}
{% endif %}
{% if app.request.attributes.get('_controller')|extractControllerName == 'Directory' %}
{% set notDefined = false %}
<li class="breadcrumb-item"><a href="{{ path( 'directory_list' ) }}">{{ ('breadcrumb_' ~ app.request.attributes.get('_controller')|extractControllerName ~ 's')|trans }}</a></li>
{% if app.request.attributes.get('_route') == 'directory_list_dead' %}
<li class="breadcrumb-item"><a href="{{ path( 'directory_list_dead' ) }}">{{ ('breadcrumb_directory_dead')|trans }}</a></li>
{% endif %}
{% if app.request.attributes.get('_route') == 'directory_list_wanted' %}
<li class="breadcrumb-item"><a href="{{ path( 'directory_list_wanted' ) }}">{{ ('breadcrumb_directory_wanted')|trans }}</a></li>
{% endif %}
{% if app.request.attributes.get("Directory") %}
<li class="breadcrumb-item"><a href="{{ path( 'directory_view', {id: app.request.attributes.get('Directory').id} ) }}">{{ app.request.attributes.get("Directory").fullName }} (# {{ app.request.attributes.get("Directory").id }})</a></li>
{% endif %}
<li class="breadcrumb-item"><a href="{{ path( app.request.attributes.get('_route'), app.request.attributes.get('_route_params') ) }}">{{ ('breadcrumb_' ~ app.request.attributes.get('_controller')|extractActionName)|trans }}</a></li>
{% endif %}
{% if app.request.attributes.get('_controller')|extractControllerName == 'Group' %}
{% set notDefined = false %}
<li class="breadcrumb-item"><a href="{{ path( 'group_index' ) }}">{{ ('breadcrumb_' ~ app.request.attributes.get('_controller')|extractControllerName ~ 's')|trans }}</a></li>
{% if app.request.attributes.get('_controller')|extractActionName == 'employee' %}
<li class="breadcrumb-item"><a href="{{ path( 'group_employee', {id: app.request.attributes.get('Employee').id} ) }}">{{ 'breadcrumb_Employee'|trans }}: {{ app.request.attributes.get("Employee").fullName }}</a></li>
{% endif %}
{% endif %}
{% if app.request.attributes.get('_controller')|extractControllerName == 'Folder' %}
{% set notDefined = false %}
<li class="breadcrumb-item" ><a href="{{ path('home') }}">{% trans %}breadcrumb_Folders{% endtrans %}</a></li>
{% if app.request.attributes.get("Folder") %}
<li class="breadcrumb-item"><a href="{{ path( 'document_view', {id: app.request.attributes.get('Folder').id} ) }}">"{{ app.request.attributes.get("Folder").title }}" (# {{ app.request.attributes.get("Folder").id }})</a></li>
{% endif %}
{% if app.request.attributes.get('_controller')|extractActionName in ['directory'] %}
<li class="breadcrumb-item"><a href="{{ path( 'admin_group_list' ) }}">{{ ('breadcrumb_folder_add_directory')|trans }}</a></li>
{% endif %}
{% if app.request.attributes.get('_controller')|extractActionName in ['document'] %}
<li class="breadcrumb-item"><a href="{{ path( 'admin_group_list' ) }}">{{ ('breadcrumb_folder_add_document')|trans }}</a></li>
{% endif %}
{% endif %}
{% if app.request.attributes.get('_controller')|extractControllerName == 'Admin' %}
{% set notDefined = false %}
<li class="breadcrumb-item"><a href="{{ path( 'admin_index' ) }}">{{ ('breadcrumb_admin_dashboard')|trans }}</a></li>
{% if app.request.attributes.get("Group") %}
<li class="breadcrumb-item"><a href="{{ path( 'admin_group_list' ) }}">{{ ('breadcrumb_admin_groups')|trans }}</a></li>
<li class="breadcrumb-item"><a href="{{ path( 'admin_group_view', {id: app.request.attributes.get('Group').id} ) }}">"{{ app.request.attributes.get("Group").name }}" (# {{ app.request.attributes.get("Group").id }})</a></li>
{% endif %}
{% if app.request.attributes.get('_controller')|extractActionName in ['group','groupAdd'] %}
<li class="breadcrumb-item"><a href="{{ path( 'admin_group_list' ) }}">{{ ('breadcrumb_admin_groups')|trans }}</a></li>
{% endif %}
{% if app.request.attributes.get('_controller')|extractActionName in ['groupEdit'] %}
<li class="breadcrumb-item"><a href="{{ path( 'admin_group_edit', {id: app.request.attributes.get('Group').id} ) }}">{{ 'breadcrumb_edit'|trans }}</a></li>
{% endif %}
{% if app.request.attributes.get('_controller')|extractActionName in ['groupAdd'] %}
<li class="breadcrumb-item"><a href="{{ path( 'admin_group_add') }}">{{ 'breadcrumb_create'|trans }}</a></li>
{% endif %}
{% if app.request.attributes.get('_controller')|extractActionName in ['groupDocuments'] %}
<li class="breadcrumb-item"><a href="{{ path( 'admin_group_documents', {id: app.request.attributes.get('Group').id} ) }}">{{ 'breadcrumb_documents'|trans }}</a></li>
{% endif %}
{% if app.request.attributes.get('_controller')|extractActionName in ['groupRankView', 'groupRankEdit'] %}
<li class="breadcrumb-item"><a href="{{ path( 'admin_group_list' ) }}">{{ ('breadcrumb_admin_groups')|trans }}</a></li>
{% if app.request.attributes.get("Rank") %}
<li class="breadcrumb-item"><a href="{{ path( 'admin_group_view', {id: app.request.attributes.get('Rank').mainGroup.id} ) }}">"{{ app.request.attributes.get('Rank').mainGroup.name }}" (# {{ app.request.attributes.get('Rank').mainGroup.id }})</a></li>
<li class="breadcrumb-item"><a href="{{ path( 'admin_group_rank_view', {id: app.request.attributes.get('Rank').id } ) }}">{{ 'breadcrumb_rank'|trans }}: {{ app.request.attributes.get('Rank').name }}</a></li>
{% endif %}
{% endif %}
{% if app.request.attributes.get('_controller')|extractActionName in ['groupRankEdit'] %}
<li class="breadcrumb-item"><a href="{{ path( 'admin_group_rank_edit', {id: app.request.attributes.get('Rank').mainGroup.id} ) }}">{{ 'breadcrumb_edit'|trans }}</a></li>
{% endif %}
{% if app.request.attributes.get('_controller')|extractActionName in ['groupRankAdd'] %}
<li class="breadcrumb-item"><a href="{{ path( 'admin_group_rank_add', {id: app.request.attributes.get('Group').id} ) }}">{{ 'breadcrumb_rank'|trans }}: {{ 'breadcrumb_create'|trans }}</a></li>
{% endif %}
{% if app.request.attributes.get('_controller')|extractActionName in ['groupSubGroupView', 'groupSubGroupEdit'] %}
<li class="breadcrumb-item"><a href="{{ path( 'admin_group_list' ) }}">{{ ('breadcrumb_admin_groups')|trans }}</a></li>
{% if app.request.attributes.get("SubGroup") %}
<li class="breadcrumb-item"><a href="{{ path( 'admin_group_view', {id: app.request.attributes.get('SubGroup').mainGroup.id} ) }}">"{{ app.request.attributes.get('SubGroup').mainGroup.name }}" (# {{ app.request.attributes.get('SubGroup').mainGroup.id }})</a></li>
<li class="breadcrumb-item"><a href="{{ path( 'admin_group_subgroup_view', {id: app.request.attributes.get('SubGroup').id } ) }}">{{ 'breadcrumb_subgroup'|trans }}: {{ app.request.attributes.get('SubGroup').name }}</a></li>
{% endif %}
{% endif %}
{% if app.request.attributes.get('_controller')|extractActionName in ['groupSubGroupEdit'] %}
<li class="breadcrumb-item"><a href="{{ path( 'admin_group_subgroup_edit', {id: app.request.attributes.get('SubGroup').mainGroup.id} ) }}">{{ 'breadcrumb_edit'|trans }}</a></li>
{% endif %}
{% if app.request.attributes.get('_controller')|extractActionName in ['groupSubGroupAdd'] %}
<li class="breadcrumb-item"><a href="{{ path( 'admin_group_subgroup_add', {id: app.request.attributes.get('Group').id} ) }}">{{ 'breadcrumb_subgroup'|trans }}: {{ 'breadcrumb_create'|trans }}</a></li>
{% endif %}
{% if app.request.attributes.get('_controller')|extractActionName == 'user' %}
<li class="breadcrumb-item"><a href="{{ path( 'admin_group_list' ) }}">{{ ('breadcrumb_admin_users')|trans }}</a></li>
{% endif %}
{% if app.request.attributes.get("User") %}
<li class="breadcrumb-item"><a href="{{ path( 'admin_user_list' ) }}">{{ ('breadcrumb_admin_users')|trans }}</a></li>
<li class="breadcrumb-item"><a href="{{ path( 'admin_user_view', {id: app.request.attributes.get('User').id} ) }}">{{ app.request.attributes.get("User").fullName }} (# {{ app.request.attributes.get("User").id }})</a></li>
{% endif %}
{% if app.request.attributes.get('_controller')|extractActionName in ['logs', 'logsView'] %}
<li class="breadcrumb-item"><a href="{{ path( 'admin_logs' ) }}">{{ ('breadcrumb_admin_logs')|trans }}</a></li>
{% if app.request.attributes.get("filename") %}
<li class="breadcrumb-item"><a href="{{ path( 'admin_logs_view', {filename: app.request.attributes.get('filename') } ) }}">{{ app.request.attributes.get("filename")}}</a></li>
{% endif %}
{% endif %}
{% endif %}
</ul>

View File

@@ -0,0 +1,30 @@
{% extends 'base.html.twig' %}
{% block title %}{% trans %}title_errorpage_error{% endtrans %}{% endblock %}
{% block error %}
<p>{{ 'title_errorpage_error_message' |trans}}</p>
{% endblock %}
{% block youcan %}
{% set referer = app.request.server.get('HTTP_REFERER')|default(null) %}
<div class="row">
<div class="col">
<hr>
<p class="text-left">{% trans %}you_can{% endtrans %}</p>
<ul class="text-left">
{% if referer is not null %}<li><a href="{{ referer }}">{% trans %}go_back_to_referer{% endtrans %}</a></li>{% endif %}
<li><a href="{{ path('home') }}">{% trans %}go_back_to_home{% endtrans %}</a></li>
</ul>
</div>
</div>
{% endblock %}
{% block body %}
<div class="row">
<div class="col">
{{ block('error') }}
</div>
</div>
{{ block('youcan') }}
{% endblock %}

View File

@@ -0,0 +1,15 @@
{% extends 'bundles/TwigBundle/Exception/error.html.twig' %}
{% block title %}{% trans %}title_errorpage_403{% endtrans %}{% endblock %}
{% block body %}
<!-- [ 403 ] start -->
<div class="row">
<div class="col">
<h4 class="mb-3 f-w-400 text-center"><p>{{ 'title_errorpage_403_message' |trans}}</p></h4>
{{ block('youcan') }}
</div>
</div>
<!-- [ 403 ] end -->
{% endblock %}

View File

@@ -0,0 +1,23 @@
{% extends 'bundles/TwigBundle/Exception/error.html.twig' %}
{% block title %}{% trans %}title_errorpage_404{% endtrans %}{% endblock %}
{% block body %}
<!-- [ 404 ] start -->
<div class="auth-wrapper">
<div class="auth-content">
<div class="card">
<div class="row align-items-center">
<div class="col-md-12">
<div class="card-body">
<img src="{{ asset('img/logo.png') }}" alt="Vision" class="img-fluid mb-4">
<h4 class="mb-3 f-w-400 text-center"><p>{{ 'title_errorpage_404_message' |trans}}</p></h4>
{{ block('youcan') }}
</div>
</div>
</div>
</div>
</div>
</div>
<!-- [ 404 ] end -->
{% endblock %}

View File

@@ -0,0 +1,17 @@
{% extends 'base.html.twig' %}
{% block title %}{% trans %}title_comment_edition{% endtrans %}{% endblock %}
{% block body %}
<div class="row">
<div class="col-lg-8">
{{ form(form) }}
</div>
<div class="col-lg-4">
<h3>{% trans %}title_comment_belong_document{% endtrans %}</h3>
<p><a href="{{ path('document_view', {'id': comment.document.id}) }}" class="btn btn-primary btn-sm">{{ comment.document.getClassShort}} - {{comment.document.title}}</a></p>
<p>{% trans %}title_author{% endtrans %} {{comment.creator.fullName}}, {{comment.creator.mainGroup.shortname}}</p>
<p>{% trans %}title_created_at{% endtrans %} {{comment.createdAt |date('_datetime.format'|trans)}}</p>
</div>
</div>
{% endblock %}

View File

@@ -0,0 +1,12 @@
{% extends 'base.html.twig' %}
{% block title %}{% trans %}title_directory_creation{% endtrans %}{% endblock %}
{% block body %}
<div class="row">
<div class="col-lg-8 mx-auto p-3 py-md-5">
{{ form(form) }}
</div>
</div>
{% endblock %}

View File

@@ -0,0 +1,11 @@
{% extends 'base.html.twig' %}
{% block title %}{% trans %}title_directory_edition{% endtrans %} #{{directory.id}} - "{{ directory.fullName }}"{% endblock %}
{% block body %}
<div class="row">
<div class="col-lg-8">
{{ form(form) }}
</div>
</div>
{% endblock %}

View File

@@ -0,0 +1,33 @@
{% extends 'base.html.twig' %}
{% block title %}{% trans %}title_directory_list{% endtrans %}{% endblock %}
{% block subtitle %}{% trans %}title_directory_list{% endtrans %}{% if app.user.hasPermission('group_administrate') %} <a href="{{ path('directory_create') }}"><span class="badge rounded-pill bg-success"><i class="fa fa-plus"></i> {% trans %}button_create{% endtrans %}</span></a>{% endif %}{% endblock %}
{% block body %}
<div class="row">
<div class="col-12 col-md-5">
{{form(searchForm)}}
</div>
<div class="col">
{% if wanted %}
<a href="{{ path('directory_list') }}" class="btn btn-primary my-1">{% trans %}button_exit_wanted_directories{% endtrans %}</a>
{% else %}
<a href="{{ path('directory_list_wanted') }}" class="btn btn-info my-1">{% trans %}button_go_to_wanted_directories{% endtrans %}</a>
{% endif %}
{% if dead %}
<a href="{{ path('directory_list') }}" class="btn btn-primary my-1">{% trans %}button_exit_dead_directories{% endtrans %}</a>
{% else %}
<a href="{{ path('directory_list_dead') }}" class="btn btn-info my-1">{% trans %}button_go_to_dead_directories{% endtrans %}</a>
{% endif %}
</div>
</div>
<div class="row">
<div class="col-lg-8">
{% include '_cells/directoryTable.html.twig' with {'directories': pagination} %}
</div>
</div>
<div class="row">
{{ knp_pagination_render(pagination) }}
</div>
{% endblock %}

View File

@@ -0,0 +1,31 @@
{% extends 'base.html.twig' %}
{% block title %}{% trans %}title_directory_merge{% endtrans %} : #{{ deletedDirectory.id }} - {{ deletedDirectory.fullname }} into #{{ baseDirectory.id }} - {{ baseDirectory.fullname }}{% endblock %}
{% block body %}
<div class="row">
<div class="col-md-4">
<h2>Base Directory</h2>
{% include '_cells/directoryCard.html.twig' with {'directory': baseDirectory} %}
</div>
<div class="col-md-4">
<h2>Deleted Directory</h2>
{% include '_cells/directoryCard.html.twig' with {'directory': deletedDirectory} %}
</div>
<div class="col-md-4">
<h2>Merged Directory</h2>
{% include '_cells/directoryCard.html.twig' with {'directory': keepedDirectory} %}
</div>
</div>
<div class="row">
<div class="col">
<form method="POST">
<input type="hidden" value='mergethis' name="validatemerge" id="validatemerge">
<a href="{{ path('directory_view', {'id': keepedDirectory.id}) }}" class="btn btn-secondary" data-dismiss="modal">{% trans %}button_cancel{% endtrans %}</a>
<button type="submit" class="btn btn-primary">{% trans %}button_validate_directories_merge{% endtrans %}</button>
</form>
</div>
</div>
{% endblock %}

View File

@@ -0,0 +1,52 @@
{% extends 'base.html.twig' %}
{% block title %}{% trans %}title_directory_view{% endtrans %} : #{{ directory.id }} - {{ directory.fullname }}{% endblock %}
{% block body %}
<div class="row">
<div class="col-12 col-xl-6">
<h4>{% trans %}title_certificate{% endtrans %} {% if is_granted('create', classMetadataToEntity(directory.certificates.typeClass, app.user)) %} <a href="{{ path('document_create_directory', {type: 'certificate', directory: directory.id}) }}"><span class="badge rounded-pill bg-success"><i class="fa fa-plus"></i> {% trans %}button_create{% endtrans %}</span></a> {% endif %}</h4>
{% include '_cells/documentTable.html.twig' with {'documents': Certificate, notype: true, limit: 3, nodirectoryinfo: true,} %}
<hr class="my-3">
<h4>{% trans %}title_complaint{% endtrans %} {% if is_granted('create', classMetadataToEntity(directory.complaints.typeClass, app.user)) %} <a href="{{ path('document_create_directory', {type: 'complaint', directory: directory.id}) }}"><span class="badge rounded-pill bg-success"><i class="fa fa-plus"></i> {% trans %}button_create{% endtrans %}</span></a> {% endif %}</h4>
{% include '_cells/documentTable.html.twig' with {'documents': Complaint, notype: true, limit: 3, nodirectoryinfo: true} %}
<hr class="my-3">
<h4>{% trans %}title_licencewithdrawals{% endtrans %} {% if is_granted('create', classMetadataToEntity(directory.licenceWithdrawals.typeClass, app.user)) %} <a href="{{ path('document_create_directory', {type: 'licenceWithdrawal', directory: directory.id}) }}"><span class="badge rounded-pill bg-success"><i class="fa fa-plus"></i> {% trans %}button_create{% endtrans %}</span></a> {% endif %}</h4>
{% include '_cells/documentTable.html.twig' with {'documents': LicenceWithdrawal, notype: true, limit: 3, nodirectoryinfo: true} %}
<hr class="my-3">
<h4>{% trans %}title_infringements{% endtrans %} {% if is_granted('create', classMetadataToEntity(directory.infringements.typeClass, app.user)) %} <a href="{{ path('document_create_directory', {type: 'infringement', directory: directory.id}) }}"><span class="badge rounded-pill bg-success"><i class="fa fa-plus"></i> {% trans %}button_create{% endtrans %}</span></a> {% endif %}</h4>
{% include '_cells/documentTable.html.twig' with {'documents': Infringement, notype: true, limit: 3, nodirectoryinfo: true} %}
<hr class="my-3">
<h4>{% trans %}title_jails{% endtrans %} {% if is_granted('create', classMetadataToEntity(directory.jails.typeClass, app.user)) %} <a href="{{ path('document_create_directory', {type: 'jail', directory: directory.id}) }}"><span class="badge rounded-pill bg-success"><i class="fa fa-plus"></i> {% trans %}button_create{% endtrans %}</span></a> {% endif %}</h4>
{% include '_cells/documentTable.html.twig' with {'documents': Jail, notype: true, limit: 3, nodirectoryinfo: true} %}
<hr class="my-3">
<h4>{% trans %}title_bracelets{% endtrans %} {% if is_granted('create', classMetadataToEntity(directory.bracelets.typeClass, app.user)) %} <a href="{{ path('document_create_directory', {type: 'bracelet', directory: directory.id}) }}"><span class="badge rounded-pill bg-success"><i class="fa fa-plus"></i> {% trans %}button_create{% endtrans %}</span></a> {% endif %}</h4>
{% include '_cells/documentTable.html.twig' with {'documents': Bracelet, notype: true, limit: 3, nodirectoryinfo: true} %}
<hr class="my-3">
<h4>{% trans %}title_criminals{% endtrans %} {% if is_granted('create', classMetadataToEntity(directory.criminals.typeClass, app.user)) %} <a href="{{ path('document_create_directory', {type: 'criminal', directory: directory.id}) }}"><span class="badge rounded-pill bg-success"><i class="fa fa-plus"></i> {% trans %}button_create{% endtrans %}</span></a> {% endif %}</h4>
{% include '_cells/documentTable.html.twig' with {'documents': Criminal, notype: true, limit: 3, nodirectoryinfo: true} %}
<hr class="my-3">
<h4>{% trans %}title_stolen_vehicles{% endtrans %} {% if is_granted('create', classMetadataToEntity(directory.stolenvehicles.typeClass, app.user)) %} <a href="{{ path('document_create_directory', {type: 'stolenvehicle', directory: directory.id}) }}"><span class="badge rounded-pill bg-success"><i class="fa fa-plus"></i> {% trans %}button_create{% endtrans %}</span></a> {% endif %}</h4>
{% include '_cells/documentTable.html.twig' with {'documents': Stolenvehicle, notype: true, limit: 3, nodirectoryinfo: true} %}
<hr class="my-3">
<h4>{% trans %}title_medicals{% endtrans %} {% if is_granted('create', classMetadataToEntity(directory.medicals.typeClass, app.user)) %} <a href="{{ path('document_create_directory', {type: 'medical', directory: directory.id}) }}"><span class="badge rounded-pill bg-success"><i class="fa fa-plus"></i> {% trans %}button_create{% endtrans %}</span></a> {% endif %}</h4>
{% include '_cells/documentTable.html.twig' with {'documents': Medical, notype: true, limit: 3, nodirectoryinfo: true} %}
<hr class="my-3">
</div>
<div class="col-12 col-xl-6">
{% include '_cells/directoryCard.html.twig' with {'directory': directory} %}
</div>
</div>
{% endblock %}

View File

@@ -0,0 +1,25 @@
{% extends 'base.html.twig' %}
{% block title %}
{{ "title_creation"|trans }} {{ "of"|trans }} {{ ("documentType_" ~ type|capitalize)|trans }}
{% endblock %}
{% block body %}
<div class="row">
<div class="col-lg-8 p-3 py-md-2">
{{ form(form) }}
</div>
<div class="col-md-4">
{% if document.directory is defined and document.directory is not null %}
<h3>{% trans %}title_directory_linked{% endtrans %}</h3><hr>
{% include '_cells/directoryCard.html.twig' with {'directory': document.directory} %}
{% endif %}
{% if document.user is defined and document.user is not null %}
<h3>{% trans %}title_user_linked{% endtrans %}</h3><hr>
{% include '_cells/userInformations.html.twig' with {'user': document.user} %}
{% endif %}
</div>
</div>
{% endblock %}

View File

@@ -0,0 +1,22 @@
{% extends 'base.html.twig' %}
{% block title %}{% trans %}title_edition{% endtrans%} "{{ document.title }}"{% endblock %}
{% block body %}
<div class="row">
<div class="col-lg-8">
{{ form(form) }}
</div>
<div class="col-lg-4">
{% if document.directory is defined and document.directory is not null %}
<h3>{% trans %}title_directory_linked{% endtrans %}</h3><hr>
{% include '_cells/directoryCard.html.twig' with {'directory': document.directory} %}
{% endif %}
{% if document.user is defined and document.user is not null %}
<h3>{% trans %}title_user_linked{% endtrans %}</h3><hr>
{% include '_cells/userInformations.html.twig' with {'user': document.user} %}
{% endif %}
</div>
</div>
{% endblock %}

View File

@@ -0,0 +1,12 @@
{% extends 'base.html.twig' %}
{% block title %}{{ document.getClassShort }}: {{ document.getTitle }} - {% trans %}title_history{% endtrans %}{% endblock %}
{% block subtitle %}#{{ document.id }}: {{ document.getTitle }} - {% trans %}title_history{% endtrans %} {% endblock %}
{% block body %}
<div class="row">
<div class="col">
{% include '_cells/historyDisplay.html.twig' with {'history': history, notype: true} %}
</div>
</div>
{% endblock %}

View File

@@ -0,0 +1,41 @@
{% extends 'base.html.twig' %}
{% block title %}{{ ("documentType_" ~ type)|trans }}{% if archive %} | {% trans %}title_archives{% endtrans %}{% endif %}{% endblock %}
{% block subtitle %}
{{ ("documentType_" ~ type)|trans }} {% if archive %} | {% trans %}title_archives{% endtrans %}{% else %}
{% if documentTypeEntity.directory is not defined and documentTypeEntity.user is not defined %}
{% if app.user.hasPermission(type ~ '_create') %}
<a href="{{ path('document_create', {type: type}) }}"><span class="badge rounded-pill bg-success"><i class="fa fa-plus"></i> {% trans %}button_create{% endtrans %}</span></a>{% endif %}
{% endif %}
{% endif %}
{% endblock %}
{% block body %}
<div class="row">
<div class="col-12 col-md-5">{{form(searchForm)}}</div>
<div class="col-12 col-md-3">
{% if archive %}
<a href="{{ path('document_list', {type: type}) }}" class="btn btn-info">{% trans %}button_go_to_not_archived{% endtrans %}</a>
{% else %}
<a href="{{ path('document_list_archives', {type: type}) }}" class="btn btn-primary">{% trans %}button_go_to_archived{% endtrans %}</a>
{% endif %}
</div>
</div>
<div class="row">
<div class="col-lg-8"><hr><p>{{ 'title_count'|trans }}: {{ count }}</p>
{% include '_cells/documentTable.html.twig' with {'documents': pagination, 'notype': true } %}
</div>
{% if directory is defined and directory is not null %}
<div class="col-lg-4">
<h3>{% trans %}title_document_linked_to_directory{% endtrans %}:</h3>
<hr>
{% include '_cells/directoryCard.html.twig' with {'directory': directory} %}
</div>
{% endif %}
</div>
<div class="row">
{{ knp_pagination_render(pagination) }}
</div>
{% endblock %}

View File

@@ -0,0 +1 @@
{{ document.content | raw }}

View File

@@ -0,0 +1 @@
{% trans %}title_can_be_removed_at{% endtrans %} :{{ document.removingDate|date('_datetime.format'|trans) }}

View File

@@ -0,0 +1 @@
{{ document.content | raw }}

View File

@@ -0,0 +1,6 @@
<h3>{% trans %}title_versus{% endtrans %} : {{ document.versus }}</h3>
<hr>
{{ document.directory.fullname }} says :
{{ document.content | raw }}
<hr>
{{ 'title_status'|trans }}: {{ document.status | trans }}

View File

@@ -0,0 +1,17 @@
<h3>{{ document.article }}</h3>
<ul>
<li>{% trans %}title_amount{% endtrans %} : {{ document.amountMoney }} {{'currency_symbol'|trans}}</li>
<li>{% trans %}title_hours{% endtrans %} : {{ document.amountTime }} {{ 'title_hours'| trans }}</li>
</ul>
{% if document.accessorySentence %}
<div class="p-2">
<h4>{% trans %}title_accessorySentence{% endtrans %}</h4>
{{ document.accessorySentence | raw }}
</div>
{% endif %}
{% if document.content %}
<div class="p-2">
<h4>{% trans %}title_informations{% endtrans %}</h4>
{{ document.content | raw }}
</div>
{% endif %}

View File

@@ -0,0 +1,93 @@
<h2>{% trans %}title_informations{% endtrans %}</h2>
{% if document.content %}
{{ document.content | raw }}
{% else %}
{{ 'no_data'|trans}}
{% endif %}
<hr>
<div class="row my-5">
<div class="col">
<h3>{% trans %}title_documents_into_folder{% endtrans %}{% if shared is not defined %} <a href="{{ path('folder_document', {id: document.id}) }}"><span class="badge rounded-pill bg-success"><i class="fa fa-plus"></i> {% trans %}button_add{% endtrans %}</span></a>{% endif %}</h3>
<hr>
{% if document.documents|length > 0 %}
<ul class="list-group">
{% for i in document.documents %}
<li class="list-group-item list-group-flush">
<div class="row">
<div class="col-2">
{% set groupLogo = 'img/nologo.png' %}
{% if i.mainGroup %}
{% if i.mainGroup.imageSize != 0 %}
{% set groupLogo = 'uploads/groups/' ~ i.mainGroup.imageName %}
{% endif %}
{% endif %}
<img src="{{ asset(groupLogo) }}" alt="{{ i.mainGroup.name }} " class="img-fluid">
</div>
<div class="col">
{% if i.AllowShare %}<a href="{{ path('share', {'share': i.share}) }}" target="_blank">{% endif %}
<h4>#{{i.id}} {{i.classShort}} - {{i.title }} {% if i.archive %}<small>({% trans %}title_archived{% endtrans %})</small>{% endif %}{% if i.AllowShare %} <i class="fa fa-link text-success" data-bs-toggle="tooltip" data-placement="top" title="{% trans %}tooltip_document_shared{% endtrans %}" ></i>{% endif %}</h4>
{% if i.AllowShare %}</a>{% endif %}
{% if i.directory is defined %}<p>#{{i.directory.id}} - {{i.directory.fullName}} {{i.directory.gender}} {{i.directory.phone}}</p>{% endif %}
{% if i.status is defined %}
<p>{% trans %}title_status{% endtrans %}: {{ i.status|trans }}</p>
{% endif %}
{% if i.removingDate is defined %}
<p>{% trans %}title_can_be_removed_at{% endtrans %}: {{ i.removingDate|date('_datetime.format'|trans) }}</p>
{% endif %}
{% if i.numberplate is defined %}
<p>{% trans %}title_numberplate{% endtrans %}: {{ i.numberplate }}</p>
{% endif %}
<p>{% trans %}title_created_by{% endtrans %}: {{i.creator.firstname | u.truncate(2, '.')}} {{i.creator.lastname}}, {{i.creator.mainGroup ? i.creator.mainGroup.shortname : 'No Group'}}, {% trans %}title_created_at{% endtrans %}: {{i.createdAt |date('_datetime.format'|trans)}}</p>
</div>
{% if shared is not defined %}
<div class="col-3">
{% include '_cells/documentActions.html.twig' with {'document': i} %}
</div>
{% endif %}
</div>
</li>
{% endfor %}
</ul>
{% else %}
{{ 'no_data'|trans}}
{% endif %}
</div>
</div>
<div class="row my-5">
<div class="col">
<h3>{% trans %}title_directories_into_folder{% endtrans %}{% if shared is not defined %} <a
href="{{ path('folder_directory', {id: document.id}) }}"><span class="badge rounded-pill bg-success"><i
class="fa fa-plus"></i> {% trans %}button_add{% endtrans %}</span></a>{% endif %}</h3>
<hr>
{% if document.directories|length > 0 %}
{% set path_directories_uploads = 'uploads/directories/' %}
<ul class="list-group">
{% for i in document.directories %}
<li class="list-group-item list-group-flush">
<div class="row">
<div class="col-2">
{% if i.faceImageSize != 0 %}{% set faceImage = path_directories_uploads ~ '/' ~ i.faceImageName %}{% else %}{% set faceImage = 'img/nophoto.jpg' %}{% endif %}
<a data-toggle="lightbox" data-gallery="report" href="{{ asset(faceImage) }}"><img class="img-fluid" style="max-height: 200px;" src="{{ asset(faceImage) }}" alt="{{ i.fullname}}"></a>
</div>
<div class="col">
<h4>#{{i.id}} {{i.fullName}}</h4>
<p>{% trans %}title_created_at{% endtrans %}: {{i.createdAt |date('_datetime.format'|trans)}}</p>
{% if i.wanted %}<p class="text-danger">{% trans %}title_directory_wanted_light{% endtrans %}</p>{% endif %}
{% if i.dead %}<p class="text-warning">{% trans %}title_directory_dead{% endtrans %}</p>{% endif %}
</div>
{% if shared is not defined %}
<div class="col-3">
{% include '_cells/directoryActions.html.twig' with {'directory': i} %}
</div>
{% endif %}
</div>
</li>
{% endfor %}
</ul>
{% else %}
{{ 'no_data'|trans}}
{% endif %}
</div>
</div>

View File

@@ -0,0 +1,30 @@
<h2>{% trans %}title_informations{% endtrans %}</h2>
{{ document.content | raw }}
{% if document.directories|length > 0 %}
<h2>{% trans %}title_directory_into_gang{% endtrans %}</h2><hr>
{% for i in document.directories %}
{% set path_directories_uploads = 'uploads/directories/' ~ i.id %}
<div class="row mb-3">
<div class="col-3 border-end">
{% if i.faceImageSize != 0 %}{% set faceImage = path_directories_uploads ~ '/' ~ i.faceImageName %}{% else %}{% set faceImage = 'img/nophoto.jpg' %}{% endif %}
<a data-toggle="lightbox" data-gallery="report" href="{{ asset(faceImage) }}"><img class="img-fluid" style="max-height: 200px;" src="{{ asset(faceImage) }}" alt="{{ i.fullname}}"></a>
</div>
<div class="col">
<div class="card">
<div class="card-header">
<a href="{{ path('directory_view', {id: i.id}) }}">{{i.fullName}} ( #{{i.id}} )</a>
</div>
<div class="card-body">
<p class="card-text">
<ul>
<li>{% trans %}title_gender{% endtrans %}: {{i.gender}}</li>
<li>{% trans %}title_phone{% endtrans %}: {{i.phone}}</li>
</ul>
</p>
</div>
</div>
</div>
</div>
{% endfor %}
{% endif %}

View File

@@ -0,0 +1,2 @@
<h2>{% trans %}title_informations{% endtrans %}</h2>
{{ document.content | raw }}

View File

@@ -0,0 +1,14 @@
<ul>
<li>{% trans %}title_arrested_at{% endtrans %} : {{ document.arrestedAt|date('_datetime.format'|trans) }}</li>
<li>{% trans %}title_jailed_at{% endtrans %} : {{ document.jailedAt|date('_datetime.format'|trans) }}</li>
</ul>
<ul>
<li>{% trans %}title_ask_for_lawyer{% endtrans %} : {{ document.lawyer ? 'yes' : 'no' }}</li>
<li>{% trans %}title_ask_for_medic{% endtrans %} : {{ document.medic ? 'yes' : 'no' }}</li>
</ul>
<hr>
<div>
<h2>{% trans %}title_informations{% endtrans %}</h2>
{{ document.content | raw }}
</div>

View File

@@ -0,0 +1,4 @@
<ul>
<li>{% trans %}title_type{% endtrans %} : {{ document.type|trans }}</li>
<li>{% trans %}title_until{% endtrans %} : {{ document.until|date('_datetime.format'|trans) }} H</li>
</ul>

View File

@@ -0,0 +1,2 @@
<h2>{% trans %}title_informations{% endtrans %}</h2>
{{ document.content | raw }}

View File

@@ -0,0 +1 @@
{{ document.content | raw }}

View File

@@ -0,0 +1,4 @@
<p>{% trans %}title_sanction_for{% endtrans %} : <span class="fw-bold">{{ document.user.fullName }}</span></p>
<p class="text-decoration-underline">{% trans %}title_description{% endtrans %} :</p>
<p>{{ document.content | raw }}</p>

View File

@@ -0,0 +1,10 @@
<ul>
<li>{% trans %}title_type{% endtrans %}: {{ document.type|trans }}</li>
<li>{% trans %}title_numberplate{% endtrans %}: {{ document.numberplate | default('value_no_value'|trans) }}</li>
<li>{% trans %}title_model{% endtrans %}: {{ document.model | default('value_no_value'|trans) }}</li>
<li>{% trans %}title_color{% endtrans %}: {{ document.color | default('value_no_value'|trans) }}</li>
</ul>
<h5>{% trans %}title_informations{% endtrans %} : </h5>
<div class="p-2">
{{ document.content | raw }}
</div>

View File

@@ -0,0 +1 @@
{{ document.content | raw }}

View File

@@ -0,0 +1,135 @@
{% extends 'base.html.twig' %}
{% block title %}{{ ("documentType_" ~ document.getClassShort)|trans }}: {{ document.getTitle }}{% endblock %}
{% block subtitle %}#{{ document.id }}: {{ document.getTitle }} {% endblock %}
{% block body %}
{% set groupLogo = 'img/nologo.png' %}
{% if document.mainGroup %}
{% if document.mainGroup.imageSize != 0 %}
{% set groupLogo = 'uploads/groups/' ~ document.mainGroup.imageName %}
{% endif %}
{% endif %}
<div class="row">
<div class="col-12 col-md-8 mb-5{% if shared is defined %} mx-5 my-2{% endif %}">
{% if document.archive %}
<div class="card prod-p-card bg-primary background-pattern-white">
<div class="card-body">
<div class="row align-items-center m-b-0">
<div class="col">
<h6 class="m-b-5 text-white">{% trans %}title_document_archived{% endtrans %}</h6>
</div>
<div class="col-auto">
<i class="fas fa-archive text-white"></i>
</div>
</div>
</div>
</div>
{% endif %}
{% if shared is not defined %}
{% if document.AllowShare %}
<div class="card prod-p-card bg-danger background-pattern-white">
<div class="card-body">
<div class="row align-items-center m-b-0">
<div class="col">
<h6 class="m-b-5 text-white">{% trans %}title_document_shared{% endtrans %}</h6>
</div>
<div class="col-auto">
<i class="fas fa-exclamation-triangle text-white"></i>
</div>
</div>
</div>
</div>
{% endif %}
{% endif %}
<div class="document-container p-2 mt-2">
<div class="row align-items-center">
<div class="col-12 col-xl-3">
<img src="{{ asset(groupLogo) }}" alt="{{document.mainGroup.shortname}}" class="img-fluid document-group-logo">
</div>
<div class="col">
<h1 style="color:beige;">{{document.mainGroup.name}}</h1>
<h2 style="color:beige;">{{ ("documentType_" ~ document.getClassShort)|trans }} #{{ document.getId }} : {{ document.getTitle }}</h2>
</div>
</div>
<hr>
<div class="row p-2">
<div class="col-12">
{% include 'document/types/' ~ document.getClassShort ~ '.html.twig' with {'document': document} %}
</div>
</div>
<hr>
<div class="row mb-2">
<div class="col-12 col-md-6">
{% if shared is not defined and history |length > 1 %}
<p>{% trans %}title_document_edited{% endtrans %} {{ history |length -1 }} {% trans %}since_its_creation{% endtrans %}. <a href="{{path('document_history', {'id': document.id})}}">{% trans %}button_view_history{% endtrans %}</a></p>
{% endif %}
</div>
<div class="col-12 col-md-6">
{{ document.creator.fullname }}, {% trans %}for{% endtrans %} {{ document.mainGroup.name }} <br>{% trans %}title_created_at{% endtrans %} {{ document.createdAt|date('_datetime.format'|trans) }}
{% if shared is not defined %}<span class="float-end">{% include '_cells/documentActions.html.twig' with {'document': document} %}</span> {% endif %}
</div>
</div>
</div>
<div class="row mt-5">
<div class="col">
<h3>{% trans %}title_comments{% endtrans %} {% if shared is not defined %}<a href="#" data-bs-toggle="modal" data-bs-target="#addCommentModal"><span class="badge rounded-pill bg-success"><i class="fa fa-plus"></i> {% trans %}button_add_comment{% endtrans %}</span></a>{% endif %}</h3><hr>
<ul class="timeline">
{% for c in document.comments %}
<li>
{{ c.creator.fullname }} {{c.creator.mainGroup ? c.creator.mainGroup.shortname : 'No Group'}}, {% trans %}title_created_at{% endtrans %} {{ c.createdAt|date('_datetime.format'|trans) }}
<hr>
{{ c.content | raw }}
<span class="float-end">{% if shared is not defined %}{% include '_cells/commentActions.html.twig' with {'comment': c} %}{% endif %}</span>
</li>
{% endfor %}
</ul>
</div>
</div>
</div>
<div class="col-12 col-md-4">
{% if document.directory is defined and document.directory is not null %}
<h3>{% trans %}title_directory_linked{% endtrans %}</h3><hr>
{% include '_cells/directoryCard.html.twig' with {'directory': document.directory} %}
{% endif %}
{% if document.user is defined and document.user is not null %}
<h3>{% trans %}title_user_linked{% endtrans %}</h3><hr>
{% include '_cells/userInformations.html.twig' with {'user': document.user} %}
{% endif %}
</div>
</div>
{% if shared is not defined %}
<!-- Modal -->
<div class="modal fade" id="addCommentModal" tabindex="-1" role="dialog" aria-labelledby="addCommentModalTitle" aria-hidden="true">
<div class="modal-dialog modal-dialog-centered modal-xl" role="document">
<div class="modal-content">
<div class="modal-header">
<h5 class="modal-title" id="addCommentModalTitle">{% trans %}title_add_comment{% endtrans %}</h5>
</div>
<div class="modal-body">
{{ form(formComment) }}
</div>
<div class="modal-footer">
<button type="button" class="btn btn-secondary" data-dismiss="modal">{% trans %}button_cancel{% endtrans %}</button>
</div>
</div>
</div>
</div>
{% endif %}
{% endblock %}

View File

@@ -0,0 +1,32 @@
{% extends 'base.html.twig' %}
{% block title %}{% trans %}title_folder_add_directory{% endtrans%} "{{ folder.title }}"{% endblock %}
{% block body %}
<div class="row">
<div class="col-12 col-md-5">
{{form(searchForm)}}
</div>
<div class="col">
{% if wanted %}
<a href="{{ path('folder_directory', {id: folder.id}) }}" class="btn btn-primary my-1">{% trans %}button_exit_wanted_directories{% endtrans %}</a>
{% else %}
<a href="{{ path('folder_directory_wanted', {id: folder.id}) }}" class="btn btn-info my-1">{% trans %}button_go_to_wanted_directories{% endtrans %}</a>
{% endif %}
{% if dead %}
<a href="{{ path('folder_directory', {id: folder.id}) }}" class="btn btn-primary my-1">{% trans %}button_exit_dead_directories{% endtrans %}</a>
{% else %}
<a href="{{ path('folder_directory_dead', {id: folder.id}) }}" class="btn btn-info my-1">{% trans %}button_go_to_dead_directories{% endtrans %}</a>
{% endif %}
</div>
</div>
<div class="row">
<div class="col-lg-8">
{% include '_cells/directoryTable.html.twig' with {'directories': pagination, addtofolder: folder.id} %}
</div>
</div>
<div class="row">
{{ knp_pagination_render(pagination) }}
</div>
{% endblock %}

View File

@@ -0,0 +1,24 @@
{% extends 'base.html.twig' %}
{% block title %}{% trans %}title_folder_add_documents{% endtrans%} "{{ folder.title }}"{% endblock %}
{% block body %}
<div class="row">
<div class="col-12 col-md-5">{{form(searchForm)}}</div>
<div class="col-12 col-md-3">
{% if archive %}
<a href="{{ path('folder_document', {id: folder.id}) }}" class="btn btn-info">{% trans %}button_go_to_not_archived{% endtrans %}</a>
{% else %}
<a href="{{ path('folder_document_archive', {id: folder.id}) }}" class="btn btn-primary">{% trans %}button_go_to_archived{% endtrans %}</a>
{% endif %}
</div>
</div>
<div class="row">
<div class="col-lg-8"><hr>
{% include '_cells/documentTable.html.twig' with {'documents': pagination, addtofolder: folder.id } %}
</div>
</div>
<div class="row">
{{ knp_pagination_render(pagination) }}
</div>
{% endblock %}

View File

@@ -0,0 +1,103 @@
{% use "bootstrap_5_layout.html.twig" %}
{% block permissions_widget %}
<div {{ block('widget_container_attributes') }}>
{% for group_label, group in choices %}
{%- if group is iterable -%}
<div class="mt-2">
<label class="mb-2"><b>{{ group_label|trans({}, translation_domain) }}</b></label>
{% for key, choice in group %}
<div>
{{- form_widget(form[key]) -}}
{{- form_label(form[key]) -}}
</div>
{% endfor %}
</div>
<hr>
{%- endif -%}
{% endfor %}
</div>
{% endblock %}
{%- block form_widget_simple -%}
{%- set attr = attr | merge({class: (attr.class | default('') ~ ' form-control') | trim}) -%}
{{ parent() }}
{%- endblock form_widget_simple -%}
{%- block search_widget -%}
<div class="input-group">
<span class="input-group-text"><i class="fas fa-search"></i></span>
{{ block('form_widget_simple') }}
<button class="btn btn-outline-secondary" type="submit">{% trans %}button_search{% endtrans %}</button>
</div>
{%- endblock search_widget -%}
{%- block email_widget -%}
<div class="input-group">
<span class="input-group-text"><i class="fas fa-envelope-open-text"></i></span>
{{ block('form_widget_simple') }}
</div>
{%- endblock email_widget -%}
{%- block password_widget -%}
{%- set type = type | default('password') -%}
<div class="input-group">
<span class="input-group-text"><i class="fas fa-lock"></i></span>
{{ block('form_widget_simple') }}
</div>
{%- endblock password_widget -%}
{%- block firstname_widget -%}
<div class="input-group">
<span class="input-group-text"><i class="fas fa-user"></i></span>
{{ block('form_widget_simple') }}
</div>
{%- endblock firstname_widget -%}
{%- block lastname_widget -%}
<div class="input-group">
<span class="input-group-text"><i class="far fa-user"></i></span>
{{ block('form_widget_simple') }}
</div>
{%- endblock lastname_widget -%}
{%- block gender_widget -%}
<div class="input-group">
<span class="input-group-text"><i class="fas fa-transgender-alt"></i></span>
{{ block('form_widget_simple') }}
</div>
{%- endblock gender_widget -%}
{%- block height_widget -%}
<div class="input-group">
<span class="input-group-text"><i class="fas fa-ruler-combined"></i></span>
{{ block('form_widget_simple') }}
</div>
{%- endblock height_widget -%}
{%- block weight_widget -%}
<div class="input-group">
<span class="input-group-text"><i class="fas fa-weight"></i></span>
{{ block('form_widget_simple') }}
</div>
{%- endblock weight_widget -%}
{%- block phone_widget -%}
<div class="input-group">
<span class="input-group-text"><i class="fas fa-phone"></i></span>
{{ block('form_widget_simple') }}
</div>
{%- endblock phone_widget -%}
{%- block group_widget -%}
<div class="input-group">
<span class="input-group-text"><i class="fas fa-users"></i></span>
{{ block('choice_widget') }}
</div>
{%- endblock group_widget -%}
{%- block checkbox_widget -%}
<div class="form-check p-2">
{{ parent() }}
</div>
{%- endblock checkbox_widget -%}

View File

@@ -0,0 +1,14 @@
{% extends 'base.html.twig' %}
{% block title %}{% trans %}title_employee_administration{% endtrans %}: "{{ employee.fullName }}"{% endblock %}
{% block body %}
<div class="row">
<div class="col-lg-4">
{{form(form)}}
</div>
<div class="col-lg-4">
{% include '_cells/userInformations.html.twig' with {'user': employee} %}
</div>
</div>
{% endblock %}

View File

@@ -0,0 +1,23 @@
{% extends 'base.html.twig' %}
{% block title %}{% trans %}title_group_administration{% endtrans %}{% endblock %}
{% block subtitle %}{% trans %}title_group_administration{% endtrans %} {{ app.user.mainGroup.name }}{% endblock %}
{% block body %}
<div class="row">
<div class="col-12 col-lg-6">
<h3>{% trans %}title_members{% endtrans %}</h3> <hr>
<div class="row">
<div class="col-12">
{% include '_cells/userTable.html.twig' with {'users': group.users} %}
</div>
</div>
</div>
<div class="col-12 col-lg-4">
<h3>{% trans %}title_motd{% endtrans %}</h3> <hr>
{{form(formMOTD)}}
</div>
</div>
{% endblock %}

View File

@@ -0,0 +1,91 @@
{% extends 'base.html.twig' %}
{% block title %}{% trans %}title_home{% endtrans %}{% endblock %}
{% block subtitle %}{% trans %}subtitle_home{% endtrans %}{% endblock %}
{% block body %}
<div class="row">
<div class="col-xl-6 col-md-12">
{% if wanted %}
<div class="row">
<div class="col">
<h6>{% trans %}title_wanted_directory{% endtrans %}</h6>
<hr>
<div class="row">
{% for i in wanted %}
{% set path_directories_uploads = 'uploads/directories' %}
{% if i.faceImageSize != 0 %}{% set faceImage = path_directories_uploads ~ '/' ~ i.faceImageName %}{% else %}{% set faceImage = 'img/nophoto.jpg' %}{% endif %}
<div class="col-sm-6">
<div class="card prod-p-card background-pattern">
<div class="card-body">
<div class="row align-items-center m-b-0">
<div class="col">
<h6 class="m-b-5">{% trans %}title_wanted{% endtrans %}</h6>
<h3 class="m-b-0"><a href="{{ path('directory_view', {id: i.id}) }}">{{ i.fullname}}</a></h3>
</div>
<div class="col-auto">
<a data-toggle="lightbox" data-gallery="wanted" data-caption="{% trans %}title_wanted{% endtrans %}: {{ i.fullname }}" href="{{ asset(faceImage) }}"><img class="img-fluid" style="max-height: 100px;" src="{{ asset(faceImage) }}" alt="{{ i.fullname}}"></a>
</div>
</div>
</div>
</div>
</div>
{% endfor %}
</div>
</div>
</div>
{% endif %}
<div class="row">
<h6>{% trans %}title_last_documents{% endtrans %}</h6>
<hr>
{% include '_cells/documentTable.html.twig' with {'documents': documents, 'noaction': true} %}
</div>
</div>
<div class="col-xl-6 col-md-12">
{% if app.user.mainGroup.motd %}
<div class="row">
<div class="col">
<h6>{% trans %}title_motd{% endtrans %}</h6>
<hr>
<div class="card">
<div class="card-body">{{ app.user.mainGroup.motd | raw }}</div>
<div class="card-footer">{% trans %}title_last_update{% endtrans %} : {{ app.user.mainGroup.motdUpdatedAt | date('_datetime.format'|trans) }}</div>
</div>
</div>
</div>
{% endif %}
<div class="row">
<div class="col">
<h6>{% trans %}title_announces{% endtrans %} <a href="{{ path('document_create', {type: 'announce'}) }}"><span class="badge rounded-pill bg-success"><i class="fa fa-plus"></i> {% trans %}button_create{% endtrans %}</span></a></h6>
<hr>
{% for a in announces %}
{% set groupLogo = 'img/nologo.png' %}
{% if a.mainGroup %}
{% if a.mainGroup.imageSize != 0 %}
{% set groupLogo = 'uploads/groups/' ~ a.mainGroup.imageName %}
{% endif %}
{% endif %}
<div class="card">
<div class="card-header">
<div class="row align-items-center">
<div class="col-2 col-md-1"><img src="{{ asset(groupLogo) }}" alt="{{ a.mainGroup.name }} " class="img-icon"></div>
<div class="col fw-bold">{{ a.title }}</div>
</div>
</div>
<div class="card-body">{{ a.content | raw }}</div>
<div class="card-footer">{{ a.creator.fullname }} {% trans %}for{% endtrans %} {{ a.mainGroup.name }} , {% trans %}title_created_at{% endtrans %} {{ a.createdAt|date('_datetime.format'|trans) }} | {% include '_cells/documentActions.html.twig' with {'document': a} %}</div>
</div>
{% endfor %}
<p class="text-center"><a href="{{ path('document_list', {type: 'announce'}) }}" class="btn btn-primary text-dark btn-bloc">{% trans %}link_more_announces{% endtrans %}</a></p>
</div>
</div>
</div>
</div>
{% endblock %}

View File

@@ -0,0 +1,24 @@
{% extends 'base.html.twig' %}
{% block title %}{% trans %}title_user_profile{% endtrans %}{% endblock %}
{% block subtitle %}{% if app.user.mainRank %}{{ app.user.mainRank.shortname }}. {% endif %}{{ app.user.fullName }}{% endblock %}
{% block body %}
<div class="row">
<div class="col-lg-6">
<h2>{% trans %}title_informations{% endtrans %}</h2>
<hr>
{{ form(form) }}
<hr>
<h2>{% trans %}title_actions{% endtrans %}</h2>
<a href="{{ path('me_password') }}" class="btn btn-success">{% trans %}button_change_password{% endtrans %}</a>
</div>
<div class="col-lg-6">
<h2>{% trans %}title_documents{% endtrans %}</h2>
<hr>
{% include '_cells/documentTable.html.twig' with {'documents': pagination, 'noauthor': true, 'noaction': true} %}
<div class="row">{{ knp_pagination_render(pagination) }}</div>
</div>
</div>
{% endblock %}

View File

@@ -0,0 +1,15 @@
{% extends 'base.html.twig' %}
{% block title %}{% trans %}title_user_profile{% endtrans %}{% endblock %}
{% block subtitle %}{% if app.user.mainRank %}{{ app.user.mainRank.shortname }}. {% endif %}{{ app.user.fullName }}{% endblock %}
{% block body %}
<div class="row">
<div class="col-lg-6">
<h2>{% trans %}title_password{% endtrans %}</h2>
<hr>
{{ form(form) }}
</div>
</div>
{% endblock %}

View File

@@ -0,0 +1,14 @@
{% extends 'base.html.twig' %}
{% block title %}{% trans %}title_notification_list{% endtrans %}{% endblock %}
{% block body %}
<div class="row">
<div class="col-lg-8"><hr>
{% include '_cells/notificationTable.html.twig' with {'notifications': pagination} %}
</div>
</div>
<div class="row">
{{ knp_pagination_render(pagination) }}
</div>
{% endblock %}

View File

@@ -0,0 +1,31 @@
{% extends 'base.html.twig' %}
{% block title %}{% trans %}title_password_reset_email_sent{% endtrans %}{% endblock %}
{% block body %}
<!-- [ auth-signin ] start -->
<div class="auth-wrapper">
<div class="auth-content">
<div class="card">
<div class="row align-items-center text-center">
<div class="col-md-12">
<div class="card-body">
<img src="{{ asset('img/logo.png') }}" alt="" class="img-fluid mb-4">
<h4 class="mb-3 f-w-400">{% trans %}title_email_sent{% endtrans %}</h4>
<p>
{% trans %}text_reset_password_explanation{% endtrans %}
{% trans %}email_text_link_expire_in{% endtrans %} {{ resetToken.expirationMessageKey|trans(resetToken.expirationMessageData, 'ResetPasswordBundle') }}.
</p>
<p class="mb-0 text-muted">{% trans %}no_account{% endtrans %} ? <a href="{{ path('app_register') }}" class="f-w-400">{% trans %}button_register{% endtrans %}</a></p>
<p class="mb-2">{% trans %}already_have_account{% endtrans %} ? <a href="{{ path('app_login') }}" class="f-w-400">{% trans %}button_login{% endtrans %}</a></p>
</div>
</div>
</div>
</div>
</div>
</div>
<!-- [ auth-signin ] end -->
{% endblock %}

View File

@@ -0,0 +1,31 @@
{% extends 'base.html.twig' %}
{% block title %}{% trans %}title_password_reset{% endtrans %}{% endblock %}
{% block body %}
<!-- [ auth-signin ] start -->
<div class="auth-wrapper">
<div class="auth-content">
<div class="card">
<div class="row align-items-center text-center">
<div class="col-md-12">
<div class="card-body">
<img src="{{ asset('img/logo.png') }}" alt="" class="img-fluid mb-4">
<h4 class="mb-3 f-w-400">{% trans %}title_password_reset{% endtrans %}</h4>
{% for flashError in app.flashes('reset_password_error') %}
<div class="alert alert-danger" role="alert">{{ flashError }}</div>
{% endfor %}
{{ form(requestForm) }}
<p class="mb-0 text-muted">{% trans %}no_account{% endtrans %} ? <a href="{{ path('app_register') }}" class="f-w-400">{% trans %}button_register{% endtrans %}</a></p>
<p class="mb-2">{% trans %}already_have_account{% endtrans %} ? <a href="{{ path('app_login') }}" class="f-w-400">{% trans %}button_login{% endtrans %}</a></p>
</div>
</div>
</div>
</div>
</div>
</div>
<!-- [ auth-signin ] end -->
{% endblock %}

View File

@@ -0,0 +1,28 @@
{% extends 'base.html.twig' %}
{% block title %}{% trans %}title_password_reset{% endtrans %}{% endblock %}
{% block body %}
<!-- [ auth-signin ] start -->
<div class="auth-wrapper">
<div class="auth-content">
<div class="card">
<div class="row align-items-center text-center">
<div class="col-md-12">
<div class="card-body">
<img src="{{ asset('img/logo.png') }}" alt="" class="img-fluid mb-4">
<h4 class="mb-3 f-w-400">{% trans %}title_password_reset{% endtrans %}</h4>
{{ form(resetForm) }}
<p class="mb-0 text-muted">{% trans %}no_account{% endtrans %} ? <a href="{{ path('app_register') }}" class="f-w-400">{% trans %}button_register{% endtrans %}</a></p>
<p class="mb-2">{% trans %}already_have_account{% endtrans %} ? <a href="{{ path('app_login') }}" class="f-w-400">{% trans %}button_login{% endtrans %}</a></p>
</div>
</div>
</div>
</div>
</div>
</div>
<!-- [ auth-signin ] end -->
{% endblock %}

View File

@@ -0,0 +1,33 @@
{% extends 'base.html.twig' %}
{% block title %}{% trans %}title_login{% endtrans %}{% endblock %}
{% block body %}
<!-- [ auth-signin ] start -->
<div class="auth-wrapper">
<div class="auth-content">
<div class="card">
<div class="row align-items-center text-center">
<div class="col-md-12">
<div class="card-body">
<img src="{{ asset('img/logo.png') }}" alt="" class="img-fluid mb-4">
<h4 class="mb-3 f-w-400">{% trans %}title_login{% endtrans %}</h4>
{% if error %}
<div class="alert alert-danger">{{ error.messageKey | trans }}</div>
{% endif %}
{{ form(form) }}
<p class="mb-0 text-muted">{% trans %}no_account{% endtrans %} ? <a href="{{ path('app_register') }}" class="f-w-400">{% trans %}button_register{% endtrans %}</a></p>
<p class="mb-0 text-muted">{% trans %}forgot_password{% endtrans %} ? <a href="{{ path('app_forgot_password_request') }}" class="f-w-400">{% trans %}button_reset{% endtrans %}</a></p>
</div>
</div>
</div>
</div>
</div>
</div>
<!-- [ auth-signin ] end -->
{% endblock %}

View File

@@ -0,0 +1,25 @@
{% extends 'base.html.twig' %}
{% block title %}{% trans %}title_register{% endtrans %}{% endblock %}
{% block body %}
<!-- [ auth-signup ] start -->
<div class="auth-wrapper">
<div class="auth-content">
<div class="card">
<div class="row align-items-center text-center">
<div class="col-md-12">
<div class="card-body">
<img src="{{ asset('img/logo.png') }}" alt="" class="img-fluid mb-4">
<h4 class="mb-3 f-w-400">{% trans %}title_register{% endtrans %}</h4>
{{ form(form) }}
<p class="mb-2">{% trans %}already_have_account{% endtrans %} ? <a href="{{ path('app_login') }}" class="f-w-400">{% trans %}button_login{% endtrans %}</a></p>
<p class="mb-0 text-muted">{% trans %}forgot_password{% endtrans %} ? <a href="{{ path('app_forgot_password_request') }}" class="f-w-400">{% trans %}button_reset{% endtrans %}</a></p>
</div>
</div>
</div>
</div>
</div>
</div>
<!-- [ auth-signup ] end -->
{% endblock %}

View File

@@ -0,0 +1,20 @@
{% extends 'base.html.twig' %}
{% block title %}{% trans %}title_users_documents{% endtrans %}{% endblock %}
{% block subtitle %}{% trans %}title_users_documents{% endtrans %}{% endblock %}
{% block body %}
<div class="row">
<div class="col-lg-6">
<h2>{% trans %}title_documents{% endtrans %}</h2>
<hr>
{% include '_cells/documentTable.html.twig' with {'documents': pagination} %}
<div class="row">{{ knp_pagination_render(pagination) }}</div>
</div>
<div class="col-md-4">
<h2>{% trans %}title_informations{% endtrans %}</h2>
<hr>
{% include '_cells/userInformations.html.twig' with {'user': user} %}
</div>
</div>
{% endblock %}

View File

@@ -0,0 +1,20 @@
{% extends 'base.html.twig' %}
{% block title %}{% trans %}title_users_book{% endtrans %}{% endblock %}
{% block subtitle %}{% trans %}title_users_book{% endtrans %}{% endblock %}
{% block body %}
<div class="row">
<div class="col-lg-5">
{{form(searchForm)}}
</div>
</div>
<div class="row">
<div class="col-md-8">
{% include '_cells/userTable.html.twig' with {'users': pagination} %}
</div>
</div>
<div class="row">
{{ knp_pagination_render(pagination) }}
</div>
{% endblock %}

View File

@@ -0,0 +1,20 @@
{% extends 'base.html.twig' %}
{% block title %}{% trans %}title_users_sanctions{% endtrans %}{% endblock %}
{% block subtitle %}{% trans %}title_users_sanctions{% endtrans %}{% endblock %}
{% block body %}
<div class="row">
<div class="col-lg-6">
<h2>{% trans %}title_sanctions{% endtrans %}</h2>
<hr>
{% include '_cells/documentTable.html.twig' with {'documents': pagination} %}
<div class="row">{{ knp_pagination_render(pagination) }}</div>
</div>
<div class="col-md-4">
<h2>{% trans %}title_informations{% endtrans %}</h2>
<hr>
{% include '_cells/userInformations.html.twig' with {'user': user} %}
</div>
</div>
{% endblock %}

View File

@@ -0,0 +1,22 @@
{% extends 'base.html.twig' %}
{% block title %}{% trans %}title_user_profile{% endtrans %}{% endblock %}
{% block subtitle %}{{ user.fullName }}{% endblock %}
{% block body %}
<div class="row">
<div class="col-12 col-lg-4 mb-5">
<h2>{% trans %}title_informations{% endtrans %}</h2>
<hr>
{% include '_cells/userInformations.html.twig' with {'user': user} %}
</div>
<div class="col-12 col-lg-4">
<h2>{% trans %}title_actions{% endtrans %}</h2>
<hr>
<p><a href="{{ path('user_view_documents', {'id': user.id}) }}" class="btn btn-success">{% trans %}button_view_user_documents{% endtrans %}</a></p>
{% if app.user.hasPermission('group_sanction') %}
<p><a href="{{ path('user_view_sanctions', {'id': user.id}) }}" class="btn btn-warning">{% trans %}button_view_user_sanctions{% endtrans %}</a></p>
{% endif %}
</div>
</div>
{% endblock %}