+
+

Dashboard Overview

+
-
-
-
-
-

{% trans 'inventory'|upper %}

-
-
-
-

- {{ total_cars }} {{ _("Car") }} -

-
-
+ +
+
+
+
+
Total Revenue
+

$1.25M

+ +8% from last month
-
-

{% trans 'inventory value'|upper %}

-
-
- -
-

-

-
-
-
-

- {{ total_selling_price|currency_format }} -

-
-
+
+
+
+
+
+
Net Profit
+

$1.25M

+ +8% from last month
-
-

{% trans "Profits"|upper %}

-
-
- -
-

-

-
-
-
-

- {{ total_profit|currency_format }} -

-
-
+
+
+
+
+
+
Gross Profit
+

$1.25M

+ +8% from last month +
+
+
+
+
+
+
Total Expense
+

$1.25M

+ +8% from last month +
+
+
+
+
+
+
Total VAT collected
+

$1.25M

+ +8% from last month +
+
+
+
+
+
+
Cars Sold
+

{{sold_cars}}

+ +5 units from last month +
+
+
+
+
+
+
Average Time on Lot
+

10 days

+
+
+
+
+
+
+
Inventory Value
+

$5.8M

+ -2% from last month +
+
+
+
+
+
+
Aging Inventory
+

12

+ -4 cars from last month
-
-
-
-
-
-
-
-

{{ _("Inventory by Status") }}

-
-
-
-
- {{ _("Available") }} -
-

{{ available_cars }}

-
-
-
-
-
- {{ _("Sold") }} -
-

{{ sold_cars }}

-
-
-
-
-
- {{ _("Reserved") }} -
-

{{ reserved_cars }}

-
-
-
-
-
- {{ _("Transfer") }} -
-

{{ transfer_cars }}

-
-
-
-
-
- {{ _("Hold") }} -
-

{{ hold_cars }}

-
-
-
-
-
- {{ _("Damaged") }} -
-

{{ damaged_cars }}

