Enhance candidate lists by restructuring HTML for improved readability and maintainability.
This commit is contained in:
@@ -1,32 +1,32 @@
|
|||||||
{% comment %} Partial: list of CID candidates for HTMX swap {% endcomment %}
|
{% comment %} Partial: list of CID candidates for HTMX swap {% endcomment %}
|
||||||
{% if cid_users %}
|
{% if cid_users %}
|
||||||
<ul class="list-group list-group-flush">
|
<ul class="list-group list-group-flush">
|
||||||
{% for cid in cid_users %}
|
{% for cid in cid_users %}
|
||||||
<li class="list-group-item">
|
<li class="list-group-item">
|
||||||
<div class="d-flex align-items-start justify-content-between">
|
<div class="d-flex align-items-start justify-content-between">
|
||||||
<div>
|
<div>
|
||||||
<div class="d-flex align-items-center">
|
<div class="d-flex align-items-center">
|
||||||
<i class="bi bi-clock-history text-muted me-2" title="View user exam history"
|
<i class="bi bi-clock-history text-muted me-2" title="View user exam history"
|
||||||
hx-get="{% url exam.app_name|add:':exam_user_status_cid' exam.id cid.cid %}"
|
hx-get="{% url exam.app_name|add:':exam_user_status_cid' exam.id cid.cid %}"
|
||||||
hx-target=".modal-content"
|
hx-target=".modal-content"
|
||||||
data-bs-toggle="modal"
|
data-bs-toggle="modal"
|
||||||
data-bs-target="#history-modal"
|
data-bs-target="#history-modal"
|
||||||
></i>
|
></i>
|
||||||
<a class="fw-bold me-2 cid-link" href="{% url 'generic:update_cid' cid.pk %}">{{ cid.cid }}</a>
|
<a class="fw-bold me-2 cid-link" href="{% url 'generic:update_cid' cid.pk %}">{{ cid.cid }}</a>
|
||||||
<span class="text-muted">[{{ cid.passcode }}]</span>
|
<span class="text-muted">[{{ cid.passcode }}]</span>
|
||||||
<a class="ms-3" title="View CID exam details" hx-get="{% url 'generic:cid_user_exam_partial' exam.app_name exam.id cid.cid %}" hx-target=".modal-content" data-bs-toggle="modal" data-bs-target="#history-modal"><i class="bi bi-box-arrow-up-right"></i></a>
|
<a class="ms-3" title="View CID exam details" hx-get="{% url 'generic:cid_user_exam_partial' exam.app_name exam.id cid.cid %}" hx-target=".modal-content" data-bs-toggle="modal" data-bs-target="#history-modal"><i class="bi bi-box-arrow-up-right"></i></a>
|
||||||
|
</div>
|
||||||
|
<div class="small text-muted mt-1">{{ cid.name }}</div>
|
||||||
|
<div class="small">Email: {{ cid.email }}</div>
|
||||||
|
{% if cid.notes %}
|
||||||
|
<div class="small text-muted mt-1 cid-notes" title="{{ cid.notes|escape }}" data-bs-toggle="tooltip" data-bs-placement="top">Notes: {{ cid.notes|truncatechars:120 }}</div>
|
||||||
|
{% endif %}
|
||||||
</div>
|
</div>
|
||||||
<div class="small text-muted mt-1">{{ cid.name }}</div>
|
<div class="badge-container d-flex align-items-center ms-3"></div>
|
||||||
<div class="small">Email: {{ cid.email }}</div>
|
|
||||||
{% if cid.notes %}
|
|
||||||
<div class="small text-muted mt-1 cid-notes" title="{{ cid.notes|escape }}" data-bs-toggle="tooltip" data-bs-placement="top">Notes: {{ cid.notes|truncatechars:120 }}</div>
|
|
||||||
{% endif %}
|
|
||||||
</div>
|
</div>
|
||||||
<div class="badge-container d-flex align-items-center ms-3"></div>
|
</li>
|
||||||
</div>
|
{% endfor %}
|
||||||
</li>
|
</ul>
|
||||||
{% endfor %}
|
|
||||||
</ul>
|
|
||||||
{% else %}
|
{% else %}
|
||||||
<p class="text-muted">This exam has no CID candidates.</p>
|
<p class="text-muted">This exam has no CID candidates.</p>
|
||||||
{% endif %}
|
{% endif %}
|
||||||
|
|||||||
@@ -1,27 +1,27 @@
|
|||||||
{% comment %} Partial: list of User candidates for HTMX swap {% endcomment %}
|
{% comment %} Partial: list of User candidates for HTMX swap {% endcomment %}
|
||||||
{% if user_users %}
|
{% if user_users %}
|
||||||
<ul class="list-group list-group-flush">
|
<ul class="list-group list-group-flush">
|
||||||
{% for user in user_users %}
|
{% for user in user_users %}
|
||||||
<li class="list-group-item d-flex justify-content-between align-items-start">
|
<li class="list-group-item d-flex justify-content-between align-items-start">
|
||||||
<div>
|
<div>
|
||||||
<div class="d-flex align-items-center">
|
<div class="d-flex align-items-center">
|
||||||
<i class="bi bi-clock-history text-muted me-2" title="View user exam history"
|
<i class="bi bi-clock-history text-muted me-2" title="View user exam history"
|
||||||
hx-get="{% url exam.app_name|add:':exam_user_status_user' exam.id user.id %}"
|
hx-get="{% url exam.app_name|add:':exam_user_status_user' exam.id user.id %}"
|
||||||
hx-target=".modal-content"
|
hx-target=".modal-content"
|
||||||
data-bs-toggle="modal"
|
data-bs-toggle="modal"
|
||||||
data-bs-target="#history-modal"
|
data-bs-target="#history-modal"
|
||||||
></i>
|
></i>
|
||||||
{% if request.user.is_superuser %}
|
{% if request.user.is_superuser %}
|
||||||
<a class="me-2" href='{% url "account_profile" user.username %}'><i class="bi bi-link"></i></a>
|
<a class="me-2" href='{% url "account_profile" user.username %}'><i class="bi bi-link"></i></a>
|
||||||
{% endif %}
|
{% endif %}
|
||||||
<span class="fw-bold">{{ user.username }}</span>
|
<span class="fw-bold">{{ user.username }}</span>
|
||||||
|
</div>
|
||||||
|
<div class="small">Email: {{ user.email }}</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="small">Email: {{ user.email }}</div>
|
<div class="badge-container d-flex align-items-center ms-3"></div>
|
||||||
</div>
|
</li>
|
||||||
<div class="badge-container d-flex align-items-center ms-3"></div>
|
{% endfor %}
|
||||||
</li>
|
</ul>
|
||||||
{% endfor %}
|
|
||||||
</ul>
|
|
||||||
{% else %}
|
{% else %}
|
||||||
<p class="text-muted">This exam has no User candidates.</p>
|
<p class="text-muted">This exam has no User candidates.</p>
|
||||||
{% endif %}
|
{% endif %}
|
||||||
|
|||||||
Reference in New Issue
Block a user