version 1

This commit is contained in:
Freedyx29
2025-10-24 16:18:08 +02:00
parent 464156fdd1
commit 4ffa0efb5a
21 changed files with 3718 additions and 2246 deletions

View File

@@ -0,0 +1,90 @@
{% extends 'base.html.twig' %}
{% block title %}Assistants IA{% endblock %}
{% block body %}
<div class="d-flex align-items-center justify-content-between mb-4">
<h1 class="display-5 fw-bold mb-0">Assistants IA</h1>
<button class="btn btn-primary btn-lg shadow" data-bs-toggle="modal" data-bs-target="#addAssistantModal">
<i class="bi bi-plus-lg me-1"></i> Ajouter un assistant IA
</button>
</div>
<div class="table-responsive shadow-sm rounded">
<table class="table table-hover align-middle mb-0">
<thead class="table-light">
<tr>
<th>Nom</th>
<th>Actions</th>
</tr>
</thead>
<tbody>
{% for assistant in assistants %}
<tr>
<td><span class="fw-semibold text-primary">{{ assistant.nom }}</span></td>
<td>
<a href="{{ path('assistant_ia_detail', {id: assistant.id}) }}" class="btn btn-sm btn-info me-1">
<i class="bi bi-eye"></i> Détails
</a>
<button class="btn btn-sm btn-outline-secondary me-1" data-bs-toggle="modal" data-bs-target="#editAssistantModal{{ assistant.id }}">
<i class="bi bi-pencil"></i> Modifier
</button>
<form method="post" action="{{ path('assistant_ia_delete', {id: assistant.id}) }}" style="display:inline-block" onsubmit="return confirm('Supprimer cet assistant IA ?');">
<input type="hidden" name="_token" value="{{ csrf_token('delete_assistant_ia_' ~ assistant.id) }}">
<button class="btn btn-sm btn-danger"><i class="bi bi-trash"></i> Supprimer</button>
</form>
<div class="modal fade" id="editAssistantModal{{ assistant.id }}" tabindex="-1" aria-hidden="true">
<div class="modal-dialog">
<div class="modal-content">
<form method="post" action="{{ path('assistant_ia_edit', {id: assistant.id}) }}">
<div class="modal-header">
<h5 class="modal-title">Modifier l'assistant IA</h5>
<button type="button" class="btn-close" data-bs-dismiss="modal" aria-label="Close"></button>
</div>
<div class="modal-body">
<div class="mb-2">
<label class="form-label">Nom</label>
<input type="text" name="nom" class="form-control" value="{{ assistant.nom }}" required maxlength="50">
</div>
{# Le champ 'type' a été supprimé car il n'existe pas dans l'entité #}
</div>
<div class="modal-footer">
<button type="button" class="btn btn-secondary" data-bs-dismiss="modal">Annuler</button>
<button type="submit" class="btn btn-primary">Enregistrer</button>
</div>
</form>
</div>
</div>
</div>
</td>
</tr>
{% else %}
<tr>
<td colspan="2" class="text-center text-muted">Aucun assistant IA trouvé.</td>
</tr>
{% endfor %}
</tbody>
</table>
</div>
{# Modal ajout assistant IA #}
<div class="modal fade" id="addAssistantModal" tabindex="-1" aria-hidden="true">
<div class="modal-dialog">
<div class="modal-content">
<form method="post" action="{{ path('assistant_ia_add') }}">
<div class="modal-header">
<h5 class="modal-title">Ajouter un assistant IA</h5>
<button type="button" class="btn-close" data-bs-dismiss="modal" aria-label="Close"></button>
</div>
<div class="modal-body">
<div class="mb-2">
<label class="form-label">Nom</label>
<input type="text" name="nom" class="form-control" required maxlength="50">
</div>
</div>
<div class="modal-footer">
<button type="button" class="btn btn-secondary" data-bs-dismiss="modal">Annuler</button>
<button type="submit" class="btn btn-primary">Ajouter</button>
</div>
</form>
</div>
</div>
</div>
{% endblock %}