-
-
-
-
-
-
-
-
-
-
+ +
+
+
+
Monthly Revenue & Profit
+
+ +
+
+
+
+
+
Monthly Cars Sold
+
+ +
+
+
+
+
+
Inventory By Make
+
+ +
+
+
+
+
+
Sales By Make
+
+ +
+
+
+ +
+
+
Salesperson Performance
+
+ +
+
+
+
+
+
Top 5 Lead Sources
+
+ +
+
+
+
+
+
Appointments by Weekday
+
+ +
+
+
+ +
+
+
Lead Conversion Funnel
+
+
- +{% endblock content %} + + +{% block customJS%} + + -{% endblock %} +// Chart.js configuration for the Pie Chart +new Chart(ctx3, { + type: 'pie', + data: { + labels: ['Toyota', 'Ford', 'Honda', 'BMW', 'Other'], + datasets: [{ + label: 'Car Count by Make', + data: [45, 30, 25, 15, 10], // Sample data for car counts + backgroundColor: [ + '#007bff', // Blue + '#28a745', // Green + '#ffc107', // Yellow + '#dc3545', // Red + '#6c757d' // Gray + ], + hoverOffset: 15, + }] + }, + options: { + responsive: true, + maintainAspectRatio: false, + plugins: { + legend: { + position: 'right', // Places the legend on the right side + labels: { + color: '#343a40', // Dark text color for labels + font: { + size: 14 + } + } + }, + tooltip: { + backgroundColor: 'rgba(52, 58, 64, 0.9)', + titleColor: '#fff', + bodyColor: '#fff', + callbacks: { + label: function(context) { + const label = context.label || ''; + const value = context.parsed || 0; + const total = context.dataset.data.reduce((a, b) => a + b, 0); + const percentage = ((value / total) * 100).toFixed(2); + return `${label}: ${value} cars (${percentage}%)`; + } + } + } + } + } +}); + + +// Get the canvas context for the chart +const ctx4 = document.getElementById('inventoryByBrandChart').getContext('2d'); + +// Chart.js configuration for the Pie Chart +new Chart(ctx4, { + type: 'pie', + data: { + labels: ['Toyota', 'Ford', 'Honda', 'BMW', 'Other'], + datasets: [{ + label: 'Car Count by Make', + data: [45, 30, 25, 15, 10], // Sample data for car counts + backgroundColor: [ + '#007bff', // Blue + '#28a745', // Green + '#ffc107', // Yellow + '#dc3545', // Red + '#6c757d' // Gray + ], + hoverOffset: 15, + }] + }, + options: { + responsive: true, + maintainAspectRatio: false, + plugins: { + legend: { + position: 'right', // Places the legend on the right side + labels: { + color: '#343a40', // Dark text color for labels + font: { + size: 14 + } + } + }, + tooltip: { + backgroundColor: 'rgba(52, 58, 64, 0.9)', + titleColor: '#fff', + bodyColor: '#fff', + callbacks: { + label: function(context) { + const label = context.label || ''; + const value = context.parsed || 0; + const total = context.dataset.data.reduce((a, b) => a + b, 0); + const percentage = ((value / total) * 100).toFixed(2); + return `${label}: ${value} cars (${percentage}%)`; + } + } + } + } + } +}); + + +// Get the canvas context for the chart +const ctx_salesperson = document.getElementById('salespersonChart').getContext('2d'); + +// Chart.js configuration for the Salesperson Performance Bar Chart +new Chart(ctx_salesperson, { + type: 'bar', + data: { + labels: ['John Doe', 'Jane Smith', 'Peter Jones', 'Mary Brown'], + datasets: [{ + label: 'Cars Sold', + data: [15, 22, 18, 25], // Sample data for cars sold by each salesperson + backgroundColor: [ + '#007bff', // Blue + '#28a745', // Green + '#ffc107', // Yellow + '#dc3545' // Red + ], + borderWidth: 1 + }] + }, + options: { + responsive: true, + maintainAspectRatio: false, + plugins: { + legend: { + display: false // Hide the legend for a single dataset + }, + title: { + display: true, + text: 'Salesperson Performance', + font: { + size: 16 + } + } + }, + scales: { + x: { + title: { + display: true, + text: 'Salesperson Name' + }, + ticks: { + color: '#495057' // Dark text for x-axis labels + } + }, + y: { + beginAtZero: true, + title: { + display: true, + text: 'Number of Cars Sold' + }, + ticks: { + color: '#495057' // Dark text for y-axis labels + } + } + } + } +}); + + +// Get the canvas context for the chart +const ctx_leadSources = document.getElementById('leadSourcesChart').getContext('2d'); + +// Chart.js configuration for the Top 5 Lead Sources Bar Chart +new Chart(ctx_leadSources, { + type: 'bar', + data: { + labels: ['Showroom', 'Referrals', 'WhatsApp', 'Facebook', 'TikTok'], // Labels from the provided list + datasets: [{ + label: 'Number of Leads', + data: [45, 35, 25, 20, 15], // Sample data for leads from each source + backgroundColor: 'rgba(54, 162, 235, 0.8)', // A consistent blue color for the bars + borderColor: 'rgba(54, 162, 235, 1)', + borderWidth: 1 + }] + }, + options: { + indexAxis: 'y', // Makes it a horizontal bar chart + responsive: true, + maintainAspectRatio: false, + plugins: { + legend: { + display: false + }, + title: { + display: true, + text: 'Top 5 Lead Sources', + font: { + size: 16 + } + } + }, + scales: { + x: { + beginAtZero: true, + title: { + display: true, + text: 'Number of Leads', + color: '#495057' + }, + ticks: { + color: '#495057' + } + }, + y: { + ticks: { + color: '#495057', + font: { + size: 8 // Decreases the font size to fit more text + } + } + } + } + } +}); +// Get the canvas context for the chart +const ctx_appointments = document.getElementById('appointmentsChart').getContext('2d'); + +// Chart.js configuration for the Appointments by Weekday Bar Chart +new Chart(ctx_appointments, { + type: 'bar', + data: { + labels: ['Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday', 'Saturday', 'Sunday'], + datasets: [{ + label: 'Number of Appointments', + data: [10, 15, 20, 18, 25, 30, 12], // Sample data for appointments per day + backgroundColor: 'rgba(75, 192, 192, 0.8)', // A consistent color for the bars + borderColor: 'rgba(75, 192, 192, 1)', + borderWidth: 1 + }] + }, + options: { + responsive: true, + maintainAspectRatio: false, + plugins: { + legend: { + display: false + }, + title: { + display: true, + text: 'Appointments by Weekday', + font: { + size: 16 + } + } + }, + scales: { + x: { + title: { + display: true, + text: 'Day of the Week', + color: '#495057' + }, + ticks: { + color: '#495057' + } + }, + y: { + beginAtZero: true, + title: { + display: true, + text: 'Number of Appointments', + color: '#495057' + }, + ticks: { + color: '#495057' + } + } + } + } +}); + + +// Get the canvas context for the funnel chart +const ctx_funnel = document.getElementById('leadFunnelChart').getContext('2d'); + +// Sample data for the funnel stages +const funnelData = { + labels: ['Initial Contact', 'Qualified Leads', 'Test Drives', 'Negotiation', 'Closed Deals'], + data: [250, 180, 120, 80, 45], // Example lead counts at each stage +}; + +new Chart(ctx_funnel, { + type: 'bar', + data: { + labels: funnelData.labels, + datasets: [{ + label: 'Number of Leads', + data: funnelData.data, + backgroundColor: [ + 'rgba(0, 123, 255, 0.8)', + 'rgba(0, 123, 255, 0.7)', + 'rgba(0, 123, 255, 0.6)', + 'rgba(0, 123, 255, 0.5)', + 'rgba(0, 123, 255, 0.4)' + ], + borderColor: 'rgba(0, 123, 255, 1)', + borderWidth: 1 + }] + }, + options: { + indexAxis: 'y', // Makes it a horizontal bar chart + responsive: true, + maintainAspectRatio: false, + plugins: { + legend: { + display: false + }, + title: { + display: true, + text: 'Lead Conversion Funnel', + font: { + size: 16 + } + }, + tooltip: { + callbacks: { + label: function(context) { + const totalLeads = funnelData.data[0]; + const currentLeads = context.parsed.x; + const percentage = ((currentLeads / totalLeads) * 100).toFixed(1); + return `Leads: ${currentLeads} (${percentage}%)`; + } + } + } + }, + scales: { + x: { + beginAtZero: true, + display: false // Hide the x-axis to make it look like a funnel + }, + y: { + ticks: { + color: '#495057' + } + } + } + } +}); + + +{% endblock %} \ No newline at end of file diff --git a/templates/dealers/assign_car_makes.html b/templates/dealers/assign_car_makes.html index 74ac619c..84dc2893 100644 --- a/templates/dealers/assign_car_makes.html +++ b/templates/dealers/assign_car_makes.html @@ -33,7 +33,7 @@ height: 0; } .car-make-option input[type="checkbox"]:checked + .car-make-image-container .car-make-image { - border: 2px solid #2c7be5; + border: 3px solid rgb(44, 229, 44); box-shadow: 0 0 10px rgba(44, 123, 229, 0.5); background: #f0f7ff; } diff --git a/templates/dealers/dealer_detail.html b/templates/dealers/dealer_detail.html index 45a078b9..8c30f461 100644 --- a/templates/dealers/dealer_detail.html +++ b/templates/dealers/dealer_detail.html @@ -1,239 +1,66 @@ {% extends 'base.html' %} {% load i18n static custom_filters crispy_forms_filters %} {% block title %} - {% trans 'Profile' %} {% endblock %} - {% block content %} -
-
-
-

