feat: add observation detail template with interactive map, photos, and discussion features

This commit is contained in:
Karl Determe 2026-10-06 11:31:19 +02:00
parent 496b6d9c8b
commit 0c1ae3163d

View file

@ -611,26 +611,26 @@
<!-- Colonne 1 : Actions intervention (primary) -->
<div class="d-flex flex-column gap-1">
{% if observation.observation_type == 'inventory' or observation.observation_type == 'remark' %}
<button type="button" class="btn btn-outline-primary btn-sm" style="width:200px"
<button type="button" class="btn btn-outline-primary btn-sm text-nowrap" style="width:230px"
data-bs-toggle="modal" data-bs-target="#modalChoixTypeIntervention">
<i class="bi bi-tools"></i> {% translate "Créer une intervention" %}
</button>
{% else %}
<form method="post" action="{% url 'observations:create_intervention_from_observation' observation.id %}">
{% csrf_token %}
<button type="submit" class="btn btn-outline-primary btn-sm" style="width:200px">
<button type="submit" class="btn btn-outline-primary btn-sm text-nowrap" style="width:230px">
<i class="bi bi-tools"></i> {% translate "Créer une intervention" %}
</button>
</form>
{% endif %}
{% if not observation.intervention %}
<button type="button" class="btn btn-outline-primary btn-sm" style="width:200px"
<button type="button" class="btn btn-outline-primary btn-sm text-nowrap" style="width:230px"
data-bs-toggle="modal" data-bs-target="#modalLierIntervention">
<i class="bi bi-link-45deg"></i> {% translate "Lier à une intervention" %}
</button>
{% endif %}
{% if not observation.project %}
<button type="button" class="btn btn-outline-primary btn-sm" style="width:200px"
<button type="button" class="btn btn-outline-primary btn-sm text-nowrap" style="width:230px"
data-bs-toggle="modal" data-bs-target="#modalLierProjet">
<i class="bi bi-diagram-3"></i> {% translate "Lier à un projet" %}
</button>
@ -638,35 +638,35 @@
</div>
<!-- Colonne 2 : Actions statut -->
<div class="d-flex flex-column gap-1">
<button type="button" class="btn btn-outline-success btn-sm" style="width:200px"
<button type="button" class="btn btn-outline-success btn-sm text-nowrap" style="width:230px"
data-bs-toggle="modal" data-bs-target="#actionStatusModal"
data-status="processed"
data-label="{% translate 'Marquer comme traitée' %}"
data-icon="bi-check2-circle" data-btn-class="btn-success">
<i class="bi bi-check2-circle"></i> {% translate "Marquer comme traitée" %}
</button>
<button type="button" class="btn btn-outline-warning btn-sm" style="width:200px"
<button type="button" class="btn btn-outline-warning btn-sm text-nowrap" style="width:230px"
data-bs-toggle="modal" data-bs-target="#actionStatusModal"
data-status="needs_info"
data-label="{% translate 'Demander un complément' %}"
data-icon="bi-question-circle" data-btn-class="btn-warning">
<i class="bi bi-question-circle"></i> {% translate "Demander un complément" %}
</button>
<button type="button" class="btn btn-outline-info btn-sm" style="width:200px"
<button type="button" class="btn btn-outline-info btn-sm text-nowrap" style="width:230px"
data-bs-toggle="modal" data-bs-target="#actionStatusModal"
data-status="duplicate"
data-label="{% translate 'Doublon' %}"
data-icon="bi-files" data-btn-class="btn-info">
<i class="bi bi-files"></i> {% translate "Doublon" %}
</button>
<button type="button" class="btn btn-outline-warning btn-sm" style="width:200px"
<button type="button" class="btn btn-outline-warning btn-sm text-nowrap" style="width:230px"
data-bs-toggle="modal" data-bs-target="#actionStatusModal"
data-status="to_redirect"
data-label="{% translate 'À rediriger' %}"
data-icon="bi-reply-all" data-btn-class="btn-warning">
<i class="bi bi-reply-all"></i> {% translate "À rediriger" %}
</button>
<button type="button" class="btn btn-outline-secondary btn-sm" style="width:200px"
<button type="button" class="btn btn-outline-secondary btn-sm text-nowrap" style="width:230px"
data-bs-toggle="modal" data-bs-target="#actionStatusModal"
data-status="not_relevant"
data-label="{% translate 'Non relevant' %}"
@ -684,12 +684,12 @@
<form method="post" action="{% url 'observations:observation_change_status' observation.id %}" class="d-inline">
{% csrf_token %}
<input type="hidden" name="new_status" value="to_process">
<button type="submit" class="btn btn-success btn-sm" style="width:200px">
<button type="submit" class="btn btn-success btn-sm text-nowrap" style="width:230px">
<i class="bi bi-send-check"></i> {% translate "Compléments fournis" %}
</button>
</form>
{% if can_take_action %}
<button type="button" class="btn btn-outline-secondary btn-sm" style="width:200px"
<button type="button" class="btn btn-outline-secondary btn-sm text-nowrap" style="width:230px"
data-bs-toggle="modal" data-bs-target="#actionStatusModal"
data-status="not_relevant"
data-label="{% translate 'Non relevant / Sans suite' %}"
@ -708,7 +708,7 @@
<form method="post" action="{% url 'observations:observation_change_status' observation.id %}" class="d-inline">
{% csrf_token %}
<input type="hidden" name="new_status" value="to_process">
<button type="submit" class="btn btn-outline-primary btn-sm" style="width:200px">
<button type="submit" class="btn btn-outline-primary btn-sm text-nowrap" style="width:230px">
<i class="bi bi-send"></i> {% translate "Envoyer" %}
</button>
</form>
@ -723,7 +723,7 @@
<form method="post" action="{% url 'observations:observation_change_status' observation.id %}" class="d-inline">
{% csrf_token %}
<input type="hidden" name="new_status" value="archived">
<button type="submit" class="btn btn-outline-secondary btn-sm" style="width:200px">
<button type="submit" class="btn btn-outline-secondary btn-sm text-nowrap" style="width:230px">
<i class="bi bi-archive"></i> {% translate "Archiver" %}
</button>
</form>