This commit is contained in:
Marwan Alwali 2025-02-20 17:46:28 +03:00
parent 6e598dfce5
commit 5ce971b4bd
11 changed files with 156 additions and 165 deletions

BIN
.DS_Store vendored

Binary file not shown.

View File

@ -346,4 +346,10 @@ def date_picker(context, nav_url=None, date_picker_id=None):
'entity_slug': entity_slug,
'date_picker_id': date_picker_id,
'date_navigation_url': date_navigation_url
}
}
@register.filter
def splitlines(value):
"""Splits text into lines"""
return value.splitlines()

BIN
static/.DS_Store vendored

Binary file not shown.

Binary file not shown.

View File

@ -702,14 +702,7 @@
axisTick: {
show: false
},
data: [
'NOV-DEC',
'SEP-OCT',
'JUL-AUG',
'MAY-JUN',
'MAR-APR',
'JAN-FEB'
],
axisLabel: {
color: getColor('secondary-text-emphasis'),
margin: 8,

View File

@ -337,6 +337,7 @@
</div>
<script>
const profitData = [
[350000, 390000, 410700, 450000, 390000, 410700],
[245000, 310000, 420000, 480000, 530000, 580000],

View File

@ -1,158 +1,149 @@
{% extends 'base.html' %}
{% load i18n static %}
{% block content %}
<div class="row">
<section class="pt-5 pb-9">
<div class="row-small">
<div class="row align-items-center justify-content-between g-3 mb-4">
<div class="col-auto">
<h2 class="mb-0">{% trans 'Profile' %}</h2>
</div>
<div class="col-auto">
<div class="row g-2 g-sm-3">
<div class="col-auto">
<a href="{% url 'account_change_password' %}" class="btn btn-phoenix-danger"><span class="fas fa-key me-2"></span>{{ _("Change Password") }}</a>
</div>
<div class="col-auto">
<a class="btn btn-phoenix-secondary " href="{% url 'dealer_update' dealer.pk %}"><span class="fas fa-edit me-2 text-body-quaternary"></span>{{ _("Edit") }} </a>
</div>
</div>
</div>
</div>
<div class="row g-3">
<div class="col-12 col-lg-8">
<div class="card h-100">
<div class="card-body">
<div class="border-bottom border-dashed pb-4">
<div class="row align-items-center g-3 g-sm-5 text-center text-sm-start">
<div class="col-12 col-sm-auto">
<input class="d-none" id="avatarFile" type="file" />
<label class="cursor-pointer avatar avatar-5xl" for="avatarFile">
{% if dealer.logo %}
<img src="{{ dealer.logo.url }}" alt="{{ dealer.get_local_name }}" class="rounded-circle" style="max-width: 150px;">
{% else %}
<span class="rounded-circle feather feather-user text-body-tertiary" style="max-width: 150px;"></span>
<img src="{% static 'images/logos/logo.png' %}" alt="{{ dealer.get_local_name }}" class="" style="max-width: 150px;">
{% endif %}
</label>
</div>
<div class="col-12 col-sm-auto flex-1">
<h3>{{ dealer.get_local_name }}</h3>
<p class="text-body-secondary">{% trans 'Joined' %} {{ dealer.joined_at|timesince}} {% trans 'ago' %}</p>
<div></div>
</div>
</div>
</div>
<div class="d-flex flex-between-center pt-4">
<div>
<h6 class="mb-2 text-body-secondary">{% trans 'last login'|capfirst %}</h6>
<h4 class="fs-7 text-body-highlight mb-0">{{ dealer.user.last_login|date:"D M d, Y H:i" }}</h4>
</div>
<div class="text-end">
<h6 class="mb-2 text-body-secondary">{% trans 'Total users'|capfirst %}</h6>
<h4 class="fs-7 text-body-highlight mb-0">{{ dealer.staff_count }} / {{ allowed_users }}</h4>
</div>
<div class="text-end">
<h6 class="mb-2 text-body-secondary">{% trans 'Subscription' %}</h6>
</div>
</div>
</div>
</div>
</div>
<div class="col-12 col-lg-4">
<div class="card h-100">
<div class="card-body">
<div class="border-bottom border-dashed">
<h4 class="mb-3">{% trans 'Default Address' %}</h4>
</div>
<div class="pt-4 mb-7 mb-lg-4 mb-xl-7">
<div class="row justify-content-between">
<div class="col-auto">
<h5 class="text-body-highlight">{% trans 'Address' %}</h5>
</div>
<div class="col-auto">
<p class="text-body-secondary">{{ dealer.address}}</p>
</div>
</div>
</div>
<div class="border-top border-dashed pt-4">
<div class="row flex-between-center mb-2">
<div class="col-auto">
<h5 class="text-body-highlight mb-0">{% trans 'Email' %}</h5>
</div>
<div class="col-auto">{{dealer.user.email}}</div>
</div>
<div class="row flex-between-center">
<div class="col-auto">
<h5 class="text-body-highlight mb-0">{% trans 'Phone' %}</h5>
</div>
<div class="col-auto">{{ dealer.phone_number }}</div>
</div>
</div>
</div>
</div>
</div>
<div class="row g-3">
<div class="col-6 col-lg-6">
<div class="h-100">
<input class="card-form-check-input d-none pricing-plan-recommended" type="radio" name="pricingMonthly" id="businessPlus" />
<div class="position-relative h-100">
<label class="stretched-link" for="businessPlus"></label>
<div class="card h-100 overflow-hidden cursor-pointer pricing-business-plus">
<div class="bg-holder d-dark-none" style="background-image:url({% static 'images/bg/8.png' %});background-position:left bottom;background-size:auto;">
</div>
<div class="bg-holder d-light-none" style="background-image:url({% static 'images/bg/8-dark.png' %});background-position:left bottom;background-size:auto;">
</div>
<div class="card-body d-flex flex-column justify-content-between position-relative">
<div class="d-flex justify-content-between">
<div class="mb-5 mb-md-0 mb-lg-5 me-3">
<div class="d-sm-flex d-md-block d-lg-flex align-items-center mb-3">
<h3 class="mb-0 me-2">{{ dealer.user.userplan.plan|capfirst }}</h3>
{% if dealer.user.userplan.active %}
<span class="badge badge-phoenix fs-10 badge-phoenix-success"><span class="badge-label">{% trans 'Active' %}</span><span class="ms-1" data-feather="check" style="height:12.8px;width:12.8px;"></span></span>
{% else %}
<span class="badge badge-phoenix fs-10 badge-phoenix-danger"><span class="badge-label">{% trans 'Expired' %}</span><span class="ms-1" data-feather="times" style="height:12.8px;width:12.8px;"></span></span>
{% endif %}
</div>
<p class="fs-9 text-body-tertiary">{% trans 'Active until' %}: {{ dealer.user.userplan.expire}}</p>
<div class="d-flex align-items-end mb-md-5 mb-lg-0">
<h4 class="fw-bolder me-1">{{ dealer.user.userplan.plan.planpricing_set.first.price }} {% trans 'SAR' %}</h4>
<h5 class="fs-9 fw-normal text-body-tertiary ms-1">Per month</h5>
</div>
</div><img class="d-dark-none" src="{% static 'images/spot-illustrations/star.png' %}" width="54" height="54" alt="" /><img class="d-light-none" src="{% static 'images/spot-illustrations/star-dark.png' %}" width="54" height="54" alt="" />
</div>
<div class="row flex-1 justify-content-end">
<div class="col-sm-8 col-md-12">
<div class="d-sm-flex d-md-block d-lg-flex justify-content-end align-items-end h-100">
<div class="list-unstyled mb-0 border-start-sm border-start-md-0 border-start-lg ps-sm-5 ps-md-0 ps-lg-5 border-warning-subtle">
<div class="d-flex align-items-center"><span class="uil uil-check-circle text-success me-2"></span><span class="text-body-tertiary fw-semibold">{{ dealer.user.userplan.plan.description}}</span></div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
{% extends 'base.html' %} {% load i18n static custom_filters%} {% block content %}
<div class="container-fluid">
<div class="row align-items-center justify-content-between g-3 mb-4">
<div class="col-auto">
<h2 class="mb-0">{% trans 'Profile' %}</h2>
</div>
<!-- end of .row-->
</section>
<div class="col-auto">
<div class="row g-2 g-sm-3">
<div class="col-auto">
<a href="{% url 'account_change_password' %}" class="btn btn-phoenix-danger"><span class="fas fa-key me-2"></span>{{ _("Change Password") }}</a>
</div>
<div class="col-auto">
<a class="btn btn-phoenix-secondary" href="{% url 'dealer_update' dealer.pk %}"><span class="fas fa-edit me-2 text-body-quaternary"></span>{{ _("Edit") }} </a>
</div>
</div>
</div>
</div>
<div class="row g-3">
<div class="col-12 col-lg-8">
<div class="card h-100">
<div class="card-body">
<div class="border-bottom border-dashed pb-4">
<div class="row align-items-center g-3 g-sm-5 text-center text-sm-start">
<div class="col-12 col-sm-auto">
<input class="d-none" id="avatarFile" type="file" />
<label class="cursor-pointer avatar avatar-5xl" for="avatarFile">
{% if dealer.logo %}
<img src="{{ dealer.logo.url }}" alt="{{ dealer.get_local_name }}" class="rounded-circle" style="max-width: 150px;" />
{% else %}
<span class="rounded-circle feather feather-user text-body-tertiary" style="max-width: 150px;"></span>
<img src="{% static 'images/logos/logo.png' %}" alt="{{ dealer.get_local_name }}" class="" style="max-width: 150px;" />
{% endif %}
</label>
</div>
<div class="col-12 col-sm-auto flex-1">
<h3>{{ dealer.get_local_name }}</h3>
<p class="text-body-secondary">{% trans 'Joined' %} {{ dealer.joined_at|timesince}} {% trans 'ago' %}</p>
<div></div>
</div>
</div>
</div>
<div class="d-flex flex-between-center pt-4">
<div>
<h6 class="mb-2 text-body-secondary">{% trans 'last login'|capfirst %}</h6>
<h4 class="fs-7 text-body-highlight mb-0">{{ dealer.user.last_login|date:"D M d, Y H:i" }}</h4>
</div>
<div class="text-end">
<h6 class="mb-2 text-body-secondary">{% trans 'Total users'|capfirst %}</h6>
<h4 class="fs-7 text-body-highlight mb-0">{{ dealer.staff_count }} / {{ allowed_users }}</h4>
</div>
</div>
</div>
</div>
</div>
<div class="col-12 col-lg-4">
<div class="card h-100">
<div class="card-body">
<div class="border-bottom border-dashed">
<h4 class="mb-3">{% trans 'Default Address' %}</h4>
</div>
<div class="pt-4 mb-7 mb-lg-4 mb-xl-7">
<div class="row justify-content-between">
<div class="col-auto">
<h5 class="text-body-highlight">{% trans 'Address' %}</h5>
</div>
<div class="col-auto">
<p class="text-body-secondary">{{ dealer.address}}</p>
</div>
</div>
</div>
<div class="border-top border-dashed pt-4">
<div class="row flex-between-center mb-2">
<div class="col-auto">
<h5 class="text-body-highlight mb-0">{% trans 'Email' %}</h5>
</div>
<div class="col-auto">{{dealer.user.email}}</div>
</div>
<div class="row flex-between-center">
<div class="col-auto">
<h5 class="text-body-highlight mb-0">{% trans 'Phone' %}</h5>
</div>
<div class="col-auto">{{ dealer.phone_number }}</div>
</div>
</div>
</div>
</div>
</div>
</div>
<div class="row g-3 my-2">
<div class="col-12 col-lg-6">
<div class="card h-100">
<div class="bg-holder d-dark-none" style="background-image:url({% static 'images/bg/8.png' %});background-position:left bottom;background-size:auto;"></div>
<div class="bg-holder d-light-none" style="background-image:url({% static 'images/bg/8-dark.png' %});background-position:left bottom;background-size:auto;"></div>
<div class="card-body d-flex flex-column justify-content-between position-relative">
<div class="d-flex justify-content-between">
<div class="mb-5 mb-md-0 mb-lg-5">
<div class="d-sm-flex d-md-block d-lg-flex align-items-center mb-3">
<h3 class="mb-0 me-2">{{ dealer.user.userplan.plan|capfirst }}</h3>
{% if dealer.user.userplan.active %}
<span class="badge badge-phoenix fs-9 badge-phoenix-success"> <span class="badge-label">{% trans 'Active' %}</span><span class="ms-1" data-feather="check" style="height:16px;width:16px;"></span> </span>
{% else %}
<span class="badge badge-phoenix fs-9 badge-phoenix-danger"> <span class="badge-label">{% trans 'Expired' %}</span><span class="ms-1" data-feather="times" style="height:16px;width:16px;"></span> </span>
{% endif %}
</div>
<p class="fs-9 text-body-tertiary">{% trans 'Active until' %}: {{ dealer.user.userplan.expire}}</p>
<div class="d-flex align-items-end mb-md-5 mb-lg-0">
<h4 class="fw-bolder me-1">{{ dealer.user.userplan.plan.planpricing_set.first.price }} {{ CURRENCY }}</h4>
<h5 class="fs-9 fw-normal text-body-tertiary ms-1">{{ _("Per month")}}</h5>
</div>
</div>
<img class="d-dark-none" src="{% static 'images/logos/logo-d.png' %}" style="opacity: 0.2;height: 64px;" alt="" />
<img class="d-light-none" src="{% static 'images/logos/logo.png' %}" style="opacity: 0.2;height: 64px;" alt="" />
</div>
<div class="row justify-content-end">
<div class="col-sm-8 col-md-12">
<div class="d-sm-flex d-md-block d-lg-flex justify-content-end align-items-end h-100">
<div class="list-unstyled mb-0 border-start-sm border-start-md-0 border-start-lg ps-sm-5 ps-md-0 ps-lg-5 border-secondary-subtle">
<div class="d-flex flex-column">
{% for line in dealer.user.userplan.plan.description|splitlines %}
<div class="d-flex align-items-center">
<span class="uil uil-check-circle text-success me-2"></span>
<span class="text-body-tertiary fw-semibold">{{ line }}</span>
</div>
{% endfor %}
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
<div class="col-12 col-lg-3">
<div class="card h-100">
<div class="bg-holder d-dark-none" style="background-image:url({% static 'images/bg/10.png' %});background-position:left bottom;background-size:auto;"></div>
<div class="bg-holder d-light-none" style="background-image:url({% static 'images/bg/10-dark.png' %});background-position:left bottom;background-size:auto;"></div>
<div class="card-body d-flex flex-column justify-content-between position-relative">
<div class="d-flex justify-content-between">
<div class="mb-5 mb-md-0 mb-lg-5">
</div>
</div>
</div>
</div>
</div>
</div>
</div>
{% endblock %}
{% endblock %}