{% trans 'Profile' %}

- -
- + {% trans 'Profile' %} +{% endblock %} + +{% block content %} +
+
+
+

{% trans 'Profile' %}

+
+
+ -
-
-
-
-
-
-
- - -
-
-

{{ dealer.get_local_name }}

-

{% trans 'Joined' %} {{ dealer.joined_at|timesince }} {% trans 'ago' %}

-
-
-
-
-
-
-
{% trans 'last login'|capfirst %}
-

{{ dealer.user.last_login|date:"D M d, Y H:i" }}

-
-
-
{% trans 'Total users'|capfirst %}
-

{{ dealer.staff_count }} / {{ allowed_users }}

-
-
-
{% trans 'Total cars'|capfirst %}
-

{{ cars_count }} / {{ allowed_cars }}

-
-
+
+
+ +
+
+
+
+
+
+ +
-
-
-
-
-
-
-

{% trans 'Default Address' %}

-
-
-
-
-
{% trans 'Address' %}
-
-
-

{{ dealer.address }}

-
-
-
-
-
-
-
{% trans 'Email' %}
-
-
{{ dealer.user.email }}
-
-
-
-
{% trans 'Phone' %}
-
-
{{ dealer.phone_number }}
-
-
+ +
+

{{ dealer.get_local_name }}

