79 lines
3.1 KiB
HTML
79 lines
3.1 KiB
HTML
{% extends 'base.html' %}
|
|
{% load i18n static crispy_forms_filters %}
|
|
{% block title %}
|
|
{% if object %}
|
|
{% trans 'Update Lead' %}
|
|
{% else %}
|
|
{% trans 'Add New Lead' %}
|
|
{% endif %}
|
|
{% endblock %}
|
|
{% block customcss %}
|
|
<style>
|
|
.htmx-indicator{
|
|
opacity:0;
|
|
transition: opacity 500ms ease-in;
|
|
}
|
|
.htmx-request .htmx-indicator{
|
|
opacity:1;
|
|
}
|
|
.htmx-request.htmx-indicator{ /* For elements with htmx-indicator itself becoming the target */
|
|
opacity:1;
|
|
}
|
|
/* Style for the inline spinner if needed */
|
|
.inline-spinner {
|
|
width: 1.5rem; /* Adjust size */
|
|
height: 1.5rem; /* Adjust size */
|
|
vertical-align: middle;
|
|
margin-left: 0.5rem; /* Space from the field */
|
|
}
|
|
</style>
|
|
{% endblock customcss %}
|
|
{% block content %}
|
|
<div class="row justify-content-center mt-5 mb-3">
|
|
<div class="col-lg-8 col-md-10">
|
|
<div class="card shadow-sm border-0 rounded-3">
|
|
<div class="card-header bg-gray-200 py-3 border-0 rounded-top-3">
|
|
<h3 class="mb-0 fs-4 text-center">
|
|
{% if object %}
|
|
{{ _("Update Lead") }}
|
|
{% else %}
|
|
{{ _("Create New Lead") }}
|
|
{% endif %}
|
|
<li class="fas fa-bullhorn text-primary ms-2"></li>
|
|
</h3>
|
|
</div>
|
|
<div class="card-body bg-light-subtle">
|
|
<form class="form" method="post" enctype="multipart/form-data">
|
|
{% csrf_token %}
|
|
{{ form|crispy }}
|
|
<hr class="my-2">
|
|
<div class="d-grid gap-2 d-md-flex justify-content-md-center mt-3">
|
|
<button class="btn btn-phoenix-success btn-lg me-md-2" type="submit">
|
|
<i class="fa-solid fa-floppy-disk me-1"></i>
|
|
{{ _("Save") }}
|
|
</button>
|
|
<a href="{% url 'lead_list' request.dealer.slug %}" class="btn btn-phoenix-danger btn-lg">
|
|
<i class="fa-solid fa-ban me-1"></i>
|
|
{% trans "Cancel" %}
|
|
</a>
|
|
</div>
|
|
</form>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<script>
|
|
document.addEventListener('DOMContentLoaded', function() {
|
|
const spinner = document.createElement('div');
|
|
spinner.id = 'spinner';
|
|
spinner.className = 'htmx-indicator spinner-border text-primary inline-spinner';
|
|
spinner.innerHTML = '<span class="visually-hidden">Loading...</span>';
|
|
const targetFieldDiv = document.getElementById('div_id_id_car_model');
|
|
|
|
if (targetFieldDiv) {
|
|
targetFieldDiv.parentNode.insertBefore(spinner, targetFieldDiv.nextSibling);
|
|
}
|
|
});
|
|
</script>
|
|
{% endblock %}
|