From 7597eb53910dbe1288703eb71c94c42b8cfa0378 Mon Sep 17 00:00:00 2001 From: Marwan Alwali Date: Thu, 12 Dec 2024 11:00:55 +0300 Subject: [PATCH] edit styles --- .../__pycache__/settings.cpython-311.pyc | Bin 6028 -> 6040 bytes car_inventory/settings.py | 14 +- inventory/__pycache__/admin.cpython-311.pyc | Bin 5496 -> 5599 bytes inventory/__pycache__/forms.cpython-311.pyc | Bin 12100 -> 13057 bytes inventory/__pycache__/models.cpython-311.pyc | Bin 37293 -> 37081 bytes .../__pycache__/services.cpython-311.pyc | Bin 5073 -> 3812 bytes inventory/__pycache__/urls.cpython-311.pyc | Bin 7845 -> 7845 bytes inventory/__pycache__/views.cpython-311.pyc | Bin 45202 -> 45176 bytes inventory/admin.py | 1 + inventory/forms.py | 14 +- inventory/models.py | 35 +- inventory/services.py | 40 +- inventory/signals.py | 28 +- inventory/urls.py | 2 +- inventory/views.py | 2 +- locale/ar/LC_MESSAGES/django.po | 236 +++++----- templates/base.html | 5 +- templates/customers/customer_list.html | 225 ++++----- templates/inventory/car_detail.html | 438 ++++++++++-------- templates/inventory/car_edit.html | 58 +-- templates/inventory/car_inventory.html | 62 +-- templates/vendors/vendors_list.html | 4 +- templates/vendors/view_vendor.html | 4 +- 23 files changed, 601 insertions(+), 567 deletions(-) diff --git a/car_inventory/__pycache__/settings.cpython-311.pyc b/car_inventory/__pycache__/settings.cpython-311.pyc index 88dcf16be94f0fde465960fb127214460c1a04e6..e5697c410e1d1e12a436b7e055cbc272631b8efd 100644 GIT binary patch delta 127 zcmeCtpP|pYoR^o20SJ=QqSD`NO95a!bL$#4O3c#Ly_&Fv%pvIL#v2 z*fKTQ%-GyC#VpO(z}R5(U;YKmLTru!0r8$Lx7b0nw`=4r&ds}p{h0;W7`Q|l*luv? QG_c>`F>2tPEG1qC08URJ!~g&Q diff --git a/car_inventory/settings.py b/car_inventory/settings.py index 2208e95c..8d907648 100644 --- a/car_inventory/settings.py +++ b/car_inventory/settings.py @@ -232,9 +232,17 @@ CRISPY_TEMPLATE_PACK = "bootstrap5" OPENAI_API_KEY = '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' # ELM API KEYS -APP_ID = '367974ed' -APP_KEY = '046b0412c1b4d3f8c39ec6375d6f3030' -CLIENT_ID = '94142c27-2536-47e9-8e28-9ca7728b9442' +# vehicle-info +# c2729afb +# 6d397471920412d672af1b8a02ca52ea + +# option-info +# 367974ed +# 046b0412c1b4d3f8c39ec6375d6f3030 + +ELM_APP_ID = 'c2729afb' +ELM_APP_KEY = '6d397471920412d672af1b8a02ca52ea' +ELM_CLIENT_ID = '94142c27-2536-47e9-8e28-9ca7728b9442' LOGGING = { 'version': 1, diff --git a/inventory/__pycache__/admin.cpython-311.pyc b/inventory/__pycache__/admin.cpython-311.pyc index ec214091181ce138470aacccd657da1f395a4294..baf1003374e68bec5c0c3a3b380cc4da8559e36b 100644 GIT binary patch delta 342 zcmeyNbzhrzIWI340}$vZMx{@m$ScX%vr)Z~dEx=p$vc_FCof|bW)z*gfKhDn1!i6# zd5>9DSe%I=l`)GIqzMF4nX@FIDp)z$S{PE;fwB;lk{BwbU@9l~vT#7nlg3ab15?Gx z1vHNvZk{ZLN;$Af2Ue)t809yYu&!iel%6cd-ohxlc`^GbMn?6?d7SeYbtdz2O=nct zyp-!DBcsLS0s)c9i+Kzf4L4umdBn)*1{OHYXTWH)`43+)BVzziz=hFk@>YR(Muo|u uf={{loD++JQj1fI$|ipitl^FXdYuu7i}{&1R|~Z>PQD;4xtU3%j1d4VPE@A= delta 304 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 delta 1880 zcmZ`)TW=Fb6rS;3?091*Ue_jo0aK+I15TWc6Wbye0i`WONNY%{xV zi)+hPg<1(kZO~RiRjCxI5~T`4t@s^P6KV--B_yQwfk#*LsZTv)V<+@-yz}juIdeHX z-#6pm_iaVI-+Mf61a@fkV)irlP45W);%4Mi-_Uh*DWDDm235yfDC+y^ewx9)2Tz%+ z81JzzaU1vti|1#!qcC>=gV*_YF_x_FoL}RpHS5~VN1&NRtoK~2`Ue=HTS&#KLuFJ} zl}p6d>a&<2#Q)mW43`3U8io?m72thF|9 z0CUz=?5`tr;10~S(VveTsj}+8?p}AKy0`s*M1=p13~onM&uym0nV$ZHNcCPvRc_r$ zTdXo3vi3XUb*_L_1UopiSQ(Z}B|WFeX0BKm&l|;p?NX$ql$I|q+2Lt*GM!8$C(=?p zF(IkbNlCsuv6PbIk|Iw@np_!8CngdS42Vfnlhd(8QcK5Dnv{yA6*-xdQcLMXLW;7L z!BfS8sTIuFg=;0PV%>K)hQ}ZwGEN~*A!f}9@sLE_4ore)H~_+7;-{_C)(s&ve1W=2 z3ITwq%lb_?CLX8t8CvH_l=>&FgM$;{!_=iP2gPUsG|-cgBP}u1@=vt_$E{BWe_2-g zTtJ-e(h!tqPXKPAofnb;jLl!OTm1HIJ$1$)mwgjfQku-9IDs2DhE8e7o*sA%B5W9igvBSWlLr( zVe`f{!_-zPCodMuVVP)QIcyTSVCWsL!?I!I3{x(cVRKmqcplP>@aaNU&l$^Mvlu=> z(r@)NP=W~W3#yeG3CRrGB<)iLf(Q}|S+r2#@B((kU22CQ|v5vUxfnE?YhR{1ujL!iY z=&{HD?HkR|iN$FrHhqU5`Rd~jed8@}pv|M*2U~kHZI1DH+lYb- z1w(h8n}cz9+5#`S+g=nHY5S2F{{y*2{!a>xv+W@A?`w*q>*t$dq$!R!#pEM#_Mtet zCC)d+`Nl#^2yU{$j@lJSsBctSjJ3wH*tCw~3G0B<>#rfRFBb&28=QPA<33QY;VK4| zI2Kcf#B Vt@c6k;$3ajhnE>z{Wo+r>2E9Lyovw- diff --git a/inventory/__pycache__/urls.cpython-311.pyc b/inventory/__pycache__/urls.cpython-311.pyc index 078b0821af10bd634544b869a260e2ff16105ad0..13d57da6cf3ae8e508d1dbf49f02b067d331b9d5 100644 GIT binary patch delta 41 vcmZ2#yVRC@IWI340}v?1M{VRjEWmG*nO9;}kZq@5T9A@hlDhe>zzJRe@e2(V delta 41 vcmZ2#yVRC@IWI340}yP!5xJ53umFE)K}upts=iHTUWrvfw%z8t0w;I@5TXtq diff --git a/inventory/__pycache__/views.cpython-311.pyc b/inventory/__pycache__/views.cpython-311.pyc index 736e0f775758ec4beb982f27b2920f5d49b6adfb..18a4db15e634e4e18f058e7fe50eed5d571fae89 100644 GIT binary patch delta 193 zcmbRAkm<(*Cf?<|yj%=Gz>*%7uDp?VsXWsnrpfCxEGEB^U&d6zJvos>ilu_FmUZ$z z1#L#w$qNd^CMgOVvemNJa+L6cG(tcP+cHK5hSfj}0kxbZf-p7%Lk;_67e!lMw%H6R zyfy4VlCOqia-ZT#Mvl!EO1l}^*@{w&OLIyle^S<&tfmsfxN>r{N&8(_Y aii}$}E4bA$0;&1#^O+boZMOFcP6GfHl`+cz delta 201 zcmezIfN9c0Cf?<|yj%=G5P2;!U2!AtQhBCzOp`ZiSxkN-zl<-1p@OlN6^Pkt*-N-5 zCvr%!0683!Hz{Z{a!fYV7Mpxuk53|onSr5}6|9CIWE2F{uuhgzlx1X_Y@uk&%Q~AO zg|~(cNb=RNPi|6N$;iH0M`<_X}*A;#icnVlO?mLI1K/update/', views.CarUpdateView.as_view(), name='car_update'), path('cars//delete/', views.CarDeleteView.as_view(), name='car_delete'), path('cars//finance/create/', views.CarFinanceCreateView.as_view(), name='car_finance_create'), - path('cars/finance/update//', views.CarFinanceUpdateView.as_view(), name='car_finance_update'), + path('cars/finance//update/', views.CarFinanceUpdateView.as_view(), name='car_finance_update'), path('cars/add/', views.CarCreateView.as_view(), name='car_add'), path('ajax/', views.AjaxHandlerView.as_view(), name='ajax_handler'), path('cars//add-color/', views.CarColorCreate.as_view(), name='add_color'), diff --git a/inventory/views.py b/inventory/views.py index b3df66e1..7daa6e7f 100644 --- a/inventory/views.py +++ b/inventory/views.py @@ -138,7 +138,7 @@ class AjaxHandlerView(LoginRequiredMixin, View): vin_data = {} decoding_method = '' - manufacturer_name = model_name = year_model = None + # manufacturer_name = model_name = year_model = None if not (result :=decodevin(vin_no)): return JsonResponse({'success': False, 'error': 'VIN not found in all sources.'}, status=404) diff --git a/locale/ar/LC_MESSAGES/django.po b/locale/ar/LC_MESSAGES/django.po index a482433e..03f649d8 100644 --- a/locale/ar/LC_MESSAGES/django.po +++ b/locale/ar/LC_MESSAGES/django.po @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-12-11 21:41+0300\n" +"POT-Creation-Date: 2024-12-12 01:35+0300\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" @@ -20,8 +20,8 @@ msgstr "" "&& n%100<=10 ? 3 : n%100>=11 && n%100<=99 ? 4 : 5;\n" #: api/models.py:6 inventory/models.py:126 -#: templates/inventory/car_detail.html:61 templates/inventory/car_form.html:83 -#: templates/inventory/car_inventory.html:53 +#: templates/inventory/car_detail.html:85 templates/inventory/car_form.html:83 +#: templates/inventory/car_inventory.html:51 #: templates/inventory/car_list.html:67 templates/inventory/car_list.html:69 msgid "VIN" msgstr "رقم الهيكل" @@ -42,7 +42,7 @@ msgid "SAR" msgstr "ريال سعودي" #: inventory/forms.py:114 inventory/models.py:341 -#: templates/inventory/car_detail.html:135 +#: templates/inventory/car_detail.html:158 msgid "Custom Date" msgstr "تاريخ البطاقة الجمركية" @@ -72,10 +72,8 @@ msgid "Damaged" msgstr "تالف" #: inventory/models.py:117 -#, fuzzy -#| msgid "Reserve" msgid "Reserved" -msgstr "حجز" +msgstr "محجوزة" #: inventory/models.py:121 msgid "New" @@ -90,7 +88,7 @@ msgid "Dealer" msgstr "المعرض" #: inventory/models.py:140 inventory/models.py:458 -#: templates/inventory/car_detail.html:108 +#: templates/inventory/car_detail.html:131 #: templates/inventory/car_form.html:230 #: venv/lib/python3.11/site-packages/django_ledger/models/bill.py:359 #: venv/lib/python3.11/site-packages/django_ledger/models/vendor.py:191 @@ -99,16 +97,16 @@ msgstr "المعرض" msgid "Vendor" msgstr "المورد" -#: inventory/models.py:148 templates/inventory/car_inventory.html:55 +#: inventory/models.py:148 msgid "Make" msgstr "الصانع" -#: inventory/models.py:156 templates/inventory/car_inventory.html:56 +#: inventory/models.py:156 msgid "Model" msgstr "الموديل" #: inventory/models.py:158 templates/inventory/car_form.html:118 -#: templates/inventory/car_inventory.html:54 +#: templates/inventory/car_inventory.html:52 msgid "Year" msgstr "السنة" @@ -121,7 +119,8 @@ msgid "Trim" msgstr "الفئة" #: inventory/models.py:179 inventory/models.py:500 -#: templates/inventory/car_detail.html:86 templates/inventory/car_list.html:163 +#: templates/inventory/car_detail.html:109 +#: templates/inventory/car_list.html:163 #: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/bills/tags/bill_table.html:10 #: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/estimate/includes/card_estimate.html:12 #: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/estimate/includes/estimate_table.html:12 @@ -131,25 +130,25 @@ msgstr "الفئة" msgid "Status" msgstr "الحالة" -#: inventory/models.py:185 templates/inventory/car_detail.html:90 +#: inventory/models.py:185 templates/inventory/car_detail.html:113 #: templates/inventory/car_form.html:248 templates/inventory/car_list.html:177 msgid "Stock Type" msgstr "نوع المخزون" #: inventory/models.py:187 inventory/models.py:499 -#: templates/inventory/car_detail.html:113 +#: templates/inventory/car_detail.html:136 #: templates/inventory/car_form.html:301 templates/inventory/car_list.html:200 #: templates/sales/quotation_detail.html:23 msgid "Remarks" msgstr "ملاحظات" -#: inventory/models.py:188 templates/inventory/car_detail.html:94 +#: inventory/models.py:188 templates/inventory/car_detail.html:117 #: templates/inventory/car_form.html:265 templates/inventory/car_list.html:191 #: templates/inventory/car_list.html:192 msgid "Mileage" msgstr "عدد الكيلومترات" -#: inventory/models.py:189 templates/inventory/car_detail.html:98 +#: inventory/models.py:189 templates/inventory/car_detail.html:121 #: templates/inventory/car_form.html:283 msgid "Receiving Date" msgstr "تاريخ الاستلام" @@ -164,39 +163,31 @@ msgstr "السيارة" msgid "Cars" msgstr "السيارات" -#: inventory/models.py:228 templates/inventory/car_detail.html:277 +#: inventory/models.py:228 templates/inventory/car_detail.html:304 msgid "Reserved By" msgstr "محجوز بواسطة" #: inventory/models.py:229 -#, fuzzy -#| msgid "Reserved By" msgid "Reserved At" -msgstr "محجوز بواسطة" +msgstr "تاريخ الحجز" #: inventory/models.py:230 -#, fuzzy -#| msgid "Reserved By" msgid "Reserved Until" -msgstr "محجوز بواسطة" +msgstr "محجوز حتى" -#: inventory/models.py:238 -#, fuzzy -#| msgid "Registration" +#: inventory/models.py:238 templates/inventory/car_detail.html:38 msgid "Car Reservation" -msgstr "التسجيل" +msgstr "حجز السيارة" #: inventory/models.py:239 -#, fuzzy -#| msgid "Registrations" msgid "Car Reservations" -msgstr "تسجيل السيارات" +msgstr "حجوزات السيارات" -#: inventory/models.py:245 templates/inventory/car_detail.html:179 +#: inventory/models.py:245 templates/inventory/car_detail.html:204 msgid "Cost Price" msgstr "سعر التكلفة" -#: inventory/models.py:246 templates/inventory/car_detail.html:183 +#: inventory/models.py:246 templates/inventory/car_detail.html:208 #: templates/sales/sales_order_detail.html:25 msgid "Selling Price" msgstr "سعر البيع" @@ -206,28 +197,26 @@ msgid "Profit Margin" msgstr "هامش الربح" #: inventory/models.py:253 -#, fuzzy -#| msgid "VAT Amount" msgid "Vat Amount" msgstr "مبلغ ضريبة القيمة المضافة" -#: inventory/models.py:255 templates/inventory/car_detail.html:203 +#: inventory/models.py:255 templates/inventory/car_detail.html:228 msgid "Discount Amount" msgstr "مبلغ الخصم" -#: inventory/models.py:257 templates/inventory/car_detail.html:191 +#: inventory/models.py:257 templates/inventory/car_detail.html:216 msgid "Registration Fee" msgstr "رسوم التسجيل" -#: inventory/models.py:259 templates/inventory/car_detail.html:187 +#: inventory/models.py:259 templates/inventory/car_detail.html:212 msgid "Administration Fee" msgstr "الرسوم الادارية" -#: inventory/models.py:261 templates/inventory/car_detail.html:195 +#: inventory/models.py:261 templates/inventory/car_detail.html:220 msgid "Transportation Fee" msgstr "رسوم النقل" -#: inventory/models.py:263 templates/inventory/car_detail.html:199 +#: inventory/models.py:263 templates/inventory/car_detail.html:224 msgid "Custom Card Fee" msgstr "رسوم البطاقة الجمركية" @@ -276,12 +265,12 @@ msgstr "اللون" msgid "Colors" msgstr "الألوان" -#: inventory/models.py:340 templates/inventory/car_detail.html:131 +#: inventory/models.py:340 templates/inventory/car_detail.html:154 msgid "Custom Number" msgstr "رقم البطاقة الجمركية" -#: inventory/models.py:344 templates/inventory/car_detail.html:16 -#: templates/inventory/car_detail.html:141 +#: inventory/models.py:344 templates/inventory/car_detail.html:23 +#: templates/inventory/car_detail.html:164 msgid "Custom Card" msgstr "البطاقة الجمركية" @@ -324,28 +313,20 @@ msgstr "وصف اختياري حول وضع السيارة في صالة الع #: inventory/models.py:380 inventory/models.py:501 inventory/models.py:563 #: templates/sales/quotation_list.html:17 -#, fuzzy -#| msgid "Created" msgid "Created At" msgstr "تاريخ الإنشاء" #: inventory/models.py:384 -#, fuzzy -#| msgid "Updated" msgid "Last Updated" -msgstr "تم التحديث" +msgstr "آخر تحديث" #: inventory/models.py:388 -#, fuzzy -#| msgid "actions" msgid "Car Location" -msgstr "الإجراءات" +msgstr "موقع السيارة" #: inventory/models.py:389 -#, fuzzy -#| msgid "actions" msgid "Car Locations" -msgstr "الإجراءات" +msgstr "مواقف السيارات" #: inventory/models.py:403 msgid "Plate Number" @@ -484,10 +465,8 @@ msgid "Draft" msgstr "مسودة" #: inventory/models.py:493 -#, fuzzy -#| msgid "Confirm" msgid "Confirmed" -msgstr "تأكيد" +msgstr "مؤكد" #: inventory/models.py:494 #: venv/lib/python3.11/site-packages/django_ledger/models/bill.py:342 @@ -506,8 +485,6 @@ msgid "Amount" msgstr "المبلغ" #: inventory/models.py:502 -#, fuzzy -#| msgid "Updated" msgid "Updated At" msgstr "تم التحديث" @@ -520,10 +497,8 @@ msgid "Cannot cancel a confirmed quotation." msgstr "لا يمكن إلغاء عرض تقديري تم تأكيده." #: inventory/models.py:527 inventory/models.py:562 -#, fuzzy -#| msgid "Duration" msgid "Quotation" -msgstr "المدة" +msgstr "عزرص سعر" #: inventory/models.py:535 #: venv/lib/python3.11/site-packages/django_ledger/models/items.py:1068 @@ -561,7 +536,7 @@ msgid "You are not associated with any dealer." msgstr "أنت غير مرتبط بأي معرض." #: inventory/views.py:221 templates/header.html:33 templates/index.html:20 -#: templates/inventory/car_inventory.html:5 +#: templates/inventory/car_inventory.html:4 #: templates/inventory/car_inventory.html:7 msgid "inventory" msgstr "المخزون" @@ -784,7 +759,7 @@ msgstr "حفظ" #: templates/inventory/add_colors.html:56 #: templates/inventory/add_custom_card.html:8 #: templates/inventory/car_confirm_delete.html:14 -#: templates/inventory/car_detail.html:301 +#: templates/inventory/car_detail.html:328 #: templates/inventory/car_finance_form.html:41 #: templates/inventory/color_palette.html:107 #: templates/inventory/reserve_car.html:30 @@ -800,7 +775,7 @@ msgid "Cancel" msgstr "إلغاء" #: templates/customers/customer_list.html:20 -#: templates/inventory/car_inventory.html:31 +#: templates/inventory/car_inventory.html:30 #: templates/inventory/car_list.html:70 msgid "search" msgstr "بحث" @@ -826,8 +801,8 @@ msgid "actions" msgstr "الإجراءات" #: templates/customers/customer_list.html:59 -#: templates/inventory/car_detail.html:124 -#: templates/inventory/car_inventory.html:75 +#: templates/inventory/car_detail.html:147 +#: templates/inventory/car_inventory.html:78 msgid "view" msgstr "عرض" @@ -840,7 +815,7 @@ msgid "Are you sure you want to delete this customer?" msgstr "هل أنت متأكد أنك تريد حذف هذا العميل؟" #: templates/customers/view_customer.html:26 -#: templates/vendors/view_vendor.html:29 +#: templates/inventory/car_detail.html:47 templates/vendors/view_vendor.html:29 #: venv/lib/python3.11/site-packages/django/forms/widgets.py:802 msgid "No" msgstr "لا" @@ -857,7 +832,7 @@ msgid "Customer Details" msgstr "تفاصيل العميل" #: templates/customers/view_customer.html:61 -#: templates/inventory/car_detail.html:329 +#: templates/inventory/car_detail.html:359 #: templates/vendors/view_vendor.html:66 #: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/customer/includes/card_customer.html:28 #: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/journal_entry/tags/je_table.html:83 @@ -899,7 +874,7 @@ msgid "Delete" msgstr "حذف" #: templates/customers/view_customer.html:72 -#: templates/inventory/car_detail.html:331 +#: templates/inventory/car_detail.html:361 msgid "Back to List" msgstr "العودة إلى القائمة" @@ -1107,7 +1082,7 @@ msgstr "أفضل السيارات مبيعاً" msgid "View your best-selling cars." msgstr "عرض السيارات الأكثر مبيعاً." -#: templates/index.html:151 templates/inventory/car_detail.html:74 +#: templates/index.html:151 templates/inventory/car_detail.html:97 #: templates/inventory/car_form.html:159 templates/inventory/car_list.html:97 msgid "model" msgstr "الموديل" @@ -1175,70 +1150,86 @@ msgstr "إضافة لون" msgid "Select exterior and interior colors for" msgstr "اختر الألوان الخارجية والداخلية لـ" -#: templates/inventory/car_detail.html:6 templates/inventory/car_detail.html:58 +#: templates/inventory/car_detail.html:5 templates/inventory/car_detail.html:82 #: templates/sales/quotation_detail.html:27 msgid "Car Details" msgstr "تفاصيل السيارة" -#: templates/inventory/car_detail.html:37 -#: templates/inventory/car_detail.html:117 templates/inventory/car_form.html:37 +#: templates/inventory/car_detail.html:42 +msgid "Are you sure you want to reserve this car?" +msgstr "هل أنت متأكد أنك تريد حجز هذه السيارة؟" + +#: templates/inventory/car_detail.html:51 +#: templates/inventory/car_detail.html:346 +#: templates/inventory/reserve_car.html:29 +msgid "Reserve" +msgstr "حجز" + +#: templates/inventory/car_detail.html:65 +#: templates/inventory/car_detail.html:140 templates/inventory/car_form.html:37 #: templates/inventory/car_form.html:322 templates/inventory/car_list.html:47 #: templates/inventory/car_list.html:221 msgid "specifications" msgstr "المواصفات" -#: templates/inventory/car_detail.html:65 templates/inventory/car_list.html:119 +#: templates/inventory/car_detail.html:89 templates/inventory/car_list.html:119 msgid "year" msgstr "السنة" -#: templates/inventory/car_detail.html:69 templates/inventory/car_form.html:140 +#: templates/inventory/car_detail.html:93 templates/inventory/car_form.html:140 #: templates/inventory/car_list.html:79 msgid "make" msgstr "الصانع" -#: templates/inventory/car_detail.html:78 templates/inventory/car_list.html:130 +#: templates/inventory/car_detail.html:101 +#: templates/inventory/car_list.html:130 msgid "series" msgstr "السلسلة" -#: templates/inventory/car_detail.html:82 templates/inventory/car_form.html:204 -#: templates/inventory/car_list.html:141 +#: templates/inventory/car_detail.html:105 +#: templates/inventory/car_form.html:204 templates/inventory/car_list.html:141 msgid "trim" msgstr "الفئة" -#: templates/inventory/car_detail.html:103 +#: templates/inventory/car_detail.html:126 msgid "Branch" msgstr "الفرع" -#: templates/inventory/car_detail.html:147 -#: templates/inventory/car_detail.html:166 +#: templates/inventory/car_detail.html:170 +#: templates/inventory/car_detail.html:191 msgid "Add" msgstr "إضافة" -#: templates/inventory/car_detail.html:153 +#: templates/inventory/car_detail.html:176 +#: templates/inventory/car_inventory.html:55 msgid "Showroom Location" msgstr "موقع صالة العرض" -#: templates/inventory/car_detail.html:157 +#: templates/inventory/car_detail.html:180 +#: templates/inventory/car_inventory.html:72 msgid "Our Showroom" msgstr "معرضنا" -#: templates/inventory/car_detail.html:163 -#, fuzzy -#| msgid "No options available." -msgid "No location available." -msgstr "لا توجد سيارات متاحة." +#: templates/inventory/car_detail.html:186 +#: templates/inventory/transfer_car.html:23 +msgid "transfer" +msgstr "نقل" -#: templates/inventory/car_detail.html:175 +#: templates/inventory/car_detail.html:188 +msgid "No location available." +msgstr "لا يوجد موقع متاح." + +#: templates/inventory/car_detail.html:199 msgid "Financial Details" msgstr "التفاصيل المالية" -#: templates/inventory/car_detail.html:207 +#: templates/inventory/car_detail.html:232 #: templates/sales/quotation_detail.html:66 #: templates/sales/sales_order_detail.html:26 msgid "VAT Amount" msgstr "مبلغ ضريبة القيمة المضافة" -#: templates/inventory/car_detail.html:211 +#: templates/inventory/car_detail.html:236 #: templates/inventory/inventory_stats.html:61 #: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/bills/bill_detail.html:98 #: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/bills/bill_detail.html:127 @@ -1257,48 +1248,48 @@ msgstr "مبلغ ضريبة القيمة المضافة" msgid "Total" msgstr "الإجمالي" -#: templates/inventory/car_detail.html:218 +#: templates/inventory/car_detail.html:243 msgid "Edit Finance Details" msgstr "تعديل التفاصيل المالية" -#: templates/inventory/car_detail.html:222 +#: templates/inventory/car_detail.html:247 msgid "No finance details available." msgstr "لا توجد تفاصيل مالية متاحة." -#: templates/inventory/car_detail.html:225 +#: templates/inventory/car_detail.html:250 msgid "Add Finance Details" msgstr "إضافة التفاصيل المالية" -#: templates/inventory/car_detail.html:231 +#: templates/inventory/car_detail.html:256 msgid "Colors Details" msgstr "تفاصيل الألوان" -#: templates/inventory/car_detail.html:237 +#: templates/inventory/car_detail.html:262 msgid "Exterior" msgstr "الخارجي" -#: templates/inventory/car_detail.html:246 +#: templates/inventory/car_detail.html:273 msgid "Interior" msgstr "الداخلي" -#: templates/inventory/car_detail.html:258 +#: templates/inventory/car_detail.html:286 msgid "No colors available for this car." msgstr "لا تتوفر ألوان لهذه السيارة." -#: templates/inventory/car_detail.html:265 +#: templates/inventory/car_detail.html:292 msgid "Get Colors" msgstr "الحصول على الألوان" -#: templates/inventory/car_detail.html:272 +#: templates/inventory/car_detail.html:299 msgid "Reservations Details" msgstr "تفاصيل الحجز" -#: templates/inventory/car_detail.html:278 +#: templates/inventory/car_detail.html:305 msgid "Expires At" msgstr "ينتهي في" -#: templates/inventory/car_detail.html:279 -#: templates/inventory/car_inventory.html:57 +#: templates/inventory/car_detail.html:306 +#: templates/inventory/car_inventory.html:56 #: templates/sales/quotation_list.html:18 #: templates/vendors/vendors_list.html:37 #: venv/lib/python3.11/site-packages/django_ledger/templates/django_ledger/account/tags/account_txs_table.html:29 @@ -1327,31 +1318,21 @@ msgstr "ينتهي في" msgid "Actions" msgstr "الإجراءات" -#: templates/inventory/car_detail.html:295 +#: templates/inventory/car_detail.html:322 msgid "Renew" msgstr "تجديد" -#: templates/inventory/car_detail.html:305 +#: templates/inventory/car_detail.html:334 msgid "Expired" msgstr "ينتهي في" -#: templates/inventory/car_detail.html:315 -#: templates/inventory/reserve_car.html:29 -msgid "Reserve" -msgstr "حجز" - -#: templates/inventory/car_detail.html:327 -#: templates/inventory/transfer_car.html:23 -msgid "transfer" -msgstr "نقل" - -#: templates/inventory/car_detail.html:416 +#: templates/inventory/car_detail.html:440 #: templates/inventory/car_list.html:542 #: templates/partials/specifications_modal.html:11 msgid "No specifications available." msgstr "لا توجد مواصفات متاحة." -#: templates/inventory/car_detail.html:420 +#: templates/inventory/car_detail.html:444 #: templates/inventory/car_list.html:546 msgid "Error loading specifications." msgstr "حدث خطأ أثناء تحميل المواصفات." @@ -1427,7 +1408,15 @@ msgstr "فشل في فك تشفير رقم الهيكل" msgid "An error occurred while decoding the VIN." msgstr "حدث خطأ أثناء فك تشفير الهيكل" -#: templates/inventory/car_inventory.html:80 +#: templates/inventory/car_inventory.html:53 +msgid "Exterior Color" +msgstr "اللون الخارجي" + +#: templates/inventory/car_inventory.html:54 +msgid "Interior Color" +msgstr "اللون الداخلي" + +#: templates/inventory/car_inventory.html:84 msgid "No cars available." msgstr "لا توجد سيارات متاحة." @@ -1487,10 +1476,8 @@ msgstr "خطأ في تحميل الخيارات." #: templates/inventory/car_location_form.html:4 #: templates/inventory/car_location_form.html:12 -#, fuzzy -#| msgid "actions" msgid "Manage Car Location" -msgstr "الإجراءات" +msgstr "إدارة موقع السيارة" #: templates/inventory/color_palette.html:74 msgid "Update Color" @@ -6989,10 +6976,3 @@ msgid "" "Message Django's middlewares" msgstr "" -#~ msgid "Location" -#~ msgstr "الموقع" - -#, fuzzy -#~| msgid "Net Income" -#~ msgid "Sales Income" -#~ msgstr "صافي الدخل" diff --git a/templates/base.html b/templates/base.html index 162254c8..7ada0762 100644 --- a/templates/base.html +++ b/templates/base.html @@ -36,6 +36,7 @@ small, .small { } .btn { text-transform: uppercase; + border-radius: 5px; } @@ -47,11 +48,7 @@ small, .small { {% block content %} {% endblock %} - - - -