+

{% trans 'Joined' %} {{ dealer.joined_at|timesince }} {% trans 'ago' %}

+ {% trans 'Last login' %}: {{ dealer.user.last_login|date:"D M d, Y H:i" }}
-
-
-
-
-
-
-
-
-
-
-
-
-

{{ dealer.user.userplan.plan|capfirst }}

- {% if dealer.user.userplan %} - {% if not dealer.user.userplan.is_expired %} - {% trans 'Active' %} - {% else %} - {% trans 'Expired' %} - {{ _("Renew") }} - {% endif %} - {% if dealer.user.userplan.plan.name != "Enterprise" %} - {{ _("Upgrade") }} - {% endif %} - {% else %} - You have no active plan. - {{ _("Subscribe") }} - {% endif %} -
-

- {% trans 'Active until' %}: {{ dealer.user.userplan.expire }}   {% trans 'Days left' %}: {{ dealer.user.userplan.days_left }} -

-
-

- {{ dealer.user.userplan.plan.planpricing_set.first.price }} -

-
{{ _("Per month") }}
-
-
- - -
-
-
-
-
-
- {% for line in dealer.user.userplan.plan.description|splitlines %} -
- - {{ line }} -
- {% endfor %} -
-
-
+ +
+
+
{% trans 'Total users'|capfirst %}
+

{{ dealer.staff_count }} / {{ allowed_users }}

+
+
-
-
-
-
-
-
-
-

{{ _("Makes you are selling") }}

-
-
-
- {% for make in car_makes %} -
- {% if make.logo %} - {{ make.get_local_name }} - {% endif %} -

{{ make.get_local_name }}

-
- {% endfor %} -
- -
-
-
-
-
-
-
-
-
-

{{ _("VAT") }}

-
-
-
-
- {% csrf_token %} - {{ vatform|crispy }} - -
-
+
+
{% trans 'Total cars'|capfirst %}
+

{{ cars_count }} / {{ allowed_cars }}

+
+
@@ -241,4 +68,179 @@
- {% endblock %} +
+ +
+
+
+
+ +
+
+
+
+
+
+
+

{{ dealer.user.userplan.plan|capfirst }}

+ {% if dealer.user.userplan and not dealer.user.userplan.is_expired %} + {{ _("Active") }} + {% elif dealer.user.userplan and dealer.user.userplan.is_expired %} + {{ _("Expired") }} + {% else %} + {{ _("No Active Plan") }} + {% endif %} +
+

+ {% if dealer.user.userplan and not dealer.user.userplan.is_expired %} + {% trans 'Active until' %}: {{ dealer.user.userplan.expire }}   {% trans 'Days left' %}: {{ dealer.user.userplan.days_left }} + {% else %} + {% trans 'Please subscribe or renew your plan to continue using our services.' %} + {% endif %} +

+ +
+

+ {{ dealer.user.userplan.plan.planpricing_set.first.price }} +

+
{{ _("Per month") }}
+
+ +
    + {% for line in dealer.user.userplan.plan.description|splitlines %} +
  • + + {{ line }} +
  • + {% endfor %} +
+ +
+ {% if dealer.user.userplan.is_expired %} + {{ _("Renew") }} + {% endif %} + {% if dealer.user.userplan.plan.name != "Enterprise" %} + {{ _("Upgrade Plan") }} + {% endif %} + {% if not dealer.user.userplan %} + {{ _("Subscribe Now") }} + {% endif %} +
+
+
+
+
+
+
+
+
{{ _("Manage Users & Cars") }}
+
+
+
{{ _("Total users") }}
+
+
+
+
+ {{ _("Used") }}: {{ dealer.staff_count }} + {{ _("Limit") }}: {{ allowed_users }} +
+
+
+
{{ _("Total cars") }}
+
+
+
+
+ {{ _("Used") }}: {{ cars_count }} + {{ _("Limit") }}: {{ allowed_cars }} +
+
+ {{ _("Contact support to increase your limits") }} +
+
+
+
+
+ +
+
+
+
+
+
{% trans 'Contact Information' %}
+
+ +
+
{% trans 'Address' %}
+

