714 lines
47 KiB
HTML
714 lines
47 KiB
HTML
{% load static %} {% load i18n %}
|
||
<!DOCTYPE html>
|
||
{% get_current_language as LANGUAGE_CODE %}
|
||
<html lang="{{ LANGUAGE_CODE }}"
|
||
dir="{% if LANGUAGE_CODE == 'ar' %}rtl{% else %}ltr{% endif %}"
|
||
data-bs-theme=""
|
||
data-navigation-type="default"
|
||
data-navbar-horizontal-shape="default">
|
||
|
||
<head>
|
||
<meta charset="utf-8">
|
||
<meta http-equiv="X-UA-Compatible" content="IE=edge">
|
||
<meta name="viewport" content="width=device-width, initial-scale=1">
|
||
<meta name="description" content="Haikal - The Backbone of Car Qar: An innovative car inventory management system designed to streamline dealership operations. Manage inventory, sales, transfers, and accounting seamlessly with advanced analytics and intuitive tools. Inspired by Arabic origins, Haikal empowers businesses with precision and efficiency.">
|
||
|
||
<title>{% block title %}{% trans 'HAIKAL' %}{% endblock %}</title>
|
||
|
||
|
||
|
||
<link rel="apple-touch-icon" sizes="180x180" href="{% static 'images/favicons/apple-touch-icon.png' %}">
|
||
<link rel="icon" type="image/png" sizes="32x32" href="{% static 'images/favicons/favicon-32x32.png' %}">
|
||
<link rel="icon" type="image/png" sizes="16x16" href="{% static 'images/favicons/favicon-16x16.png' %}">
|
||
<link rel="shortcut icon" type="image/x-icon" href="{% static 'images/favicons/favicon.ico' %}">
|
||
<link rel="manifest" href="{% static 'images/favicons/manifest.json' %}">
|
||
<meta name="msapplication-TileImage" content="{% static 'images/logos/logo-d.png' %}">
|
||
<meta name="theme-color" content="#ffffff">
|
||
|
||
<script src="{% static 'vendors/simplebar/simplebar.min.js' %}"></script>
|
||
<script src="{% static 'js/config.js' %}"></script>
|
||
<script src="{% static 'js/sweetalert2.all.min.js' %}"></script>
|
||
|
||
|
||
|
||
<!-- ===============================================-->
|
||
<!-- Stylesheets-->
|
||
<!-- ===============================================-->
|
||
|
||
|
||
<link href="{% static 'vendors/mapbox-gl/mapbox-gl.css' %}" rel="stylesheet">
|
||
<link href="{% static 'vendors/swiper/swiper-bundle.min.css' %}" rel="stylesheet">
|
||
<link rel="preconnect" href="https://fonts.googleapis.com">
|
||
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin="">
|
||
<link href="https://fonts.googleapis.com/css2?family=Nunito+Sans:wght@300;400;600;700;800;900&display=swap" rel="stylesheet">
|
||
<link href="{% static 'vendors/simplebar/simplebar.min.css' %}" rel="stylesheet">
|
||
<link href="{% static 'css/sweetalert2.min.css' %}" rel="stylesheet">
|
||
<link rel="stylesheet" href="https://unicons.iconscout.com/release/v4.0.8/css/line.css">
|
||
{% if LANGUAGE_CODE == 'en' %}
|
||
<link href="{% static 'css/theme.min.css' %}" type="text/css" rel="stylesheet" id="style-default">
|
||
<link href="{% static 'css/user.min.css' %}" type="text/css" rel="stylesheet" id="user-style-default">
|
||
{% else %}
|
||
<link href="{% static 'css/theme-rtl.min.css' %}" type="text/css" rel="stylesheet" id="style-rtl">
|
||
<link href="{% static 'css/user-rtl.min.css' %}" type="text/css" rel="stylesheet" id="user-style-rtl">
|
||
{% endif %}
|
||
|
||
</head>
|
||
|
||
<body>
|
||
{% include 'messages.html' %}
|
||
<main class="main" id="top">
|
||
<nav class="navbar navbar-vertical navbar-expand-lg">
|
||
<div class="collapse navbar-collapse" id="navbarVerticalCollapse">
|
||
<!-- scrollbar removed-->
|
||
<div class="navbar-vertical-content">
|
||
<ul class="navbar-nav flex-column" id="navbarVerticalNav">
|
||
<li class="nav-item">
|
||
<!-- parent pages-->
|
||
<div class="nav-item-wrapper"><a class="nav-link dropdown-indicator label-1" href="#nv-dashboards" role="button" data-bs-toggle="collapse" aria-expanded="false" aria-controls="nv-dashboards">
|
||
<div class="d-flex align-items-center">
|
||
<div class="dropdown-indicator-icon-wrapper"><span class="fas fa-caret-right dropdown-indicator-icon"></span></div><span class="nav-link-icon"><span data-feather="pie-chart"></span></span><span class="nav-link-text">Dashboards</span>
|
||
</div>
|
||
</a>
|
||
<div class="parent-wrapper label-1">
|
||
<ul class="nav collapse parent" data-bs-parent="#navbarVerticalCollapse" id="nv-dashboards">
|
||
<li class="collapsed-nav-item-title d-none">Dashboards
|
||
</li>
|
||
<li class="nav-item"><a class="nav-link" href="{% url 'accounting' %}">
|
||
<div class="d-flex align-items-center"><span class="nav-link-text">Accounting</span>
|
||
</div>
|
||
</a>
|
||
</li>
|
||
|
||
<li class="nav-item"><a class="nav-link" href="#">
|
||
<div class="d-flex align-items-center"><span class="nav-link-text">Inventory</span>
|
||
</div>
|
||
</a>
|
||
</li>
|
||
<li class="nav-item"><a class="nav-link" href="#">
|
||
<div class="d-flex align-items-center"><span class="nav-link-text">Sales</span>
|
||
</div>
|
||
</a>
|
||
</li>
|
||
<li class="nav-item"><a class="nav-link" href="#">
|
||
<div class="d-flex align-items-center"><span class="nav-link-text">Leads</span>
|
||
</div>
|
||
</a>
|
||
</li>
|
||
</ul>
|
||
</div>
|
||
</div>
|
||
</li>
|
||
<hr class="my-0" />
|
||
<li class="nav-item">
|
||
|
||
<!-- label-->
|
||
<p class="navbar-vertical-label">Apps</p>
|
||
<hr class="navbar-vertical-line" />
|
||
<!-- parent pages-->
|
||
<div class="nav-item-wrapper"><a class="nav-link dropdown-indicator label-1" href="#nv-inventory" role="button" data-bs-toggle="collapse" aria-expanded="false" aria-controls="nv-inventory">
|
||
<div class="d-flex align-items-center">
|
||
<div class="dropdown-indicator-icon-wrapper"><span class="fas fa-caret-right dropdown-indicator-icon"></span></div><span class="nav-link-icon"><span data-feather="truck"></span></span><span class="nav-link-text">{% trans "Inventory"|capfirst %}</span>
|
||
</div>
|
||
</a>
|
||
<div class="parent-wrapper label-1">
|
||
<ul class="nav collapse parent" data-bs-parent="#navbarVerticalCollapse" id="nv-inventory">
|
||
<li class="collapsed-nav-item-title d-none">{% trans "Inventory"|capfirst %}
|
||
</li>
|
||
<li class="nav-item"><a class="nav-link" href="{% url 'car_add' %}">
|
||
<div class="d-flex align-items-center"><span class="nav-link-text">{% trans "add car"|capfirst %}</span>
|
||
</div>
|
||
</a>
|
||
<!-- more inner pages-->
|
||
</li>
|
||
<li class="nav-item"><a class="nav-link" href="{% url 'inventory_stats' %}">
|
||
<div class="d-flex align-items-center"><span class="nav-link-text">{% trans 'Cars'|capfirst %}</span>
|
||
</div>
|
||
</a>
|
||
<!-- more inner pages-->
|
||
</li>
|
||
</ul>
|
||
</div>
|
||
</div>
|
||
<!-- parent pages-->
|
||
<div class="nav-item-wrapper"><a class="nav-link dropdown-indicator label-1" href="#nv-vendors" role="button" data-bs-toggle="collapse" aria-expanded="false" aria-controls="nv-vendors">
|
||
<div class="d-flex align-items-center">
|
||
<div class="dropdown-indicator-icon-wrapper"><span class="fas fa-caret-right dropdown-indicator-icon"></span></div><span class="nav-link-icon"><span data-feather="package"></span></span><span class="nav-link-text">{% trans 'vendors'|capfirst %}</span>
|
||
</div>
|
||
</a>
|
||
<div class="parent-wrapper label-1">
|
||
<ul class="nav collapse parent" data-bs-parent="#navbarVerticalCollapse" id="nv-vendors">
|
||
<li class="collapsed-nav-item-title d-none">{% trans 'vendors'|capfirst %}
|
||
</li>
|
||
<li class="nav-item"><a class="nav-link" href="{% url 'vendor_create' %}">
|
||
<div class="d-flex align-items-center"><span class="nav-link-text">{% trans "add vendor"|capfirst %}</span>
|
||
</div>
|
||
</a>
|
||
<!-- more inner pages-->
|
||
</li>
|
||
<li class="nav-item"><a class="nav-link" href="{% url 'vendor_list' %}">
|
||
<div class="d-flex align-items-center"><span class="nav-link-text">{% trans 'vendors'|capfirst %}</span>
|
||
</div>
|
||
</a>
|
||
<!-- more inner pages-->
|
||
</li>
|
||
</ul>
|
||
</div>
|
||
</div> <!-- parent pages-->
|
||
<div class="nav-item-wrapper"><a class="nav-link dropdown-indicator label-1" href="#nv-customers" role="button" data-bs-toggle="collapse" aria-expanded="false" aria-controls="nv-customers">
|
||
<div class="d-flex align-items-center">
|
||
<div class="dropdown-indicator-icon-wrapper"><span class="fas fa-caret-right dropdown-indicator-icon"></span></div><span class="nav-link-icon"><span data-feather="users"></span></span><span class="nav-link-text">{% trans 'customers'|capfirst %}</span>
|
||
</div>
|
||
</a>
|
||
<div class="parent-wrapper label-1">
|
||
<ul class="nav collapse parent" data-bs-parent="#navbarVerticalCollapse" id="nv-customers">
|
||
<li class="collapsed-nav-item-title d-none">{% trans 'customers'|capfirst %}
|
||
</li>
|
||
<li class="nav-item"><a class="nav-link" href="{% url 'customer_create' %}">
|
||
<div class="d-flex align-items-center"><span class="nav-link-text">{% trans "add customer"|capfirst %}</span>
|
||
</div>
|
||
</a>
|
||
<!-- more inner pages-->
|
||
</li>
|
||
<li class="nav-item"><a class="nav-link" href="{% url 'customer_list' %}">
|
||
<div class="d-flex align-items-center"><span class="nav-link-text">{% trans 'customers'|capfirst %}</span>
|
||
</div>
|
||
</a>
|
||
<!-- more inner pages-->
|
||
</li>
|
||
</ul>
|
||
</div>
|
||
</div>
|
||
<!-- parent pages-->
|
||
<div class="nav-item-wrapper"><a class="nav-link dropdown-indicator label-1" href="#nv-organizations" role="button" data-bs-toggle="collapse" aria-expanded="false" aria-controls="nv-organizations">
|
||
<div class="d-flex align-items-center">
|
||
<div class="dropdown-indicator-icon-wrapper"><span class="fas fa-caret-right dropdown-indicator-icon"></span></div><span class="nav-link-icon"><span data-feather="activity"></span></span><span class="nav-link-text">{% trans 'organizations'|capfirst %}</span>
|
||
</div>
|
||
</a>
|
||
<div class="parent-wrapper label-1">
|
||
<ul class="nav collapse parent" data-bs-parent="#navbarVerticalCollapse" id="nv-organizations">
|
||
<li class="collapsed-nav-item-title d-none">{% trans 'organizations'|capfirst %}
|
||
</li>
|
||
<li class="nav-item"><a class="nav-link" href="{% url 'organization_create' %}">
|
||
<div class="d-flex align-items-center"><span class="nav-link-text">{% trans "add organization"|capfirst %}</span>
|
||
</div>
|
||
</a>
|
||
<!-- more inner pages-->
|
||
</li>
|
||
<li class="nav-item"><a class="nav-link" href="{% url 'organization_list' %}">
|
||
<div class="d-flex align-items-center"><span class="nav-link-text">{% trans "organizations"|capfirst %}</span>
|
||
</div>
|
||
</a>
|
||
<!-- more inner pages-->
|
||
</li>
|
||
<li class="nav-item"><a class="nav-link" href="{% url 'representative_create' %}">
|
||
<div class="d-flex align-items-center"><span class="nav-link-text">{% trans "Add Representative"|capfirst %}</span>
|
||
</div>
|
||
</a>
|
||
<!-- more inner pages-->
|
||
</li>
|
||
<li class="nav-item"><a class="nav-link" href="{% url 'representative_list' %}">
|
||
<div class="d-flex align-items-center"><span class="nav-link-text">{% trans "Representatives"|capfirst %}</span>
|
||
</div>
|
||
</a>
|
||
<!-- more inner pages-->
|
||
</li>
|
||
</ul>
|
||
</div>
|
||
</div>
|
||
<!-- parent pages-->
|
||
<div class="nav-item-wrapper"><a class="nav-link dropdown-indicator label-1" href="#nv-sales" role="button" data-bs-toggle="collapse" aria-expanded="false" aria-controls="nv-sales">
|
||
<div class="d-flex align-items-center">
|
||
<div class="dropdown-indicator-icon-wrapper"><span class="fas fa-caret-right dropdown-indicator-icon"></span></div><span class="nav-link-icon"><span data-feather="shopping-cart"></span></span><span class="nav-link-text">{% trans 'sales'|capfirst %}</span>
|
||
</div>
|
||
</a>
|
||
<div class="parent-wrapper label-1">
|
||
<ul class="nav collapse parent" data-bs-parent="#navbarVerticalCollapse" id="nv-sales">
|
||
<li class="collapsed-nav-item-title d-none">{% trans 'sales'|capfirst %}
|
||
</li>
|
||
<li class="nav-item"><a class="nav-link" href="{% url 'quotation_create' %}">
|
||
<div class="d-flex align-items-center"><span class="nav-link-text">{% trans "create quotation"|capfirst %}</span>
|
||
</div>
|
||
</a>
|
||
<!-- more inner pages-->
|
||
</li>
|
||
<li class="nav-item"><a class="nav-link" href="{% url 'quotation_list' %}">
|
||
<div class="d-flex align-items-center"><span class="nav-link-text">{% trans "quotations"|capfirst %}</span>
|
||
</div>
|
||
</a>
|
||
<!-- more inner pages-->
|
||
</li>
|
||
<li class="nav-item"><a class="nav-link" href="#">
|
||
<div class="d-flex align-items-center"><span class="nav-link-text">{% trans "orders"|capfirst %}</span>
|
||
</div>
|
||
</a>
|
||
<!-- more inner pages-->
|
||
</li>
|
||
<li class="nav-item"><a class="nav-link" href="#">
|
||
<div class="d-flex align-items-center"><span class="nav-link-text">{% trans "invoices"|capfirst %}</span>
|
||
</div>
|
||
</a>
|
||
<!-- more inner pages-->
|
||
</li>
|
||
<li class="nav-item"><a class="nav-link" href="#">
|
||
<div class="d-flex align-items-center"><span class="nav-link-text">{% trans "payments"|capfirst %}</span>
|
||
</div>
|
||
</a>
|
||
<!-- more inner pages-->
|
||
</li>
|
||
|
||
</ul>
|
||
</div>
|
||
</div>
|
||
<!--Add Above -->
|
||
</li>
|
||
</ul>
|
||
</div>
|
||
</div>
|
||
<div class="navbar-vertical-footer">
|
||
<button class="btn navbar-vertical-toggle border-0 fw-semibold w-100 white-space-nowrap d-flex align-items-center"><span class="uil uil-left-arrow-to-left fs-8"></span><span class="uil uil-arrow-from-right fs-8"></span><span class="navbar-vertical-footer-text ms-2">Collapsed View</span></button>
|
||
</div>
|
||
</nav>
|
||
<nav class="navbar navbar-top fixed-top navbar-expand" id="navbarDefault">
|
||
<div class="collapse navbar-collapse justify-content-between">
|
||
<div class="navbar-logo">
|
||
|
||
<button class="btn navbar-toggler navbar-toggler-humburger-icon hover-bg-transparent" type="button" data-bs-toggle="collapse" data-bs-target="#navbarVerticalCollapse" aria-controls="navbarVerticalCollapse" aria-expanded="false" aria-label="Toggle Navigation"><span class="navbar-toggle-icon"><span class="toggle-line"></span></span></button>
|
||
<a class="navbar-brand me-1 me-sm-3" href="{% url 'landing_page' %}">
|
||
<div class="d-flex align-items-center">
|
||
<img class="logo-img d-dark-none" src="{% static 'images/logos/logo-d.png' %}" alt="haikal" width="27" />
|
||
<img class="logo-img d-light-none" src="{% static 'images/logos/logo.png' %}" alt="haikal" width="27" />
|
||
<h5 class="logo-text ms-2 d-none d-sm-block">{% trans 'Haikal' %}</h5>
|
||
</div>
|
||
</a>
|
||
</div>
|
||
|
||
<ul class="navbar-nav navbar-nav-icons flex-row">
|
||
<li class="nav-item">
|
||
<div class="theme-control-toggle fa-icon-wait px-2">
|
||
|
||
<input class="form-check-input ms-0 theme-control-toggle-input" type="checkbox" data-theme-control="phoenixTheme" value="dark" id="themeControlToggle" />
|
||
<label class="mb-0 theme-control-toggle-label theme-control-toggle-light" for="themeControlToggle" data-bs-theme-value="light" data-bs-toggle="tooltip" data-bs-placement="left" data-bs-title="Switch theme" style="height:32px;width:32px;"><span class="icon" data-feather="moon"></span></label>
|
||
<label class="mb-0 theme-control-toggle-label theme-control-toggle-dark" for="themeControlToggle" data-bs-theme-value="dark" data-bs-toggle="tooltip" data-bs-placement="left" data-bs-title="Switch theme" style="height:32px;width:32px;"><span class="icon" data-feather="sun"></span></label>
|
||
</div>
|
||
</li>
|
||
<li class="nav-item dropdown">
|
||
<a class="nav-link" href="#" style="min-width: 2.25rem" role="button" data-bs-toggle="dropdown" aria-haspopup="true" aria-expanded="false" data-bs-auto-close="outside"><span class="d-block" style="height:20px;width:20px;"><span data-feather="bell" style="height:20px;width:20px;"></span></span></a>
|
||
|
||
<div class="dropdown-menu dropdown-menu-end notification-dropdown-menu py-0 shadow border navbar-dropdown-caret" id="navbarDropdownNotfication" aria-labelledby="navbarDropdownNotfication">
|
||
<div class="card position-relative border-0">
|
||
<div class="card-header p-2">
|
||
<div class="d-flex justify-content-between">
|
||
<h5 class="text-body-emphasis mb-0">Notifications</h5>
|
||
<button class="btn btn-link p-0 fs-9 fw-normal" type="button">Mark all as read</button>
|
||
</div>
|
||
</div>
|
||
<div class="card-body p-0">
|
||
<div class="scrollbar-overlay" style="height: 27rem;">
|
||
<div class="px-2 px-sm-3 py-3 notification-card position-relative read border-bottom">
|
||
<div class="d-flex align-items-center justify-content-between position-relative">
|
||
<div class="d-flex">
|
||
<div class="avatar avatar-m status-online me-3"><img class="rounded-circle" src="{% static 'images/team/40x40/30.webp' %}" alt="" />
|
||
</div>
|
||
<div class="flex-1 me-sm-3">
|
||
<h4 class="fs-9 text-body-emphasis">Jessie Samson</h4>
|
||
<p class="fs-9 text-body-highlight mb-2 mb-sm-3 fw-normal"><span class='me-1 fs-10'>💬</span>Mentioned you in a comment.<span class="ms-2 text-body-quaternary text-opacity-75 fw-bold fs-10">10m</span></p>
|
||
<p class="text-body-secondary fs-9 mb-0"><span class="me-1 fas fa-clock"></span><span class="fw-bold">10:41 AM </span>August 7,2021</p>
|
||
</div>
|
||
</div>
|
||
<div class="dropdown notification-dropdown">
|
||
<button class="btn fs-10 btn-sm dropdown-toggle dropdown-caret-none transition-none" 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 text-body"></span></button>
|
||
<div class="dropdown-menu py-2"><a class="dropdown-item" href="#!">Mark as unread</a></div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
<div class="px-2 px-sm-3 py-3 notification-card position-relative unread border-bottom">
|
||
<div class="d-flex align-items-center justify-content-between position-relative">
|
||
<div class="d-flex">
|
||
<div class="avatar avatar-m status-online me-3">
|
||
<div class="avatar-name rounded-circle"><span>J</span></div>
|
||
</div>
|
||
<div class="flex-1 me-sm-3">
|
||
<h4 class="fs-9 text-body-emphasis">Jane Foster</h4>
|
||
<p class="fs-9 text-body-highlight mb-2 mb-sm-3 fw-normal"><span class='me-1 fs-10'>📅</span>Created an event.<span class="ms-2 text-body-quaternary text-opacity-75 fw-bold fs-10">20m</span></p>
|
||
<p class="text-body-secondary fs-9 mb-0"><span class="me-1 fas fa-clock"></span><span class="fw-bold">10:20 AM </span>August 7,2021</p>
|
||
</div>
|
||
</div>
|
||
<div class="dropdown notification-dropdown">
|
||
<button class="btn fs-10 btn-sm dropdown-toggle dropdown-caret-none transition-none" 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 text-body"></span></button>
|
||
<div class="dropdown-menu py-2"><a class="dropdown-item" href="#!">Mark as unread</a></div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
<div class="px-2 px-sm-3 py-3 notification-card position-relative unread border-bottom">
|
||
<div class="d-flex align-items-center justify-content-between position-relative">
|
||
<div class="d-flex">
|
||
<div class="avatar avatar-m status-online me-3"><img class="rounded-circle avatar-placeholder" src="{% static 'images/team/40x40/avatar.webp' %}" alt="" />
|
||
</div>
|
||
<div class="flex-1 me-sm-3">
|
||
<h4 class="fs-9 text-body-emphasis">Jessie Samson</h4>
|
||
<p class="fs-9 text-body-highlight mb-2 mb-sm-3 fw-normal"><span class='me-1 fs-10'>👍</span>Liked your comment.<span class="ms-2 text-body-quaternary text-opacity-75 fw-bold fs-10">1h</span></p>
|
||
<p class="text-body-secondary fs-9 mb-0"><span class="me-1 fas fa-clock"></span><span class="fw-bold">9:30 AM </span>August 7,2021</p>
|
||
</div>
|
||
</div>
|
||
<div class="dropdown notification-dropdown">
|
||
<button class="btn fs-10 btn-sm dropdown-toggle dropdown-caret-none transition-none" 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 text-body"></span></button>
|
||
<div class="dropdown-menu py-2"><a class="dropdown-item" href="#!">Mark as unread</a></div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
<div class="px-2 px-sm-3 py-3 notification-card position-relative unread border-bottom">
|
||
<div class="d-flex align-items-center justify-content-between position-relative">
|
||
<div class="d-flex">
|
||
|
||
<div class="avatar avatar-m status-online me-3"><img class="rounded-circle" src="{% static 'images/team/40x40/57.webp' %}" alt="" />
|
||
</div>
|
||
<div class="flex-1 me-sm-3">
|
||
<h4 class="fs-9 text-body-emphasis">{{ user.dealer.get_local_name }}</h4>
|
||
<p class="fs-9 text-body-highlight mb-2 mb-sm-3 fw-normal"><span class='me-1 fs-10'>💬</span>Mentioned you in a comment.<span class="ms-2 text-body-quaternary text-opacity-75 fw-bold fs-10"></span></p>
|
||
<p class="text-body-secondary fs-9 mb-0"><span class="me-1 fas fa-clock"></span><span class="fw-bold">9:11 AM </span>August 7,2021</p>
|
||
</div>
|
||
</div>
|
||
<div class="dropdown notification-dropdown">
|
||
<button class="btn fs-10 btn-sm dropdown-toggle dropdown-caret-none transition-none" 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 text-body"></span></button>
|
||
<div class="dropdown-menu py-2"><a class="dropdown-item" href="#!">Mark as unread</a></div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
<div class="px-2 px-sm-3 py-3 notification-card position-relative unread border-bottom">
|
||
<div class="d-flex align-items-center justify-content-between position-relative">
|
||
<div class="d-flex">
|
||
<div class="avatar avatar-m status-online me-3"><img class="rounded-circle" src="{% static 'images/team/40x40/59.webp' %}" alt="" />
|
||
</div>
|
||
<div class="flex-1 me-sm-3">
|
||
<h4 class="fs-9 text-body-emphasis">Herman Carter</h4>
|
||
<p class="fs-9 text-body-highlight mb-2 mb-sm-3 fw-normal"><span class='me-1 fs-10'>👤</span>Tagged you in a comment.<span class="ms-2 text-body-quaternary text-opacity-75 fw-bold fs-10"></span></p>
|
||
<p class="text-body-secondary fs-9 mb-0"><span class="me-1 fas fa-clock"></span><span class="fw-bold">10:58 PM </span>August 7,2021</p>
|
||
</div>
|
||
</div>
|
||
<div class="dropdown notification-dropdown">
|
||
<button class="btn fs-10 btn-sm dropdown-toggle dropdown-caret-none transition-none" 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 text-body"></span></button>
|
||
<div class="dropdown-menu py-2"><a class="dropdown-item" href="#!">Mark as unread</a></div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
<div class="px-2 px-sm-3 py-3 notification-card position-relative read ">
|
||
<div class="d-flex align-items-center justify-content-between position-relative">
|
||
<div class="d-flex">
|
||
<div class="avatar avatar-m status-online me-3"><img class="rounded-circle" src="{% static 'images/team/40x40/58.webp' %}" alt="" />
|
||
</div>
|
||
<div class="flex-1 me-sm-3">
|
||
<h4 class="fs-9 text-body-emphasis">Benjamin Button</h4>
|
||
<p class="fs-9 text-body-highlight mb-2 mb-sm-3 fw-normal"><span class='me-1 fs-10'>👍</span>Liked your comment.<span class="ms-2 text-body-quaternary text-opacity-75 fw-bold fs-10"></span></p>
|
||
<p class="text-body-secondary fs-9 mb-0"><span class="me-1 fas fa-clock"></span><span class="fw-bold">10:18 AM </span>August 7,2021</p>
|
||
</div>
|
||
</div>
|
||
<div class="dropdown notification-dropdown">
|
||
<button class="btn fs-10 btn-sm dropdown-toggle dropdown-caret-none transition-none" 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 text-body"></span></button>
|
||
<div class="dropdown-menu py-2"><a class="dropdown-item" href="#!">Mark as unread</a></div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
<div class="card-footer p-0 border-top border-translucent border-0">
|
||
<div class="my-2 text-center fw-bold fs-10 text-body-tertiary text-opactity-85"><a class="fw-bolder" href="../pages/notifications.html">Notification history</a></div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
</li>
|
||
<li class="nav-item dropdown">
|
||
<a class="nav-link dropdown-toggle" href="#" id="languageDropdown" role="button" data-bs-toggle="dropdown" aria-expanded="false" data-bs-auto-close="outside" aria-haspopup="true">
|
||
{% if request.LANGUAGE_CODE == 'ar' %}
|
||
<i class="bi bi-globe"></i><span class="ms-1">اللغة</span>
|
||
{% else %}
|
||
<i class="bi bi-globe"></i><span class="ms-1">Language</span>
|
||
{% endif %}
|
||
</a>
|
||
<div class="dropdown-menu dropdown-menu-end navbar-dropdown-caret py-0 dropdown-profile shadow border" aria-labelledby="languageDropdown">
|
||
<div class="card position-relative border-0">
|
||
<div class="card-body p-0">
|
||
|
||
<ul class="nav d-flex flex-column mb-2 pb-1">
|
||
<li>
|
||
<a class="dropdown-item fw-lighter" href="{% url 'switch_language' %}?language=en">English</a>
|
||
</li>
|
||
<li>
|
||
<a class="dropdown-item fw-lighter" href="{% url 'switch_language' %}?language=ar">العربية</a>
|
||
</li>
|
||
</ul>
|
||
</div>
|
||
|
||
</div>
|
||
</div>
|
||
</li>
|
||
{% if user.is_authenticated and user.dealer or user.subdealer%}
|
||
<li class="nav-item dropdown"><a class="nav-link lh-1 pe-0" id="navbarDropdownUser" role="button" data-bs-toggle="dropdown" data-bs-auto-close="outside" aria-haspopup="true" aria-expanded="false">
|
||
<div class="avatar avatar-l ">
|
||
{% if user.dealer.logo %}
|
||
<img class="rounded-circle " src="{{ user.dealer.logo.url }}" alt="" />
|
||
{% endif %}
|
||
|
||
</div>
|
||
</a>
|
||
<div class="dropdown-menu dropdown-menu-end navbar-dropdown-caret py-0 dropdown-profile shadow border" aria-labelledby="navbarDropdownUser">
|
||
<div class="card position-relative border-0">
|
||
<div class="card-body p-0">
|
||
<div class="text-center pt-4 pb-3">
|
||
<div class="avatar avatar-xl ">
|
||
{% if user.dealer.logo %}
|
||
<img class="rounded-circle " src="{{ user.dealer.logo.url }}" alt="" />
|
||
{% endif %}
|
||
</div>
|
||
<h6 class="mt-2 text-body-emphasis">{{ user.dealer.get_local_name }}</h6>
|
||
</div>
|
||
</div>
|
||
<div class="overflow-auto scrollbar" style="height: 10rem;">
|
||
<ul class="nav d-flex flex-column mb-2 pb-1">
|
||
<li class="nav-item"><a class="nav-link px-3 d-block" href="{% url 'dealer_detail' user.dealer.pk %}"> <span class="me-2 text-body align-bottom" data-feather="user"></span><span>{% translate 'profile'|capfirst %}</span></a></li>
|
||
<li class="nav-item"><a class="nav-link px-3 d-block" href="#!"><span class="me-2 text-body align-bottom" data-feather="pie-chart"></span>Dashboard</a></li>
|
||
<li class="nav-item"><a class="nav-link px-3 d-block" href="#!"> <span class="me-2 text-body align-bottom" data-feather="lock"></span>Posts & Activity</a></li>
|
||
<li class="nav-item"><a class="nav-link px-3 d-block" href="#!"> <span class="me-2 text-body align-bottom" data-feather="settings"></span>Settings & Privacy </a></li>
|
||
<li class="nav-item"><a class="nav-link px-3 d-block" href="#!"> <span class="me-2 text-body align-bottom" data-feather="help-circle"></span>Help Center</a></li>
|
||
<li class="nav-item"><a class="nav-link px-3 d-block" href="#!"> <span class="me-2 text-body align-bottom" data-feather="globe"></span>Language</a></li>
|
||
</ul>
|
||
</div>
|
||
<div class="card-footer p-0 border-top border-translucent">
|
||
<ul class="nav d-flex flex-column my-3">
|
||
<li class="nav-item"><a class="nav-link px-3 d-block" href="#!"> <span class="me-2 text-body align-bottom" data-feather="user-plus"></span>Add another account</a></li>
|
||
</ul>
|
||
<hr />
|
||
<div class="px-3"> <a class="btn btn-phoenix-secondary d-flex flex-center w-100" href="{% url 'account_logout' %}"> <span class="me-2" data-feather="log-out"> </span>{% trans 'Sign Out' %}</a></div>
|
||
<div class="my-2 text-center fw-bold fs-10 text-body-quaternary"><a class="text-body-quaternary me-1" href="#!">Privacy policy</a>•<a class="text-body-quaternary mx-1" href="#!">Terms</a>•<a class="text-body-quaternary ms-1" href="#!">Cookies</a></div>
|
||
{% else %}
|
||
<div class="px-3"> <a class="btn btn-phoenix-secondary d-flex flex-center w-100" href="{% url 'account_login' %}"> <span class="me-2" data-feather="log-in"> </span>{% trans 'Sign In' %}</a></div>
|
||
<div class="px-3"> <a class="btn btn-phoenix-secondary d-flex flex-center w-100" href="{% url 'account_signup' %}"> <span class="me-2" data-feather="user-plus"> </span>{% trans 'Sign Up' %}</a></div>
|
||
{% endif %}
|
||
</div>
|
||
</div>
|
||
</div>
|
||
</li>
|
||
|
||
</ul>
|
||
|
||
</nav>
|
||
<div class="content">
|
||
|
||
{% block content %}
|
||
<!-- Main content goes here -->
|
||
{% endblock %}
|
||
|
||
|
||
<footer class="footer position-absolute">
|
||
<div class="row g-0 justify-content-between align-items-center h-100">
|
||
<div class="col-12 col-sm-auto text-center">
|
||
<p class="mb-0 mt-2 mt-sm-0 text-body">{% trans 'All right reserved' %}:<span class="d-none d-sm-inline-block"></span><span class="d-none d-sm-inline-block mx-1">|</span><br class="d-sm-none" />2024 ©<a class="mx-1" href="https://tenhal.sa">{% trans 'tenhal' %}</a></p>
|
||
</div>
|
||
<div class="col-12 col-sm-auto text-center">
|
||
<p class="mb-0 text-body-tertiary text-opacity-85">v1.1.9</p>
|
||
</div>
|
||
</div>
|
||
</footer>
|
||
</div>
|
||
|
||
|
||
<div class="support-chat-container">
|
||
<div class="container-fluid support-chat">
|
||
<div class="card bg-body-emphasis">
|
||
<div class="card-header d-flex flex-between-center px-4 py-3 border-bottom border-translucent">
|
||
<h5 class="mb-0 d-flex align-items-center gap-2">Demo widget<span class="fa-solid fa-circle text-success fs-11"></span></h5>
|
||
<div class="btn-reveal-trigger">
|
||
<button class="btn btn-link p-0 dropdown-toggle dropdown-caret-none transition-none d-flex" type="button" id="support-chat-dropdown" data-bs-toggle="dropdown" data-boundary="window" aria-haspopup="true" aria-expanded="false" data-bs-reference="parent"><span class="fas fa-ellipsis-h text-body"></span></button>
|
||
<div class="dropdown-menu dropdown-menu-end py-2" aria-labelledby="support-chat-dropdown"><a class="dropdown-item" href="#!">Request a callback</a><a class="dropdown-item" href="#!">Search in chat</a><a class="dropdown-item" href="#!">Show history</a><a class="dropdown-item" href="#!">Report to Admin</a><a class="dropdown-item btn-support-chat" href="#!">Close Support</a></div>
|
||
</div>
|
||
</div>
|
||
<div class="card-body chat p-0">
|
||
<div class="d-flex flex-column-reverse scrollbar h-100 p-3">
|
||
<div class="text-end mt-6"><a class="mb-2 d-inline-flex align-items-center text-decoration-none text-body-emphasis bg-body-hover rounded-pill border border-primary py-2 ps-4 pe-3" href="#!">
|
||
<p class="mb-0 fw-semibold fs-9">I need help with something</p><span class="fa-solid fa-paper-plane text-primary fs-9 ms-3"></span>
|
||
</a><a class="mb-2 d-inline-flex align-items-center text-decoration-none text-body-emphasis bg-body-hover rounded-pill border border-primary py-2 ps-4 pe-3" href="#!">
|
||
<p class="mb-0 fw-semibold fs-9">I can’t reorder a product I previously ordered</p><span class="fa-solid fa-paper-plane text-primary fs-9 ms-3"></span>
|
||
</a><a class="mb-2 d-inline-flex align-items-center text-decoration-none text-body-emphasis bg-body-hover rounded-pill border border-primary py-2 ps-4 pe-3" href="#!">
|
||
<p class="mb-0 fw-semibold fs-9">How do I place an order?</p><span class="fa-solid fa-paper-plane text-primary fs-9 ms-3"></span>
|
||
</a><a class="false d-inline-flex align-items-center text-decoration-none text-body-emphasis bg-body-hover rounded-pill border border-primary py-2 ps-4 pe-3" href="#!">
|
||
<p class="mb-0 fw-semibold fs-9">My payment method not working</p><span class="fa-solid fa-paper-plane text-primary fs-9 ms-3"></span>
|
||
</a>
|
||
</div>
|
||
<div class="text-center mt-auto">
|
||
<div class="avatar avatar-3xl status-online"><img class="rounded-circle border border-3 border-light-subtle" src="{% static 'images/team/40x40/30.webp' %}" alt="" /></div>
|
||
<h5 class="mt-2 mb-3">Eric</h5>
|
||
<p class="text-center text-body-emphasis mb-0">Ask us anything – we’ll get back to you here or by email within 24 hours.</p>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
<div class="card-footer d-flex align-items-center gap-2 border-top border-translucent ps-3 pe-4 py-3">
|
||
<div class="d-flex align-items-center flex-1 gap-3 border border-translucent rounded-pill px-4">
|
||
<input class="form-control outline-none border-0 flex-1 fs-9 px-0" type="text" placeholder="Write message" />
|
||
<label class="btn btn-link d-flex p-0 text-body-quaternary fs-9 border-0" for="supportChatPhotos"><span class="fa-solid fa-image"></span></label>
|
||
<input class="d-none" type="file" accept="image/*" id="supportChatPhotos" />
|
||
<label class="btn btn-link d-flex p-0 text-body-quaternary fs-9 border-0" for="supportChatAttachment"> <span class="fa-solid fa-paperclip"></span></label>
|
||
<input class="d-none" type="file" id="supportChatAttachment" />
|
||
</div>
|
||
<button class="btn p-0 border-0 send-btn"><span class="fa-solid fa-paper-plane fs-9"></span></button>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
<button class="btn btn-support-chat p-0 border border-translucent"><span class="fs-8 btn-text text-primary text-nowrap">Chat demo</span><span class="ping-icon-wrapper mt-n4 ms-n6 mt-sm-0 ms-sm-2 position-absolute position-sm-relative"><span class="ping-icon-bg"></span><span class="fa-solid fa-circle ping-icon"></span></span><span class="fa-solid fa-headset text-primary fs-8 d-sm-none"></span><span class="fa-solid fa-chevron-down text-primary fs-7"></span></button>
|
||
</div>
|
||
</main>
|
||
<!-- ===============================================-->
|
||
<!-- End of Main Content-->
|
||
<!-- ===============================================-->
|
||
<script>
|
||
|
||
|
||
|
||
|
||
</script>
|
||
{% block extra_js %}{% endblock extra_js %}
|
||
|
||
|
||
<script>
|
||
|
||
// Function to calculate Total Cost and Total Revenue
|
||
function calculateTotals(container) {
|
||
const quantity = parseFloat(container.querySelector('.quantity').value) || 0;
|
||
const unitCost = parseFloat(container.querySelector('.unitCost').value) || 0;
|
||
const unitSalesPrice = parseFloat(container.querySelector('.unitSalesPrice').value) || 0;
|
||
|
||
const totalCost = quantity * unitCost;
|
||
const totalRevenue = quantity * unitSalesPrice;
|
||
|
||
container.querySelector('.totalCost').value = totalCost.toFixed(2);
|
||
container.querySelector('.totalRevenue').value = totalRevenue.toFixed(2);
|
||
}
|
||
|
||
// Add event listeners to inputs for dynamic calculation
|
||
function addInputListeners(container) {
|
||
container.querySelectorAll('.quantity, .unitCost, .unitSalesPrice').forEach(input => {
|
||
input.addEventListener('input', () => calculateTotals(container));
|
||
});
|
||
}
|
||
|
||
// Add new form fields
|
||
document.getElementById('addMoreBtn').addEventListener('click', function(e) {
|
||
e.preventDefault();
|
||
const formContainer = document.getElementById('formContainer');
|
||
const newForm = document.createElement('div');
|
||
newForm.className = 'form-container row g-3 mb-3 mt-5';
|
||
newForm.innerHTML = `
|
||
<div class="mb-2 col-sm-2">
|
||
<select class="form-control item" name="item[]" required>
|
||
{% for item in items %}
|
||
<option value="{{ item.pk }}">{{ item.name }}</option>
|
||
{% endfor %}
|
||
</select>
|
||
</div>
|
||
<div class="mb-2 col-sm-2">
|
||
<input class="form-control quantity" type="number" placeholder="Quantity" name="quantity[]" required>
|
||
</div>
|
||
<div class="mb-2 col-sm-2">
|
||
<input class="form-control unitCost" type="number" placeholder="Unit Cost" name="unitCost[]" step="0.01" required>
|
||
</div>
|
||
<div class="mb-2 col-sm-2">
|
||
<input class="form-control unitSalesPrice" type="number" placeholder="Unit Sales Price" name="unitSalesPrice[]" step="0.01" required>
|
||
</div>
|
||
<div class="mb-2 col-sm-2">
|
||
<input class="form-control totalCost" type="number" placeholder="Total Cost" name="totalCost[]" readonly>
|
||
</div>
|
||
<div class="mb-2 col-sm-1">
|
||
<input class="form-control totalRevenue" type="number" placeholder="Total Revenue" name="totalRevenue[]" readonly>
|
||
</div>
|
||
<div class="mb-2 col-sm-1">
|
||
<button class="btn btn-danger removeBtn">Remove</button>
|
||
</div>
|
||
`;
|
||
formContainer.appendChild(newForm);
|
||
addInputListeners(newForm); // Add listeners to the new form
|
||
|
||
// Add remove button functionality
|
||
newForm.querySelector('.removeBtn').addEventListener('click', function() {
|
||
newForm.remove();
|
||
});
|
||
});
|
||
|
||
// Add listeners to the initial form
|
||
document.querySelectorAll('.form-container').forEach(container => {
|
||
addInputListeners(container);
|
||
|
||
// Add remove button functionality to the initial form
|
||
container.querySelector('.removeBtn').addEventListener('click', function() {
|
||
container.remove();
|
||
});
|
||
});
|
||
|
||
document.getElementById('mainForm').addEventListener('submit', function(e) {
|
||
e.preventDefault();
|
||
|
||
// Collect all form data
|
||
const formData = new FormData(this);
|
||
const csrfToken = getCookie('csrftoken');
|
||
const data = {};
|
||
formData.forEach((value, key) => {
|
||
// Handle multi-value fields (e.g., item[], quantity[])
|
||
if (data[key]) {
|
||
if (!Array.isArray(data[key])) {
|
||
data[key] = [data[key]]; // Convert to array
|
||
}
|
||
data[key].push(value);
|
||
} else {
|
||
data[key] = value;
|
||
}
|
||
});
|
||
// Send data to the server using fetch
|
||
fetch('http://10.10.1.120:8888/en/sales/estimates/create/', {
|
||
method: 'POST',
|
||
body: formData,
|
||
headers: {
|
||
'X-CSRFToken': csrfToken,
|
||
'Content-Type': 'application/json',
|
||
},
|
||
body: JSON.stringify(data)
|
||
})
|
||
.then(response => response.json())
|
||
.then(data => {
|
||
console.log('Success:', data);
|
||
if(data.status == "error"){
|
||
notify("error",data.message);
|
||
}
|
||
else{
|
||
notify("success","Estimate created successfully");
|
||
setTimeout(() => {
|
||
window.location.href = data.url;
|
||
}, 1000);
|
||
}
|
||
})
|
||
.catch(error => {
|
||
console.error('Error:', error);
|
||
notify("error",error);
|
||
alert('An error occurred while submitting the form.');
|
||
});
|
||
});
|
||
</script>
|
||
|
||
|
||
<!-- ===============================================-->
|
||
<!-- JavaScripts-->
|
||
<!-- ===============================================-->
|
||
<script src="{% static 'vendors/popper/popper.min.js' %}"></script>
|
||
<script src="{% static 'vendors/bootstrap/bootstrap.min.js' %}"></script>
|
||
<script src="{% static 'vendors/anchorjs/anchor.min.js' %}"></script>
|
||
<script src="{% static 'vendors/is/is.min.js' %}"></script>
|
||
<script src="{% static 'vendors/fontawesome/all.min.js' %}"></script>
|
||
<script src="{% static 'vendors/lodash/lodash.min.js' %}"></script>
|
||
<script src="{% static 'vendors/list.js/list.min.js' %}"></script>
|
||
<script src="{% static 'vendors/feather-icons/feather.min.js' %}"></script>
|
||
<script src="{% static 'vendors/dayjs/dayjs.min.js' %}"></script>
|
||
<script src="{% static 'js/phoenix.js' %}"></script>
|
||
<script src="{% static 'vendors/echarts/echarts.min.js' %}"></script>
|
||
<script src="{% static 'js/travel-agency-dashboard.js' %}"></script>
|
||
<script src="{% static 'vendors/mapbox-gl/mapbox-gl.js' %}"></script>
|
||
<script src="https://unpkg.com/@turf/turf@6/turf.min.js"></script>
|
||
<script src="{% static 'vendors/swiper/swiper-bundle.min.js' %}"></script>
|
||
</body>
|
||
|
||
</html> |