128 lines
8.0 KiB
HTML
128 lines
8.0 KiB
HTML
{% extends "base.html" %}
|
|
{% load static %}
|
|
{% load i18n %}
|
|
{% block title %}
|
|
{% trans "My Tickets" %}
|
|
{% endblock title %}
|
|
{% block content %}
|
|
<main class="py-5">
|
|
<div class="container">
|
|
<div class="row justify-content-center mb-5">
|
|
<div class="col-lg-8">
|
|
<div class="card shadow-lg border-0 rounded-4 overflow-hidden animate__animated animate__fadeInDown">
|
|
<div class="card-header bg-gradient py-4 border-0 rounded-top-4 text-center">
|
|
<i class="fa-solid fa-headset fa-2x mb-2"></i>
|
|
<h2 class="card-title fw-bold mb-0">{% trans "Need Help?" %}</h2>
|
|
</div>
|
|
<div class="card-body p-4 p-md-5 text-center bg-white">
|
|
<p class="card-text text-muted mb-4">
|
|
{% blocktrans %}
|
|
Our support team is ready to assist you. Raise a new ticket below, and we'll get back to you as soon as possible.
|
|
{% endblocktrans %}
|
|
</p>
|
|
<a href="{% url 'create_ticket' request.dealer.slug %}"
|
|
class="btn btn-phoenix-primary btn-lg shadow-sm">
|
|
<i class="fa-solid fa-plus me-1"></i>
|
|
{% trans "Raise a New Ticket" %}
|
|
</a>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
{% if messages %}
|
|
<div class="alert-container mb-4">
|
|
{% for message in messages %}
|
|
<div class="alert alert-{{ message.tags }} alert-dismissible fade show"
|
|
role="alert">
|
|
{{ message }}
|
|
<button type="button"
|
|
class="btn-close"
|
|
data-bs-dismiss="alert"
|
|
aria-label="Close"></button>
|
|
</div>
|
|
{% endfor %}
|
|
</div>
|
|
{% endif %}
|
|
<div class="card shadow-lg border-0 rounded-4 animate__animated animate__fadeInUp">
|
|
<div class="card-header border-bottom d-flex flex-column flex-md-row justify-content-between align-items-md-center p-4">
|
|
<h5 class="card-title mb-2 mb-md-0 me-md-4 fw-bold">{% trans "My Tickets" %}</h5>
|
|
<div class="input-group w-100 w-md-50">{% include 'partials/search_box.html' %}</div>
|
|
</div>
|
|
<div class="card-body p-0">
|
|
<div class="table-responsive">
|
|
<table class="table table-striped table-hover mb-0">
|
|
<thead class="bg-light">
|
|
<tr>
|
|
<th scope="col" class="text-secondary text-uppercase fw-bold ps-4">ID</th>
|
|
<th scope="col" class="text-secondary text-uppercase fw-bold">{% trans "Subject" %}</th>
|
|
<th scope="col" class="text-secondary text-uppercase fw-bold">{% trans "Status" %}</th>
|
|
<th scope="col" class="text-secondary text-uppercase fw-bold">{% trans "Priority" %}</th>
|
|
<th scope="col" class="text-secondary text-uppercase fw-bold">{% trans "Created" %}</th>
|
|
<th scope="col"
|
|
class="text-secondary text-uppercase fw-bold text-end pe-4">{% trans "Actions" %}</th>
|
|
</tr>
|
|
</thead>
|
|
<tbody>
|
|
{% for ticket in tickets %}
|
|
<tr>
|
|
<td class="text-muted ps-4">#{{ ticket.id }}</td>
|
|
<td>{{ ticket.subject }}</td>
|
|
<td>
|
|
<span class="badge {% if ticket.status == 'open' %}bg-primary {% elif ticket.status == 'in_progress' %}bg-info {% elif ticket.status == 'resolved' %}bg-success {% else %}bg-secondary{% endif %}">
|
|
{{ ticket.get_status_display }}
|
|
</span>
|
|
</td>
|
|
<td>
|
|
<span class="badge {% if ticket.priority == 'low' %}bg-success {% elif ticket.priority == 'medium' %}bg-warning {% elif ticket.priority == 'high' %}bg-danger {% else %}bg-dark{% endif %}">
|
|
{{ ticket.get_priority_display }}
|
|
</span>
|
|
</td>
|
|
<td>
|
|
<span class="d-block">{{ ticket.created_at|date:"M d, Y" }}</span>
|
|
<span class="text-muted small d-block">{{ ticket.created_at|time:"H:i" }}</span>
|
|
</td>
|
|
<td class="text-end pe-4">
|
|
{% comment %} <a href="{% url 'ticket_detail' request.dealer.slug ticket.id %}"
|
|
class="btn btn-phoenix-primary btn-sm">
|
|
<i class="fa-solid fa-eye me-1"></i>
|
|
{% trans "View" %}
|
|
</a> {% endcomment %}
|
|
|
|
<div class="btn-reveal-trigger position-static">
|
|
<button class="btn btn-sm dropdown-toggle dropdown-caret-none transition-none btn-reveal fs-10"
|
|
type="button"
|
|
data-bs-toggle="dropdown"
|
|
data-boundary="window"
|
|
aria-haspopup="true"
|
|
aria-expanded="false"
|
|
data-bs-reference="parent">
|
|
<span class="fas fa-ellipsis-h fs-10"></span>
|
|
</button>
|
|
<div class="dropdown-menu dropdown-menu-end py-2">
|
|
<a class="dropdown-item"
|
|
href="{% url 'ticket_detail' request.dealer.slug ticket.id %}">
|
|
<i class="fa fa-eye me-2"></i>{% trans "View" %}
|
|
</a>
|
|
</div>
|
|
</div>
|
|
</td>
|
|
|
|
</tr>
|
|
{% empty %}
|
|
<tr>
|
|
<td colspan="6" class="text-center text-muted py-5">
|
|
<i class="fas fa-ticket-alt fs-2 mb-3"></i>
|
|
<p class="mb-0">{% trans "No tickets found." %}</p>
|
|
<p class="text-muted small">{% trans "All your past and present tickets will appear here." %}</p>
|
|
</td>
|
|
</tr>
|
|
{% endfor %}
|
|
</tbody>
|
|
</table>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</main>
|
|
{% endblock %}
|