{{ dealer.address }}

+
+
+
+ +
+
{% trans 'Email' %}
+

{{ dealer.user.email }}

+
+
+
+ +
+
{% trans 'Phone' %}
+

{{ dealer.phone_number }}

+
+
+
+
+
+
+
+
+
{{ _("VAT Information") }}
+
+ {% csrf_token %} + {{ vatform|crispy }} + +
+
+
+
+
+
+ +
+
+
+
{{ _("Makes you are selling") }}
+
+ {% for make in car_makes %} +
+ {% if make.logo %} + {{ make.get_local_name }} + {% endif %} +

{{ make.get_local_name }}

+
+ {% empty %} +

{{ _("No car makes selected.") }}

+ {% endfor %} +
+ {{ _("Select Makes") }} +
+
+
+
+
+
+
+
+
+{% endblock %} \ No newline at end of file diff --git a/templates/emails/expiration_reminder_ar.html b/templates/emails/expiration_reminder_ar.html index 421aea38..0f9b3d27 100644 --- a/templates/emails/expiration_reminder_ar.html +++ b/templates/emails/expiration_reminder_ar.html @@ -13,6 +13,6 @@

مع أطيب التحيات،
- فريق {{ SITE_NAME }}

+ فريق تنحل

\ No newline at end of file diff --git a/templates/emails/expiration_reminder_ar.txt b/templates/emails/expiration_reminder_ar.txt index 28d5e3bf..38fa6de9 100644 --- a/templates/emails/expiration_reminder_ar.txt +++ b/templates/emails/expiration_reminder_ar.txt @@ -5,4 +5,4 @@ جدد اشتراكك الآن: {{ RENEWAL_URL }} مع أطيب التحيات، -فريق {{ SITE_NAME }} \ No newline at end of file +فريق تنحل \ No newline at end of file diff --git a/templates/emails/expiration_reminder_en.html b/templates/emails/expiration_reminder_en.html index 515fd007..3ad866ae 100644 --- a/templates/emails/expiration_reminder_en.html +++ b/templates/emails/expiration_reminder_en.html @@ -9,6 +9,6 @@

Renew now to continue service.

Best regards,
- The {{ SITE_NAME }} Team

+ The Team at Tenhal

\ No newline at end of file diff --git a/templates/emails/expiration_reminder_en.txt b/templates/emails/expiration_reminder_en.txt index 65d5dc2a..9053b9c2 100644 --- a/templates/emails/expiration_reminder_en.txt +++ b/templates/emails/expiration_reminder_en.txt @@ -5,4 +5,4 @@ Your {{ plan.name }} subscription will expire in {{ days_until_expire }} days on Renew now: {{ RENEWAL_URL }} Best regards, -{{ SITE_NAME }} Team \ No newline at end of file +The Team at Tenhal \ No newline at end of file diff --git a/templates/emails/invoice_past_due.txt b/templates/emails/invoice_past_due.txt index fe38285a..3d1eb082 100644 --- a/templates/emails/invoice_past_due.txt +++ b/templates/emails/invoice_past_due.txt @@ -7,4 +7,4 @@ Please settle your outstanding balance of {{ amount_due }} . If you have already paid, please disregard this notice. Best regards, -{{ SITE_NAME }} Team +The Team at Tenhal \ No newline at end of file diff --git a/templates/emails/invoice_past_due_reminder.txt b/templates/emails/invoice_past_due_reminder.txt index fc1710cc..3b1b40da 100644 --- a/templates/emails/invoice_past_due_reminder.txt +++ b/templates/emails/invoice_past_due_reminder.txt @@ -7,5 +7,5 @@ Please settle your outstanding balance of {{ amount_due }} before the due date t If you have already paid, please disregard this notice. Best regards, -{{ SITE_NAME }} Team +The Team at Tenhal diff --git a/templates/emails/schedule_reminder.html b/templates/emails/schedule_reminder.html index 23768aec..bee4b19d 100644 --- a/templates/emails/schedule_reminder.html +++ b/templates/emails/schedule_reminder.html @@ -14,19 +14,21 @@

