version 1
This commit is contained in:
25
templates/assistant_ia/detail.html.twig
Normal file
25
templates/assistant_ia/detail.html.twig
Normal file
@@ -0,0 +1,25 @@
|
||||
{% extends 'base.html.twig' %}
|
||||
{% block title %}Détails Assistant IA{% endblock %}
|
||||
{% block body %}
|
||||
<div class="container py-4">
|
||||
<h1 class="mb-4">Détails de l'assistant IA</h1>
|
||||
<div class="card mb-4">
|
||||
<div class="card-body">
|
||||
<h5 class="card-title">{{ assistant.nom }}</h5>
|
||||
</div>
|
||||
</div>
|
||||
<h3 class="mt-4">Contributions IA</h3>
|
||||
<ul class="list-group mb-4">
|
||||
{% for contribIa in assistant.contribIas %}
|
||||
<li class="list-group-item">
|
||||
<strong>Projet :</strong> {{ contribIa.contribution.projet.nom }}<br>
|
||||
<strong>Utilisateur :</strong> {{ contribIa.contribution.membre.nom }} {{ contribIa.contribution.membre.prenom }}<br>
|
||||
<strong>Commentaire :</strong> {{ contribIa.commentaire }}
|
||||
</li>
|
||||
{% else %}
|
||||
<li class="list-group-item text-muted">Aucune contribution IA liée.</li>
|
||||
{% endfor %}
|
||||
</ul>
|
||||
<a href="{{ path('assistant_ia_index') }}" class="btn btn-secondary"><i class="bi bi-arrow-left"></i> Retour</a>
|
||||
</div>
|
||||
{% endblock %}
|
||||
90
templates/assistant_ia/index.html.twig
Normal file
90
templates/assistant_ia/index.html.twig
Normal 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 %}
|
||||
Reference in New Issue
Block a user