Hello {{ user_name }},

-

This is a friendly reminder for your upcoming schedule:

+

{% trans "This is a friendly reminder for your upcoming schedule" %}:

- Purpose: {{ schedule_purpose }}
- Scheduled At: {{ scheduled_at }}
- Type: {{ schedule_type }}
- {% if customer_name != 'N/A' %}Customer: {{ customer_name }}
{% endif %} - {% if notes %}Notes: {{ notes }}
{% endif %} + {% trans "Purpose" %}: {{ schedule_purpose }}
+ {% trans "Scheduled At" %}: {{ scheduled_at }}
+ {% trans "Type" %}: {{ schedule_type }}
+ {% if customer_name != 'N/A' %}{% trans "Customer" %}: {{ customer_name }}
{% endif %} + {% if notes %}{% trans "Notes" %}: {{ notes }}
{% endif %}

-

Please be prepared for your schedule.

-

Thank you!

+

{% trans "Please be prepared for your schedule" %}.

+

{% trans "Thank you" %}!

+

{% trans "The team at Tenhal" %}.

+
\ No newline at end of file diff --git a/templates/emails/schedule_reminder.txt b/templates/emails/schedule_reminder.txt index d27d9e3d..622c4565 100644 --- a/templates/emails/schedule_reminder.txt +++ b/templates/emails/schedule_reminder.txt @@ -1,16 +1,16 @@ -Hello {{ user_name }}, +{% trans "Hello" %} {{ user_name }}, -This is a friendly reminder for your upcoming schedule: +{% trans "This is a friendly reminder for your upcoming schedule" %}: -Purpose: {{ schedule_purpose }} -Scheduled At: {{ scheduled_at }} -Type: {{ schedule_type }} -{% if customer_name != 'N/A' %}Customer: {{ customer_name }}{% endif %} -{% if notes %}Notes: {{ notes }}{% endif %} +{% trans "Purpose" %}: {{ schedule_purpose }} +{% trans "Scheduled At" %}: {{ scheduled_at }} +{% trans "Type" %}: {{ schedule_type }} +{% if customer_name != 'N/A' %}{% trans "Customer" %}: {{ customer_name }}{% endif %} +{% if notes %}{% trans "Notes" %}: {{ notes }}{% endif %} -Please be prepared for your schedule. - -Thank you! +{% trans "Please be prepared for your schedule" %}. +{% trans "Thank you" %}! --- -This is an automated reminder. Please do not reply to this email. \ No newline at end of file +{% trans " The Team at Tenhal" %} +{% trans "This is an automated reminder. Please do not reply to this email" %}. \ No newline at end of file diff --git a/templates/empty-illustration-page.html b/templates/empty-illustration-page.html index 31d704ac..ab301dcb 100644 --- a/templates/empty-illustration-page.html +++ b/templates/empty-illustration-page.html @@ -46,8 +46,9 @@ {% else %} {% static 'images/no_content/no_item.jpg' as final_image_path %} {% endif %} - +

No-empty-state-image +

diff --git a/templates/footer.html b/templates/footer.html index 1c0203ac..ccaf3d23 100644 --- a/templates/footer.html +++ b/templates/footer.html @@ -33,7 +33,7 @@

{% endcomment %} -
+{% comment %}
© 2025 {{ _("All right reserved")}} @@ -50,4 +50,74 @@
-
+
{% endcomment %} + + + + + + + + + + + diff --git a/templates/header.html b/templates/header.html index 89219412..cec75ee8 100644 --- a/templates/header.html +++ b/templates/header.html @@ -46,15 +46,15 @@ {% endif %} - {% if perms.inventory.add_car %} - {% comment %} {% endcomment %} - {% endif %} + + {% endif %} {% endcomment %} {% if perms.django_ledger.view_purchaseordermodel %}
{% endif %} + + {% if perms.django_ledger.can_view_reports %} - - {% if perms.django_ledger.view_accountmodel %} - +
+ {% endif %} + + {# --- Support & Contact Section (New) --- #} -
+
+
- {% endif %} + - + +
-
+ diff --git a/templates/ledger/reports/car_sale_report.html b/templates/ledger/reports/car_sale_report.html index 4f1c12a8..533bcfa4 100644 --- a/templates/ledger/reports/car_sale_report.html +++ b/templates/ledger/reports/car_sale_report.html @@ -180,7 +180,7 @@ {{ car.invoice.date_paid|date|default_if_none:"-" }} {{ car.finances.cost_price }} {{ car.finances.marked_price }} - {{ car.finances.discount_amount }} + {{ car.finances.total_discount }} {{ car.finances.selling_price }} {{ car.finances.vat_amount }} {{ car.invoice.invoice_number }} diff --git a/templates/mail/change_plan_body.txt b/templates/mail/change_plan_body.txt index 489b5100..65a2135d 100644 --- a/templates/mail/change_plan_body.txt +++ b/templates/mail/change_plan_body.txt @@ -9,5 +9,5 @@ {% trans "Thank you" %} -- -{% blocktrans %}The Team at {{ site_name }}{% endblocktrans %} +{% blocktrans %}The Team at Tenhal{% endblocktrans %} {% endautoescape %} diff --git a/templates/mail/expired_account_body.txt b/templates/mail/expired_account_body.txt index 701ad8f9..bab40b78 100644 --- a/templates/mail/expired_account_body.txt +++ b/templates/mail/expired_account_body.txt @@ -10,5 +10,5 @@ http://{{ site_domain }}{% url 'upgrade_plan' %} {% trans "Thank you" %} -- -{% blocktrans %}The Team at {{ site_name }}{% endblocktrans %} +{% blocktrans %}The Team at Tenhal{% endblocktrans %} {% endautoescape %} diff --git a/templates/mail/expired_account_title.txt b/templates/mail/expired_account_title.txt index 54a3d3a7..e5e3cc6c 100644 --- a/templates/mail/expired_account_title.txt +++ b/templates/mail/expired_account_title.txt @@ -1 +1,3 @@ -{% load i18n %}{% blocktrans %}Your account {{ user }} has just expired{% endblocktrans %} \ No newline at end of file +{% load i18n %}{% blocktrans %}Your account {{ user }} has just expired{% endblocktrans %} + + diff --git a/templates/mail/extend_account_body.txt b/templates/mail/extend_account_body.txt index f7e77e50..53deeba1 100644 --- a/templates/mail/extend_account_body.txt +++ b/templates/mail/extend_account_body.txt @@ -7,5 +7,5 @@ {% trans "Thank you" %} -- -{% blocktrans %}The Team at {{ site_name }}{% endblocktrans %} +{% blocktrans %}The Team at Tenhal{% endblocktrans %} {% endautoescape %} diff --git a/templates/mail/invoice_created_body.txt b/templates/mail/invoice_created_body.txt index 4367230c..96beb55c 100644 --- a/templates/mail/invoice_created_body.txt +++ b/templates/mail/invoice_created_body.txt @@ -10,5 +10,5 @@ http://{{ site_domain }}{% url 'order' pk=order %} {% trans "Thank you" %} -- -{% blocktrans %}The Team at {{ site_name }}{% endblocktrans %} +{% blocktrans %}The Team at Tenhal{% endblocktrans %} {% endautoescape %} diff --git a/templates/mail/remind_expire_body.txt b/templates/mail/remind_expire_body.txt index 040dd7d8..6a17286a 100644 --- a/templates/mail/remind_expire_body.txt +++ b/templates/mail/remind_expire_body.txt @@ -7,4 +7,9 @@ http://{{ site_domain }}{% url 'current_plan' %} {% blocktrans %}or you can upgrade your plan here:{% endblocktrans %} -http://{{ site_domain }}{% url 'upgrade_plan' %} \ No newline at end of file +http://{{ site_domain }}{% url 'upgrade_plan' %} + +{% trans "Thank you" %} +-- +{% blocktrans %}The Team at Tenhal{% endblocktrans %} +{% endautoescape %} diff --git a/templates/message-illustration.html b/templates/message-illustration.html index edc13595..f7a025a5 100644 --- a/templates/message-illustration.html +++ b/templates/message-illustration.html @@ -39,8 +39,9 @@