diff --git a/car_inventory/asgi.py b/car_inventory/asgi.py index 941b6cbf..c1cd1ab8 100644 --- a/car_inventory/asgi.py +++ b/car_inventory/asgi.py @@ -45,20 +45,4 @@ application = ProtocolTypeRouter( ) ), } -) - - -try: - from django.conf import settings - from django.contrib.sites.models import Site - - if not settings.DEBUG: - site = Site.objects.get(id=settings.SITE_ID) - if site.domain != settings.PRODUCTION_DOMAIN: - site.domain = settings.PRODUCTION_DOMAIN - site.name = settings.SITE_NAME - site.save() -except Exception as e: - # Log error but don't crash the app - if settings.DEBUG: - print(f"Site configuration error in WSGI: {e}") \ No newline at end of file +) \ No newline at end of file diff --git a/install.sh b/install.sh index 34962c64..c13bc022 100755 --- a/install.sh +++ b/install.sh @@ -1,7 +1,7 @@ #!/bin/bash -sudo apt-get update && sudo apt-get install libgl1 libglib2.0-dev libzbar0 cmake build-essential xmlsec1 libxmlsec1-dev pkg-config libxml2-dev libxmlsec1-dev libxmlsec1-openssl libssl-dev -y +sudo apt-get update && sudo apt-get install gettext libgl1 libglib2.0-dev libzbar0 cmake build-essential xmlsec1 libxmlsec1-dev pkg-config libxml2-dev libxmlsec1-dev libxmlsec1-openssl libssl-dev -y pip install --upgrade pip pip install -r requirements_dev.txt ./apply_initial_migrations.sh diff --git a/inventory/forms.py b/inventory/forms.py index ec7ac101..5235df73 100644 --- a/inventory/forms.py +++ b/inventory/forms.py @@ -2118,6 +2118,15 @@ class AdditionalFinancesForm(forms.Form): required=False, ) + def __init__(self, *args, **kwargs): + super().__init__(*args, **kwargs) + for field in self.fields.values(): + if isinstance(field, forms.ModelMultipleChoiceField): + field.widget.choices = [ + (obj.pk, f"{obj.name} - {obj.price:.2f}") + for obj in field.queryset + ] + class VatRateForm(forms.ModelForm): rate = forms.DecimalField( diff --git a/inventory/hooks.py b/inventory/hooks.py index ea2b6ae8..5fca2a32 100644 --- a/inventory/hooks.py +++ b/inventory/hooks.py @@ -17,6 +17,7 @@ def check_create_coa_accounts(task): try: dealer_id = task.kwargs.get('dealer_id') + coa_slug = task.kwargs.get('coa_slug', None) if not dealer_id: logger.error("No dealer_id in task kwargs") return @@ -29,7 +30,13 @@ def check_create_coa_accounts(task): logger.error(f"No entity for dealer {dealer_id}") return - coa = entity.get_default_coa() + if coa_slug: + try: + coa = entity.get_coa_model_qs().get(slug=coa_slug) + except Exception as e: + logger.error(f"COA with slug {coa_slug} not found for entity {entity.id}: {e}") + else: + coa = entity.get_default_coa() if not coa: logger.error(f"No COA for entity {entity.id}") return diff --git a/inventory/management/commands/deactivate_unsubscribed_dealers.py b/inventory/management/commands/deactivate_unsubscribed_dealers.py new file mode 100644 index 00000000..47f4d960 --- /dev/null +++ b/inventory/management/commands/deactivate_unsubscribed_dealers.py @@ -0,0 +1,39 @@ +from datetime import timedelta +from django.conf import settings +from django.utils import timezone +from inventory.tasks import send_email +from django.contrib.auth import get_user_model +from django.core.management.base import BaseCommand + + +User = get_user_model() + +class Command(BaseCommand): + help = "Deactivates expired user plans" + + def handle(self, *args, **options): + users_without_plan = User.objects.filter( + is_active=True, userplan=None, dealer__isnull=False, date_joined__lte=timezone.now()-timedelta(days=7) + ) + + count = users_without_plan.count() + for user in users_without_plan: + user.is_active = False + user.save() + subject = 'Your account has been deactivated' + message = """ + Hello {},\n + Your account has been deactivated, please contact us at {} if you have any questions. + + Regards,\n + Tenhal Team + """.format(user.dealer.name, settings.DEFAULT_FROM_EMAIL) + from_email = settings.DEFAULT_FROM_EMAIL + recipient_list = user.email + send_email(from_email, recipient_list,subject, message) + + self.stdout.write( + self.style.SUCCESS( + f"Successfully deactivated {count} dealers who created account but dont have userplan" + ) + ) diff --git a/inventory/management/commands/invoices_due_date_reminder.py b/inventory/management/commands/invoices_due_date_reminder.py index 84ccd8bd..8cbe6272 100644 --- a/inventory/management/commands/invoices_due_date_reminder.py +++ b/inventory/management/commands/invoices_due_date_reminder.py @@ -57,7 +57,7 @@ class Command(BaseCommand): }, ) send_email( - "noreply@yourdomain.com", + settings.DEFAULT_FROM_EMAIL, inv.customer.email, subject, message, @@ -118,7 +118,7 @@ class Command(BaseCommand): # send email to customer send_email( - "noreply@yourdomain.com", + settings.DEFAULT_FROM_EMAIL, inv.customer.email, subject, message, diff --git a/inventory/management/commands/plans_maintenance.py b/inventory/management/commands/plans_maintenance.py index c83ea5bd..c7222f36 100644 --- a/inventory/management/commands/plans_maintenance.py +++ b/inventory/management/commands/plans_maintenance.py @@ -25,7 +25,7 @@ class Command(BaseCommand): self.deactivate_expired_plans() # 3. Clean up old incomplete orders - self.cleanup_old_orders() + # self.cleanup_old_orders() self.stdout.write("Maintenance completed!") @@ -58,9 +58,19 @@ class Command(BaseCommand): def deactivate_expired_plans(self): """Deactivate plans that have expired (synchronous)""" expired_plans = UserPlan.objects.filter( - active=True, expire__lt=timezone.now().date() + active=True, expire__lte=timezone.now() - timedelta(days=7) ) + + for plan in expired_plans: + # try: + if dealer := getattr(plan.user,"dealer", None): + dealer.user.is_active = False + dealer.user.save() + for staff in dealer.get_staff(): + staff.deactivate_account() count = expired_plans.update(active=False) + # except: + # logger.warning(f"User {plan.user_id} does not exist") self.stdout.write(f"Deactivated {count} expired plans") def cleanup_old_orders(self): diff --git a/inventory/management/commands/update_site.py b/inventory/management/commands/update_site.py new file mode 100644 index 00000000..9e000038 --- /dev/null +++ b/inventory/management/commands/update_site.py @@ -0,0 +1,14 @@ +# management/commands/update_site.py +from django.core.management.base import BaseCommand +from django.contrib.sites.models import Site +from django.conf import settings + +class Command(BaseCommand): + help = 'Update the default site domain' + + def handle(self, *args, **options): + site = Site.objects.get_current() + site.domain = settings.SITE_DOMAIN + site.name = settings.SITE_NAME + site.save() + self.stdout.write(self.style.SUCCESS(f'Site updated to: {site.domain}')) \ No newline at end of file diff --git a/inventory/middleware.py b/inventory/middleware.py index e5cb538e..0953c77a 100644 --- a/inventory/middleware.py +++ b/inventory/middleware.py @@ -169,7 +169,7 @@ class DealerSlugMiddleware: "/ar/help_center/", "/en/help_center/", ] - + if request.path in paths: return None diff --git a/inventory/models.py b/inventory/models.py index 80ecd91a..33e351f5 100644 --- a/inventory/models.py +++ b/inventory/models.py @@ -8,7 +8,7 @@ from decimal import Decimal from django.urls import reverse from django.utils.text import slugify from django.utils import timezone -from django.core.validators import MinValueValidator +from django.core.validators import MinValueValidator,MaxValueValidator import hashlib from django.db import models from datetime import timedelta @@ -206,12 +206,25 @@ class UnitOfMeasure(models.TextChoices): class VatRate(models.Model): dealer = models.ForeignKey("Dealer", on_delete=models.CASCADE) - rate = models.DecimalField(max_digits=5, decimal_places=2, default=Decimal("0.15")) + rate = models.DecimalField( + max_digits=5, + decimal_places=2, + default=Decimal("0.15"), + validators=[ + MinValueValidator(0.0), + MaxValueValidator(1.0) + ], + help_text=_("VAT rate as decimal between 0 and 1 (e.g., 0.2 for 20%)") + ) is_active = models.BooleanField(default=True) created_at = models.DateTimeField(auto_now_add=True) def __str__(self): - return f"Rate: {self.rate}%" + return f"Rate: {self.rate * 100}%" + + def save(self, *args, **kwargs): + self.full_clean() + super().save(*args, **kwargs) class CarType(models.IntegerChoices): @@ -1365,7 +1378,7 @@ class Dealer(models.Model, LocalizedNameMixin): options={"quality": 80}, ) entity = models.ForeignKey( - EntityModel, on_delete=models.SET_NULL, null=True, blank=True + EntityModel, on_delete=models.SET_NULL, null=True, blank=True,related_name="dealers" ) joined_at = models.DateTimeField(auto_now_add=True, verbose_name=_("Joined At")) updated_at = models.DateTimeField(auto_now=True, verbose_name=_("Updated At")) @@ -1397,6 +1410,13 @@ class Dealer(models.Model, LocalizedNameMixin): except Exception as e: print(e) return None + @property + def is_plan_expired(self): + try: + return UserPlan.objects.get(user=self.user, active=True).is_expired() + except Exception as e: + logger.error(e) + return True @property def customers(self): @@ -1424,6 +1444,8 @@ class Dealer(models.Model, LocalizedNameMixin): def get_vendors(self): return VendorModel.objects.filter(entity_model=self.entity) + def get_staff(self): + return Staff.objects.filter(dealer=self) @property def is_staff_exceed_quota_limit(self): diff --git a/inventory/signals.py b/inventory/signals.py index b4b33875..083e6487 100644 --- a/inventory/signals.py +++ b/inventory/signals.py @@ -20,6 +20,7 @@ from django_ledger.models import ( PurchaseOrderModel, EstimateModel, BillModel, + ChartOfAccountModel, ) from . import models from django.utils.timezone import now @@ -71,13 +72,12 @@ User = get_user_model() # instance.save() -# check with marwan -# @receiver(post_save, sender=models.Car) -# def create_dealers_make(sender, instance, created, **kwargs): -# if created: -# models.DealersMake.objects.get_or_create( -# dealer=instance.dealer, car_make=instance.id_car_make -# ) +@receiver(post_save, sender=models.Car) +def create_dealers_make(sender, instance, created, **kwargs): + if created: + models.DealersMake.objects.get_or_create( + dealer=instance.dealer, car_make=instance.id_car_make + ) @receiver(post_save, sender=models.Car) @@ -1425,3 +1425,20 @@ def handle_user_registration(sender, instance, created, **kwargs): شكرا لاختيارك لنا. """) + + +@receiver(post_save, sender=ChartOfAccountModel) +def handle_chart_of_account(sender, instance, created, **kwargs): + if created: + try: + dealer = instance.entity.dealers.first() + async_task( + func="inventory.tasks.create_coa_accounts", + dealer_id=dealer.pk, # Pass ID instead of object + coa_slug=instance.slug, + hook="inventory.hooks.check_create_coa_accounts", + ack_failure=True, # Ensure task failures are acknowledged + sync=False # Explicitly set to async + ) + except Exception as e: + logger.error(f"Error handling chart of account: {e}") \ No newline at end of file diff --git a/inventory/tasks.py b/inventory/tasks.py index 3cd79b94..f121e0bd 100644 --- a/inventory/tasks.py +++ b/inventory/tasks.py @@ -72,23 +72,32 @@ def create_coa_accounts(dealer_id, **kwargs): max_retries = 3 retry_delay = 2 # seconds - + coa_slug = kwargs.get('coa_slug', None) + logger.info(f"chart of account model slug {coa_slug}") + logger.info(f"Attempting to create accounts for dealer {dealer_id}") for attempt in range(max_retries): try: logger.info(f"Attempt {attempt + 1} to create accounts for dealer {dealer_id}") - # Get fresh instance from database - instance = Dealer.objects.select_related('entity').get(id=dealer_id) + instance = Dealer.objects.get(pk=dealer_id) entity = instance.entity if not entity: logger.error(f"No entity found for dealer {dealer_id}") return False - coa = entity.get_default_coa() + if coa_slug: + try: + coa = entity.get_coa_model_qs().get(slug=coa_slug) + logger.info(f"COA with slug {coa_slug} found for entity {entity.pk}") + except Exception as e: + logger.error(f"COA with slug {coa_slug} not found for entity {entity.pk}: {e}") + else: + coa = entity.get_default_coa() + logger.info(f"Default COA found for entity {entity.pk}") if not coa: - logger.error(f"No COA found for entity {entity.id}") + logger.error(f"No COA found for entity {entity.pk}") return False logger.info("Creating default accounts") @@ -112,11 +121,11 @@ def create_coa_accounts(dealer_id, **kwargs): else: logger.error(f"All {max_retries} attempts failed for dealer {dealer_id}") # Schedule a cleanup or notification task - async_task( - "inventory.tasks.handle_account_creation_failure", - dealer_id=dealer_id, - error=str(e) - ) + # async_task( + # "inventory.tasks.handle_account_creation_failure", + # dealer_id=dealer_id, + # error=str(e) + # ) return False def retry_entity_creation(dealer_id, retry_count=0): diff --git a/inventory/utils.py b/inventory/utils.py index 79b0bd99..0305bb72 100644 --- a/inventory/utils.py +++ b/inventory/utils.py @@ -25,6 +25,7 @@ from django_ledger.models import ( InvoiceModel, BillModel, VendorModel, + AccountModel ) from django.core.files.base import ContentFile from django_ledger.models.items import ItemModel @@ -2391,15 +2392,17 @@ def create_account(entity, coa, account_data): Create account with proper validation and error handling """ try: - # Check if account already exists + # existing_account = AccountModel.objects.filter(coa_model=coa,code=account_data["code"]) existing_account = entity.get_all_accounts().filter( + coa_model=coa, code=account_data["code"] - ).first() + ) if existing_account: logger.info(f"Account already exists: {account_data['code']}") return True + logger.info(f"Creating account: {account_data['code']}") account = entity.create_account( coa_model=coa, code=account_data["code"], @@ -2408,6 +2411,7 @@ def create_account(entity, coa, account_data): balance_type=_(account_data["balance_type"]), active=True, ) + logger.info(f"Successfully created account: {account_data['code']}") if account: account.role_default = account_data["default"] diff --git a/inventory/views.py b/inventory/views.py index 928792a3..d053a04c 100644 --- a/inventory/views.py +++ b/inventory/views.py @@ -3640,17 +3640,17 @@ class UserCreateView( def form_valid(self, form): staff = form.save(commit=False) dealer = get_object_or_404(models.Dealer, slug=self.kwargs["dealer_slug"]) - if dealer.is_staff_exceed_quota_limit: - messages.error( - self.request, - _( - "You have reached the maximum number of staff users allowed for your plan" - ), - ) - return self.form_invalid(form) + # if dealer.is_staff_exceed_quota_limit: + # messages.error( + # self.request, + # _( + # "You have reached the maximum number of staff users allowed for your plan" + # ), + # ) + # return self.form_invalid(form) email = form.cleaned_data["email"] - if models.Staff.objects.filter(user__email=email).exists(): + if models.Staff.objects.filter(dealer=dealer,user__email=email).exists() or models.Dealer.objects.filter(user__email=email).exists(): messages.error( self.request, _( @@ -4201,7 +4201,7 @@ class BankAccountCreateView( def get_form(self, form_class=None): dealer = get_object_or_404(models.Dealer, slug=self.kwargs["dealer_slug"]) form = super().get_form(form_class) - account_qs = dealer.entity.get_all_accounts().filter( + account_qs = dealer.entity.get_default_coa_accounts().filter( role__in=[ roles.ASSET_CA_CASH, roles.LIABILITY_CL_ACC_PAYABLE, @@ -4296,7 +4296,7 @@ class BankAccountUpdateView( def get_form(self, form_class=None): dealer = get_object_or_404(models.Dealer, slug=self.kwargs["dealer_slug"]) form = super().get_form(form_class) - account_qs = dealer.entity.get_all_accounts().filter( + account_qs = dealer.entity.get_default_coa_accounts().filter( role__in=[ roles.ASSET_CA_CASH, roles.LIABILITY_CL_ACC_PAYABLE, @@ -5926,6 +5926,9 @@ def PaymentCreateView(request, dealer_slug, pk): if not model.is_approved(): model.mark_as_approved(user_model=entity.admin) + if amount < invoice.amount_due: + messages.error(request, _("Amount cannot be less than due amount")) + return response if model.amount_paid == model.amount_due: messages.error(request, _("fully paid")) return response @@ -6789,8 +6792,10 @@ def delete_note(request, dealer_slug, pk): """ try: note = get_object_or_404(models.Notes, pk=pk, created_by=request.user) - print(note) - if isinstance(note.content_object, models.Lead): + if isinstance(note.content_object, models.Customer): + url = "customer_detail" + slug = note.content_object.slug + elif isinstance(note.content_object, models.Lead): url = "lead_detail" slug = note.content_object.slug if hasattr(note.content_object, "opportunity"): @@ -9810,7 +9815,7 @@ def ledger_unpost_all_journals(request, dealer_slug, entity_slug, pk): def pricing_page(request, dealer_slug): dealer=get_object_or_404(models.Dealer, slug=dealer_slug) vat = models.VatRate.objects.filter(dealer=dealer).first() - if not dealer.active_plan: + if not hasattr(dealer.user,'userplan') or dealer.is_plan_expired: plan_list = PlanPricing.objects.annotate( price_with_tax=Round(F('price') * vat.rate + F('price'), 2) ).all() @@ -9887,7 +9892,7 @@ def payment_callback(request, dealer_slug): UserPlan.objects.create( user=order.user, plan=order.plan, - expire=datetime.now().date() + timedelta(days=order.get_plan_pricing().pricing.period) + # expire=datetime.now().date() + timedelta(days=order.get_plan_pricing().pricing.period) ) logger.info(f"Created new UserPlan for user {order.user} with plan {order.plan}.") else: @@ -9923,7 +9928,16 @@ def payment_callback(request, dealer_slug): history.status = "failed" history.save() return render(request, "payment_failed.html", {"message": "Plan activation error"}) + finally: + if dealer := getattr(order.user,"dealer", None): + if not dealer.user.is_active: + dealer.user.is_active = True + dealer.user.save() + for staff in dealer.get_staff(): + if not staff.user.is_active: + staff.activate_account() + logger.info(f"Order {order.id} for user {order.user} completed successfully. Payment history updated.") elif payment_status == "failed": logger.warning(f"Payment failed for transaction ID {payment_id}. Message: {message}") history.status = "failed" @@ -10618,7 +10632,9 @@ def InventoryItemCreateView(request, dealer_slug): messages.error(request, _("Inventory item already exists")) return response - uom = entity.get_uom_all().get(name="Unit") + uom = entity.get_uom_all().filter(name="Unit").first() + if not uom: + uom = entity.create_uom(name="Unit", unit_abbr="unit") entity.create_item_inventory( name=inventory_name, uom_model=uom, @@ -11474,15 +11490,12 @@ def staff_password_reset_view(request, dealer_slug, user_pk): if request.method == 'POST': form = forms.CustomSetPasswordForm(staff.user, request.POST) - if form.is_valid(): - print(form.cleaned_data['new_password1']) - print(form.cleaned_data['new_password2']) form.save() messages.success(request, _('Your password has been set. You may go ahead and log in now.')) return redirect('user_detail',dealer_slug=dealer_slug,slug=staff.slug) else: - messages.error(request, _('Invalid password. Please try again.')) + messages.error(request, _(f'Invalid password. {str(form.errors)}')) form = forms.CustomSetPasswordForm(staff.user) return render(request, 'users/user_password_reset.html', {'form': form}) diff --git a/load_initial_data.sh b/load_initial_data.sh index 86318830..2ab807c0 100755 --- a/load_initial_data.sh +++ b/load_initial_data.sh @@ -26,4 +26,7 @@ python3 manage.py tenhal_plan python3 manage.py set_custom_permissions +echo "Updating site domain" +python3 manage.py update_site + echo "Done" \ No newline at end of file diff --git a/locale/ar/LC_MESSAGES/django.mo b/locale/ar/LC_MESSAGES/django.mo index 5655e7d5..27617f3e 100644 Binary files a/locale/ar/LC_MESSAGES/django.mo and b/locale/ar/LC_MESSAGES/django.mo differ diff --git a/locale/ar/LC_MESSAGES/django.po b/locale/ar/LC_MESSAGES/django.po index e4ecbcdd..67c9eed3 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: 2025-09-03 20:13+0300\n" +"POT-Creation-Date: 2025-09-08 14:40+0300\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" @@ -19,12 +19,12 @@ msgstr "" "Plural-Forms: nplurals=6; plural=n==0 ? 0 : n==1 ? 1 : n==2 ? 2 : n%100>=3 " "&& n%100<=10 ? 3 : n%100>=11 && n%100<=99 ? 4 : 5;\n" -#: api/models.py:6 inventory/models.py:629 inventory/tables.py:55 +#: api/models.py:6 inventory/models.py:633 inventory/tables.py:55 #: templates/inventory/car_detail.html:93 templates/inventory/car_form.html:52 #: templates/inventory/car_form.html:58 #: ⁨templates/inventory/car_form_qabl alfalsafa.html⁩:30 #: templates/inventory/car_inventory.html:65 -#: templates/inventory/car_list.html:71 templates/inventory/car_list.html:77 +#: templates/inventory/car_list.html:74 templates/inventory/car_list.html:80 #: templates/inventory/cars_list_api.html:32 #: templates/inventory/transfer_details.html:89 #: templates/ledger/reports/car_sale_report.html:225 @@ -45,16 +45,16 @@ msgstr "تم تقديم رقم تعريف مركبة (VIN) غير صالح" msgid "VIN not found in any source" msgstr "لم يتم العثور على رقم الهيكل (VIN) في أي مصدر" -#: car_inventory/settings.py:297 +#: car_inventory/settings.py:299 #: dev_venv/lib/python3.13/site-packages/appointments/settings.py:136 msgid "English" msgstr "الإنجليزية" -#: car_inventory/settings.py:298 +#: car_inventory/settings.py:300 msgid "Arabic" msgstr "العربية" -#: car_inventory/settings.py:411 +#: car_inventory/settings.py:413 msgid "SAR" msgstr "ريال" @@ -268,7 +268,7 @@ msgstr "لا يلزم أن تكون التفاصيل دقيقة، فقط الم #: templates/crm/leads/lead_list.html:141 #: ⁨templates/crm/opportunities/opportunity_list copy.html⁩:209 #: templates/groups/group_detail.html:30 -#: templates/inventory/car_detail.html:558 +#: templates/inventory/car_detail.html:560 #: templates/inventory/car_list_view.html:244 #: templates/inventory/transfer_details.html:64 #: templates/ledger/bank_accounts/bank_account_detail.html:36 @@ -293,7 +293,7 @@ msgstr "نعم" #: dev_venv/lib/python3.13/site-packages/django/forms/widgets.py:868 #: ⁨templates/crm/opportunities/opportunity_list copy.html⁩:206 #: templates/groups/group_detail.html:27 -#: templates/inventory/car_detail.html:553 +#: templates/inventory/car_detail.html:555 #: templates/inventory/car_list_view.html:249 #: templates/inventory/transfer_details.html:29 #: templates/inventory/transfer_details.html:60 @@ -441,13 +441,13 @@ msgstr "هنا يمكنك إضافة/إزالة الخدمات التي تقدم #: dev_venv/lib/python3.13/site-packages/appointment/services.py:170 #: dev_venv/lib/python3.13/site-packages/appointment/views_admin.py:374 #: dev_venv/lib/python3.13/site-packages/appointment/views_admin.py:471 -#: dev_venv/lib/python3.13/site-packages/django_ledger/templates/django_ledger/account/tags/accounts_table.html:102 +#: dev_venv/lib/python3.13/site-packages/django_ledger/templates/django_ledger/account/tags/accounts_table.html:98 #: dev_venv/lib/python3.13/site-packages/django_ledger/templates/django_ledger/bank_account/bank_account_update.html:23 #: dev_venv/lib/python3.13/site-packages/django_ledger/templates/django_ledger/bank_account/tags/bank_accounts_table.html:49 #: dev_venv/lib/python3.13/site-packages/django_ledger/templates/django_ledger/bills/includes/card_bill.html:46 #: dev_venv/lib/python3.13/site-packages/django_ledger/templates/django_ledger/bills/includes/card_bill.html:154 #: dev_venv/lib/python3.13/site-packages/django_ledger/templates/django_ledger/chart_of_accounts/includes/coa_card.html:48 -#: dev_venv/lib/python3.13/site-packages/django_ledger/templates/django_ledger/customer/tags/customer_table.html:63 +#: dev_venv/lib/python3.13/site-packages/django_ledger/templates/django_ledger/customer/tags/customer_table.html:65 #: dev_venv/lib/python3.13/site-packages/django_ledger/templates/django_ledger/data_import/import_job_update.html:14 #: dev_venv/lib/python3.13/site-packages/django_ledger/templates/django_ledger/data_import/tags/data_import_job_list_table.html:48 #: dev_venv/lib/python3.13/site-packages/django_ledger/templates/django_ledger/entity/entity_update.html:16 @@ -474,20 +474,22 @@ msgstr "هنا يمكنك إضافة/إزالة الخدمات التي تقدم #: dev_venv/lib/python3.13/site-packages/django_ledger/templates/django_ledger/unit/unit_update.html:22 #: dev_venv/lib/python3.13/site-packages/django_ledger/templates/django_ledger/uom/tags/uom_table.html:41 #: dev_venv/lib/python3.13/site-packages/django_ledger/templates/django_ledger/uom/uom_update.html:24 -#: dev_venv/lib/python3.13/site-packages/django_ledger/templates/django_ledger/vendor/tags/vendor_table.html:63 +#: dev_venv/lib/python3.13/site-packages/django_ledger/templates/django_ledger/vendor/tags/vendor_table.html:66 #: templates/account/user_settings.html:39 #: templates/bill/includes/card_bill.html:59 #: templates/bill/includes/card_bill.html:209 #: templates/bill/tags/bill_table.html:47 -#: templates/chart_of_accounts/coa_update.html:35 -#: templates/chart_of_accounts/includes/coa_card.html:84 -#: templates/crm/leads/lead_detail.html:489 -#: templates/crm/leads/lead_detail.html:491 +#: templates/chart_of_accounts/coa_update.html:38 +#: templates/chart_of_accounts/includes/coa_card.html:85 +#: templates/crm/leads/lead_detail.html:488 +#: templates/crm/leads/lead_detail.html:490 #: templates/crm/leads/schedule_lead.html:6 templates/crm/note_form.html:14 -#: templates/crm/opportunities/opportunity_detail.html:675 -#: templates/crm/opportunities/opportunity_detail.html:676 -#: templates/crm/opportunities/opportunity_form.html:128 +#: templates/crm/opportunities/opportunity_detail.html:614 +#: templates/crm/opportunities/opportunity_detail.html:615 +#: templates/crm/opportunities/opportunity_form.html:130 #: templates/crm/opportunities/partials/opportunity_grid.html:142 +#: templates/customers/view_customer.html:145 +#: templates/customers/view_customer.html:147 #: templates/inventory/car_list_view.html:94 #: templates/items/expenses/expenses_list.html:52 #: templates/items/service/service_list.html:53 @@ -496,16 +498,17 @@ msgstr "هنا يمكنك إضافة/إزالة الخدمات التي تقدم #: templates/purchase_orders/includes/card_po.html:102 #: templates/sales/estimates/estimate_detail.html:273 #: templates/sales/estimates/estimate_detail.html:340 +#: templates/support/ticket_list.html:109 msgid "Update" msgstr "تحديث" #: dev_venv/lib/python3.13/site-packages/appointment/services.py:170 #: templates/administration/staff_list.html:16 templates/crm/note_form.html:16 #: templates/customers/note_form.html:7 templates/inventory/car_detail.html:174 -#: templates/inventory/car_detail.html:201 -#: templates/inventory/car_detail.html:226 -#: templates/inventory/car_detail.html:288 -#: templates/purchase_orders/po_update.html:95 +#: templates/inventory/car_detail.html:202 +#: templates/inventory/car_detail.html:228 +#: templates/inventory/car_detail.html:290 +#: templates/purchase_orders/po_update.html:98 #: templates/sales/estimates/estimate_detail.html:299 msgid "Add" msgstr "إضافة" @@ -590,14 +593,15 @@ msgstr "تذكير للإدارة: موعد قادم" #: dev_venv/lib/python3.13/site-packages/appointment/templates/email_sender/reschedule_email.html:69 #: dev_venv/lib/python3.13/site-packages/django_ledger/templates/django_ledger/journal_entry/includes/card_journal_entry.html:15 #: templates/administration/display_appointment.html:17 -#: templates/crm/employee_calendar.html:11 -#: templates/crm/opportunities/opportunity_detail.html:758 +#: templates/crm/employee_calendar.html:14 +#: templates/crm/leads/lead_detail.html:591 +#: templates/crm/leads/lead_detail.html:680 +#: templates/crm/opportunities/opportunity_detail.html:697 #: templates/crm/opportunities/opportunity_logs.html:13 -#: templates/customers/view_customer.html:116 #: templates/email_sender/reminder_email.html:83 #: templates/email_sender/reschedule_email.html:63 #: templates/email_sender/reschedule_email.html:70 -#: templates/inventory/car_detail.html:438 +#: templates/inventory/car_detail.html:440 #: templates/inventory/transfer_details.html:75 #: templates/inventory/transfer_preview.html:275 #: templates/ledger/coa_accounts/account_detail.html:75 @@ -638,7 +642,7 @@ msgstr "وقت الانتهاء" #: dev_venv/lib/python3.13/site-packages/django_ledger/models/items.py:522 #: templates/administration/display_appointment.html:35 #: templates/appointment/default_thank_you.html:20 -#: templates/crm/employee_calendar.html:10 +#: templates/crm/employee_calendar.html:13 #: templates/email_sender/reminder_email.html:80 msgid "Service" msgstr "الخدمة" @@ -652,10 +656,10 @@ msgstr "العميل" #: dev_venv/lib/python3.13/site-packages/appointment/templates/administration/staff_list.html:39 #: dev_venv/lib/python3.13/site-packages/appointment/templates/administration/user_profile.html:40 #: dev_venv/lib/python3.13/site-packages/appointment/templates/appointment/appointment_client_information.html:50 -#: dev_venv/lib/python3.13/site-packages/django_ledger/models/mixins.py:112 -#: inventory/forms.py:121 inventory/forms.py:1908 inventory/models.py:1613 -#: inventory/models.py:1641 inventory/models.py:1710 inventory/models.py:1886 -#: inventory/models.py:2052 inventory/models.py:2279 inventory/models.py:2641 +#: dev_venv/lib/python3.13/site-packages/django_ledger/models/mixins.py:115 +#: inventory/forms.py:121 inventory/forms.py:1891 inventory/models.py:1618 +#: inventory/models.py:1646 inventory/models.py:1715 inventory/models.py:1891 +#: inventory/models.py:2057 inventory/models.py:2284 inventory/models.py:2664 #: templates/account/login.html:36 templates/account/login.html:42 #: templates/admin_management/user_management.html:27 #: templates/admin_management/user_management.html:104 @@ -667,10 +671,10 @@ msgstr "العميل" #: templates/administration/user_profile.html:22 #: templates/appointment/appointment_client_information.html:46 #: templates/components/activity_modal.html:26 -#: templates/crm/leads/lead_detail.html:142 +#: templates/crm/leads/lead_detail.html:145 #: templates/crm/leads/partials/update_action.html:42 -#: templates/crm/opportunities/opportunity_detail.html:374 -#: templates/customers/view_customer.html:82 +#: templates/crm/opportunities/opportunity_detail.html:313 +#: templates/customers/view_customer.html:83 #: templates/dealers/dealer_detail.html:269 #: templates/groups/group_detail.html:67 templates/pricing_page.html:310 #: templates/registration/signup.html:103 @@ -685,7 +689,7 @@ msgstr "البريد الإلكتروني" #: dev_venv/lib/python3.13/site-packages/appointment/templates/appointment/appointment_client_information.html:64 #: templates/administration/display_appointment.html:53 #: templates/appointment/appointment_client_information.html:59 -#: templates/crm/leads/lead_detail.html:149 +#: templates/crm/leads/lead_detail.html:152 #: templates/dealers/dealer_detail.html:276 #: templates/organizations/organization_detail.html:37 #: templates/organizations/organization_list.html:72 @@ -753,6 +757,7 @@ msgstr "لقد أرسلنا رمز التحقق إلى بريدك الإلكتر #: dev_venv/lib/python3.13/site-packages/appointment/templates/administration/email_change_verification_code.html:22 #: dev_venv/lib/python3.13/site-packages/appointment/templates/appointment/enter_verification_code.html:21 +#: dev_venv/lib/python3.13/site-packages/django_ledger/templates/django_ledger/vendor/tags/vendor_table.html:12 #: templates/administration/email_change_verification_code.html:25 #: templates/appointment/enter_verification_code.html:21 #: templates/ledger/coa_accounts/partials/account_table.html:8 @@ -803,7 +808,7 @@ msgstr "تاريخ الانتهاء" #: dev_venv/lib/python3.13/site-packages/appointment/templates/administration/user_profile.html:235 #: dev_venv/lib/python3.13/site-packages/django_ledger/forms/chart_of_accounts.py:36 #: dev_venv/lib/python3.13/site-packages/django_ledger/forms/chart_of_accounts.py:73 -#: dev_venv/lib/python3.13/site-packages/django_ledger/models/data_import.py:164 +#: dev_venv/lib/python3.13/site-packages/django_ledger/models/data_import.py:169 #: dev_venv/lib/python3.13/site-packages/django_ledger/models/items.py:1144 #: dev_venv/lib/python3.13/site-packages/django_ledger/models/journal_entry.py:374 #: dev_venv/lib/python3.13/site-packages/django_ledger/templates/django_ledger/financial_statements/tags/income_statement.html:9 @@ -812,8 +817,8 @@ msgstr "تاريخ الانتهاء" #: dev_venv/lib/python3.13/site-packages/django_ledger/templates/django_ledger/journal_entry/tags/je_txs_table.html:49 #: dev_venv/lib/python3.13/site-packages/django_ledger/templates/django_ledger/transactions/tags/txs_table.html:14 #: dev_venv/lib/python3.13/site-packages/django_ledger/templates/django_ledger/transactions/tags/txs_table.html:49 -#: inventory/models.py:568 inventory/models.py:1274 inventory/models.py:2579 -#: inventory/models.py:3704 inventory/models.py:3775 +#: inventory/models.py:572 inventory/models.py:1279 inventory/models.py:2602 +#: inventory/models.py:3727 inventory/models.py:3798 #: templates/administration/manage_day_off.html:67 #: templates/administration/manage_service.html:23 #: templates/administration/user_profile.html:92 @@ -823,7 +828,7 @@ msgstr "تاريخ الانتهاء" #: templates/ledger/coa_accounts/account_detail.html:78 #: templates/ledger/journal_entry/journal_entry_list.html:63 #: templates/ledger/journal_entry/journal_entry_transactions.html:24 -#: templates/ledger/journal_entry/journal_entry_txs.html:29 +#: templates/ledger/journal_entry/journal_entry_txs.html:32 #: templates/ledger/reports/tags/income_statement.html:7 #: templates/plans/invoices/layout.html:118 #: templates/purchase_orders/includes/po_table.html:8 @@ -868,12 +873,12 @@ msgstr "" #: templates/administration/manage_staff_member.html:63 #: templates/bill/bill_create.html:40 #: templates/components/activity_modal.html:33 -#: templates/components/note_modal.html:28 -#: templates/components/schedule_modal.html:28 -#: templates/components/task_modal.html:35 +#: templates/components/note_modal.html:29 +#: templates/components/schedule_modal.html:30 +#: templates/components/task_modal.html:34 #: templates/crm/leads/lead_form.html:54 #: templates/crm/leads/schedule_lead.html:17 -#: templates/crm/opportunities/opportunity_detail.html:904 +#: templates/crm/opportunities/opportunity_detail.html:843 #: templates/customers/customer_form.html:47 #: templates/dealers/assign_car_makes.html:87 #: templates/dealers/dealer_form.html:29 templates/groups/group_form.html:48 @@ -894,7 +899,7 @@ msgstr "" #: templates/ledger/bills/bill_update_form.html:17 #: templates/ledger/coa_accounts/account_form.html:34 #: templates/ledger/journal_entry/journal_entry_form.html:25 -#: templates/ledger/journal_entry/journal_entry_txs.html:52 +#: templates/ledger/journal_entry/journal_entry_txs.html:55 #: templates/ledger/ledger/ledger_form.html:25 #: templates/organizations/organization_form.html:48 #: templates/plans/billing_info_create_or_update.html:26 @@ -913,8 +918,7 @@ msgstr "" #: templates/sales/payments/payment_create.html:18 #: templates/sales/saleorder_detail.html:85 #: templates/sales/tags/invoice_item_formset.html:65 -#: templates/support/ticket_update.html:14 templates/users/user_form.html:56 -#: templates/users/user_group_form.html:42 +#: templates/users/user_form.html:56 templates/users/user_group_form.html:42 #: templates/vendors/vendor_form.html:51 msgid "Save" msgstr "حفظ" @@ -949,15 +953,16 @@ msgstr "قائمة الخدمات" #: dev_venv/lib/python3.13/site-packages/appointment/templates/administration/user_profile.html:234 #: dev_venv/lib/python3.13/site-packages/django_ledger/forms/chart_of_accounts.py:35 #: dev_venv/lib/python3.13/site-packages/django_ledger/forms/chart_of_accounts.py:72 -#: inventory/forms.py:847 inventory/models.py:566 inventory/models.py:1177 -#: inventory/models.py:1194 inventory/models.py:1880 inventory/models.py:2024 -#: inventory/models.py:3864 templates/admin_management/user_management.html:98 +#: inventory/forms.py:847 inventory/models.py:570 inventory/models.py:1182 +#: inventory/models.py:1199 inventory/models.py:1885 inventory/models.py:2029 +#: inventory/models.py:3887 templates/admin_management/user_management.html:98 #: templates/admin_management/user_management.html:175 #: templates/admin_management/user_management.html:252 #: templates/administration/manage_service.html:17 #: templates/administration/service_list.html:22 #: templates/administration/staff_list.html:25 #: templates/administration/user_profile.html:237 +#: templates/crm/leads/lead_detail.html:780 #: templates/customers/customer_list.html:39 #: templates/groups/group_detail.html:44 templates/groups/group_detail.html:62 #: templates/items/expenses/expenses_list.html:26 @@ -967,7 +972,7 @@ msgstr "قائمة الخدمات" #: templates/plans/order_detail_table.html:7 templates/plans/order_list.html:19 #: templates/pricing_page.html:307 #: templates/purchase_orders/inventory_item_form.html:8 -#: templates/purchase_orders/po_upload_cars.html:31 +#: templates/purchase_orders/po_upload_cars.html:34 #: templates/representatives/representative_list.html:24 #: templates/sales/saleorder_detail.html:23 templates/users/user_list.html:34 #: templates/vendors/vendors_list.html:32 templates/vendors/view_vendor.html:41 @@ -988,7 +993,7 @@ msgstr "المدة" #: dev_venv/lib/python3.13/site-packages/appointment/templates/administration/service_list.html:30 #: dev_venv/lib/python3.13/site-packages/appointment/templates/administration/user_profile.html:237 -#: inventory/models.py:570 inventory/tables.py:65 +#: inventory/models.py:574 inventory/tables.py:65 #: templates/administration/manage_service.html:35 #: templates/administration/service_list.html:24 #: templates/administration/user_profile.html:240 @@ -1007,10 +1012,12 @@ msgstr "السعر" #: templates/administration/service_list.html:25 #: templates/administration/user_profile.html:93 #: templates/administration/user_profile.html:160 +#: templates/crm/leads/lead_detail.html:595 +#: templates/crm/leads/lead_detail.html:684 #: templates/crm/leads/lead_list.html:110 #: templates/crm/opportunities/opportunity_logs.html:8 #: templates/groups/group_detail.html:89 -#: templates/inventory/car_detail.html:434 +#: templates/inventory/car_detail.html:436 #: templates/items/expenses/expenses_list.html:28 #: templates/items/service/service_list.html:28 #: templates/ledger/bank_accounts/bank_account_list.html:27 @@ -1039,6 +1046,8 @@ msgstr "لم يتم العثور على خدمة" #: templates/administration/staff_index.html:76 #: templates/administration/user_profile.html:10 #: templates/inventory/car_confirm_delete.html:13 +#: templates/ledger/journal_entry/journal_entry_delete.html:19 +#: templates/ledger/ledger/ledger_delete.html:17 #: templates/purchase_orders/po_confirm_delete.html:6 msgid "Confirm Deletion" msgstr "تأكيد الحذف" @@ -1085,22 +1094,22 @@ msgstr "هل أنت متأكد أنك تريد حذف هذا الموعد؟" #: templates/crm/leads/lead_list.html:126 #: templates/crm/leads/lead_list.html:236 #: ⁨templates/crm/opportunities/opportunity_list copy.html⁩:41 -#: templates/customers/view_customer.html:29 +#: templates/customers/view_customer.html:30 #: templates/groups/group_detail.html:116 #: templates/ledger/bank_accounts/bank_account_detail.html:74 #: templates/ledger/coa_accounts/account_detail.html:147 -#: templates/ledger/journal_entry/journal_entry_delete.html:18 +#: templates/ledger/journal_entry/journal_entry_delete.html:32 #: templates/ledger/journal_entry/journal_entry_list.html:114 -#: templates/ledger/journal_entry/journal_entry_txs.html:30 -#: templates/ledger/ledger/ledger_delete.html:18 +#: templates/ledger/journal_entry/journal_entry_txs.html:33 +#: templates/ledger/ledger/ledger_delete.html:30 #: templates/ledger/ledger/ledger_list.html:112 -#: templates/modal/delete_modal.html:13 templates/modal/delete_modal.html:31 +#: templates/modal/delete_modal.html:13 templates/modal/delete_modal.html:33 #: templates/modal/event_details_modal.html:51 #: templates/organizations/organization_detail.html:60 #: templates/organizations/organization_list.html:169 #: templates/purchase_orders/includes/card_po.html:140 #: templates/purchase_orders/includes/po_item_formset.html:41 -#: templates/purchase_orders/po_delete.html:25 +#: templates/purchase_orders/po_delete.html:28 #: templates/representatives/representative_detail.html:26 #: templates/sales/estimates/estimate_detail.html:20 #: templates/sales/tags/invoice_item_formset.html:22 @@ -1125,7 +1134,7 @@ msgid "New Event" msgstr "حدث جديد" #: dev_venv/lib/python3.13/site-packages/appointment/templates/administration/staff_index.html:329 -#: inventory/models.py:546 templates/administration/staff_index.html:82 +#: inventory/models.py:550 templates/administration/staff_index.html:82 #: templates/payment_success.html:14 msgid "Success" msgstr "ناجحة" @@ -1183,16 +1192,16 @@ msgid "Client Email" msgstr "البريد الإلكتروني للعميل" #: dev_venv/lib/python3.13/site-packages/appointment/templates/administration/staff_index.html:369 -#: dev_venv/lib/python3.13/site-packages/django_ledger/models/mixins.py:114 -#: inventory/forms.py:316 inventory/forms.py:888 inventory/forms.py:1913 -#: inventory/models.py:1343 inventory/models.py:1473 inventory/models.py:1717 -#: inventory/models.py:1889 inventory/models.py:2031 inventory/models.py:2055 -#: inventory/models.py:2750 inventory/models.py:3869 +#: dev_venv/lib/python3.13/site-packages/django_ledger/models/mixins.py:117 +#: inventory/forms.py:316 inventory/forms.py:888 inventory/forms.py:1896 +#: inventory/models.py:1348 inventory/models.py:1478 inventory/models.py:1722 +#: inventory/models.py:1894 inventory/models.py:2036 inventory/models.py:2060 +#: inventory/models.py:2773 inventory/models.py:3892 #: templates/administration/staff_index.html:120 #: templates/crm/leads/lead_list.html:68 -#: templates/crm/opportunities/opportunity_detail.html:354 +#: templates/crm/opportunities/opportunity_detail.html:293 #: templates/customers/customer_list.html:60 -#: templates/customers/view_customer.html:87 templates/pricing_page.html:174 +#: templates/customers/view_customer.html:88 templates/pricing_page.html:174 #: templates/pricing_page.html:185 templates/registration/signup.html:178 #: templates/staff/staff_detail.html:74 templates/vendors/view_vendor.html:47 msgid "Phone Number" @@ -1477,8 +1486,8 @@ msgstr "تفاصيل الدفع" #: templates/inventory/transfer_preview.html:292 #: templates/ledger/bills/bill_detail.html:280 #: templates/ledger/coa_accounts/account_detail.html:120 -#: templates/ledger/ledger/ledger_detail.html:72 -#: templates/ledger/ledger/ledger_detail.html:87 +#: templates/ledger/ledger/ledger_detail.html:75 +#: templates/ledger/ledger/ledger_detail.html:90 #: templates/ledger/reports/tags/balance_sheet_statement.html:50 #: templates/ledger/reports/tags/cash_flow_statement.html:9 #: templates/plans/invoices/layout.html:128 @@ -1745,7 +1754,7 @@ msgstr "تفاصيل الموعد" #: dev_venv/lib/python3.13/site-packages/appointment/templates/email_sender/reminder_email.html:142 #: templates/email_sender/reminder_email.html:90 -#: templates/inventory/car_detail.html:207 +#: templates/inventory/car_detail.html:208 msgid "Location" msgstr "الموقع" @@ -2077,22 +2086,22 @@ msgstr "اذهب" #: templates/account/confirm_email_verification_code.html:31 #: templates/account/confirm_email_verification_code.html:35 #: templates/account/confirm_login_code..html:46 -#: templates/admin_management/confirm_activate_account.html:34 -#: templates/admin_management/permenant_delete_account.html:37 +#: templates/admin_management/confirm_activate_account.html:23 +#: templates/admin_management/permenant_delete_account.html:26 #: templates/bill/bill_create.html:45 templates/bill/includes/card_bill.html:66 -#: templates/chart_of_accounts/coa_create.html:45 +#: templates/chart_of_accounts/coa_create.html:48 #: templates/crm/leads/lead_form.html:59 #: templates/crm/leads/schedule_lead.html:19 #: templates/crm/opportunities/opportunity_confirm_delete.html:8 -#: templates/crm/opportunities/opportunity_detail.html:907 +#: templates/crm/opportunities/opportunity_detail.html:846 #: templates/csv_upload.html:185 templates/customers/customer_form.html:52 #: templates/dealers/dealer_form.html:34 templates/groups/group_form.html:52 #: templates/groups/group_permission_form-copy.html:31 #: templates/inventory/add_colors.html:62 #: templates/inventory/add_custom_card.html:13 #: templates/inventory/car_confirm_delete.html:27 -#: templates/inventory/car_detail.html:393 -#: templates/inventory/car_detail.html:465 templates/inventory/car_edit.html:31 +#: templates/inventory/car_detail.html:395 +#: templates/inventory/car_detail.html:467 templates/inventory/car_edit.html:31 #: templates/inventory/car_finance_form.html:50 #: templates/inventory/car_registration_form.html:14 #: templates/inventory/color_palette.html:108 @@ -2106,7 +2115,7 @@ msgstr "اذهب" #: templates/ledger/bills/bill_form-copy.html:46 #: templates/ledger/bills/bill_form.html:21 #: templates/ledger/bills/bill_update_form.html:21 -#: templates/ledger/coa_accounts/account_form.html:37 +#: templates/ledger/coa_accounts/account_form.html:39 #: templates/ledger/journal_entry/includes/card_invoice.html:168 #: templates/ledger/journal_entry/journal_entry_form.html:30 #: templates/ledger/ledger/ledger_form.html:30 @@ -2125,8 +2134,8 @@ msgstr "اذهب" #: templates/sales/estimates/sale_order_form.html:34 #: templates/sales/invoices/invoice_create.html:31 #: templates/sales/journals/journal_form.html:16 -#: templates/support/create_ticket.html:28 -#: templates/support/ticket_update.html:16 +#: templates/support/create_ticket.html:31 +#: templates/support/ticket_update.html:33 #: templates/two_factor/_wizard_actions.html:3 #: templates/users/user_form.html:61 templates/users/user_group_form.html:47 #: templates/vendors/vendor_form.html:56 @@ -2140,11 +2149,11 @@ msgstr "إلغاء" #: dev_venv/lib/python3.13/site-packages/django_ledger/templates/django_ledger/vendor/includes/card_vendor.html:28 #: templates/crm/leads/lead_list.html:222 #: ⁨templates/crm/opportunities/opportunity_list copy.html⁩:36 -#: templates/customers/view_customer.html:20 +#: templates/customers/view_customer.html:21 #: templates/groups/group_detail.html:110 -#: templates/inventory/car_detail.html:238 -#: templates/inventory/car_detail.html:277 -#: templates/inventory/car_detail.html:332 +#: templates/inventory/car_detail.html:240 +#: templates/inventory/car_detail.html:279 +#: templates/inventory/car_detail.html:334 #: templates/inventory/car_list_view.html:272 #: templates/ledger/bank_accounts/bank_account_detail.html:69 #: templates/ledger/coa_accounts/account_detail.html:139 @@ -2518,9 +2527,9 @@ msgstr "رمز التحقق المقدم غير صحيح. يرجى المحاو #: dev_venv/lib/python3.13/site-packages/django_ledger/templates/django_ledger/service/service_create.html:24 #: dev_venv/lib/python3.13/site-packages/django_ledger/templates/django_ledger/unit/unit_create.html:22 #: dev_venv/lib/python3.13/site-packages/django_ledger/templates/django_ledger/uom/uom_create.html:24 -#: templates/chart_of_accounts/coa_create.html:40 +#: templates/chart_of_accounts/coa_create.html:43 #: templates/crm/leads/schedule_lead.html:8 -#: templates/crm/opportunities/opportunity_form.html:130 +#: templates/crm/opportunities/opportunity_form.html:132 msgid "Create" msgstr "إنشاء" @@ -3364,7 +3373,7 @@ msgid "File" msgstr "الملف" #: dev_venv/lib/python3.13/site-packages/django/db/models/fields/files.py:420 -#: inventory/models.py:1486 inventory/models.py:1728 +#: inventory/models.py:1491 inventory/models.py:1733 #: templates/administration/manage_service.html:46 msgid "Image" msgstr "الصورة" @@ -4200,24 +4209,24 @@ msgstr "اتصل، احصل على المساعدة، أو ساهم" msgid "close" msgstr "إغلاق" -#: dev_venv/lib/python3.13/site-packages/django_ledger/forms/account.py:72 +#: dev_venv/lib/python3.13/site-packages/django_ledger/forms/account.py:70 msgid "Alpha Numeric (auto generated if not provided)..." msgstr "أبجدي رقمي (يتم توليده تلقائياً إذا لم يتم توفيره)..." -#: dev_venv/lib/python3.13/site-packages/django_ledger/forms/account.py:76 +#: dev_venv/lib/python3.13/site-packages/django_ledger/forms/account.py:74 msgid "Account Name..." msgstr "اسم الحساب..." -#: dev_venv/lib/python3.13/site-packages/django_ledger/forms/account.py:104 +#: dev_venv/lib/python3.13/site-packages/django_ledger/forms/account.py:102 msgid "Position" msgstr "الموضع" -#: dev_venv/lib/python3.13/site-packages/django_ledger/forms/account.py:109 +#: dev_venv/lib/python3.13/site-packages/django_ledger/forms/account.py:107 msgid "Relative to" msgstr "نسبياً إلى" #: dev_venv/lib/python3.13/site-packages/django_ledger/forms/auth.py:15 -#: inventory/forms.py:759 inventory/forms.py:763 inventory/models.py:3875 +#: inventory/forms.py:759 inventory/forms.py:763 inventory/models.py:3898 #: templates/account/login.html:48 templates/account/login.html:54 #: templates/registration/signup.html:118 msgid "Password" @@ -4245,7 +4254,7 @@ msgid "Enter SWIFT number..." msgstr "أدخل رقم SWIFT..." #: dev_venv/lib/python3.13/site-packages/django_ledger/forms/bank_account.py:86 -#: dev_venv/lib/python3.13/site-packages/django_ledger/models/accounts.py:428 +#: dev_venv/lib/python3.13/site-packages/django_ledger/models/accounts.py:432 #: dev_venv/lib/python3.13/site-packages/django_ledger/templates/django_ledger/account/tags/accounts_table.html:24 #: dev_venv/lib/python3.13/site-packages/django_ledger/templates/django_ledger/financial_statements/tags/balance_sheet_statement.html:21 #: dev_venv/lib/python3.13/site-packages/django_ledger/templates/django_ledger/journal_entry/tags/je_txs_table.html:10 @@ -4263,7 +4272,7 @@ msgid "Account Name" msgstr "اسم الحساب" #: dev_venv/lib/python3.13/site-packages/django_ledger/forms/bank_account.py:87 -#: dev_venv/lib/python3.13/site-packages/django_ledger/models/mixins.py:1148 +#: dev_venv/lib/python3.13/site-packages/django_ledger/models/mixins.py:1185 #: dev_venv/lib/python3.13/site-packages/django_ledger/templates/django_ledger/financial_statements/tags/income_statement.html:8 #: templates/ledger/bank_accounts/bank_account_list.html:25 #: templates/ledger/reports/tags/income_statement.html:6 @@ -4271,7 +4280,7 @@ msgid "Account Number" msgstr "رقم الحساب" #: dev_venv/lib/python3.13/site-packages/django_ledger/forms/bank_account.py:88 -#: dev_venv/lib/python3.13/site-packages/django_ledger/models/mixins.py:1158 +#: dev_venv/lib/python3.13/site-packages/django_ledger/models/mixins.py:1196 msgid "Account Type" msgstr "نوع الحساب" @@ -4280,12 +4289,12 @@ msgid "CoA Account" msgstr "حساب دليل الحسابات" #: dev_venv/lib/python3.13/site-packages/django_ledger/forms/bank_account.py:90 -#: dev_venv/lib/python3.13/site-packages/django_ledger/models/mixins.py:1153 +#: dev_venv/lib/python3.13/site-packages/django_ledger/models/mixins.py:1190 msgid "ABA Number" msgstr "رقم ABA" #: dev_venv/lib/python3.13/site-packages/django_ledger/forms/bank_account.py:91 -#: dev_venv/lib/python3.13/site-packages/django_ledger/models/mixins.py:1152 +#: dev_venv/lib/python3.13/site-packages/django_ledger/models/mixins.py:1189 msgid "Routing Number" msgstr "رقم التوجيه" @@ -4295,8 +4304,8 @@ msgstr "اجعل نشطاً" #: dev_venv/lib/python3.13/site-packages/django_ledger/forms/bill.py:49 #: dev_venv/lib/python3.13/site-packages/django_ledger/forms/invoice.py:64 -#: dev_venv/lib/python3.13/site-packages/django_ledger/models/bill.py:380 -#: dev_venv/lib/python3.13/site-packages/django_ledger/models/invoice.py:349 +#: dev_venv/lib/python3.13/site-packages/django_ledger/models/bill.py:387 +#: dev_venv/lib/python3.13/site-packages/django_ledger/models/invoice.py:354 #: dev_venv/lib/python3.13/site-packages/django_ledger/models/purchase_order.py:219 #: dev_venv/lib/python3.13/site-packages/django_ledger/templates/django_ledger/purchase_order/includes/card_po.html:26 #: templates/purchase_orders/includes/card_po.html:61 @@ -4330,14 +4339,14 @@ msgstr "هل ستتراكم هذه الفاتورة؟" #: dev_venv/lib/python3.13/site-packages/django_ledger/forms/bill.py:154 #: dev_venv/lib/python3.13/site-packages/django_ledger/templates/django_ledger/includes/card_markdown.html:9 -#: inventory/models.py:2552 inventory/models.py:2671 -#: templates/crm/leads/lead_detail.html:244 -#: templates/crm/leads/lead_detail.html:443 +#: inventory/models.py:2329 inventory/models.py:2575 inventory/models.py:2694 +#: templates/crm/leads/lead_detail.html:247 +#: templates/crm/leads/lead_detail.html:442 #: templates/crm/leads/partials/update_action.html:53 -#: templates/crm/opportunities/opportunity_detail.html:510 -#: templates/crm/opportunities/opportunity_detail.html:581 -#: templates/crm/opportunities/opportunity_detail.html:629 -#: templates/customers/view_customer.html:101 +#: templates/crm/opportunities/opportunity_detail.html:449 +#: templates/crm/opportunities/opportunity_detail.html:520 +#: templates/crm/opportunities/opportunity_detail.html:568 +#: templates/customers/view_customer.html:102 #: templates/emails/schedule_reminder.html:30 #: templates/emails/schedule_reminder.txt:9 #: templates/plans/invoices/layout.html:227 @@ -4365,7 +4374,7 @@ msgstr "اختر تاريخ الإغلاق" msgid "Closing Entry Notes" msgstr "ملاحظات إدخال الإغلاق" -#: dev_venv/lib/python3.13/site-packages/django_ledger/forms/customer.py:40 +#: dev_venv/lib/python3.13/site-packages/django_ledger/forms/customer.py:41 #, python-format msgid "Example: 3.50% should be entered as 0.035" msgstr "" @@ -4429,7 +4438,7 @@ msgstr "العنوان سطر 2" #: dev_venv/lib/python3.13/site-packages/django_ledger/forms/entity.py:82 #: dev_venv/lib/python3.13/site-packages/django_ledger/forms/entity.py:159 -#: dev_venv/lib/python3.13/site-packages/django_ledger/models/mixins.py:108 +#: dev_venv/lib/python3.13/site-packages/django_ledger/models/mixins.py:111 msgid "City" msgstr "المدينة" @@ -4440,13 +4449,13 @@ msgstr "الولاية" #: dev_venv/lib/python3.13/site-packages/django_ledger/forms/entity.py:90 #: dev_venv/lib/python3.13/site-packages/django_ledger/forms/entity.py:169 -#: dev_venv/lib/python3.13/site-packages/django_ledger/models/mixins.py:110 +#: dev_venv/lib/python3.13/site-packages/django_ledger/models/mixins.py:113 msgid "Zip Code" msgstr "الرمز البريدي" #: dev_venv/lib/python3.13/site-packages/django_ledger/forms/entity.py:94 #: dev_venv/lib/python3.13/site-packages/django_ledger/forms/entity.py:174 -#: dev_venv/lib/python3.13/site-packages/django_ledger/models/mixins.py:111 +#: dev_venv/lib/python3.13/site-packages/django_ledger/models/mixins.py:114 msgid "Country" msgstr "الدولة" @@ -4577,7 +4586,7 @@ msgid "Cannot create new Journal Entries on a locked Ledger." msgstr "لا يمكن إنشاء إدخالات يومية جديدة على دفتر حسابات مقفل." #: dev_venv/lib/python3.13/site-packages/django_ledger/forms/journal_entry.py:64 -#: dev_venv/lib/python3.13/site-packages/django_ledger/models/entity.py:3182 +#: dev_venv/lib/python3.13/site-packages/django_ledger/models/entity.py:3181 #: dev_venv/lib/python3.13/site-packages/django_ledger/templates/django_ledger/bills/bill_detail.html:95 #: dev_venv/lib/python3.13/site-packages/django_ledger/templates/django_ledger/estimate/includes/estimate_item_table.html:9 #: templates/bill/bill_detail.html:89 @@ -4624,14 +4633,14 @@ msgstr "يجب أن يتكون اسم الوحدة من 10 أحرف على ال msgid "Must provide all City/State/Zip/Country" msgstr "يجب توفير جميع المعلومات: المدينة/الولاية/الرمز البريدي/الدولة" -#: dev_venv/lib/python3.13/site-packages/django_ledger/io/io_core.py:1379 +#: dev_venv/lib/python3.13/site-packages/django_ledger/io/io_core.py:1390 msgid "Cannot commit on locked ledger" msgstr "لا يمكن تأكيد المعاملات على دفتر حسابات مقفل" -#: dev_venv/lib/python3.13/site-packages/django_ledger/io/io_core.py:1588 -#: dev_venv/lib/python3.13/site-packages/django_ledger/io/io_core.py:1717 -#: dev_venv/lib/python3.13/site-packages/django_ledger/io/io_core.py:1834 -#: dev_venv/lib/python3.13/site-packages/django_ledger/io/io_core.py:1958 +#: dev_venv/lib/python3.13/site-packages/django_ledger/io/io_core.py:1603 +#: dev_venv/lib/python3.13/site-packages/django_ledger/io/io_core.py:1732 +#: dev_venv/lib/python3.13/site-packages/django_ledger/io/io_core.py:1849 +#: dev_venv/lib/python3.13/site-packages/django_ledger/io/io_core.py:1973 msgid "PDF support not enabled. Install PDF support from Pipfile." msgstr "دعم PDF غير ممكّن. قم بتثبيت دعم PDF من Pipfile." @@ -4674,8 +4683,8 @@ msgstr "المستحقات" #: dev_venv/lib/python3.13/site-packages/django_ledger/io/roles.py:526 #: dev_venv/lib/python3.13/site-packages/django_ledger/models/items.py:521 #: dev_venv/lib/python3.13/site-packages/django_ledger/views/inventory.py:45 -#: inventory/models.py:1453 inventory/override.py:784 templates/header.html:32 -#: templates/header.html:39 templates/inventory/car_list_view.html:4 +#: inventory/models.py:1458 inventory/override.py:784 templates/header.html:27 +#: templates/header.html:34 templates/inventory/car_list_view.html:4 #: templates/inventory/car_list_view.html:33 templates/welcome.html:33 msgid "Inventory" msgstr "المخزن" @@ -4733,7 +4742,7 @@ msgstr "المصنع - الإهلاك المتراكم" #: dev_venv/lib/python3.13/site-packages/django_ledger/io/roles.py:455 #: dev_venv/lib/python3.13/site-packages/django_ledger/io/roles.py:541 #: dev_venv/lib/python3.13/site-packages/django_ledger/models/items.py:509 -#: inventory/models.py:411 +#: inventory/models.py:415 msgid "Equipment" msgstr "المعدات" @@ -4792,7 +4801,7 @@ msgstr "استحقاقات الديون طويلة الأجل الحالية" #: dev_venv/lib/python3.13/site-packages/django_ledger/io/roles.py:472 #: dev_venv/lib/python3.13/site-packages/django_ledger/io/roles.py:558 #: dev_venv/lib/python3.13/site-packages/django_ledger/templates/django_ledger/invoice/invoice_detail.html:51 -#: templates/ledger/ledger/ledger_detail.html:39 +#: templates/ledger/ledger/ledger_detail.html:42 msgid "Deferred Revenue" msgstr "الإيرادات المؤجلة" @@ -4912,12 +4921,12 @@ msgstr "مصاريف الاستهلاك المعنوي" msgid "Other Expense" msgstr "مصروفات أخرى" -#: dev_venv/lib/python3.13/site-packages/django_ledger/models/accounts.py:390 +#: dev_venv/lib/python3.13/site-packages/django_ledger/models/accounts.py:394 #, python-format msgid "Account code must be alpha numeric, got {%s}" msgstr "يجب أن يكون رمز الحساب مزيجاً من الحروف والأرقام، تم تلقي {%s}" -#: dev_venv/lib/python3.13/site-packages/django_ledger/models/accounts.py:422 +#: dev_venv/lib/python3.13/site-packages/django_ledger/models/accounts.py:426 #: dev_venv/lib/python3.13/site-packages/django_ledger/models/transactions.py:447 #: dev_venv/lib/python3.13/site-packages/django_ledger/templates/django_ledger/journal_entry/tags/je_txs_table.html:12 #: dev_venv/lib/python3.13/site-packages/django_ledger/templates/django_ledger/journal_entry/tags/je_txs_table.html:47 @@ -4933,7 +4942,7 @@ msgstr "يجب أن يكون رمز الحساب مزيجاً من الحروف msgid "Credit" msgstr "دائن" -#: dev_venv/lib/python3.13/site-packages/django_ledger/models/accounts.py:423 +#: dev_venv/lib/python3.13/site-packages/django_ledger/models/accounts.py:427 #: dev_venv/lib/python3.13/site-packages/django_ledger/models/transactions.py:448 #: dev_venv/lib/python3.13/site-packages/django_ledger/templates/django_ledger/journal_entry/tags/je_txs_table.html:13 #: dev_venv/lib/python3.13/site-packages/django_ledger/templates/django_ledger/journal_entry/tags/je_txs_table.html:48 @@ -4949,7 +4958,7 @@ msgstr "دائن" msgid "Debit" msgstr "مدين" -#: dev_venv/lib/python3.13/site-packages/django_ledger/models/accounts.py:427 +#: dev_venv/lib/python3.13/site-packages/django_ledger/models/accounts.py:431 #: dev_venv/lib/python3.13/site-packages/django_ledger/templates/django_ledger/financial_statements/tags/balance_sheet_statement.html:20 #: templates/ledger/coa_accounts/account_detail.html:47 #: templates/ledger/journal_entry/journal_entry_transactions.html:21 @@ -4958,19 +4967,19 @@ msgstr "مدين" msgid "Account Code" msgstr "رمز الحساب" -#: dev_venv/lib/python3.13/site-packages/django_ledger/models/accounts.py:429 +#: dev_venv/lib/python3.13/site-packages/django_ledger/models/accounts.py:433 msgid "Account Role" msgstr "دور الحساب" -#: dev_venv/lib/python3.13/site-packages/django_ledger/models/accounts.py:430 +#: dev_venv/lib/python3.13/site-packages/django_ledger/models/accounts.py:434 msgid "Coa Role Default Account" msgstr "حساب الدور الافتراضي لقائمة الحسابات" -#: dev_venv/lib/python3.13/site-packages/django_ledger/models/accounts.py:431 +#: dev_venv/lib/python3.13/site-packages/django_ledger/models/accounts.py:435 msgid "Account Balance Type" msgstr "نوع رصيد الحساب" -#: dev_venv/lib/python3.13/site-packages/django_ledger/models/accounts.py:432 +#: dev_venv/lib/python3.13/site-packages/django_ledger/models/accounts.py:436 #: dev_venv/lib/python3.13/site-packages/django_ledger/models/journal_entry.py:392 #: dev_venv/lib/python3.13/site-packages/django_ledger/templates/django_ledger/account/tags/accounts_table.html:28 #: dev_venv/lib/python3.13/site-packages/django_ledger/templates/django_ledger/journal_entry/includes/card_journal_entry.html:25 @@ -4982,18 +4991,18 @@ msgstr "نوع رصيد الحساب" msgid "Locked" msgstr "مقفل" -#: dev_venv/lib/python3.13/site-packages/django_ledger/models/accounts.py:433 +#: dev_venv/lib/python3.13/site-packages/django_ledger/models/accounts.py:437 #: dev_venv/lib/python3.13/site-packages/django_ledger/templates/django_ledger/account/tags/accounts_table.html:27 -#: dev_venv/lib/python3.13/site-packages/django_ledger/templates/django_ledger/customer/tags/customer_table.html:11 +#: dev_venv/lib/python3.13/site-packages/django_ledger/templates/django_ledger/customer/tags/customer_table.html:12 #: dev_venv/lib/python3.13/site-packages/django_ledger/templates/django_ledger/uom/tags/uom_table.html:10 -#: dev_venv/lib/python3.13/site-packages/django_ledger/templates/django_ledger/vendor/tags/vendor_table.html:12 -#: inventory/models.py:1495 inventory/models.py:1723 inventory/models.py:1908 -#: inventory/models.py:2768 templates/admin_management/user_management.html:45 +#: dev_venv/lib/python3.13/site-packages/django_ledger/templates/django_ledger/vendor/tags/vendor_table.html:13 +#: inventory/models.py:1500 inventory/models.py:1728 inventory/models.py:1913 +#: inventory/models.py:2791 templates/admin_management/user_management.html:45 #: templates/admin_management/user_management.html:122 #: templates/admin_management/user_management.html:199 #: templates/admin_management/user_management.html:276 -#: templates/chart_of_accounts/includes/coa_card.html:22 -#: templates/customers/customer_list.html:93 +#: templates/chart_of_accounts/includes/coa_card.html:23 +#: templates/customers/customer_list.html:82 #: templates/dealers/dealer_detail.html:153 #: templates/ledger/coa_accounts/account_detail.html:65 #: templates/ledger/coa_accounts/partials/account_table.html:10 @@ -5001,13 +5010,14 @@ msgstr "مقفل" msgid "Active" msgstr "نشط" -#: dev_venv/lib/python3.13/site-packages/django_ledger/models/accounts.py:436 +#: dev_venv/lib/python3.13/site-packages/django_ledger/models/accounts.py:440 #: dev_venv/lib/python3.13/site-packages/django_ledger/models/chart_of_accounts.py:192 -#: templates/chart_of_accounts/coa_list.html:11 templates/header.html:272 +#: templates/chart_of_accounts/coa_list.html:6 +#: templates/chart_of_accounts/coa_list.html:14 templates/header.html:267 msgid "Chart of Accounts" msgstr "قائمة الحسابات" -#: dev_venv/lib/python3.13/site-packages/django_ledger/models/accounts.py:443 +#: dev_venv/lib/python3.13/site-packages/django_ledger/models/accounts.py:446 #: dev_venv/lib/python3.13/site-packages/django_ledger/models/transactions.py:463 #: dev_venv/lib/python3.13/site-packages/django_ledger/templates/django_ledger/bank_account/bank_account_update.html:13 #: dev_venv/lib/python3.13/site-packages/django_ledger/templates/django_ledger/closing_entry/tags/closing_entry_txs_table.html:8 @@ -5016,7 +5026,7 @@ msgstr "قائمة الحسابات" #: dev_venv/lib/python3.13/site-packages/django_ledger/templates/django_ledger/transactions/tags/txs_table.html:9 #: dev_venv/lib/python3.13/site-packages/django_ledger/templates/django_ledger/transactions/tags/txs_table.html:45 #: templates/bill/transactions/tags/txs_table.html:9 -#: templates/ledger/journal_entry/journal_entry_txs.html:26 +#: templates/ledger/journal_entry/journal_entry_txs.html:29 #: templates/plans/current.html:16 #: templates/purchase_orders/includes/inventory_item_form.html:12 #: templates/purchase_orders/inventory_item_form.html:12 @@ -5024,54 +5034,51 @@ msgstr "قائمة الحسابات" msgid "Account" msgstr "الحساب" -#: dev_venv/lib/python3.13/site-packages/django_ledger/models/accounts.py:444 +#: dev_venv/lib/python3.13/site-packages/django_ledger/models/accounts.py:447 #: dev_venv/lib/python3.13/site-packages/django_ledger/templates/django_ledger/chart_of_accounts/includes/coa_card.html:54 -#: templates/admin_management/auth_logs.html:4 #: templates/admin_management/auth_logs.html:8 -#: templates/admin_management/model_logs.html:4 #: templates/admin_management/model_logs.html:8 -#: templates/admin_management/request_logs.html:4 #: templates/admin_management/request_logs.html:8 -#: templates/chart_of_accounts/includes/coa_card.html:88 +#: templates/chart_of_accounts/includes/coa_card.html:89 #: templates/ledger/coa_accounts/account_list.html:4 #: templates/ledger/coa_accounts/account_list.html:8 #: templates/ledger/coa_accounts/account_list.html:17 msgid "Accounts" msgstr "الحسابات" -#: dev_venv/lib/python3.13/site-packages/django_ledger/models/accounts.py:449 +#: dev_venv/lib/python3.13/site-packages/django_ledger/models/accounts.py:452 msgid "Account codes must be unique for each Chart of Accounts Model." msgstr "يجب أن تكون رموز الحساب فريدة لكل نموذج من نماذج دليل الحسابات." -#: dev_venv/lib/python3.13/site-packages/django_ledger/models/accounts.py:454 +#: dev_venv/lib/python3.13/site-packages/django_ledger/models/accounts.py:457 msgid "Only one default account for role permitted." msgstr "يُسمح بحساب افتراضي واحد فقط للدور." #: dev_venv/lib/python3.13/site-packages/django_ledger/models/bank_account.py:128 #: dev_venv/lib/python3.13/site-packages/django_ledger/models/closing_entry.py:73 #: dev_venv/lib/python3.13/site-packages/django_ledger/models/closing_entry.py:390 -#: dev_venv/lib/python3.13/site-packages/django_ledger/models/entity.py:3179 +#: dev_venv/lib/python3.13/site-packages/django_ledger/models/entity.py:3178 #: dev_venv/lib/python3.13/site-packages/django_ledger/models/estimate.py:251 msgid "Entity Model" msgstr "نموذج الكيان" -#: dev_venv/lib/python3.13/site-packages/django_ledger/models/bank_account.py:132 +#: dev_venv/lib/python3.13/site-packages/django_ledger/models/bank_account.py:133 msgid "Account model be used to map transactions from financial institution" msgstr "نموذج الحساب المستخدم لتعيين المعاملات من المؤسسة المالية" -#: dev_venv/lib/python3.13/site-packages/django_ledger/models/bank_account.py:133 +#: dev_venv/lib/python3.13/site-packages/django_ledger/models/bank_account.py:135 msgid "Associated Account Model" msgstr "نموذج الحساب المرتبط" -#: dev_venv/lib/python3.13/site-packages/django_ledger/models/bank_account.py:146 -#: dev_venv/lib/python3.13/site-packages/django_ledger/models/bill.py:464 +#: dev_venv/lib/python3.13/site-packages/django_ledger/models/bank_account.py:148 +#: dev_venv/lib/python3.13/site-packages/django_ledger/models/bill.py:471 #: dev_venv/lib/python3.13/site-packages/django_ledger/models/estimate.py:376 -#: dev_venv/lib/python3.13/site-packages/django_ledger/models/invoice.py:429 +#: dev_venv/lib/python3.13/site-packages/django_ledger/models/invoice.py:434 #: dev_venv/lib/python3.13/site-packages/django_ledger/models/purchase_order.py:303 msgid "Must pass user_model when using entity_slug." msgstr "يجب تمرير user_model عند استخدام entity_slug." -#: dev_venv/lib/python3.13/site-packages/django_ledger/models/bank_account.py:168 +#: dev_venv/lib/python3.13/site-packages/django_ledger/models/bank_account.py:170 msgid "Bank Account" msgstr "الحساب المصرفي" @@ -5079,7 +5086,7 @@ msgstr "الحساب المصرفي" #: dev_venv/lib/python3.13/site-packages/django_ledger/models/estimate.py:223 #: dev_venv/lib/python3.13/site-packages/django_ledger/models/invoice.py:300 #: dev_venv/lib/python3.13/site-packages/django_ledger/models/purchase_order.py:192 -#: inventory/models.py:542 templates/ledger/bills/bill_detail.html:255 +#: inventory/models.py:546 templates/ledger/bills/bill_detail.html:255 #: templates/sales/estimates/estimate_detail.html:95 #: templates/sales/estimates/estimate_detail.html:214 #: templates/sales/estimates/estimate_list.html:40 @@ -5108,7 +5115,7 @@ msgstr "قيد المراجعة" #: dev_venv/lib/python3.13/site-packages/django_ledger/models/invoice.py:302 #: dev_venv/lib/python3.13/site-packages/django_ledger/models/purchase_order.py:194 #: dev_venv/lib/python3.13/site-packages/django_ledger/templates/django_ledger/purchase_order/includes/card_po.html:49 -#: inventory/models.py:543 templates/ledger/bills/bill_detail.html:259 +#: inventory/models.py:547 templates/ledger/bills/bill_detail.html:259 #: templates/sales/estimates/estimate_detail.html:99 #: templates/sales/estimates/estimate_detail.html:218 #: templates/sales/estimates/estimate_list.html:44 @@ -5121,7 +5128,7 @@ msgstr "تمت الموافقة" #: dev_venv/lib/python3.13/site-packages/django_ledger/models/bill.py:346 #: dev_venv/lib/python3.13/site-packages/django_ledger/models/invoice.py:303 -#: templates/customers/view_customer.html:239 +#: templates/customers/view_customer.html:267 #: templates/ledger/bills/bill_detail.html:263 #: templates/sales/invoices/invoice_detail.html:108 #: templates/sales/invoices/invoice_detail.html:305 @@ -5135,7 +5142,7 @@ msgstr "مدفوع" #: dev_venv/lib/python3.13/site-packages/django_ledger/models/invoice.py:305 #: dev_venv/lib/python3.13/site-packages/django_ledger/models/items.py:1042 #: dev_venv/lib/python3.13/site-packages/django_ledger/models/purchase_order.py:196 -#: inventory/models.py:2284 templates/crm/leads/lead_list.html:167 +#: inventory/models.py:2289 templates/crm/leads/lead_list.html:167 #: templates/sales/estimates/estimate_detail.html:103 #: templates/sales/estimates/estimate_detail.html:222 #: templates/sales/estimates/estimate_list.html:48 @@ -5157,27 +5164,27 @@ msgstr "ملغى" msgid "Void" msgstr "باطل" -#: dev_venv/lib/python3.13/site-packages/django_ledger/models/bill.py:356 +#: dev_venv/lib/python3.13/site-packages/django_ledger/models/bill.py:363 #: templates/ledger/bills/bill_detail.html:222 #: templates/ledger/bills/bill_list.html:31 msgid "Bill Number" msgstr "رقم الفاتورة" -#: dev_venv/lib/python3.13/site-packages/django_ledger/models/bill.py:360 +#: dev_venv/lib/python3.13/site-packages/django_ledger/models/bill.py:367 #: templates/ledger/bills/bill_list.html:32 #: templates/vendors/view_vendor.html:89 msgid "Bill Status" msgstr "حالة الفاتورة" -#: dev_venv/lib/python3.13/site-packages/django_ledger/models/bill.py:361 +#: dev_venv/lib/python3.13/site-packages/django_ledger/models/bill.py:368 msgid "External Reference Number" msgstr "رقم المرجع الخارجي" -#: dev_venv/lib/python3.13/site-packages/django_ledger/models/bill.py:364 -#: dev_venv/lib/python3.13/site-packages/django_ledger/models/vendor.py:191 +#: dev_venv/lib/python3.13/site-packages/django_ledger/models/bill.py:371 +#: dev_venv/lib/python3.13/site-packages/django_ledger/models/vendor.py:213 #: dev_venv/lib/python3.13/site-packages/django_ledger/templates/django_ledger/bills/tags/bill_table.html:12 #: dev_venv/lib/python3.13/site-packages/django_ledger/templates/django_ledger/vendor/tags/vendor_table.html:10 -#: inventory/forms.py:2067 inventory/models.py:638 inventory/models.py:2795 +#: inventory/forms.py:2050 inventory/models.py:642 inventory/models.py:2818 #: templates/bill/tags/bill_table.html:10 #: templates/inventory/car_detail.html:134 #: templates/inventory/car_form.html:159 @@ -5187,11 +5194,11 @@ msgstr "رقم المرجع الخارجي" msgid "Vendor" msgstr "المورد" -#: dev_venv/lib/python3.13/site-packages/django_ledger/models/bill.py:368 +#: dev_venv/lib/python3.13/site-packages/django_ledger/models/bill.py:375 msgid "Bill Additional Info" msgstr "معلومات إضافية عن الفاتورة" -#: dev_venv/lib/python3.13/site-packages/django_ledger/models/bill.py:372 +#: dev_venv/lib/python3.13/site-packages/django_ledger/models/bill.py:379 #: dev_venv/lib/python3.13/site-packages/django_ledger/templates/django_ledger/bills/bill_detail.html:85 #: dev_venv/lib/python3.13/site-packages/django_ledger/templates/django_ledger/bills/tags/bill_item_formset.html:8 #: templates/bill/bill_detail.html:80 @@ -5199,28 +5206,28 @@ msgstr "معلومات إضافية عن الفاتورة" msgid "Bill Items" msgstr "بنود الفاتورة" -#: dev_venv/lib/python3.13/site-packages/django_ledger/models/bill.py:378 -#: dev_venv/lib/python3.13/site-packages/django_ledger/models/invoice.py:347 +#: dev_venv/lib/python3.13/site-packages/django_ledger/models/bill.py:385 +#: dev_venv/lib/python3.13/site-packages/django_ledger/models/invoice.py:352 #: dev_venv/lib/python3.13/site-packages/django_ledger/models/purchase_order.py:235 msgid "Associated Customer Job/Estimate" msgstr "الوظيفة/التقدير المرتبط بالعميل" -#: dev_venv/lib/python3.13/site-packages/django_ledger/models/bill.py:381 -#: dev_venv/lib/python3.13/site-packages/django_ledger/models/invoice.py:350 +#: dev_venv/lib/python3.13/site-packages/django_ledger/models/bill.py:388 +#: dev_venv/lib/python3.13/site-packages/django_ledger/models/invoice.py:355 #: dev_venv/lib/python3.13/site-packages/django_ledger/models/purchase_order.py:220 msgid "In Review Date" msgstr "تاريخ المراجعة" -#: dev_venv/lib/python3.13/site-packages/django_ledger/models/bill.py:382 -#: dev_venv/lib/python3.13/site-packages/django_ledger/models/invoice.py:351 +#: dev_venv/lib/python3.13/site-packages/django_ledger/models/bill.py:389 +#: dev_venv/lib/python3.13/site-packages/django_ledger/models/invoice.py:356 #: dev_venv/lib/python3.13/site-packages/django_ledger/models/purchase_order.py:221 #: dev_venv/lib/python3.13/site-packages/django_ledger/templates/django_ledger/purchase_order/includes/card_po.html:38 #: templates/purchase_orders/includes/card_po.html:69 msgid "Approved Date" msgstr "تاريخ الموافقة" -#: dev_venv/lib/python3.13/site-packages/django_ledger/models/bill.py:383 -#: dev_venv/lib/python3.13/site-packages/django_ledger/models/invoice.py:352 +#: dev_venv/lib/python3.13/site-packages/django_ledger/models/bill.py:390 +#: dev_venv/lib/python3.13/site-packages/django_ledger/models/invoice.py:357 #: dev_venv/lib/python3.13/site-packages/django_ledger/templates/django_ledger/bills/includes/card_bill.html:138 #: dev_venv/lib/python3.13/site-packages/django_ledger/templates/django_ledger/invoice/includes/card_invoice.html:126 #: templates/bill/includes/card_bill.html:184 @@ -5228,32 +5235,31 @@ msgstr "تاريخ الموافقة" msgid "Paid Date" msgstr "تاريخ الدفع" -#: dev_venv/lib/python3.13/site-packages/django_ledger/models/bill.py:384 -#: dev_venv/lib/python3.13/site-packages/django_ledger/models/invoice.py:353 +#: dev_venv/lib/python3.13/site-packages/django_ledger/models/bill.py:391 +#: dev_venv/lib/python3.13/site-packages/django_ledger/models/invoice.py:358 #: dev_venv/lib/python3.13/site-packages/django_ledger/models/purchase_order.py:222 msgid "Void Date" msgstr "تاريخ الإبطال" -#: dev_venv/lib/python3.13/site-packages/django_ledger/models/bill.py:385 -#: dev_venv/lib/python3.13/site-packages/django_ledger/models/invoice.py:354 +#: dev_venv/lib/python3.13/site-packages/django_ledger/models/bill.py:392 +#: dev_venv/lib/python3.13/site-packages/django_ledger/models/invoice.py:359 #: dev_venv/lib/python3.13/site-packages/django_ledger/models/purchase_order.py:224 msgid "Canceled Date" msgstr "تاريخ الإلغاء" -#: dev_venv/lib/python3.13/site-packages/django_ledger/models/bill.py:392 -#: dev_venv/lib/python3.13/site-packages/django_ledger/models/entity.py:3171 +#: dev_venv/lib/python3.13/site-packages/django_ledger/models/bill.py:399 +#: dev_venv/lib/python3.13/site-packages/django_ledger/models/entity.py:3170 #: dev_venv/lib/python3.13/site-packages/django_ledger/templates/django_ledger/bills/includes/card_bill.html:11 #: dev_venv/lib/python3.13/site-packages/django_ledger/templates/django_ledger/bills/includes/card_bill.html:61 #: inventory/forms.py:1014 templates/bill/includes/card_bill.html:11 #: templates/bill/includes/card_bill.html:78 #: templates/ledger/bills/bill_detail.html:77 -#: templates/ledger/bills/bill_update_form.html:5 #: templates/ledger/bills/bill_update_form.html:9 #: templates/vendors/view_vendor.html:88 msgid "Bill" msgstr "الفاتورة" -#: dev_venv/lib/python3.13/site-packages/django_ledger/models/bill.py:393 +#: dev_venv/lib/python3.13/site-packages/django_ledger/models/bill.py:400 #: dev_venv/lib/python3.13/site-packages/django_ledger/templates/django_ledger/estimate/estimate_detail.html:84 #: templates/ledger/bills/bill_list.html:4 #: templates/ledger/bills/bill_list.html:8 @@ -5261,39 +5267,39 @@ msgstr "الفاتورة" msgid "Bills" msgstr "الفواتير" -#: dev_venv/lib/python3.13/site-packages/django_ledger/models/bill.py:1139 +#: dev_venv/lib/python3.13/site-packages/django_ledger/models/bill.py:1146 #, python-format msgid "Do you want to mark Bill %s as Draft?" msgstr "هل تريد وضع الفاتورة %s كمسودة؟" -#: dev_venv/lib/python3.13/site-packages/django_ledger/models/bill.py:1247 +#: dev_venv/lib/python3.13/site-packages/django_ledger/models/bill.py:1254 #, python-format msgid "Do you want to mark Bill %s as In Review?" msgstr "هل تريد وضع الفاتورة %s قيد المراجعة؟" -#: dev_venv/lib/python3.13/site-packages/django_ledger/models/bill.py:1357 +#: dev_venv/lib/python3.13/site-packages/django_ledger/models/bill.py:1364 #, python-format msgid "Do you want to mark Bill %s as Approved?" msgstr "هل تريد وضع الفاتورة %s على أنها موافق عليها؟" -#: dev_venv/lib/python3.13/site-packages/django_ledger/models/bill.py:1483 +#: dev_venv/lib/python3.13/site-packages/django_ledger/models/bill.py:1490 #, python-format msgid "Do you want to mark Bill %s as Paid?" msgstr "هل تريد وضع الفاتورة %s على أنها مدفوعة؟" -#: dev_venv/lib/python3.13/site-packages/django_ledger/models/bill.py:1586 +#: dev_venv/lib/python3.13/site-packages/django_ledger/models/bill.py:1593 #, python-format msgid "Do you want to void Bill %s?" msgstr "هل تريد إبطال الفاتورة %s؟" -#: dev_venv/lib/python3.13/site-packages/django_ledger/models/bill.py:1659 +#: dev_venv/lib/python3.13/site-packages/django_ledger/models/bill.py:1666 #, python-format msgid "Do you want to mark Bill %s as Canceled?" msgstr "هل تريد وضع الفاتورة %s كملغاة؟" #: dev_venv/lib/python3.13/site-packages/django_ledger/models/chart_of_accounts.py:182 -#: dev_venv/lib/python3.13/site-packages/django_ledger/models/entity.py:795 -#: dev_venv/lib/python3.13/site-packages/django_ledger/models/entity.py:3237 +#: dev_venv/lib/python3.13/site-packages/django_ledger/models/entity.py:794 +#: dev_venv/lib/python3.13/site-packages/django_ledger/models/entity.py:3236 #: dev_venv/lib/python3.13/site-packages/django_ledger/models/purchase_order.py:217 msgid "Entity" msgstr "الكيان" @@ -5304,7 +5310,7 @@ msgstr "الكيان" #: dev_venv/lib/python3.13/site-packages/django_ledger/models/unit.py:135 #: dev_venv/lib/python3.13/site-packages/django_ledger/templates/django_ledger/chart_of_accounts/includes/coa_card.html:23 #: dev_venv/lib/python3.13/site-packages/django_ledger/templates/django_ledger/expense/tags/expense_item_table.html:12 -#: templates/chart_of_accounts/includes/coa_card.html:35 +#: templates/chart_of_accounts/includes/coa_card.html:36 msgid "Is Active" msgstr "نشط" @@ -5371,10 +5377,10 @@ msgstr "نموذج الحساب" #: dev_venv/lib/python3.13/site-packages/django_ledger/templates/django_ledger/closing_entry/tags/closing_entry_txs_table.html:10 #: dev_venv/lib/python3.13/site-packages/django_ledger/templates/django_ledger/journal_entry/includes/card_journal_entry.html:33 #: dev_venv/lib/python3.13/site-packages/django_ledger/templates/django_ledger/journal_entry/tags/je_table.html:10 -#: inventory/models.py:2679 templates/components/activity_modal.html:11 -#: templates/crm/leads/lead_detail.html:264 -#: templates/crm/opportunities/opportunity_detail.html:536 -#: templates/crm/opportunities/opportunity_detail.html:815 +#: inventory/models.py:2702 templates/components/activity_modal.html:11 +#: templates/crm/leads/lead_detail.html:267 +#: templates/crm/opportunities/opportunity_detail.html:475 +#: templates/crm/opportunities/opportunity_detail.html:754 #: templates/dealers/activity_log.html:4 templates/dealers/activity_log.html:17 #: templates/ledger/journal_entry/includes/card_journal_entry.html:30 #: templates/ledger/journal_entry/journal_entry_list.html:62 @@ -5394,22 +5400,22 @@ msgstr "رصيد إدخال الإغلاق" msgid "Closing Entry Model" msgstr "نموذج إدخال الإغلاق" -#: dev_venv/lib/python3.13/site-packages/django_ledger/models/customer.py:174 +#: dev_venv/lib/python3.13/site-packages/django_ledger/models/customer.py:195 #: dev_venv/lib/python3.13/site-packages/django_ledger/templates/django_ledger/customer/tags/customer_table.html:8 msgid "Customer Number" msgstr "رقم العميل" -#: dev_venv/lib/python3.13/site-packages/django_ledger/models/customer.py:178 +#: dev_venv/lib/python3.13/site-packages/django_ledger/models/customer.py:200 msgid "Customer Entity" msgstr "كيان العميل" -#: dev_venv/lib/python3.13/site-packages/django_ledger/models/customer.py:189 +#: dev_venv/lib/python3.13/site-packages/django_ledger/models/customer.py:212 #: dev_venv/lib/python3.13/site-packages/django_ledger/models/estimate.py:252 -#: dev_venv/lib/python3.13/site-packages/django_ledger/models/invoice.py:319 +#: dev_venv/lib/python3.13/site-packages/django_ledger/models/invoice.py:324 #: dev_venv/lib/python3.13/site-packages/django_ledger/templates/django_ledger/customer/tags/customer_table.html:9 #: dev_venv/lib/python3.13/site-packages/django_ledger/templates/django_ledger/estimate/includes/estimate_table.html:10 -#: inventory/models.py:1764 inventory/models.py:2063 inventory/models.py:2982 -#: templates/crm/employee_calendar.html:9 +#: inventory/models.py:1769 inventory/models.py:2068 inventory/models.py:2301 +#: inventory/models.py:3005 templates/crm/employee_calendar.html:12 #: templates/emails/schedule_reminder.html:26 #: templates/emails/schedule_reminder.txt:8 #: templates/sales/estimates/estimate_detail.html:198 @@ -5423,48 +5429,48 @@ msgstr "كيان العميل" msgid "Customer" msgstr "العميل" -#: dev_venv/lib/python3.13/site-packages/django_ledger/models/data_import.py:167 +#: dev_venv/lib/python3.13/site-packages/django_ledger/models/data_import.py:172 msgid "Associated Bank Account Model" msgstr "نموذج الحساب المصرفي المرتبط" -#: dev_venv/lib/python3.13/site-packages/django_ledger/models/data_import.py:171 +#: dev_venv/lib/python3.13/site-packages/django_ledger/models/data_import.py:176 msgid "Ledger Model" msgstr "نموذج دفتر الحسابات" -#: dev_venv/lib/python3.13/site-packages/django_ledger/models/data_import.py:174 +#: dev_venv/lib/python3.13/site-packages/django_ledger/models/data_import.py:179 msgid "Import Job Completed" msgstr "اكتمل استيراد المهمة" -#: dev_venv/lib/python3.13/site-packages/django_ledger/models/data_import.py:179 +#: dev_venv/lib/python3.13/site-packages/django_ledger/models/data_import.py:184 msgid "Import Job Model" msgstr "نموذج مهمة الاستيراد" -#: dev_venv/lib/python3.13/site-packages/django_ledger/models/data_import.py:495 +#: dev_venv/lib/python3.13/site-packages/django_ledger/models/data_import.py:500 msgid "Parent Transaction" msgstr "المعاملة الأصلية" -#: dev_venv/lib/python3.13/site-packages/django_ledger/models/data_import.py:498 +#: dev_venv/lib/python3.13/site-packages/django_ledger/models/data_import.py:503 msgid "Date Posted" msgstr "تاريخ النشر" -#: dev_venv/lib/python3.13/site-packages/django_ledger/models/data_import.py:499 +#: dev_venv/lib/python3.13/site-packages/django_ledger/models/data_import.py:504 msgid "Bundle Split Transactions" msgstr "تجزئة المعاملات" -#: dev_venv/lib/python3.13/site-packages/django_ledger/models/data_import.py:504 +#: dev_venv/lib/python3.13/site-packages/django_ledger/models/data_import.py:509 msgid "Proposed Activity" msgstr "النشاط المقترح" -#: dev_venv/lib/python3.13/site-packages/django_ledger/models/data_import.py:523 -#: dev_venv/lib/python3.13/site-packages/django_ledger/models/unit.py:144 +#: dev_venv/lib/python3.13/site-packages/django_ledger/models/data_import.py:528 +#: dev_venv/lib/python3.13/site-packages/django_ledger/models/unit.py:143 msgid "Entity Unit Model" msgstr "نموذج وحدة الكيان" -#: dev_venv/lib/python3.13/site-packages/django_ledger/models/data_import.py:534 +#: dev_venv/lib/python3.13/site-packages/django_ledger/models/data_import.py:539 msgid "Staged Transaction Model" msgstr "نموذج المعاملة المتدرجة" -#: dev_venv/lib/python3.13/site-packages/django_ledger/models/data_import.py:1186 +#: dev_venv/lib/python3.13/site-packages/django_ledger/models/data_import.py:1191 msgid "Invalid Bank Account for LedgerModel. No matching Entity Model found." msgstr "" "حساب مصرفي غير صالح لنموذج دفتر الحسابات. لم يتم العثور على نموذج كيان مطابق." @@ -5493,25 +5499,25 @@ msgstr "بداية السنة المالية" msgid "Last Closing Entry Date" msgstr "تاريخ آخر إدخال إغلاق" -#: dev_venv/lib/python3.13/site-packages/django_ledger/models/entity.py:796 +#: dev_venv/lib/python3.13/site-packages/django_ledger/models/entity.py:795 msgid "Entities" msgstr "الكيانات" -#: dev_venv/lib/python3.13/site-packages/django_ledger/models/entity.py:865 -#: dev_venv/lib/python3.13/site-packages/django_ledger/models/entity.py:875 -#: dev_venv/lib/python3.13/site-packages/django_ledger/models/entity.py:883 +#: dev_venv/lib/python3.13/site-packages/django_ledger/models/entity.py:864 +#: dev_venv/lib/python3.13/site-packages/django_ledger/models/entity.py:874 +#: dev_venv/lib/python3.13/site-packages/django_ledger/models/entity.py:882 msgid "Invalid Parent Entity. " msgstr "الكيان الأصلي غير صالح." -#: dev_venv/lib/python3.13/site-packages/django_ledger/models/entity.py:889 +#: dev_venv/lib/python3.13/site-packages/django_ledger/models/entity.py:888 msgid "Only slug, UUID or EntityModel allowed." msgstr "مسموح فقط بالمعرف، UUID أو نموذج الكيان." -#: dev_venv/lib/python3.13/site-packages/django_ledger/models/entity.py:1361 +#: dev_venv/lib/python3.13/site-packages/django_ledger/models/entity.py:1360 msgid "No default_coa found." msgstr "لم يتم العثور على قائمة حسابات افتراضية." -#: dev_venv/lib/python3.13/site-packages/django_ledger/models/entity.py:2844 +#: dev_venv/lib/python3.13/site-packages/django_ledger/models/entity.py:2843 msgid "" "Closing books must be called by providing closing_date or " "closing_entry_model, not both." @@ -5519,33 +5525,33 @@ msgstr "" "يجب استدعاء إغلاق الدفاتر إما بتحديد تاريخ الإغلاق أو نموذج إدخال الإغلاق، " "وليس كليهما." -#: dev_venv/lib/python3.13/site-packages/django_ledger/models/entity.py:2848 +#: dev_venv/lib/python3.13/site-packages/django_ledger/models/entity.py:2847 msgid "" "Closing books must be called by providing closing_date or " "closing_entry_model." msgstr "" "يجب استدعاء إغلاق الدفاتر إما بتحديد تاريخ الإغلاق أو نموذج إدخال الإغلاق." -#: dev_venv/lib/python3.13/site-packages/django_ledger/models/entity.py:3169 +#: dev_venv/lib/python3.13/site-packages/django_ledger/models/entity.py:3168 #: dev_venv/lib/python3.13/site-packages/django_ledger/models/journal_entry.py:407 #: dev_venv/lib/python3.13/site-packages/django_ledger/models/transactions.py:457 msgid "Journal Entry" msgstr "إدخال دفتر اليومية" -#: dev_venv/lib/python3.13/site-packages/django_ledger/models/entity.py:3170 +#: dev_venv/lib/python3.13/site-packages/django_ledger/models/entity.py:3169 #: templates/sales/orders/purchase_order.html:47 msgid "Purchase Order" msgstr "أمر شراء" -#: dev_venv/lib/python3.13/site-packages/django_ledger/models/entity.py:3172 -#: dev_venv/lib/python3.13/site-packages/django_ledger/models/invoice.py:361 +#: dev_venv/lib/python3.13/site-packages/django_ledger/models/entity.py:3171 +#: dev_venv/lib/python3.13/site-packages/django_ledger/models/invoice.py:366 #: dev_venv/lib/python3.13/site-packages/django_ledger/templates/django_ledger/invoice/includes/card_invoice.html:10 -#: inventory/forms.py:1010 inventory/models.py:2974 +#: inventory/forms.py:1010 inventory/models.py:2997 #: templates/crm/opportunities/opportunity_detail.html:190 #: templates/ledger/journal_entry/includes/card_invoice.html:9 #: templates/plans/create_order.html:25 templates/plans/invoices/layout.html:15 -#: templates/sales/invoices/invoice_create.html:6 #: templates/sales/invoices/invoice_detail.html:96 +#: templates/sales/invoices/invoice_preview.html:7 #: templates/sales/orders/order_details.html:432 #: templates/sales/orders/order_list.html:18 #: templates/sales/payments/payment_list.html:21 @@ -5553,15 +5559,15 @@ msgstr "أمر شراء" msgid "Invoice" msgstr "فاتورة" -#: dev_venv/lib/python3.13/site-packages/django_ledger/models/entity.py:3173 +#: dev_venv/lib/python3.13/site-packages/django_ledger/models/entity.py:3172 #: dev_venv/lib/python3.13/site-packages/django_ledger/templates/django_ledger/estimate/includes/card_estimate.html:9 #: dev_venv/lib/python3.13/site-packages/django_ledger/templates/django_ledger/estimate/includes/estimate_table.html:9 -#: inventory/models.py:2966 +#: inventory/models.py:2989 #: templates/crm/opportunities/opportunity_detail.html:179 msgid "Estimate" msgstr "تقدير" -#: dev_venv/lib/python3.13/site-packages/django_ledger/models/entity.py:3186 +#: dev_venv/lib/python3.13/site-packages/django_ledger/models/entity.py:3185 #: dev_venv/lib/python3.13/site-packages/django_ledger/templates/django_ledger/financial_statements/balance_sheet.html:37 #: dev_venv/lib/python3.13/site-packages/django_ledger/templates/django_ledger/financial_statements/cash_flow.html:38 #: templates/ledger/reports/balance_sheet.html:45 @@ -5571,30 +5577,31 @@ msgstr "تقدير" msgid "Fiscal Year" msgstr "السنة المالية" -#: dev_venv/lib/python3.13/site-packages/django_ledger/models/entity.py:3229 +#: dev_venv/lib/python3.13/site-packages/django_ledger/models/entity.py:3228 msgid "Read Permissions" msgstr "أذونات القراءة" -#: dev_venv/lib/python3.13/site-packages/django_ledger/models/entity.py:3230 +#: dev_venv/lib/python3.13/site-packages/django_ledger/models/entity.py:3229 msgid "Read/Write Permissions" msgstr "أذونات القراءة/الكتابة" -#: dev_venv/lib/python3.13/site-packages/django_ledger/models/entity.py:3231 +#: dev_venv/lib/python3.13/site-packages/django_ledger/models/entity.py:3230 #: templates/groups/group_detail.html:100 msgid "No Permissions" msgstr "بدون أذونات" -#: dev_venv/lib/python3.13/site-packages/django_ledger/models/entity.py:3241 +#: dev_venv/lib/python3.13/site-packages/django_ledger/models/entity.py:3240 msgid "Manager" msgstr "مدير" -#: dev_venv/lib/python3.13/site-packages/django_ledger/models/entity.py:3246 +#: dev_venv/lib/python3.13/site-packages/django_ledger/models/entity.py:3245 msgid "Permission Level" msgstr "مستوى الأذونات" #: dev_venv/lib/python3.13/site-packages/django_ledger/models/estimate.py:226 -#: inventory/models.py:2283 inventory/models.py:2305 inventory/models.py:2583 -#: templates/crm/opportunities/opportunity_detail.html:594 +#: inventory/models.py:2288 inventory/models.py:2326 inventory/models.py:2606 +#: templates/crm/leads/lead_detail.html:793 +#: templates/crm/opportunities/opportunity_detail.html:533 #: templates/sales/estimates/estimate_detail.html:101 #: templates/sales/estimates/estimate_detail.html:220 #: templates/sales/estimates/estimate_list.html:50 @@ -5615,7 +5622,8 @@ msgstr "الوقت والمواد" #: dev_venv/lib/python3.13/site-packages/django_ledger/models/estimate.py:240 #: dev_venv/lib/python3.13/site-packages/django_ledger/models/items.py:511 -#: inventory/models.py:2274 +#: dev_venv/lib/python3.13/site-packages/django_ledger/models/mixins.py:1162 +#: inventory/models.py:2279 msgid "Other" msgstr "أخرى" @@ -5744,7 +5752,7 @@ msgstr "هل تريد إبطال التقدير %s؟" msgid "Cannot compute gross margin, total cost is zero." msgstr "لا يمكن حساب هامش الربح الإجمالي، التكلفة الإجمالية صفر." -#: dev_venv/lib/python3.13/site-packages/django_ledger/models/invoice.py:314 +#: dev_venv/lib/python3.13/site-packages/django_ledger/models/invoice.py:319 #: templates/ledger/reports/car_sale_report.html:243 #: templates/sales/invoices/invoice_detail.html:269 #: templates/sales/invoices/invoice_list.html:25 @@ -5753,50 +5761,50 @@ msgstr "لا يمكن حساب هامش الربح الإجمالي، التكل msgid "Invoice Number" msgstr "رقم الفاتورة" -#: dev_venv/lib/python3.13/site-packages/django_ledger/models/invoice.py:316 +#: dev_venv/lib/python3.13/site-packages/django_ledger/models/invoice.py:321 #: templates/sales/invoices/invoice_detail.html:293 msgid "Invoice Status" msgstr "حالة الفاتورة" -#: dev_venv/lib/python3.13/site-packages/django_ledger/models/invoice.py:323 -#: dev_venv/lib/python3.13/site-packages/django_ledger/models/mixins.py:223 +#: dev_venv/lib/python3.13/site-packages/django_ledger/models/invoice.py:328 +#: dev_venv/lib/python3.13/site-packages/django_ledger/models/mixins.py:226 #: dev_venv/lib/python3.13/site-packages/django_ledger/templates/django_ledger/bills/bill_detail.html:31 #: dev_venv/lib/python3.13/site-packages/django_ledger/templates/django_ledger/invoice/invoice_detail.html:30 #: templates/bill/bill_detail.html:18 #: templates/ledger/bank_accounts/bank_account_detail.html:60 -#: templates/ledger/ledger/ledger_detail.html:24 +#: templates/ledger/ledger/ledger_detail.html:27 msgid "Cash Account" msgstr "حساب نقدي" -#: dev_venv/lib/python3.13/site-packages/django_ledger/models/invoice.py:327 -#: dev_venv/lib/python3.13/site-packages/django_ledger/models/mixins.py:229 +#: dev_venv/lib/python3.13/site-packages/django_ledger/models/invoice.py:332 +#: dev_venv/lib/python3.13/site-packages/django_ledger/models/mixins.py:232 #: dev_venv/lib/python3.13/site-packages/django_ledger/templates/django_ledger/bills/bill_detail.html:42 #: templates/bill/bill_detail.html:33 msgid "Prepaid Account" msgstr "حساب مسبق الدفع" -#: dev_venv/lib/python3.13/site-packages/django_ledger/models/invoice.py:331 -#: dev_venv/lib/python3.13/site-packages/django_ledger/models/mixins.py:237 +#: dev_venv/lib/python3.13/site-packages/django_ledger/models/invoice.py:336 +#: dev_venv/lib/python3.13/site-packages/django_ledger/models/mixins.py:240 msgid "Unearned Account" msgstr "حساب غير مكتسب" -#: dev_venv/lib/python3.13/site-packages/django_ledger/models/invoice.py:337 +#: dev_venv/lib/python3.13/site-packages/django_ledger/models/invoice.py:342 msgid "Invoice Additional Info" msgstr "معلومات إضافية عن الفاتورة" -#: dev_venv/lib/python3.13/site-packages/django_ledger/models/invoice.py:341 +#: dev_venv/lib/python3.13/site-packages/django_ledger/models/invoice.py:346 #: dev_venv/lib/python3.13/site-packages/django_ledger/templates/django_ledger/invoice/invoice_detail.html:84 #: dev_venv/lib/python3.13/site-packages/django_ledger/templates/django_ledger/invoice/tags/invoice_item_formset.html:8 -#: templates/ledger/ledger/ledger_detail.html:61 +#: templates/ledger/ledger/ledger_detail.html:64 #: templates/plans/invoices/layout.html:108 #: templates/sales/tags/invoice_item_formset.html:7 msgid "Invoice Items" msgstr "عناصر الفاتورة" -#: dev_venv/lib/python3.13/site-packages/django_ledger/models/invoice.py:362 +#: dev_venv/lib/python3.13/site-packages/django_ledger/models/invoice.py:367 #: dev_venv/lib/python3.13/site-packages/django_ledger/templates/django_ledger/estimate/estimate_detail.html:99 #: dev_venv/lib/python3.13/site-packages/django_ledger/templates/django_ledger/invoice/invoice_list.html:15 -#: templates/customers/view_customer.html:59 +#: templates/customers/view_customer.html:60 #: templates/sales/invoices/invoice_list.html:4 #: templates/sales/invoices/invoice_list.html:13 #: templates/sales/journals/journal_list.html:4 @@ -5804,32 +5812,32 @@ msgstr "عناصر الفاتورة" msgid "Invoices" msgstr "الفواتير" -#: dev_venv/lib/python3.13/site-packages/django_ledger/models/invoice.py:1070 +#: dev_venv/lib/python3.13/site-packages/django_ledger/models/invoice.py:1077 #, python-format msgid "Do you want to mark Invoice %s as Draft?" msgstr "هل تريد وضع الفاتورة %s كمسودة؟" -#: dev_venv/lib/python3.13/site-packages/django_ledger/models/invoice.py:1161 +#: dev_venv/lib/python3.13/site-packages/django_ledger/models/invoice.py:1168 #, python-format msgid "Do you want to mark Invoice %s as In Review?" msgstr "هل تريد وضع الفاتورة %s قيد المراجعة؟" -#: dev_venv/lib/python3.13/site-packages/django_ledger/models/invoice.py:1266 +#: dev_venv/lib/python3.13/site-packages/django_ledger/models/invoice.py:1273 #, python-format msgid "Do you want to mark Invoice %s as Approved?" msgstr "هل تريد وضع الفاتورة %s على أنها معتمدة؟" -#: dev_venv/lib/python3.13/site-packages/django_ledger/models/invoice.py:1375 +#: dev_venv/lib/python3.13/site-packages/django_ledger/models/invoice.py:1382 #, python-format msgid "Do you want to mark Invoice %s as Paid?" msgstr "هل تريد وضع الفاتورة %s على أنها مدفوعة؟" -#: dev_venv/lib/python3.13/site-packages/django_ledger/models/invoice.py:1482 +#: dev_venv/lib/python3.13/site-packages/django_ledger/models/invoice.py:1489 #, python-format msgid "Do you want to mark Invoice %s as Void?" msgstr "هل تريد إبطال الفاتورة %s؟" -#: dev_venv/lib/python3.13/site-packages/django_ledger/models/invoice.py:1557 +#: dev_venv/lib/python3.13/site-packages/django_ledger/models/invoice.py:1564 #, python-format msgid "Do you want to mark Invoice %s as Canceled?" msgstr "هل تريد إلغاء الفاتورة %s؟" @@ -6021,7 +6029,7 @@ msgid "Associated Entity Unit" msgstr "وحدة الكيان المرتبطة" #: dev_venv/lib/python3.13/site-packages/django_ledger/models/items.py:1053 -#: inventory/models.py:625 +#: inventory/models.py:629 msgid "Item Model" msgstr "نموذج العنصر" @@ -6042,18 +6050,18 @@ msgstr "نموذج الفاتورة" #: dev_venv/lib/python3.13/site-packages/django_ledger/templates/django_ledger/invoice/tags/invoice_item_formset.html:19 #: dev_venv/lib/python3.13/site-packages/django_ledger/templates/django_ledger/purchase_order/includes/po_item_formset.html:20 #: dev_venv/lib/python3.13/site-packages/django_ledger/templates/django_ledger/purchase_order/po_update.html:51 -#: inventory/forms.py:984 inventory/models.py:1017 +#: inventory/forms.py:984 inventory/models.py:1022 #: templates/bill/bill_detail.html:91 #: templates/bill/tags/bill_item_formset.html:36 #: templates/inventory/tags/inventory_table.html:9 #: templates/inventory/transfer_preview.html:290 #: templates/ledger/bills/bill_detail.html:278 -#: templates/ledger/ledger/ledger_detail.html:71 +#: templates/ledger/ledger/ledger_detail.html:74 #: templates/plans/invoices/layout.html:120 #: templates/purchase_orders/includes/inventory_item_form.html:18 #: templates/purchase_orders/includes/po_item_formset.html:36 -#: templates/purchase_orders/po_update.html:44 -#: templates/purchase_orders/po_upload_cars.html:32 +#: templates/purchase_orders/po_update.html:47 +#: templates/purchase_orders/po_upload_cars.html:35 #: templates/sales/estimates/estimate_detail.html:240 #: templates/sales/estimates/sale_order_preview.html:207 #: templates/sales/invoices/invoice_detail.html:323 @@ -6147,7 +6155,7 @@ msgid "Investing Activity Other" msgstr "نشاط استثماري آخر" #: dev_venv/lib/python3.13/site-packages/django_ledger/models/journal_entry.py:356 -#: inventory/models.py:1670 +#: inventory/models.py:1675 msgid "Financing" msgstr "تمويل" @@ -6206,7 +6214,7 @@ msgstr "تم النشر" #: dev_venv/lib/python3.13/site-packages/django_ledger/models/journal_entry.py:396 #: dev_venv/lib/python3.13/site-packages/django_ledger/models/ledger.py:213 -#: dev_venv/lib/python3.13/site-packages/django_ledger/models/mixins.py:217 +#: dev_venv/lib/python3.13/site-packages/django_ledger/models/mixins.py:220 #: templates/ledger/ledger/ledger_list.html:4 #: templates/ledger/ledger/ledger_list.html:11 msgid "Ledger" @@ -6255,32 +6263,32 @@ msgid "Hidden Ledger" msgstr "دفتر الأستاذ المخفي" #: dev_venv/lib/python3.13/site-packages/django_ledger/models/ledger.py:214 -#: templates/header.html:292 +#: templates/header.html:287 msgid "Ledgers" msgstr "دفاتر الأستاذ" -#: dev_venv/lib/python3.13/site-packages/django_ledger/models/mixins.py:49 +#: dev_venv/lib/python3.13/site-packages/django_ledger/models/mixins.py:52 msgid "Slug field must contain at least 10 characters." msgstr "يجب أن يحتوي حقل المعرف الفريد على 10 أحرف على الأقل." -#: dev_venv/lib/python3.13/site-packages/django_ledger/models/mixins.py:106 +#: dev_venv/lib/python3.13/site-packages/django_ledger/models/mixins.py:109 msgid "Address Line 1" msgstr "عنوان الخط 1" -#: dev_venv/lib/python3.13/site-packages/django_ledger/models/mixins.py:107 +#: dev_venv/lib/python3.13/site-packages/django_ledger/models/mixins.py:110 msgid "Address Line 2" msgstr "عنوان الخط 2" -#: dev_venv/lib/python3.13/site-packages/django_ledger/models/mixins.py:109 +#: dev_venv/lib/python3.13/site-packages/django_ledger/models/mixins.py:112 msgid "State/Province" msgstr "الولاية/المقاطعة" -#: dev_venv/lib/python3.13/site-packages/django_ledger/models/mixins.py:113 -#: inventory/models.py:1612 +#: dev_venv/lib/python3.13/site-packages/django_ledger/models/mixins.py:116 +#: inventory/models.py:1617 msgid "Website" msgstr "الموقع الإلكتروني" -#: dev_venv/lib/python3.13/site-packages/django_ledger/models/mixins.py:178 +#: dev_venv/lib/python3.13/site-packages/django_ledger/models/mixins.py:181 #: dev_venv/lib/python3.13/site-packages/django_ledger/templates/django_ledger/bills/includes/card_bill.html:67 #: dev_venv/lib/python3.13/site-packages/django_ledger/templates/django_ledger/bills/includes/card_bill.html:84 #: dev_venv/lib/python3.13/site-packages/django_ledger/templates/django_ledger/bills/includes/card_bill.html:105 @@ -6299,7 +6307,7 @@ msgstr "الموقع الإلكتروني" msgid "Amount Due" msgstr "المبلغ المستحق" -#: dev_venv/lib/python3.13/site-packages/django_ledger/models/mixins.py:183 +#: dev_venv/lib/python3.13/site-packages/django_ledger/models/mixins.py:186 #: dev_venv/lib/python3.13/site-packages/django_ledger/templates/django_ledger/bills/includes/card_bill.html:120 #: dev_venv/lib/python3.13/site-packages/django_ledger/templates/django_ledger/bills/includes/card_bill.html:133 #: dev_venv/lib/python3.13/site-packages/django_ledger/templates/django_ledger/invoice/includes/card_invoice.html:111 @@ -6314,48 +6322,49 @@ msgstr "المبلغ المستحق" msgid "Amount Paid" msgstr "المبلغ المدفوع" -#: dev_venv/lib/python3.13/site-packages/django_ledger/models/mixins.py:189 +#: dev_venv/lib/python3.13/site-packages/django_ledger/models/mixins.py:192 #: templates/sales/saleorder_detail.html:205 msgid "Amount Receivable" msgstr "المبلغ المستحق الاستلام" -#: dev_venv/lib/python3.13/site-packages/django_ledger/models/mixins.py:194 +#: dev_venv/lib/python3.13/site-packages/django_ledger/models/mixins.py:197 #: templates/sales/saleorder_detail.html:197 msgid "Amount Unearned" msgstr "المبلغ غير المكتسب" -#: dev_venv/lib/python3.13/site-packages/django_ledger/models/mixins.py:199 +#: dev_venv/lib/python3.13/site-packages/django_ledger/models/mixins.py:202 msgid "Amount Earned" msgstr "المبلغ المكتسب" -#: dev_venv/lib/python3.13/site-packages/django_ledger/models/mixins.py:202 +#: dev_venv/lib/python3.13/site-packages/django_ledger/models/mixins.py:205 #: templates/ledger/journal_entry/includes/card_invoice.html:20 #: templates/ledger/journal_entry/includes/card_invoice.html:24 msgid "Accrue" msgstr "يتراكم" -#: dev_venv/lib/python3.13/site-packages/django_ledger/models/mixins.py:206 +#: dev_venv/lib/python3.13/site-packages/django_ledger/models/mixins.py:209 msgid "Progress Amount" msgstr "مبلغ التقدم" -#: dev_venv/lib/python3.13/site-packages/django_ledger/models/mixins.py:975 -#: templates/header.html:661 templates/ledger/bills/bill_detail.html:154 +#: dev_venv/lib/python3.13/site-packages/django_ledger/models/mixins.py:978 +#: templates/header.html:671 templates/ledger/bills/bill_detail.html:154 #: templates/sales/estimates/sale_order_preview.html:195 #: templates/sales/invoices/invoice_detail.html:201 msgid "Terms" msgstr "الشروط" -#: dev_venv/lib/python3.13/site-packages/django_ledger/models/mixins.py:976 +#: dev_venv/lib/python3.13/site-packages/django_ledger/models/mixins.py:979 #: dev_venv/lib/python3.13/site-packages/django_ledger/templates/django_ledger/bills/includes/card_bill.html:72 #: dev_venv/lib/python3.13/site-packages/django_ledger/templates/django_ledger/bills/includes/card_bill.html:89 #: dev_venv/lib/python3.13/site-packages/django_ledger/templates/django_ledger/bills/includes/card_bill.html:110 #: dev_venv/lib/python3.13/site-packages/django_ledger/templates/django_ledger/invoice/includes/card_invoice.html:63 #: dev_venv/lib/python3.13/site-packages/django_ledger/templates/django_ledger/invoice/includes/card_invoice.html:80 #: dev_venv/lib/python3.13/site-packages/django_ledger/templates/django_ledger/invoice/includes/card_invoice.html:101 -#: inventory/models.py:2580 templates/bill/includes/card_bill.html:98 +#: inventory/models.py:2603 templates/bill/includes/card_bill.html:98 #: templates/bill/includes/card_bill.html:122 #: templates/bill/includes/card_bill.html:149 -#: templates/crm/opportunities/opportunity_detail.html:590 +#: templates/crm/leads/lead_detail.html:789 +#: templates/crm/opportunities/opportunity_detail.html:529 #: templates/ledger/journal_entry/includes/card_invoice.html:64 #: templates/ledger/journal_entry/includes/card_invoice.html:80 #: templates/ledger/journal_entry/includes/card_invoice.html:99 @@ -6363,40 +6372,70 @@ msgstr "الشروط" msgid "Due Date" msgstr "تاريخ الاستحقاق" -#: dev_venv/lib/python3.13/site-packages/django_ledger/models/mixins.py:1084 +#: dev_venv/lib/python3.13/site-packages/django_ledger/models/mixins.py:1091 msgid "Markdown Notes" msgstr "ملاحظات ماركداون" -#: dev_venv/lib/python3.13/site-packages/django_ledger/models/mixins.py:1137 +#: dev_venv/lib/python3.13/site-packages/django_ledger/models/mixins.py:1154 msgid "Checking" msgstr "حساب جاري" -#: dev_venv/lib/python3.13/site-packages/django_ledger/models/mixins.py:1138 +#: dev_venv/lib/python3.13/site-packages/django_ledger/models/mixins.py:1155 msgid "Savings" msgstr "حساب توفير" -#: dev_venv/lib/python3.13/site-packages/django_ledger/models/mixins.py:1139 +#: dev_venv/lib/python3.13/site-packages/django_ledger/models/mixins.py:1156 +msgid "Money Market" +msgstr "" + +#: dev_venv/lib/python3.13/site-packages/django_ledger/models/mixins.py:1157 +msgid "Certificate of Deposit" +msgstr "" + +#: dev_venv/lib/python3.13/site-packages/django_ledger/models/mixins.py:1158 msgid "Credit Card" msgstr "بطاقة ائتمان" -#: dev_venv/lib/python3.13/site-packages/django_ledger/models/mixins.py:1140 +#: dev_venv/lib/python3.13/site-packages/django_ledger/models/mixins.py:1159 +#, fuzzy +#| msgid "Short Term Notes Payable" +msgid "Short Term Loan" +msgstr "السندات المستحقة قصيرة الأجل" + +#: dev_venv/lib/python3.13/site-packages/django_ledger/models/mixins.py:1160 +#, fuzzy +#| msgid "Long Term Notes Payable" +msgid "Long Term Loan" +msgstr "سندات الدفع طويلة الأجل" + +#: dev_venv/lib/python3.13/site-packages/django_ledger/models/mixins.py:1161 msgid "Mortgage" msgstr "الرهن العقاري" -#: dev_venv/lib/python3.13/site-packages/django_ledger/models/mixins.py:1147 -#: dev_venv/lib/python3.13/site-packages/django_ledger/models/mixins.py:1151 +#: dev_venv/lib/python3.13/site-packages/django_ledger/models/mixins.py:1179 +#, fuzzy +#| msgid "Financial Analysis" +msgid "Financial Institution" +msgstr "التحليل المالي" + +#: dev_venv/lib/python3.13/site-packages/django_ledger/models/mixins.py:1180 +msgid "Name of the financial institution (i.e. Bank Name)." +msgstr "" + +#: dev_venv/lib/python3.13/site-packages/django_ledger/models/mixins.py:1184 +#: dev_venv/lib/python3.13/site-packages/django_ledger/models/mixins.py:1188 msgid "Only digits allowed" msgstr "الأرقام فقط مسموح بها" -#: dev_venv/lib/python3.13/site-packages/django_ledger/models/mixins.py:1154 +#: dev_venv/lib/python3.13/site-packages/django_ledger/models/mixins.py:1191 msgid "SWIFT Number" msgstr "رقم SWIFT" -#: dev_venv/lib/python3.13/site-packages/django_ledger/models/mixins.py:1168 +#: dev_venv/lib/python3.13/site-packages/django_ledger/models/mixins.py:1222 msgid "Tax Registration Number" msgstr "رقم التسجيل الضريبي" -#: dev_venv/lib/python3.13/site-packages/django_ledger/models/mixins.py:1188 +#: dev_venv/lib/python3.13/site-packages/django_ledger/models/mixins.py:1242 msgid "Sales Tax Rate" msgstr "معدل ضريبة المبيعات" @@ -6495,10 +6534,10 @@ msgstr "الحساب من مخطط الحسابات المرتبط بهذه ال #: dev_venv/lib/python3.13/site-packages/django_ledger/models/transactions.py:471 #: dev_venv/lib/python3.13/site-packages/django_ledger/templates/django_ledger/purchase_order/includes/po_item_formset.html:22 #: dev_venv/lib/python3.13/site-packages/django_ledger/templates/django_ledger/purchase_order/tags/po_item_table.html:11 -#: inventory/forms.py:1016 inventory/models.py:2423 +#: inventory/forms.py:1016 #: templates/crm/opportunities/opportunity_detail.html:263 #: templates/ledger/bank_accounts/bank_account_detail.html:56 -#: templates/ledger/journal_entry/journal_entry_txs.html:28 +#: templates/ledger/journal_entry/journal_entry_txs.html:31 #: templates/purchase_orders/includes/po_item_formset.html:38 #: templates/purchase_orders/tags/po_item_table.html:10 msgid "Amount" @@ -6531,7 +6570,6 @@ msgstr "معاملة" #: dev_venv/lib/python3.13/site-packages/django_ledger/models/transactions.py:490 #: dev_venv/lib/python3.13/site-packages/django_ledger/templates/django_ledger/journal_entry/tags/je_table.html:91 #: templates/ledger/journal_entry/journal_entry_list.html:110 -#: templates/ledger/journal_entry/journal_entry_transactions.html:4 #: templates/ledger/journal_entry/journal_entry_transactions.html:12 #: templates/sales/payments/payment_details.html:4 #: templates/sales/payments/payment_details.html:9 @@ -6554,13 +6592,18 @@ msgstr "كيان الوحدة" msgid "Is Hidden" msgstr "مخفي" -#: dev_venv/lib/python3.13/site-packages/django_ledger/models/vendor.py:181 +#: dev_venv/lib/python3.13/site-packages/django_ledger/models/vendor.py:196 +#: dev_venv/lib/python3.13/site-packages/django_ledger/templates/django_ledger/vendor/tags/vendor_table.html:9 +msgid "Vendor Number" +msgstr "رقم المورد" + +#: dev_venv/lib/python3.13/site-packages/django_ledger/models/vendor.py:201 msgid "Vendor Entity" msgstr "كيان المورد" #: dev_venv/lib/python3.13/site-packages/django_ledger/templates/django_ledger/account/account_create.html:10 #: dev_venv/lib/python3.13/site-packages/django_ledger/templates/django_ledger/account/account_list.html:19 -#: dev_venv/lib/python3.13/site-packages/django_ledger/views/account.py:98 +#: dev_venv/lib/python3.13/site-packages/django_ledger/views/account.py:107 msgid "Create Account" msgstr "إنشاء حساب" @@ -6571,7 +6614,7 @@ msgstr "تقرير قائمة معاملات الحساب" #: dev_venv/lib/python3.13/site-packages/django_ledger/templates/django_ledger/account/account_list.html:10 #, fuzzy #| msgid "CoA Account List" -msgid "Accounts List" +msgid "CoA Account List" msgstr "قائمة حسابات دليل الحسابات" #: dev_venv/lib/python3.13/site-packages/django_ledger/templates/django_ledger/account/account_list.html:21 @@ -6580,12 +6623,12 @@ msgstr "العودة إلى قائمة مخطط الحسابات" #: dev_venv/lib/python3.13/site-packages/django_ledger/templates/django_ledger/account/tags/account_txs_table.html:29 #: dev_venv/lib/python3.13/site-packages/django_ledger/templates/django_ledger/account/tags/accounts_table.html:30 -#: dev_venv/lib/python3.13/site-packages/django_ledger/templates/django_ledger/account/tags/accounts_table.html:93 +#: dev_venv/lib/python3.13/site-packages/django_ledger/templates/django_ledger/account/tags/accounts_table.html:89 #: dev_venv/lib/python3.13/site-packages/django_ledger/templates/django_ledger/bank_account/tags/bank_accounts_table.html:39 #: dev_venv/lib/python3.13/site-packages/django_ledger/templates/django_ledger/bills/tags/bill_table.html:16 #: dev_venv/lib/python3.13/site-packages/django_ledger/templates/django_ledger/closing_entry/tags/closing_entry_table.html:13 #: dev_venv/lib/python3.13/site-packages/django_ledger/templates/django_ledger/closing_entry/tags/closing_entry_table.html:36 -#: dev_venv/lib/python3.13/site-packages/django_ledger/templates/django_ledger/customer/tags/customer_table.html:13 +#: dev_venv/lib/python3.13/site-packages/django_ledger/templates/django_ledger/customer/tags/customer_table.html:14 #: dev_venv/lib/python3.13/site-packages/django_ledger/templates/django_ledger/data_import/tags/data_import_job_list_table.html:38 #: dev_venv/lib/python3.13/site-packages/django_ledger/templates/django_ledger/estimate/includes/estimate_table.html:16 #: dev_venv/lib/python3.13/site-packages/django_ledger/templates/django_ledger/estimate/includes/estimate_table.html:38 @@ -6606,13 +6649,13 @@ msgstr "العودة إلى قائمة مخطط الحسابات" #: dev_venv/lib/python3.13/site-packages/django_ledger/templates/django_ledger/service/tags/services_table.html:15 #: dev_venv/lib/python3.13/site-packages/django_ledger/templates/django_ledger/uom/tags/uom_table.html:11 #: dev_venv/lib/python3.13/site-packages/django_ledger/templates/django_ledger/uom/tags/uom_table.html:33 -#: dev_venv/lib/python3.13/site-packages/django_ledger/templates/django_ledger/vendor/tags/vendor_table.html:14 +#: dev_venv/lib/python3.13/site-packages/django_ledger/templates/django_ledger/vendor/tags/vendor_table.html:15 #: templates/admin_management/user_management.html:34 #: templates/admin_management/user_management.html:111 #: templates/admin_management/user_management.html:188 #: templates/admin_management/user_management.html:265 #: templates/bill/tags/bill_table.html:14 -#: templates/inventory/car_detail.html:368 +#: templates/inventory/car_detail.html:370 #: templates/ledger/coa_accounts/account_detail.html:79 #: templates/purchase_orders/includes/po_table.html:12 #: templates/purchase_orders/po_list.html:44 @@ -6645,7 +6688,7 @@ msgstr "نوع الرصيد" msgid "CoA Role Default" msgstr "الدور الافتراضي لمخطط الحسابات" -#: dev_venv/lib/python3.13/site-packages/django_ledger/templates/django_ledger/account/tags/accounts_table.html:100 +#: dev_venv/lib/python3.13/site-packages/django_ledger/templates/django_ledger/account/tags/accounts_table.html:96 #: dev_venv/lib/python3.13/site-packages/django_ledger/templates/django_ledger/financial_statements/tags/balance_sheet_statement.html:64 #: dev_venv/lib/python3.13/site-packages/django_ledger/templates/django_ledger/financial_statements/tags/income_statement.html:58 #: dev_venv/lib/python3.13/site-packages/django_ledger/templates/django_ledger/financial_statements/tags/income_statement.html:119 @@ -6655,9 +6698,9 @@ msgstr "الدور الافتراضي لمخطط الحسابات" msgid "Detail" msgstr "تفاصيل" -#: dev_venv/lib/python3.13/site-packages/django_ledger/templates/django_ledger/account/tags/accounts_table.html:105 +#: dev_venv/lib/python3.13/site-packages/django_ledger/templates/django_ledger/account/tags/accounts_table.html:101 #: dev_venv/lib/python3.13/site-packages/django_ledger/templates/django_ledger/bank_account/tags/bank_accounts_table.html:52 -#: templates/admin_management/confirm_activate_account.html:32 +#: templates/admin_management/confirm_activate_account.html:21 #: templates/admin_management/user_management.html:64 #: templates/admin_management/user_management.html:141 #: templates/admin_management/user_management.html:218 @@ -6667,22 +6710,22 @@ msgstr "تفاصيل" msgid "Activate" msgstr "نشط" -#: dev_venv/lib/python3.13/site-packages/django_ledger/templates/django_ledger/account/tags/accounts_table.html:109 +#: dev_venv/lib/python3.13/site-packages/django_ledger/templates/django_ledger/account/tags/accounts_table.html:105 msgid "Deactivate" msgstr "إلغاء التفعيل" -#: dev_venv/lib/python3.13/site-packages/django_ledger/templates/django_ledger/account/tags/accounts_table.html:113 +#: dev_venv/lib/python3.13/site-packages/django_ledger/templates/django_ledger/account/tags/accounts_table.html:109 #: dev_venv/lib/python3.13/site-packages/django_ledger/templates/django_ledger/journal_entry/includes/card_journal_entry.html:43 #: dev_venv/lib/python3.13/site-packages/django_ledger/templates/django_ledger/journal_entry/je_detail_txs.html:64 #: dev_venv/lib/python3.13/site-packages/django_ledger/templates/django_ledger/journal_entry/tags/je_table.html:76 #: dev_venv/lib/python3.13/site-packages/django_ledger/templates/django_ledger/ledger/tags/ledgers_table.html:105 #: templates/ledger/journal_entry/includes/card_journal_entry.html:38 -#: templates/ledger/journal_entry/journal_entry_txs.html:60 +#: templates/ledger/journal_entry/journal_entry_txs.html:63 #: templates/ledger/ledger/ledger_list.html:88 msgid "Lock" msgstr "قفل" -#: dev_venv/lib/python3.13/site-packages/django_ledger/templates/django_ledger/account/tags/accounts_table.html:117 +#: dev_venv/lib/python3.13/site-packages/django_ledger/templates/django_ledger/account/tags/accounts_table.html:113 #: dev_venv/lib/python3.13/site-packages/django_ledger/templates/django_ledger/journal_entry/je_detail.html:29 #: dev_venv/lib/python3.13/site-packages/django_ledger/templates/django_ledger/journal_entry/tags/je_table.html:80 msgid "Unlock" @@ -6717,7 +6760,7 @@ msgstr "إنشاء حساب بنكي" #: dev_venv/lib/python3.13/site-packages/django_ledger/templates/django_ledger/unit/unit_update.html:24 #: dev_venv/lib/python3.13/site-packages/django_ledger/templates/django_ledger/uom/uom_create.html:27 #: dev_venv/lib/python3.13/site-packages/django_ledger/templates/django_ledger/uom/uom_update.html:27 -#: templates/chart_of_accounts/coa_update.html:38 +#: templates/chart_of_accounts/coa_update.html:41 #: templates/purchase_orders/po_form.html:19 #: templates/two_factor/_wizard_actions.html:9 #: templates/two_factor/_wizard_actions.html:11 @@ -6743,7 +6786,7 @@ msgstr "إلغاء التنشيط" #: dev_venv/lib/python3.13/site-packages/django_ledger/templates/django_ledger/bills/bill_create.html:11 #: dev_venv/lib/python3.13/site-packages/django_ledger/templates/django_ledger/purchase_order/includes/po_item_formset.html:27 #: dev_venv/lib/python3.13/site-packages/django_ledger/views/bill.py:52 -#: inventory/views.py:7872 templates/bill/bill_create.html:7 +#: inventory/views.py:7910 templates/bill/bill_create.html:7 #: templates/bill/bill_create.html:15 #: templates/ledger/bills/bill_form-copy.html:5 #: templates/ledger/bills/bill_form-copy.html:9 @@ -6780,9 +6823,9 @@ msgstr "فاتورة لـ" #: dev_venv/lib/python3.13/site-packages/django_ledger/templates/django_ledger/vendor/vendor_create.html:24 #: dev_venv/lib/python3.13/site-packages/django_ledger/templates/django_ledger/vendor/vendor_update.html:24 #: templates/errors/400.html:44 -#: templates/ledger/journal_entry/journal_entry_delete.html:17 -#: templates/ledger/ledger/ledger_delete.html:17 -#: templates/purchase_orders/po_delete.html:24 +#: templates/ledger/journal_entry/journal_entry_delete.html:27 +#: templates/ledger/ledger/ledger_delete.html:24 +#: templates/purchase_orders/po_delete.html:27 msgid "Go Back" msgstr "العودة" @@ -6796,7 +6839,7 @@ msgstr "الفواتير" #: dev_venv/lib/python3.13/site-packages/django_ledger/templates/django_ledger/bills/bill_detail.html:63 #: templates/bill/bill_detail.html:60 templates/bill/includes/card_bill.html:27 -#: templates/ledger/ledger/ledger_detail.html:45 +#: templates/ledger/ledger/ledger_detail.html:48 msgid "Accrued" msgstr "متراكم" @@ -6818,15 +6861,15 @@ msgstr "ما زلت مديناً" #: dev_venv/lib/python3.13/site-packages/django_ledger/templates/django_ledger/purchase_order/po_update.html:50 #: dev_venv/lib/python3.13/site-packages/django_ledger/templates/django_ledger/purchase_order/tags/po_item_table.html:8 #: dev_venv/lib/python3.13/site-packages/django_ledger/templates/django_ledger/service/tags/services_table.html:10 -#: inventory/forms.py:980 inventory/models.py:584 +#: inventory/forms.py:980 inventory/models.py:588 #: templates/bill/bill_detail.html:88 #: templates/bill/tags/bill_item_formset.html:33 #: templates/inventory/tags/inventory_table.html:7 #: templates/inventory/transfer_preview.html:289 #: templates/ledger/bills/bill_detail.html:277 -#: templates/ledger/ledger/ledger_detail.html:69 +#: templates/ledger/ledger/ledger_detail.html:72 #: templates/purchase_orders/includes/po_item_formset.html:21 -#: templates/purchase_orders/po_update.html:43 +#: templates/purchase_orders/po_update.html:46 #: templates/purchase_orders/tags/po_item_table.html:7 #: templates/sales/orders/purchase_order.html:61 #: templates/sales/tags/invoice_item_formset.html:17 @@ -6843,9 +6886,9 @@ msgstr "العنصر" #: dev_venv/lib/python3.13/site-packages/django_ledger/templates/django_ledger/purchase_order/tags/po_item_table.html:9 #: templates/bill/bill_detail.html:90 #: templates/bill/tags/bill_item_formset.html:37 -#: templates/ledger/ledger/ledger_detail.html:70 +#: templates/ledger/ledger/ledger_detail.html:73 #: templates/purchase_orders/includes/po_item_formset.html:35 -#: templates/purchase_orders/po_upload_cars.html:33 +#: templates/purchase_orders/po_upload_cars.html:36 #: templates/purchase_orders/tags/po_item_table.html:8 #: templates/sales/tags/invoice_item_formset.html:19 msgid "Unit Cost" @@ -6871,7 +6914,7 @@ msgstr "عرض أمر الشراء" #: dev_venv/lib/python3.13/site-packages/django_ledger/templates/django_ledger/ledger/tags/ledgers_table.html:49 #: dev_venv/lib/python3.13/site-packages/django_ledger/templates/django_ledger/unit/unit_detail.html:25 #: dev_venv/lib/python3.13/site-packages/django_ledger/views/financial_statement.py:59 -#: templates/header.html:390 templates/ledger/ledger/ledger_detail.html:99 +#: templates/header.html:385 templates/ledger/ledger/ledger_detail.html:102 #: templates/ledger/reports/balance_sheet.html:6 #: templates/ledger/reports/balance_sheet.html:35 msgid "Balance Sheet" @@ -6884,7 +6927,7 @@ msgstr "الميزانية العمومية" #: dev_venv/lib/python3.13/site-packages/django_ledger/templates/django_ledger/invoice/invoice_update.html:70 #: dev_venv/lib/python3.13/site-packages/django_ledger/templates/django_ledger/ledger/tags/ledgers_table.html:52 #: dev_venv/lib/python3.13/site-packages/django_ledger/templates/django_ledger/unit/unit_detail.html:27 -#: templates/header.html:382 templates/ledger/ledger/ledger_detail.html:100 +#: templates/header.html:377 templates/ledger/ledger/ledger_detail.html:103 #: templates/ledger/reports/income_statement.html:6 #: templates/ledger/reports/income_statement.html:31 msgid "Income Statement" @@ -6895,7 +6938,7 @@ msgstr "بيان الدخل" #: dev_venv/lib/python3.13/site-packages/django_ledger/templates/django_ledger/invoice/invoice_detail.html:135 #: dev_venv/lib/python3.13/site-packages/django_ledger/templates/django_ledger/ledger/tags/ledgers_table.html:55 #: dev_venv/lib/python3.13/site-packages/django_ledger/templates/django_ledger/unit/unit_detail.html:29 -#: templates/ledger/ledger/ledger_detail.html:101 +#: templates/ledger/ledger/ledger_detail.html:104 #: templates/ledger/reports/cash_flow_statement.html:6 #: templates/ledger/reports/cash_flow_statement.html:32 msgid "Cash Flow Statement" @@ -6903,19 +6946,19 @@ msgstr "بيان التدفقات النقدية" #: dev_venv/lib/python3.13/site-packages/django_ledger/templates/django_ledger/bills/bill_detail.html:155 #: dev_venv/lib/python3.13/site-packages/django_ledger/templates/django_ledger/invoice/invoice_detail.html:141 -#: templates/ledger/ledger/ledger_detail.html:105 +#: templates/ledger/ledger/ledger_detail.html:108 msgid "Balance Sheet PDF" msgstr "الميزانية العمومية PDF" #: dev_venv/lib/python3.13/site-packages/django_ledger/templates/django_ledger/bills/bill_detail.html:158 #: dev_venv/lib/python3.13/site-packages/django_ledger/templates/django_ledger/invoice/invoice_detail.html:144 -#: templates/ledger/ledger/ledger_detail.html:106 +#: templates/ledger/ledger/ledger_detail.html:109 msgid "Income Statement PDF" msgstr "بيان الدخل PDF" #: dev_venv/lib/python3.13/site-packages/django_ledger/templates/django_ledger/bills/bill_detail.html:161 #: dev_venv/lib/python3.13/site-packages/django_ledger/templates/django_ledger/invoice/invoice_detail.html:147 -#: templates/ledger/ledger/ledger_detail.html:107 +#: templates/ledger/ledger/ledger_detail.html:110 msgid "Cash Flow Statement PDF" msgstr "بيان التدفقات النقدية PDF" @@ -6951,11 +6994,11 @@ msgstr "الذهاب إلى الشهر:" #: dev_venv/lib/python3.13/site-packages/django_ledger/templates/django_ledger/ledger/ledger_list.html:113 #: dev_venv/lib/python3.13/site-packages/django_ledger/templates/django_ledger/purchase_order/po_list.html:99 #: dev_venv/lib/python3.13/site-packages/django_ledger/templates/django_ledger/purchase_order/po_list.html:111 -#: templates/dashboards/aging_inventory_list.html:21 -#: templates/dashboards/aging_inventory_list.html:31 -#: templates/dashboards/aging_inventory_list.html:42 -#: templates/dashboards/aging_inventory_list.html:53 -#: templates/dashboards/aging_inventory_list.html:64 +#: templates/dashboards/aging_inventory_list.html:24 +#: templates/dashboards/aging_inventory_list.html:34 +#: templates/dashboards/aging_inventory_list.html:45 +#: templates/dashboards/aging_inventory_list.html:56 +#: templates/dashboards/aging_inventory_list.html:67 #: templates/inventory/car_list_view.html:52 #: templates/inventory/car_list_view.html:162 msgid "All" @@ -7047,7 +7090,7 @@ msgstr "مستحق في" #: templates/ledger/journal_entry/journal_entry_list.html:108 #: templates/sales/invoices/invoice_list.html:71 #: templates/sales/orders/order_list.html:42 -#: templates/support/ticket_list.html:88 templates/users/user_list.html:77 +#: templates/support/ticket_list.html:105 templates/users/user_list.html:77 msgid "View" msgstr "عرض" @@ -7204,20 +7247,23 @@ msgstr "الرقم" #: dev_venv/lib/python3.13/site-packages/django_ledger/templates/django_ledger/purchase_order/includes/card_po.html:15 #: dev_venv/lib/python3.13/site-packages/django_ledger/templates/django_ledger/purchase_order/includes/po_item_formset.html:23 #: dev_venv/lib/python3.13/site-packages/django_ledger/templates/django_ledger/purchase_order/tags/po_item_table.html:12 -#: inventory/forms.py:1517 inventory/models.py:677 inventory/models.py:2113 -#: inventory/models.py:2631 inventory/models.py:3783 inventory/tables.py:74 -#: templates/admin_management/user_management.html:30 +#: inventory/forms.py:1500 inventory/models.py:681 inventory/models.py:2118 +#: inventory/models.py:2334 inventory/models.py:2654 inventory/models.py:3806 +#: inventory/tables.py:74 templates/admin_management/user_management.html:30 #: templates/admin_management/user_management.html:107 #: templates/admin_management/user_management.html:184 #: templates/admin_management/user_management.html:261 #: templates/bill/tags/bill_table.html:8 -#: templates/crm/employee_calendar.html:15 -#: templates/crm/leads/lead_detail.html:58 -#: templates/crm/opportunities/opportunity_detail.html:763 +#: templates/crm/employee_calendar.html:18 +#: templates/crm/leads/lead_detail.html:61 +#: templates/crm/leads/lead_detail.html:600 +#: templates/crm/leads/lead_detail.html:689 +#: templates/crm/notifications_history.html:106 +#: templates/crm/opportunities/opportunity_detail.html:702 #: templates/inventory/car_detail.html:117 -#: templates/inventory/car_detail.html:435 +#: templates/inventory/car_detail.html:437 #: templates/inventory/car_inventory.html:78 -#: templates/inventory/car_list.html:174 +#: templates/inventory/car_list.html:177 #: templates/inventory/cars_list_api.html:19 #: templates/inventory/cars_list_api.html:35 #: templates/ledger/reports/purchase_report.html:118 @@ -7265,56 +7311,57 @@ msgid "Past Due" msgstr "مستحق" #: dev_venv/lib/python3.13/site-packages/django_ledger/templates/django_ledger/chart_of_accounts/coa_create.html:10 -#: dev_venv/lib/python3.13/site-packages/django_ledger/views/chart_of_accounts.py:52 -#: inventory/override.py:1101 templates/chart_of_accounts/coa_create.html:11 +#: dev_venv/lib/python3.13/site-packages/django_ledger/views/chart_of_accounts.py:51 +#: inventory/override.py:1101 templates/chart_of_accounts/coa_create.html:6 +#: templates/chart_of_accounts/coa_create.html:14 msgid "Create Chart of Accounts" msgstr "إنشاء دليل الحسابات" #: dev_venv/lib/python3.13/site-packages/django_ledger/templates/django_ledger/chart_of_accounts/coa_list.html:17 -#: templates/chart_of_accounts/coa_list.html:20 +#: templates/chart_of_accounts/coa_list.html:23 msgid "Show Inactive" msgstr "عرض غير النشطة" #: dev_venv/lib/python3.13/site-packages/django_ledger/templates/django_ledger/chart_of_accounts/coa_list.html:20 -#: templates/chart_of_accounts/coa_list.html:25 +#: templates/chart_of_accounts/coa_list.html:28 msgid "Show Active" msgstr "عرض النشطة" #: dev_venv/lib/python3.13/site-packages/django_ledger/templates/django_ledger/chart_of_accounts/includes/coa_card.html:12 -#: templates/chart_of_accounts/includes/coa_card.html:13 -#: templates/chart_of_accounts/includes/coa_card.html:17 +#: templates/chart_of_accounts/includes/coa_card.html:14 +#: templates/chart_of_accounts/includes/coa_card.html:18 msgid "DEFAULT" msgstr "الافتراضي" #: dev_venv/lib/python3.13/site-packages/django_ledger/templates/django_ledger/chart_of_accounts/includes/coa_card.html:16 -#: templates/chart_of_accounts/includes/coa_card.html:27 +#: templates/chart_of_accounts/includes/coa_card.html:28 msgid "Entity Default" msgstr "الكيان الافتراضي" #: dev_venv/lib/python3.13/site-packages/django_ledger/templates/django_ledger/chart_of_accounts/includes/coa_card.html:31 -#: templates/chart_of_accounts/includes/coa_card.html:49 +#: templates/chart_of_accounts/includes/coa_card.html:50 msgid "Total Accounts" msgstr "إجمالي الحسابات" #: dev_venv/lib/python3.13/site-packages/django_ledger/templates/django_ledger/chart_of_accounts/includes/coa_card.html:32 -#: templates/chart_of_accounts/includes/coa_card.html:53 +#: templates/chart_of_accounts/includes/coa_card.html:54 msgid "Active Accounts" msgstr "الحسابات النشطة" #: dev_venv/lib/python3.13/site-packages/django_ledger/templates/django_ledger/chart_of_accounts/includes/coa_card.html:35 -#: templates/chart_of_accounts/includes/coa_card.html:57 +#: templates/chart_of_accounts/includes/coa_card.html:58 msgid "Locked Accounts" msgstr "الحسابات المقفلة" #: dev_venv/lib/python3.13/site-packages/django_ledger/templates/django_ledger/chart_of_accounts/includes/coa_card.html:38 #: dev_venv/lib/python3.13/site-packages/django_ledger/templates/django_ledger/closing_entry/tags/closing_entry_table.html:12 #: dev_venv/lib/python3.13/site-packages/django_ledger/templates/django_ledger/ledger/tags/ledgers_table.html:17 -#: inventory/models.py:1321 inventory/models.py:1496 inventory/models.py:1737 -#: inventory/models.py:1909 inventory/models.py:2127 inventory/models.py:2435 -#: inventory/models.py:2547 inventory/models.py:2594 inventory/models.py:2637 -#: inventory/models.py:2675 inventory/models.py:2705 -#: templates/chart_of_accounts/includes/coa_card.html:67 -#: templates/crm/leads/lead_detail.html:156 +#: inventory/models.py:1326 inventory/models.py:1501 inventory/models.py:1742 +#: inventory/models.py:1914 inventory/models.py:2132 inventory/models.py:2460 +#: inventory/models.py:2570 inventory/models.py:2617 inventory/models.py:2660 +#: inventory/models.py:2698 inventory/models.py:2728 +#: templates/chart_of_accounts/includes/coa_card.html:68 +#: templates/crm/leads/lead_detail.html:159 #: templates/sales/estimates/estimate_list.html:29 #: templates/sales/invoices/invoice_list.html:29 #: templates/sales/journals/journal_list.html:17 @@ -7323,17 +7370,17 @@ msgid "Created" msgstr "تاريخ الإنشاء" #: dev_venv/lib/python3.13/site-packages/django_ledger/templates/django_ledger/chart_of_accounts/includes/coa_card.html:41 -#: inventory/models.py:1322 inventory/models.py:1497 inventory/models.py:1738 -#: inventory/models.py:1910 inventory/models.py:2129 inventory/models.py:2436 -#: inventory/models.py:2548 inventory/models.py:2595 inventory/models.py:2638 -#: inventory/models.py:2676 -#: templates/chart_of_accounts/includes/coa_card.html:74 +#: inventory/models.py:1327 inventory/models.py:1502 inventory/models.py:1743 +#: inventory/models.py:1915 inventory/models.py:2134 inventory/models.py:2461 +#: inventory/models.py:2571 inventory/models.py:2618 inventory/models.py:2661 +#: inventory/models.py:2699 +#: templates/chart_of_accounts/includes/coa_card.html:75 msgid "Updated" msgstr "تم التحديث" #: dev_venv/lib/python3.13/site-packages/django_ledger/templates/django_ledger/chart_of_accounts/includes/coa_card.html:41 #: templates/bill/includes/card_bill.html:23 -#: templates/chart_of_accounts/includes/coa_card.html:75 +#: templates/chart_of_accounts/includes/coa_card.html:76 #: templates/dealers/dealer_detail.html:65 #: templates/ledger/journal_entry/includes/card_invoice.html:16 #: templates/staff/staff_detail.html:45 @@ -7341,23 +7388,22 @@ msgid "ago" msgstr "منذ" #: dev_venv/lib/python3.13/site-packages/django_ledger/templates/django_ledger/chart_of_accounts/includes/coa_card.html:58 -#: templates/chart_of_accounts/includes/coa_card.html:92 -#: templates/ledger/coa_accounts/account_form.html:21 +#: templates/chart_of_accounts/includes/coa_card.html:93 msgid "Add Account" msgstr "إضافة حساب" #: dev_venv/lib/python3.13/site-packages/django_ledger/templates/django_ledger/chart_of_accounts/includes/coa_card.html:65 -#: templates/chart_of_accounts/includes/coa_card.html:97 +#: templates/chart_of_accounts/includes/coa_card.html:98 msgid "Mark as Default" msgstr "وضع كافتراضي" #: dev_venv/lib/python3.13/site-packages/django_ledger/templates/django_ledger/chart_of_accounts/includes/coa_card.html:71 -#: templates/chart_of_accounts/includes/coa_card.html:103 +#: templates/chart_of_accounts/includes/coa_card.html:104 msgid "Mark as Inactive" msgstr "وضع كغير نشط" #: dev_venv/lib/python3.13/site-packages/django_ledger/templates/django_ledger/chart_of_accounts/includes/coa_card.html:76 -#: templates/chart_of_accounts/includes/coa_card.html:108 +#: templates/chart_of_accounts/includes/coa_card.html:109 msgid "Mark as Active" msgstr "وضع كنشط" @@ -7411,7 +7457,7 @@ msgstr "اذهب إلى" #: dev_venv/lib/python3.13/site-packages/django_ledger/templates/django_ledger/journal_entry/tags/je_table.html:67 #: dev_venv/lib/python3.13/site-packages/django_ledger/templates/django_ledger/ledger/tags/ledgers_table.html:113 #: templates/ledger/journal_entry/includes/card_journal_entry.html:46 -#: templates/ledger/journal_entry/journal_entry_txs.html:72 +#: templates/ledger/journal_entry/journal_entry_txs.html:75 #: templates/ledger/ledger/ledger_list.html:96 msgid "Post" msgstr "نشر" @@ -7426,7 +7472,7 @@ msgstr "تحديث المعاملات" #: dev_venv/lib/python3.13/site-packages/django_ledger/templates/django_ledger/journal_entry/tags/je_table.html:71 #: dev_venv/lib/python3.13/site-packages/django_ledger/templates/django_ledger/ledger/tags/ledgers_table.html:117 #: templates/ledger/journal_entry/includes/card_journal_entry.html:50 -#: templates/ledger/journal_entry/journal_entry_txs.html:78 +#: templates/ledger/journal_entry/journal_entry_txs.html:81 #: templates/ledger/ledger/ledger_list.html:100 msgid "UnPost" msgstr "إلغاء النشر" @@ -7445,7 +7491,7 @@ msgid "Txs Count" msgstr "عدد المعاملات" #: dev_venv/lib/python3.13/site-packages/django_ledger/templates/django_ledger/closing_entry/tags/closing_entry_txs_table.html:11 -#: templates/ledger/journal_entry/journal_entry_txs.html:27 +#: templates/ledger/journal_entry/journal_entry_txs.html:30 msgid "TX Type" msgstr "نوع المعاملة" @@ -7539,12 +7585,12 @@ msgstr "معلومات العميل" #: dev_venv/lib/python3.13/site-packages/django_ledger/templates/django_ledger/customer/tags/customer_table.html:10 #: dev_venv/lib/python3.13/site-packages/django_ledger/templates/django_ledger/vendor/tags/vendor_table.html:11 -#: inventory/forms.py:948 inventory/models.py:1347 inventory/models.py:1480 -#: inventory/models.py:1721 inventory/models.py:1893 inventory/models.py:2036 -#: inventory/models.py:2059 inventory/models.py:2754 inventory/models.py:3874 -#: templates/crm/leads/lead_detail.html:200 -#: templates/customers/customer_list.html:82 -#: templates/customers/view_customer.html:78 +#: inventory/forms.py:948 inventory/models.py:1352 inventory/models.py:1485 +#: inventory/models.py:1726 inventory/models.py:1898 inventory/models.py:2041 +#: inventory/models.py:2064 inventory/models.py:2777 inventory/models.py:3897 +#: templates/crm/leads/lead_detail.html:203 +#: templates/customers/customer_list.html:71 +#: templates/customers/view_customer.html:79 #: templates/dealers/dealer_detail.html:262 #: templates/organizations/organization_detail.html:44 #: templates/organizations/organization_list.html:83 @@ -7554,8 +7600,14 @@ msgstr "معلومات العميل" msgid "Address" msgstr "العنوان" -#: dev_venv/lib/python3.13/site-packages/django_ledger/templates/django_ledger/customer/tags/customer_table.html:12 -#: dev_venv/lib/python3.13/site-packages/django_ledger/templates/django_ledger/vendor/tags/vendor_table.html:13 +#: dev_venv/lib/python3.13/site-packages/django_ledger/templates/django_ledger/customer/tags/customer_table.html:11 +#, fuzzy +#| msgid "Customer Phone" +msgid "Customer Code" +msgstr "هاتف العميل" + +#: dev_venv/lib/python3.13/site-packages/django_ledger/templates/django_ledger/customer/tags/customer_table.html:13 +#: dev_venv/lib/python3.13/site-packages/django_ledger/templates/django_ledger/vendor/tags/vendor_table.html:14 msgid "Hidden" msgstr "مخفي" @@ -7589,7 +7641,7 @@ msgstr "قائمة مهام الاستيراد" msgid "Manage" msgstr "إدارة" -#: dev_venv/lib/python3.13/site-packages/django_ledger/templates/django_ledger/data_import/tags/data_import_job_txs_imported.html:32 +#: dev_venv/lib/python3.13/site-packages/django_ledger/templates/django_ledger/data_import/tags/data_import_job_txs_imported.html:33 msgid "View JE" msgstr "عرض إدخال الدفتر" @@ -7651,6 +7703,7 @@ msgid "Estimate Items" msgstr "عناصر التقدير" #: dev_venv/lib/python3.13/site-packages/django_ledger/templates/django_ledger/estimate/estimate_detail.html:69 +#: templates/purchase_orders/po_list.html:4 #: templates/purchase_orders/po_list.html:15 msgid "Purchase Orders" msgstr "أوامر الشراء" @@ -7676,7 +7729,6 @@ msgid "Save Estimate" msgstr "حفظ التقدير" #: dev_venv/lib/python3.13/site-packages/django_ledger/templates/django_ledger/estimate/includes/card_estimate.html:14 -#: templates/crm/opportunities/opportunity_detail.html:324 msgid "Estimated Revenue" msgstr "الإيرادات المقدرة" @@ -7723,7 +7775,7 @@ msgstr "تقدم الاستلام" #: dev_venv/lib/python3.13/site-packages/django_ledger/templates/django_ledger/estimate/includes/card_estimate.html:80 #: dev_venv/lib/python3.13/site-packages/django_ledger/templates/django_ledger/invoice/includes/card_invoice.html:161 -#: templates/inventory/car_detail.html:460 +#: templates/inventory/car_detail.html:462 #: templates/inventory/transfer_details.html:132 #: templates/ledger/journal_entry/includes/card_invoice.html:150 msgid "Approve" @@ -7742,8 +7794,8 @@ msgid "Total Revenue Estimate" msgstr "الإيرادات الإجمالية المقدرة" #: dev_venv/lib/python3.13/site-packages/django_ledger/templates/django_ledger/estimate/includes/estimate_table.html:11 -#: inventory/models.py:1697 inventory/models.py:2578 -#: templates/crm/opportunities/opportunity_detail.html:576 +#: inventory/models.py:1702 inventory/models.py:2601 +#: templates/crm/opportunities/opportunity_detail.html:515 #: templates/recalls/recall_list.html:16 msgid "Title" msgstr "العنوان" @@ -7988,7 +8040,7 @@ msgid "Revenue" msgstr "الإيرادات" #: dev_venv/lib/python3.13/site-packages/django_ledger/templates/django_ledger/includes/widget_ic.html:8 -#: templates/header.html:312 templates/items/expenses/expenses_list.html:4 +#: templates/header.html:307 templates/items/expenses/expenses_list.html:4 #: templates/items/expenses/expenses_list.html:12 #: templates/ledger/coa_accounts/account_list.html:84 #: templates/ledger/reports/dashboard.html:62 @@ -8052,7 +8104,8 @@ msgstr "العودة إلى التقدير" #: dev_venv/lib/python3.13/site-packages/django_ledger/templates/django_ledger/invoice/invoice_create.html:24 #: dev_venv/lib/python3.13/site-packages/django_ledger/views/invoice.py:68 -#: inventory/models.py:1661 templates/sales/estimates/estimate_detail.html:147 +#: inventory/models.py:1666 templates/sales/estimates/estimate_detail.html:147 +#: templates/sales/invoices/invoice_create.html:6 #: templates/sales/orders/order_details.html:368 msgid "Create Invoice" msgstr "إنشاء فاتورة" @@ -8060,17 +8113,17 @@ msgstr "إنشاء فاتورة" #: dev_venv/lib/python3.13/site-packages/django_ledger/templates/django_ledger/invoice/invoice_detail.html:19 #: dev_venv/lib/python3.13/site-packages/django_ledger/templates/django_ledger/invoice/invoice_update.html:24 #: dev_venv/lib/python3.13/site-packages/django_ledger/views/invoice.py:45 -#: templates/ledger/ledger/ledger_detail.html:14 +#: templates/ledger/ledger/ledger_detail.html:17 msgid "Invoice List" msgstr "قائمة الفواتير" #: dev_venv/lib/python3.13/site-packages/django_ledger/templates/django_ledger/invoice/invoice_detail.html:41 -#: templates/ledger/ledger/ledger_detail.html:32 +#: templates/ledger/ledger/ledger_detail.html:35 msgid "Accounts Receivable" msgstr "الحسابات المدينة" #: dev_venv/lib/python3.13/site-packages/django_ledger/templates/django_ledger/invoice/invoice_detail.html:157 -#: templates/ledger/ledger/ledger_detail.html:117 +#: templates/ledger/ledger/ledger_detail.html:120 msgid "Invoice Transactions" msgstr "معاملات الفاتورة" @@ -8101,7 +8154,7 @@ msgid "Invoice Configuration" msgstr "تكوين الفاتورة" #: dev_venv/lib/python3.13/site-packages/django_ledger/templates/django_ledger/invoice/tags/invoice_item_formset.html:21 -#: inventory/models.py:552 templates/inventory/car_inventory.html:132 +#: inventory/models.py:556 templates/inventory/car_inventory.html:132 #: templates/inventory/car_list_view.html:56 #: templates/inventory/car_list_view.html:163 #: templates/inventory/car_list_view.html:227 @@ -8113,6 +8166,7 @@ msgstr "متاح" #: dev_venv/lib/python3.13/site-packages/django_ledger/templates/django_ledger/journal_entry/includes/card_journal_entry.html:6 #: dev_venv/lib/python3.13/site-packages/django_ledger/views/journal_entry.py:153 #: templates/ledger/journal_entry/includes/card_journal_entry.html:5 +#: templates/ledger/journal_entry/journal_entry_transactions.html:4 msgid "Journal Entry Detail" msgstr "تفاصيل إدخال اليومية" @@ -8120,7 +8174,7 @@ msgstr "تفاصيل إدخال اليومية" #: dev_venv/lib/python3.13/site-packages/django_ledger/templates/django_ledger/journal_entry/je_detail_txs.html:70 #: dev_venv/lib/python3.13/site-packages/django_ledger/templates/django_ledger/ledger/tags/ledgers_table.html:109 #: templates/ledger/journal_entry/includes/card_journal_entry.html:42 -#: templates/ledger/journal_entry/journal_entry_txs.html:66 +#: templates/ledger/journal_entry/journal_entry_txs.html:69 #: templates/ledger/ledger/ledger_list.html:92 msgid "UnLock" msgstr "إلغاء القفل" @@ -8145,7 +8199,7 @@ msgid "Ledger List" msgstr "قائمة دفاتر الأستاذ" #: dev_venv/lib/python3.13/site-packages/django_ledger/templates/django_ledger/journal_entry/je_detail_txs.html:59 -#: templates/ledger/journal_entry/journal_entry_txs.html:55 +#: templates/ledger/journal_entry/journal_entry_txs.html:58 #: templates/registration/signup.html:82 msgid "Done" msgstr "تم" @@ -8185,7 +8239,7 @@ msgstr "العودة إلى لوحة القيادة" #: dev_venv/lib/python3.13/site-packages/django_ledger/templates/django_ledger/ledger/tags/ledgers_table.html:11 #: dev_venv/lib/python3.13/site-packages/django_ledger/templates/django_ledger/ledger/tags/ledgers_table.html:42 -#: templates/header.html:361 +#: templates/header.html:356 msgid "Reports" msgstr "التقارير" @@ -8231,7 +8285,7 @@ msgstr "رمز المنتج العالمي (UPC)" #: dev_venv/lib/python3.13/site-packages/django_ledger/templates/django_ledger/purchase_order/includes/card_po.html:19 #: dev_venv/lib/python3.13/site-packages/django_ledger/templates/django_ledger/purchase_order/po_update.html:42 -#: templates/purchase_orders/po_update.html:36 +#: templates/purchase_orders/po_update.html:39 msgid "Contract" msgstr "العقد" @@ -8292,22 +8346,22 @@ msgid "Latest Purchase Orders" msgstr "أحدث أوامر الشراء" #: dev_venv/lib/python3.13/site-packages/django_ledger/templates/django_ledger/purchase_order/po_update.html:22 -#: templates/purchase_orders/po_update.html:23 +#: templates/purchase_orders/po_update.html:26 msgid "Save PO" msgstr "حفظ أمر الشراء" #: dev_venv/lib/python3.13/site-packages/django_ledger/templates/django_ledger/purchase_order/po_update.html:25 -#: templates/purchase_orders/po_update.html:25 +#: templates/purchase_orders/po_update.html:28 msgid "Back to PO Detail" msgstr "العودة إلى تفاصيل أمر الشراء" #: dev_venv/lib/python3.13/site-packages/django_ledger/templates/django_ledger/purchase_order/po_update.html:52 -#: templates/purchase_orders/po_update.html:45 +#: templates/purchase_orders/po_update.html:48 msgid "Avg Unit Price" msgstr "متوسط سعر الوحدة" #: dev_venv/lib/python3.13/site-packages/django_ledger/templates/django_ledger/purchase_order/po_update.html:53 -#: templates/purchase_orders/po_update.html:46 +#: templates/purchase_orders/po_update.html:49 msgid "Total Contracted Cost" msgstr "إجمالي التكلفة المتعاقد عليها" @@ -8332,7 +8386,7 @@ msgstr "بادئة مستند إدخال اليومية" #: dev_venv/lib/python3.13/site-packages/django_ledger/templates/django_ledger/unit/unit_detail.html:23 #: dev_venv/lib/python3.13/site-packages/django_ledger/views/entity.py:210 -#: inventory/views.py:8772 +#: inventory/views.py:8810 msgid "Dashboard" msgstr "لوحة القيادة" @@ -8357,10 +8411,6 @@ msgstr "قائمة وحدات القياس" msgid "Vendor Info" msgstr "معلومات المورد" -#: dev_venv/lib/python3.13/site-packages/django_ledger/templates/django_ledger/vendor/tags/vendor_table.html:9 -msgid "Vendor Number" -msgstr "رقم المورد" - #: dev_venv/lib/python3.13/site-packages/django_ledger/templates/django_ledger/vendor/vendor_create.html:10 #: dev_venv/lib/python3.13/site-packages/django_ledger/templates/django_ledger/vendor/vendor_create.html:22 msgid "Create Vendor" @@ -8380,17 +8430,18 @@ msgstr "تحديث المورد" msgid "Entity Accounts" msgstr "حسابات الكيان" -#: dev_venv/lib/python3.13/site-packages/django_ledger/views/account.py:91 +#: dev_venv/lib/python3.13/site-packages/django_ledger/views/account.py:100 msgid "WARNING: The chart of accounts list is inactive." msgstr "تحذير: قائمة دليل الحسابات غير نشطة." -#: dev_venv/lib/python3.13/site-packages/django_ledger/views/account.py:144 -#: templates/ledger/coa_accounts/account_form.html:7 +#: dev_venv/lib/python3.13/site-packages/django_ledger/views/account.py:153 +#: templates/ledger/coa_accounts/account_form.html:6 +#: templates/ledger/coa_accounts/account_form.html:18 msgid "Update Account" msgstr "تحديث الحساب" #: dev_venv/lib/python3.13/site-packages/django_ledger/views/bank_account.py:33 -#: templates/header.html:282 +#: templates/header.html:277 #: templates/ledger/bank_accounts/bank_account_list.html:4 #: templates/ledger/bank_accounts/bank_account_list.html:11 msgid "Bank Accounts" @@ -8402,13 +8453,13 @@ msgstr "الحسابات المصرفية" msgid "Update Bank Account" msgstr "تحديث الحساب المصرفي" -#: dev_venv/lib/python3.13/site-packages/django_ledger/views/chart_of_accounts.py:53 +#: dev_venv/lib/python3.13/site-packages/django_ledger/views/chart_of_accounts.py:52 #: inventory/override.py:1102 msgid "Create Chart of Account" msgstr "إنشاء دليل الحسابات" -#: dev_venv/lib/python3.13/site-packages/django_ledger/views/chart_of_accounts.py:119 -#: inventory/override.py:1184 +#: dev_venv/lib/python3.13/site-packages/django_ledger/views/chart_of_accounts.py:118 +#: inventory/override.py:1183 msgid "Successfully updated {} Default Chart of Account to " msgstr "تم تحديث دليل الحسابات الافتراضي {} بنجاح إلى" @@ -8526,7 +8577,7 @@ msgid "Update Product" msgstr "تحديث المنتج" #: dev_venv/lib/python3.13/site-packages/django_ledger/views/item.py:297 -#: templates/header.html:302 templates/items/service/service_list.html:4 +#: templates/header.html:297 templates/items/service/service_list.html:4 #: templates/items/service/service_list.html:11 msgid "Services" msgstr "الخدمات" @@ -8680,17 +8731,16 @@ msgstr "الإدخال مطلوب." msgid "An error occurred while processing your request." msgstr "حدث خطأ أثناء معالجة طلبك." -#: inventory/forms.py:143 inventory/models.py:3114 -#: templates/users/user_group_form.html:5 +#: inventory/forms.py:143 inventory/models.py:3137 msgid "Group" msgstr "مجموعة" -#: inventory/forms.py:526 inventory/models.py:1243 +#: inventory/forms.py:526 inventory/models.py:1248 #: templates/inventory/car_detail.html:160 msgid "Custom Date" msgstr "تاريخ البطاقة الجمركية" -#: inventory/forms.py:578 inventory/models.py:2747 +#: inventory/forms.py:578 inventory/models.py:2770 #: templates/vendors/view_vendor.html:44 msgid "Contact Person" msgstr "الشخص المسؤول" @@ -8699,8 +8749,8 @@ msgstr "الشخص المسؤول" msgid "Both exterior and interior colors must be selected." msgstr "يجب اختيار اللونين الخارجي والداخلي." -#: inventory/forms.py:743 inventory/forms.py:1910 inventory/models.py:2034 -#: inventory/models.py:2753 templates/account/email_change.html:5 +#: inventory/forms.py:743 inventory/forms.py:1893 inventory/models.py:2039 +#: inventory/models.py:2776 templates/account/email_change.html:5 #: templates/account/email_change.html:9 templates/pricing_page.html:163 #: templates/staff/staff_detail.html:63 msgid "Email Address" @@ -8737,7 +8787,7 @@ msgstr "يوجد بالفعل حساب بهذا البريد الإلكترون msgid "Passwords do not match." msgstr "كلمات المرور غير متطابقة." -#: inventory/forms.py:851 inventory/models.py:1340 inventory/models.py:2746 +#: inventory/forms.py:851 inventory/models.py:1345 inventory/models.py:2769 msgid "English Name" msgstr "الاسم بالإنجليزية" @@ -8745,10 +8795,10 @@ msgstr "الاسم بالإنجليزية" msgid "Please enter an English Name." msgstr "يرجى إدخال اسم باللغة الإنجليزية." -#: inventory/forms.py:861 inventory/forms.py:865 inventory/models.py:567 -#: inventory/models.py:1178 inventory/models.py:1195 inventory/models.py:1339 -#: inventory/models.py:1470 inventory/models.py:1881 inventory/models.py:2025 -#: inventory/models.py:2745 inventory/models.py:3865 +#: inventory/forms.py:861 inventory/forms.py:865 inventory/models.py:571 +#: inventory/models.py:1183 inventory/models.py:1200 inventory/models.py:1344 +#: inventory/models.py:1475 inventory/models.py:1886 inventory/models.py:2030 +#: inventory/models.py:2768 inventory/models.py:3888 #: templates/admin_management/user_management.html:101 #: templates/admin_management/user_management.html:178 #: templates/admin_management/user_management.html:255 @@ -8760,14 +8810,14 @@ msgstr "الاسم بالعربية" msgid "Please enter an Arabic name." msgstr "يرجى إدخال اسم باللغة العربية." -#: inventory/forms.py:913 inventory/models.py:2391 +#: inventory/forms.py:913 inventory/models.py:2422 #: templates/organizations/organization_detail.html:23 #: templates/organizations/organization_list.html:49 msgid "CRN" msgstr "رقم السجل التجاري" -#: inventory/forms.py:917 inventory/models.py:1332 inventory/models.py:1883 -#: inventory/models.py:2733 inventory/models.py:3872 +#: inventory/forms.py:917 inventory/models.py:1337 inventory/models.py:1888 +#: inventory/models.py:2756 inventory/models.py:3895 msgid "Commercial Registration Number" msgstr "رقم السجل التجاري" @@ -8775,14 +8825,14 @@ msgstr "رقم السجل التجاري" msgid "Commercial Registration Number must be 10 characters" msgstr "رقم السجل التجاري يجب أن يتكون من 10 أرقام" -#: inventory/forms.py:931 inventory/models.py:2392 +#: inventory/forms.py:931 inventory/models.py:2423 #: templates/organizations/organization_detail.html:30 #: templates/organizations/organization_list.html:61 msgid "VRN" msgstr "الرقم الضريبي" -#: inventory/forms.py:935 inventory/models.py:1337 inventory/models.py:1885 -#: inventory/models.py:2736 +#: inventory/forms.py:935 inventory/models.py:1342 inventory/models.py:1890 +#: inventory/models.py:2759 msgid "VAT Registration Number" msgstr "رقم التسجيل في ضريبة القيمة المضافة" @@ -8790,25 +8840,25 @@ msgstr "رقم التسجيل في ضريبة القيمة المضافة" msgid "VAT Registration Number must be 15 characters." msgstr "يجب أن يكون رقم التسجيل الضريبي مكونًا من 15 حرفًا." -#: inventory/forms.py:1019 inventory/models.py:2882 +#: inventory/forms.py:1019 inventory/models.py:2905 msgid "cash" msgstr "نقداً" -#: inventory/forms.py:1020 inventory/models.py:2883 +#: inventory/forms.py:1020 inventory/models.py:2906 msgid "credit" msgstr "دائن" -#: inventory/forms.py:1021 inventory/models.py:2884 -#: templates/inventory/car_detail.html:219 +#: inventory/forms.py:1021 inventory/models.py:2907 #: templates/inventory/transfer_car.html:18 +#: templates/inventory/transfer_preview.html:7 msgid "transfer" msgstr "نقل" -#: inventory/forms.py:1022 inventory/models.py:2885 +#: inventory/forms.py:1022 inventory/models.py:2908 msgid "debit" msgstr "مدين" -#: inventory/forms.py:1023 inventory/models.py:2886 +#: inventory/forms.py:1023 inventory/models.py:2909 msgid "SADAD" msgstr "سداد" @@ -8837,9 +8887,9 @@ msgstr "تم دفع الفاتورة بالفعل" msgid "To" msgstr "إلى" -#: inventory/forms.py:1109 inventory/forms.py:2039 inventory/forms.py:2165 -#: inventory/models.py:259 inventory/models.py:646 inventory/models.py:2086 -#: inventory/models.py:3706 inventory/tables.py:58 +#: inventory/forms.py:1109 inventory/forms.py:2022 inventory/forms.py:2156 +#: inventory/models.py:263 inventory/models.py:650 inventory/models.py:2091 +#: inventory/models.py:3729 inventory/tables.py:58 #: templates/inventory/car_list_view.html:136 #: templates/inventory/cars_list_api.html:33 #: templates/ledger/reports/car_sale_report.html:62 @@ -8857,9 +8907,9 @@ msgstr "إلى" msgid "Make" msgstr "الصانع" -#: inventory/forms.py:1126 inventory/forms.py:2044 inventory/forms.py:2171 -#: inventory/models.py:293 inventory/models.py:654 inventory/models.py:2093 -#: inventory/models.py:3709 inventory/tables.py:59 +#: inventory/forms.py:1126 inventory/forms.py:2027 inventory/forms.py:2162 +#: inventory/models.py:297 inventory/models.py:658 inventory/models.py:2098 +#: inventory/models.py:3732 inventory/tables.py:59 #: templates/admin_management/model_logs.html:33 #: templates/inventory/car_list_view.html:150 #: templates/inventory/cars_list_api.html:34 @@ -8884,101 +8934,106 @@ msgid "Send a reminder?" msgstr "يريد تذكيرًا" #: inventory/forms.py:1261 -#: templates/crm/opportunities/opportunity_detail.html:477 +#: templates/crm/opportunities/opportunity_detail.html:416 msgid "Expected Closing Date" msgstr "تاريخ الإغلاق المتوقع" -#: inventory/forms.py:1265 -msgid "Probability (%)" -msgstr "الاحتمالية (%)" +#: inventory/forms.py:1265 inventory/models.py:218 inventory/models.py:739 +#: inventory/models.py:1005 inventory/models.py:1051 inventory/models.py:1245 +#: inventory/models.py:1260 inventory/models.py:1304 inventory/models.py:2420 +#: templates/crm/leads/lead_detail.html:410 +#: templates/crm/leads/lead_list.html:48 +#: templates/inventory/transfer_details.html:90 +msgid "Car" +msgstr "سيارة" -#: inventory/forms.py:1411 +#: inventory/forms.py:1394 #, fuzzy #| msgid "Expected Delivery" msgid "Expected Delivery Date" msgstr "موعد التسليم المتوقع" -#: inventory/forms.py:1533 inventory/models.py:2403 +#: inventory/forms.py:1516 inventory/models.py:2434 msgid "Stage" msgstr "المرحلة" -#: inventory/forms.py:1756 +#: inventory/forms.py:1739 msgid "Select Car Makes" msgstr "اختر ماركات السيارات" -#: inventory/forms.py:1818 +#: inventory/forms.py:1801 msgid "Please enter a valid credit card number" msgstr "يرجى إدخال رقم بطاقة ائتمان صالح" -#: inventory/forms.py:1850 +#: inventory/forms.py:1833 msgid "Please enter a valid month (01-12)" msgstr "يرجى إدخال شهر صالح (01-12)" -#: inventory/forms.py:1859 +#: inventory/forms.py:1842 msgid "This card appears to be expired" msgstr "يبدو أن هذه البطاقة منتهية الصلاحية" -#: inventory/forms.py:1863 +#: inventory/forms.py:1846 msgid "Please enter a valid expiry date in MM/YY format" msgstr "يرجى إدخال تاريخ انتهاء صلاحية صحيح بصيغة MM/YY" -#: inventory/forms.py:1874 +#: inventory/forms.py:1857 msgid "CVV must contain only digits" msgstr "يجب أن يحتوي رمز التحقق (CVV) على أرقام فقط" -#: inventory/forms.py:1876 +#: inventory/forms.py:1859 msgid "CVV must be 3 or 4 digits" msgstr "يجب أن يكون رمز التحقق (CVV) مكونًا من 3 أو 4 أرقام" -#: inventory/forms.py:1887 inventory/forms.py:1891 inventory/models.py:1467 -#: inventory/models.py:1699 inventory/models.py:2050 +#: inventory/forms.py:1870 inventory/forms.py:1874 inventory/models.py:1472 +#: inventory/models.py:1704 inventory/models.py:2055 #: templates/admin_management/user_management.html:21 #: templates/administration/manage_staff_personal_info.html:13 #: templates/pricing_page.html:141 templates/pricing_page.html:149 msgid "First Name" msgstr "الاسم الأول" -#: inventory/forms.py:1899 inventory/forms.py:1903 inventory/models.py:1468 -#: inventory/models.py:1703 inventory/models.py:2051 +#: inventory/forms.py:1882 inventory/forms.py:1886 inventory/models.py:1473 +#: inventory/models.py:1708 inventory/models.py:2056 #: templates/admin_management/user_management.html:24 #: templates/administration/manage_staff_personal_info.html:17 #: templates/pricing_page.html:152 templates/pricing_page.html:160 msgid "Last Name" msgstr "اسم العائلة" -#: inventory/forms.py:1925 templates/pricing_page.html:224 +#: inventory/forms.py:1908 templates/pricing_page.html:224 #: templates/pricing_page.html:231 templates/pricing_page.html:326 msgid "Card Number" msgstr "رقم البطاقة" -#: inventory/forms.py:1937 +#: inventory/forms.py:1920 msgid "Expiration Date" msgstr "تاريخ الانتهاء" -#: inventory/forms.py:1949 +#: inventory/forms.py:1932 msgid "Security Code (CVV)" msgstr "رمز الأمان (CVV)" -#: inventory/forms.py:1962 +#: inventory/forms.py:1945 msgid "Name on Card" msgstr "الاسم على البطاقة" -#: inventory/forms.py:1969 +#: inventory/forms.py:1952 msgid "I agree to the Terms and Conditions" msgstr "أوافق على الشروط وسياسة الخصوصية" -#: inventory/forms.py:1970 +#: inventory/forms.py:1953 msgid "You must accept the terms and conditions" msgstr "يجب أن تقبل الشروط وسياسة الخصوصية." -#: inventory/forms.py:2049 templates/ledger/reports/car_sale_report.html:80 +#: inventory/forms.py:2032 templates/ledger/reports/car_sale_report.html:80 #: templates/ledger/reports/car_sale_report.html:229 #: templates/purchase_orders/partials/po-select.html:9 msgid "Serie" msgstr "السلسلة" -#: inventory/forms.py:2054 inventory/forms.py:2183 inventory/models.py:373 -#: inventory/models.py:671 inventory/models.py:3715 inventory/tables.py:62 +#: inventory/forms.py:2037 inventory/forms.py:2174 inventory/models.py:377 +#: inventory/models.py:675 inventory/models.py:3738 inventory/tables.py:62 #: templates/ledger/reports/car_sale_report.html:230 #: templates/purchase_orders/partials/po-select.html:11 #: templates/recalls/partials/recall_cars_table.html:10 @@ -8986,15 +9041,15 @@ msgstr "السلسلة" msgid "Trim" msgstr "الفئة" -#: inventory/forms.py:2063 inventory/models.py:579 inventory/models.py:631 -#: inventory/models.py:1436 inventory/models.py:3770 +#: inventory/forms.py:2046 inventory/models.py:583 inventory/models.py:635 +#: inventory/models.py:1441 inventory/models.py:3793 #: templates/recalls/partials/recall_cars_table.html:12 #: templates/recalls/recall_detail.html:53 #: templates/sales/saleorder_detail.html:37 msgid "Dealer" msgstr "المعرض" -#: inventory/forms.py:2072 inventory/models.py:656 inventory/tables.py:60 +#: inventory/forms.py:2055 inventory/models.py:660 inventory/tables.py:60 #: templates/inventory/car_form.html:83 #: ⁨templates/inventory/car_form_qabl alfalsafa.html⁩:55 #: templates/inventory/car_inventory.html:67 @@ -9013,39 +9068,45 @@ msgstr "المعرض" msgid "Year" msgstr "السنة" -#: inventory/forms.py:2088 inventory/tables.py:68 +#: inventory/forms.py:2071 inventory/tables.py:68 #: templates/inventory/car_inventory.html:70 msgid "Exterior Color" msgstr "اللون الخارجي" -#: inventory/forms.py:2094 inventory/tables.py:71 +#: inventory/forms.py:2077 inventory/tables.py:71 #: templates/inventory/car_inventory.html:73 msgid "Interior Color" msgstr "اللون الداخلي" -#: inventory/forms.py:2099 inventory/models.py:717 +#: inventory/forms.py:2082 inventory/models.py:721 #: templates/inventory/car_detail.html:129 #: templates/inventory/car_form.html:192 #: ⁨templates/inventory/car_form_qabl alfalsafa.html⁩:168 msgid "Receiving Date" msgstr "تاريخ الاستلام" -#: inventory/forms.py:2107 +#: inventory/forms.py:2090 msgid "File is not a CSV file" msgstr "الملف ليس ملف CSV" -#: inventory/forms.py:2118 +#: inventory/forms.py:2101 #, python-format msgid "CSV is missing required columns: %(missing)s" msgstr "ملف CSV يفتقد الأعمدة المطلوبة: %(missing)s" -#: inventory/forms.py:2123 +#: inventory/forms.py:2106 #, python-format msgid "Error reading CSV file: %(error)s" msgstr "حدث خطأ أثناء قراءة ملف CSV: %(error)s" -#: inventory/forms.py:2177 inventory/models.py:334 inventory/models.py:663 -#: inventory/models.py:3712 inventory/tables.py:61 +#: inventory/forms.py:2131 +#, fuzzy +#| msgid "Probability must be between 0 and 100." +msgid "VAT rate must be a decimal between 0 and 1" +msgstr "يجب أن تكون الاحتمالية بين 0 و 100." + +#: inventory/forms.py:2168 inventory/models.py:338 inventory/models.py:667 +#: inventory/models.py:3735 inventory/tables.py:61 #: templates/inventory/car_form.html:116 #: ⁨templates/inventory/car_form_qabl alfalsafa.html⁩:100 #: templates/recalls/partials/recall_cars_table.html:9 @@ -9054,13 +9115,13 @@ msgstr "حدث خطأ أثناء قراءة ملف CSV: %(error)s" msgid "Series" msgstr "السلسلة" -#: inventory/forms.py:2188 inventory/models.py:3717 +#: inventory/forms.py:2179 inventory/models.py:3740 #, fuzzy #| msgid "From Dealer" msgid "From Year" msgstr "من معرض" -#: inventory/forms.py:2193 inventory/models.py:3718 +#: inventory/forms.py:2184 inventory/models.py:3741 #, fuzzy #| msgid "Year" msgid "To Year" @@ -9089,124 +9150,115 @@ msgstr "" msgid "Populates COA with basic accounts." msgstr "يملأ دليل الحسابات بالحسابات الأساسية." -#: inventory/models.py:67 +#: inventory/models.py:71 msgid "Primary Key" msgstr "المفتاح الأساسي" -#: inventory/models.py:73 inventory/models.py:2448 inventory/models.py:2771 +#: inventory/models.py:77 inventory/models.py:2473 inventory/models.py:2794 msgid "Slug" msgstr "المُعرّف الفريد (Slug)" -#: inventory/models.py:75 +#: inventory/models.py:79 msgid "" "Slug for the object. If not provided, it will be generated automatically." msgstr "المُعرّف الفريد للكائن. إذا لم يتم توفيره، فسيتم إنشاؤه تلقائيًا." -#: inventory/models.py:78 inventory/models.py:1026 inventory/models.py:1277 -#: inventory/models.py:2769 inventory/models.py:3719 inventory/models.py:3791 +#: inventory/models.py:82 inventory/models.py:1031 inventory/models.py:1282 +#: inventory/models.py:2792 inventory/models.py:3742 inventory/models.py:3814 #: templates/purchase_orders/po_list.html:41 msgid "Created At" msgstr "تاريخ الإنشاء" -#: inventory/models.py:79 inventory/models.py:1027 inventory/models.py:1366 -#: inventory/models.py:3792 +#: inventory/models.py:83 inventory/models.py:1032 inventory/models.py:1371 +#: inventory/models.py:3815 msgid "Updated At" msgstr "تم التحديث" -#: inventory/models.py:214 inventory/models.py:735 inventory/models.py:1000 -#: inventory/models.py:1046 inventory/models.py:1240 inventory/models.py:1255 -#: inventory/models.py:1299 inventory/models.py:2389 -#: templates/crm/leads/lead_detail.html:411 -#: templates/crm/leads/lead_list.html:48 -#: templates/inventory/transfer_details.html:90 -msgid "Car" -msgstr "سيارة" - -#: inventory/models.py:215 +#: inventory/models.py:219 msgid "Light Commercial" msgstr "مركبات تجارية خفيفة" -#: inventory/models.py:216 +#: inventory/models.py:220 msgid "Heavy-Duty Tractors" msgstr "جرارات ثقيلة" -#: inventory/models.py:217 +#: inventory/models.py:221 msgid "Trailers" msgstr "مقطورات" -#: inventory/models.py:218 +#: inventory/models.py:222 msgid "Medium Trucks" msgstr "شاحنات متوسطة" -#: inventory/models.py:219 +#: inventory/models.py:223 msgid "Buses" msgstr "حافلات" -#: inventory/models.py:220 +#: inventory/models.py:224 msgid "Motorcycles" msgstr "دراجات نارية" -#: inventory/models.py:221 +#: inventory/models.py:225 msgid "Buggy" msgstr "باجي" -#: inventory/models.py:222 +#: inventory/models.py:226 msgid "Moto ATV" msgstr "موتو ATV" -#: inventory/models.py:223 +#: inventory/models.py:227 msgid "Scooters" msgstr "دراجات سكوتر" -#: inventory/models.py:224 +#: inventory/models.py:228 msgid "Karting" msgstr "كارتينج" -#: inventory/models.py:225 +#: inventory/models.py:229 msgid "ATV" msgstr "مركبات ATV" -#: inventory/models.py:226 +#: inventory/models.py:230 msgid "Snowmobiles" msgstr "دراجات الثلج" -#: inventory/models.py:235 +#: inventory/models.py:239 msgid "logo" msgstr "الشعار" -#: inventory/models.py:447 +#: inventory/models.py:451 msgid "Specification" msgstr "المواصفة" -#: inventory/models.py:467 +#: inventory/models.py:471 msgid "Specification Value" msgstr "قيمة المواصفة" -#: inventory/models.py:506 +#: inventory/models.py:510 msgid "Option" msgstr "الخيار" -#: inventory/models.py:529 +#: inventory/models.py:533 msgid "Option Value" msgstr "قيمة الخيار" -#: inventory/models.py:544 templates/crm/leads/lead_list.html:159 test.txt:46 +#: inventory/models.py:548 templates/crm/leads/lead_list.html:159 test.txt:46 msgid "Pending" msgstr "قيد الانتظار" -#: inventory/models.py:545 +#: inventory/models.py:549 msgid "Accepted" msgstr "تم القبول" -#: inventory/models.py:547 +#: inventory/models.py:551 msgid "Reject" msgstr "رفض" -#: inventory/models.py:548 templates/sales/saleorder_detail.html:81 +#: inventory/models.py:552 templates/sales/saleorder_detail.html:81 msgid "Cancelled" msgstr "ملغى" -#: inventory/models.py:553 templates/inventory/car_inventory.html:134 +#: inventory/models.py:557 templates/inventory/car_inventory.html:134 #: templates/inventory/car_list_view.html:68 #: templates/inventory/car_list_view.html:165 #: templates/inventory/car_list_view.html:231 @@ -9214,16 +9266,16 @@ msgstr "ملغى" msgid "Sold" msgstr "تم البيع" -#: inventory/models.py:554 templates/inventory/car_inventory.html:136 +#: inventory/models.py:558 templates/inventory/car_inventory.html:136 msgid "Hold" msgstr "في الانتظار" -#: inventory/models.py:555 templates/inventory/car_inventory.html:143 +#: inventory/models.py:559 templates/inventory/car_inventory.html:143 #: templates/inventory/cars_list_api.html:24 msgid "Damaged" msgstr "تالف" -#: inventory/models.py:556 templates/inventory/car_inventory.html:141 +#: inventory/models.py:560 templates/inventory/car_inventory.html:141 #: templates/inventory/car_list_view.html:60 #: templates/inventory/car_list_view.html:164 #: templates/inventory/car_list_view.html:229 @@ -9231,8 +9283,8 @@ msgstr "تالف" msgid "Reserved" msgstr "محجوزة" -#: inventory/models.py:557 inventory/models.py:1651 -#: templates/inventory/car_detail.html:445 +#: inventory/models.py:561 inventory/models.py:1656 +#: templates/inventory/car_detail.html:447 #: templates/inventory/car_list_view.html:64 #: templates/inventory/car_list_view.html:166 #: templates/inventory/car_list_view.html:233 @@ -9241,29 +9293,29 @@ msgstr "محجوزة" msgid "Transfer" msgstr "نقل" -#: inventory/models.py:561 inventory/models.py:1618 -#: templates/crm/leads/lead_detail.html:60 +#: inventory/models.py:565 inventory/models.py:1623 +#: templates/crm/leads/lead_detail.html:63 #: templates/crm/leads/lead_list.html:157 #: templates/crm/leads/partials/update_action.html:28 #: templates/inventory/car_inventory.html:90 test.txt:33 msgid "New" msgstr "جديد" -#: inventory/models.py:562 templates/dealers/dealer_detail.html:225 +#: inventory/models.py:566 templates/dealers/dealer_detail.html:225 #: templates/dealers/dealer_detail.html:240 #: templates/inventory/car_inventory.html:92 msgid "Used" msgstr "مستعمل" -#: inventory/models.py:572 +#: inventory/models.py:576 msgid "taxable" msgstr "خاضع للضريبة" -#: inventory/models.py:576 +#: inventory/models.py:580 msgid "Unit of Measurement" msgstr "وحدة القياس" -#: inventory/models.py:614 inventory/models.py:615 +#: inventory/models.py:618 inventory/models.py:619 #: templates/sales/estimates/estimate_detail.html:288 #: templates/sales/estimates/estimate_detail.html:328 #: templates/sales/estimates/sale_order_preview.html:231 @@ -9271,421 +9323,423 @@ msgstr "وحدة القياس" msgid "Additional Services" msgstr "الخدمات الإضافية" -#: inventory/models.py:684 inventory/tables.py:51 +#: inventory/models.py:688 inventory/tables.py:51 #: templates/inventory/car_detail.html:121 #: templates/inventory/car_form.html:170 #: ⁨templates/inventory/car_form_qabl alfalsafa.html⁩:147 -#: templates/inventory/car_list.html:186 +#: templates/inventory/car_list.html:189 #: templates/ledger/reports/car_sale_report.html:232 msgid "Stock Type" msgstr "نوع المخزون" -#: inventory/models.py:693 templates/inventory/car_detail.html:264 +#: inventory/models.py:697 templates/inventory/car_detail.html:266 #: templates/ledger/reports/car_sale_report.html:235 msgid "Cost Price" msgstr "سعر التكلفة" -#: inventory/models.py:699 templates/ledger/reports/car_sale_report.html:238 +#: inventory/models.py:703 templates/ledger/reports/car_sale_report.html:238 msgid "Selling Price" msgstr "سعر البيع" -#: inventory/models.py:705 templates/inventory/car_detail.html:268 +#: inventory/models.py:709 templates/inventory/car_detail.html:270 #: templates/ledger/reports/car_sale_report.html:236 msgid "Marked Price" msgstr "سعر العرض" -#: inventory/models.py:711 templates/ledger/reports/car_sale_report.html:237 +#: inventory/models.py:715 templates/ledger/reports/car_sale_report.html:237 #: templates/sales/estimates/estimate_detail.html:259 #: templates/sales/invoices/invoice_detail.html:343 msgid "Discount Amount" msgstr "مبلغ الخصم" -#: inventory/models.py:715 inventory/models.py:1018 +#: inventory/models.py:719 inventory/models.py:1023 #: templates/inventory/car_detail.html:139 #: templates/inventory/car_form.html:203 #: ⁨templates/inventory/car_form_qabl alfalsafa.html⁩:181 -#: templates/inventory/car_list.html:212 +#: templates/inventory/car_list.html:215 msgid "Remarks" msgstr "ملاحظات" -#: inventory/models.py:716 inventory/tables.py:63 +#: inventory/models.py:720 inventory/tables.py:63 #: templates/inventory/car_detail.html:125 #: templates/inventory/car_form.html:181 #: ⁨templates/inventory/car_form_qabl alfalsafa.html⁩:157 -#: templates/inventory/car_list.html:198 templates/inventory/car_list.html:204 +#: templates/inventory/car_list.html:201 templates/inventory/car_list.html:207 #: templates/ledger/reports/car_sale_report.html:231 #: templates/sales/orders/order_details.html:194 msgid "Mileage" msgstr "عدد الكيلومترات" -#: inventory/models.py:718 templates/ledger/reports/car_sale_report.html:234 +#: inventory/models.py:722 templates/ledger/reports/car_sale_report.html:234 #, fuzzy #| msgid "Void Date" msgid "Sold Date" msgstr "تاريخ الإبطال" -#: inventory/models.py:720 +#: inventory/models.py:724 msgid "Hash" msgstr "رمز" -#: inventory/models.py:736 templates/header.html:57 +#: inventory/models.py:740 templates/header.html:52 #: templates/sales/estimates/estimate_form-copy.html:57 msgid "Cars" msgstr "السيارات" -#: inventory/models.py:1006 +#: inventory/models.py:1011 msgid "From Dealer" msgstr "من معرض" -#: inventory/models.py:1012 +#: inventory/models.py:1017 msgid "To Dealer" msgstr "الى معرض" -#: inventory/models.py:1015 +#: inventory/models.py:1020 msgid "Transfer Date" msgstr "تاريخ النقل" -#: inventory/models.py:1034 +#: inventory/models.py:1039 msgid "Car Transfer Log" msgstr "سجل نقل السيارة" -#: inventory/models.py:1035 +#: inventory/models.py:1040 msgid "Car Transfer Logs" msgstr "سجلات نقل السيارات" -#: inventory/models.py:1052 templates/inventory/car_detail.html:366 +#: inventory/models.py:1057 templates/inventory/car_detail.html:368 msgid "Reserved By" msgstr "محجوز بواسطة" -#: inventory/models.py:1060 +#: inventory/models.py:1065 msgid "Reserved At" msgstr "تاريخ الحجز" -#: inventory/models.py:1061 +#: inventory/models.py:1066 msgid "Reserved Until" msgstr "محجوز حتى" -#: inventory/models.py:1070 templates/inventory/car_detail.html:536 +#: inventory/models.py:1075 templates/inventory/car_detail.html:538 msgid "Car Reservation" msgstr "حجز السيارة" -#: inventory/models.py:1071 +#: inventory/models.py:1076 msgid "Car Reservations" msgstr "حجوزات السيارات" -#: inventory/models.py:1179 inventory/models.py:1196 +#: inventory/models.py:1184 inventory/models.py:1201 msgid "RGB" msgstr "آر جي بي" -#: inventory/models.py:1182 inventory/models.py:1183 +#: inventory/models.py:1187 inventory/models.py:1188 #: templates/csv_upload.html:125 templates/inventory/add_colors.html:15 #: templates/purchase_orders/car_inventory_item_form.html:108 msgid "Exterior Colors" msgstr "الألوان الخارجية" -#: inventory/models.py:1199 inventory/models.py:1200 +#: inventory/models.py:1204 inventory/models.py:1205 #: templates/csv_upload.html:144 templates/inventory/add_colors.html:36 #: templates/purchase_orders/car_inventory_item_form.html:127 msgid "Interior Colors" msgstr "الألوان الداخلية" -#: inventory/models.py:1220 +#: inventory/models.py:1225 msgid "Color" msgstr "اللون" -#: inventory/models.py:1221 +#: inventory/models.py:1226 msgid "Colors" msgstr "الألوان" -#: inventory/models.py:1242 templates/inventory/car_detail.html:156 +#: inventory/models.py:1247 templates/inventory/car_detail.html:156 msgid "Custom Number" msgstr "رقم البطاقة الجمركية" -#: inventory/models.py:1246 templates/inventory/car_detail.html:165 -#: templates/inventory/car_detail.html:494 +#: inventory/models.py:1251 templates/inventory/car_detail.html:165 +#: templates/inventory/car_detail.html:496 msgid "Custom Card" msgstr "البطاقة الجمركية" -#: inventory/models.py:1247 +#: inventory/models.py:1252 msgid "Custom Cards" msgstr "البطاقات الجمركية" -#: inventory/models.py:1261 inventory/models.py:2410 +#: inventory/models.py:1266 inventory/models.py:2441 msgid "Owner" msgstr "المالك" -#: inventory/models.py:1262 +#: inventory/models.py:1267 msgid "Dealer who owns the car." msgstr "التاجر الذي يمتلك السيارة." -#: inventory/models.py:1268 inventory/models.py:1598 +#: inventory/models.py:1273 inventory/models.py:1603 msgid "Showroom" msgstr "صالة العرض" -#: inventory/models.py:1269 +#: inventory/models.py:1274 msgid "Dealer where the car is displayed (can be the owner)." msgstr "التاجر الذي تُعرض السيارة في صالته (يمكن أن يكون المالك)." -#: inventory/models.py:1275 +#: inventory/models.py:1280 msgid "Optional description about the showroom placement." msgstr "وصف اختياري حول وضع السيارة في صالة العرض." -#: inventory/models.py:1278 templates/crm/leads/lead_detail.html:468 +#: inventory/models.py:1283 templates/crm/leads/lead_detail.html:467 #: templates/crm/opportunities/opportunity_detail.html:221 -#: templates/crm/opportunities/opportunity_detail.html:654 +#: templates/crm/opportunities/opportunity_detail.html:593 +#: templates/customers/view_customer.html:124 #: templates/sales/orders/order_details.html:135 msgid "Last Updated" msgstr "آخر تحديث" -#: inventory/models.py:1281 +#: inventory/models.py:1286 msgid "Car Location" msgstr "موقع السيارة" -#: inventory/models.py:1282 +#: inventory/models.py:1287 msgid "Car Locations" msgstr "مواقف السيارات" -#: inventory/models.py:1301 +#: inventory/models.py:1306 msgid "Plate Number" msgstr "رقم اللوحة" -#: inventory/models.py:1302 +#: inventory/models.py:1307 msgid "Text 1" msgstr "النص 1" -#: inventory/models.py:1304 +#: inventory/models.py:1309 msgid "Text 2" msgstr "النص 2" -#: inventory/models.py:1307 +#: inventory/models.py:1312 msgid "Text 3" msgstr "النص 3" -#: inventory/models.py:1309 templates/inventory/car_detail.html:187 +#: inventory/models.py:1314 templates/inventory/car_detail.html:187 msgid "Registration Date" msgstr "تاريخ التسجيل" -#: inventory/models.py:1312 templates/inventory/car_detail.html:181 +#: inventory/models.py:1317 templates/inventory/car_detail.html:181 #: templates/inventory/car_detail.html:192 -#: templates/inventory/car_detail.html:515 +#: templates/inventory/car_detail.html:517 msgid "Registration" msgstr "التسجيل" -#: inventory/models.py:1313 +#: inventory/models.py:1318 msgid "Registrations" msgstr "تسجيل السيارات" -#: inventory/models.py:1353 inventory/models.py:1899 inventory/models.py:2759 +#: inventory/models.py:1358 inventory/models.py:1904 inventory/models.py:2782 msgid "Logo" msgstr "الشعار" -#: inventory/models.py:1365 +#: inventory/models.py:1370 msgid "Joined At" msgstr "انضم في" -#: inventory/models.py:1437 +#: inventory/models.py:1442 msgid "Dealers" msgstr "المعارض" -#: inventory/models.py:1454 +#: inventory/models.py:1459 msgid "Accountant" msgstr "محاسب" -#: inventory/models.py:1455 +#: inventory/models.py:1460 msgid "Sales" msgstr "المبيعات" -#: inventory/models.py:1477 +#: inventory/models.py:1482 msgid "Staff Type" msgstr "نوع الموظف" -#: inventory/models.py:1579 inventory/models.py:1580 +#: inventory/models.py:1584 inventory/models.py:1585 #: templates/admin_management/user_management.html:245 -#: templates/crm/employee_calendar.html:14 +#: templates/crm/employee_calendar.html:17 msgid "Staff" msgstr "الموظفون" -#: inventory/models.py:1596 +#: inventory/models.py:1601 msgid "Referrals" msgstr "إحالات" -#: inventory/models.py:1597 inventory/models.py:1643 +#: inventory/models.py:1602 inventory/models.py:1648 msgid "WhatsApp" msgstr "واتساب" -#: inventory/models.py:1599 +#: inventory/models.py:1604 msgid "TikTok" msgstr "تيك توك" -#: inventory/models.py:1600 +#: inventory/models.py:1605 msgid "Instagram" msgstr "إنستغرام" -#: inventory/models.py:1601 +#: inventory/models.py:1606 msgid "X" msgstr "إكس" -#: inventory/models.py:1602 +#: inventory/models.py:1607 msgid "Facebook" msgstr "فيسبوك" -#: inventory/models.py:1603 +#: inventory/models.py:1608 msgid "Motory" msgstr "موتري" -#: inventory/models.py:1604 +#: inventory/models.py:1609 msgid "Influencers" msgstr "المؤثرون" -#: inventory/models.py:1605 +#: inventory/models.py:1610 msgid "Youtube" msgstr "يوتيوب" -#: inventory/models.py:1606 +#: inventory/models.py:1611 msgid "Campaign" msgstr "حملة" -#: inventory/models.py:1610 +#: inventory/models.py:1615 msgid "Walk In" msgstr "زيارة مباشرة" -#: inventory/models.py:1611 +#: inventory/models.py:1616 msgid "Toll Free" msgstr "رقم مجاني" -#: inventory/models.py:1614 +#: inventory/models.py:1619 msgid "Form" msgstr "نموذج" -#: inventory/models.py:1619 templates/crm/leads/lead_detail.html:62 +#: inventory/models.py:1624 templates/crm/leads/lead_detail.html:65 #: templates/crm/leads/lead_list.html:165 #: templates/crm/leads/partials/update_action.html:29 msgid "Contacted" msgstr "تم الاتصال" -#: inventory/models.py:1620 templates/crm/leads/lead_detail.html:64 +#: inventory/models.py:1625 templates/crm/leads/lead_detail.html:67 #: templates/crm/leads/lead_list.html:163 #: templates/crm/leads/partials/update_action.html:30 msgid "Qualified" msgstr "مؤهل" -#: inventory/models.py:1621 templates/crm/leads/lead_detail.html:66 +#: inventory/models.py:1626 templates/crm/leads/lead_detail.html:69 #: templates/crm/leads/partials/update_action.html:31 msgid "Unqualified" msgstr "غير مؤهل" -#: inventory/models.py:1622 inventory/models.py:1650 -#: templates/crm/leads/lead_detail.html:68 +#: inventory/models.py:1627 inventory/models.py:1655 +#: templates/crm/leads/lead_detail.html:71 #: templates/crm/leads/partials/update_action.html:32 msgid "Converted" msgstr "تم التحويل" -#: inventory/models.py:1626 +#: inventory/models.py:1631 msgid "Mr" msgstr "السيد" -#: inventory/models.py:1627 +#: inventory/models.py:1632 msgid "Mrs" msgstr "السيدة" -#: inventory/models.py:1628 +#: inventory/models.py:1633 msgid "Ms" msgstr "الآنسة" -#: inventory/models.py:1629 +#: inventory/models.py:1634 msgid "Miss" msgstr "الآنسة" -#: inventory/models.py:1630 +#: inventory/models.py:1635 msgid "Dr" msgstr "الدكتور" -#: inventory/models.py:1631 +#: inventory/models.py:1636 msgid "Prof" msgstr "الأستاذ" -#: inventory/models.py:1632 +#: inventory/models.py:1637 msgid "Prince" msgstr "الأمير" -#: inventory/models.py:1633 +#: inventory/models.py:1638 msgid "Princess" msgstr "الأميرة" -#: inventory/models.py:1634 templates/pricing_page.html:189 +#: inventory/models.py:1639 templates/pricing_page.html:189 #: templates/pricing_page.html:196 templates/pricing_page.html:313 msgid "Company" msgstr "الشركة" -#: inventory/models.py:1635 templates/customers/view_customer.html:79 -#: templates/customers/view_customer.html:84 -#: templates/customers/view_customer.html:89 +#: inventory/models.py:1640 templates/customers/view_customer.html:80 +#: templates/customers/view_customer.html:85 +#: templates/customers/view_customer.html:90 msgid "N/A" msgstr "غير متوفر" -#: inventory/models.py:1639 inventory/models.py:2277 +#: inventory/models.py:1644 inventory/models.py:2282 #: templates/components/activity_modal.html:25 +#: templates/crm/leads/lead_detail.html:620 #: templates/crm/leads/partials/update_action.html:40 msgid "Call" msgstr "مكالمة" -#: inventory/models.py:1640 +#: inventory/models.py:1645 msgid "SMS" msgstr "رسالة نصية" -#: inventory/models.py:1642 inventory/models.py:2278 +#: inventory/models.py:1647 inventory/models.py:2283 #: templates/components/activity_modal.html:27 #: templates/crm/leads/partials/update_action.html:41 msgid "Meeting" msgstr "اجتماع" -#: inventory/models.py:1644 +#: inventory/models.py:1649 msgid "Visit" msgstr "زيارة" -#: inventory/models.py:1645 inventory/models.py:1669 +#: inventory/models.py:1650 inventory/models.py:1674 msgid "Negotiation" msgstr "مفاوضات" -#: inventory/models.py:1646 +#: inventory/models.py:1651 msgid "Follow Up" msgstr "متابعة" -#: inventory/models.py:1647 templates/crm/leads/lead_tracking.html:140 +#: inventory/models.py:1652 templates/crm/leads/lead_tracking.html:140 msgid "Won" msgstr "تم الفوز" -#: inventory/models.py:1648 templates/crm/leads/lead_tracking.html:158 +#: inventory/models.py:1653 templates/crm/leads/lead_tracking.html:158 msgid "Lost" msgstr "تم الفقد" -#: inventory/models.py:1649 inventory/models.py:3759 +#: inventory/models.py:1654 inventory/models.py:3782 msgid "Closed" msgstr "مغلقة" -#: inventory/models.py:1652 templates/inventory/car_form.html:34 +#: inventory/models.py:1657 templates/inventory/car_form.html:34 #: templates/sales/estimates/estimate_form-copy.html:23 msgid "Add Car" msgstr "إضافة سيارة" -#: inventory/models.py:1653 +#: inventory/models.py:1658 msgid "Sale Car" msgstr "بيع سيارة" -#: inventory/models.py:1654 templates/inventory/reserve_car.html:5 +#: inventory/models.py:1659 templates/inventory/reserve_car.html:5 #: templates/inventory/reserve_car.html:8 msgid "Reserve Car" msgstr "حجز السيارة" -#: inventory/models.py:1655 templates/inventory/transfer_car.html:4 +#: inventory/models.py:1660 templates/inventory/transfer_car.html:4 msgid "Transfer Car" msgstr "نقل السيارة" -#: inventory/models.py:1656 +#: inventory/models.py:1661 msgid "Remove Car" msgstr "إزالة السيارة" -#: inventory/models.py:1657 +#: inventory/models.py:1662 #: templates/crm/opportunities/opportunity_detail.html:33 #: templates/sales/estimates/estimate_form-copy.html:5 #: templates/sales/estimates/estimate_form-copy.html:49 @@ -9694,489 +9748,550 @@ msgstr "إزالة السيارة" msgid "Create Quotation" msgstr "إنشاء عرض" -#: inventory/models.py:1658 +#: inventory/models.py:1663 msgid "Cancel Quotation" msgstr "إلغاء العرض" -#: inventory/models.py:1659 +#: inventory/models.py:1664 msgid "Create Order" msgstr "إنشاء طلب" -#: inventory/models.py:1660 templates/sales/orders/order_details.html:382 +#: inventory/models.py:1665 templates/sales/orders/order_details.html:382 #: templates/sales/orders/order_details.html:530 msgid "Cancel Order" msgstr "إلغاء الطلب" -#: inventory/models.py:1662 +#: inventory/models.py:1667 msgid "Cancel Invoice" msgstr "إلغاء الفاتورة" -#: inventory/models.py:1666 +#: inventory/models.py:1671 msgid "Qualification" msgstr "التأهيل" -#: inventory/models.py:1667 +#: inventory/models.py:1672 msgid "Test Drive" msgstr "تجربة القيادة" -#: inventory/models.py:1668 templates/sales/estimates/estimate_detail.html:91 +#: inventory/models.py:1673 templates/sales/estimates/estimate_detail.html:91 +#: templates/sales/estimates/estimate_preview.html:7 #: templates/sales/estimates/estimate_send.html:5 #: templates/sales/orders/order_details.html:422 #: templates/sales/sales_list.html:33 msgid "Quotation" msgstr "عرض سعر" -#: inventory/models.py:1671 +#: inventory/models.py:1676 msgid "Closed Won" msgstr "مغلقة - ناجحة" -#: inventory/models.py:1672 +#: inventory/models.py:1677 msgid "Closed Lost" msgstr "مغلقة - خسارة" -#: inventory/models.py:1673 +#: inventory/models.py:1678 msgid "On Hold" msgstr "في الانتظار" -#: inventory/models.py:1677 inventory/models.py:3763 +#: inventory/models.py:1682 inventory/models.py:3786 msgid "Low" msgstr "منخفض" -#: inventory/models.py:1678 inventory/models.py:3764 +#: inventory/models.py:1683 inventory/models.py:3787 msgid "Medium" msgstr "متوسط" -#: inventory/models.py:1679 inventory/models.py:3765 +#: inventory/models.py:1684 inventory/models.py:3788 msgid "High" msgstr "مرتفع" -#: inventory/models.py:1705 +#: inventory/models.py:1710 msgid "Male" msgstr "ذكر" -#: inventory/models.py:1705 +#: inventory/models.py:1710 msgid "Female" msgstr "أنثى" -#: inventory/models.py:1707 +#: inventory/models.py:1712 msgid "Gender" msgstr "الجنس" -#: inventory/models.py:1709 +#: inventory/models.py:1714 msgid "Date of Birth" msgstr "تاريخ الميلاد" -#: inventory/models.py:1712 templates/customers/customer_list.html:71 +#: inventory/models.py:1717 msgid "National ID" msgstr "رقم الهوية الوطنية" -#: inventory/models.py:1765 templates/admin_management/user_management.html:14 +#: inventory/models.py:1770 templates/admin_management/user_management.html:14 #: templates/customers/customer_list.html:5 #: templates/customers/customer_list.html:7 #: templates/customers/customer_list.html:12 msgid "Customers" msgstr "العملاء" -#: inventory/models.py:1931 inventory/models.py:2063 inventory/models.py:2386 +#: inventory/models.py:1936 inventory/models.py:2068 inventory/models.py:2417 #: templates/crm/opportunities/opportunity_detail.html:101 msgid "Organization" msgstr "شركة" -#: inventory/models.py:1932 templates/admin_management/user_management.html:91 -#: templates/header.html:161 templates/organizations/organization_list.html:5 +#: inventory/models.py:1937 templates/admin_management/user_management.html:91 +#: templates/header.html:156 templates/organizations/organization_list.html:5 #: templates/organizations/organization_list.html:8 #: templates/organizations/organization_list.html:15 msgid "Organizations" msgstr "الشركات" -#: inventory/models.py:2027 +#: inventory/models.py:2032 #: templates/representatives/representative_detail.html:11 #: templates/representatives/representative_list.html:25 msgid "ID Number" msgstr "رقم الهوية" -#: inventory/models.py:2041 +#: inventory/models.py:2046 msgid "Representative" msgstr "ممثل شركة" -#: inventory/models.py:2042 +#: inventory/models.py:2047 #: templates/representatives/representative_list.html:4 #: templates/representatives/representative_list.html:8 msgid "Representatives" msgstr "ممثلي الشركات" -#: inventory/models.py:2064 +#: inventory/models.py:2069 msgid "Lead Type" msgstr "نوع العميل المتوقع" -#: inventory/models.py:2097 +#: inventory/models.py:2102 msgid "Source" msgstr "المصدر" -#: inventory/models.py:2100 +#: inventory/models.py:2105 msgid "Channel" msgstr "القناة" -#: inventory/models.py:2108 templates/groups/group_permission_form.html:104 +#: inventory/models.py:2113 templates/groups/group_permission_form.html:104 msgid "Assigned" msgstr "مُعين" -#: inventory/models.py:2118 templates/crm/leads/lead_detail.html:220 +#: inventory/models.py:2123 templates/crm/leads/lead_detail.html:223 #: templates/crm/leads/lead_list.html:78 #: templates/crm/leads/partials/update_action.html:36 msgid "Next Action" msgstr "الإجراء التالي" -#: inventory/models.py:2121 templates/crm/leads/partials/update_action.html:46 +#: inventory/models.py:2126 templates/crm/leads/partials/update_action.html:46 msgid "Next Action Date" msgstr "تاريخ الإجراء التالي" -#: inventory/models.py:2133 +#: inventory/models.py:2138 inventory/models.py:2447 msgid "Lead" msgstr "فرصة" -#: inventory/models.py:2134 templates/crm/leads/lead_list.html:4 +#: inventory/models.py:2139 templates/crm/leads/lead_list.html:4 #: templates/crm/leads/lead_list.html:10 templates/crm/leads/lead_send.html:5 -#: templates/customers/view_customer.html:153 -#: templates/dashboards/sales_dashboard.html:123 test.txt:21 +#: templates/customers/view_customer.html:181 +#: templates/dashboards/sales_dashboard.html:126 test.txt:21 msgid "Leads" msgstr "الفرص" -#: inventory/models.py:2269 +#: inventory/models.py:2274 msgid "Product Demo" msgstr "عرض توضيحي للمنتج" -#: inventory/models.py:2270 +#: inventory/models.py:2275 msgid "Follow-Up Call" msgstr "مكالمة متابعة" -#: inventory/models.py:2271 +#: inventory/models.py:2276 msgid "Contract Discussion" msgstr "مناقشة العقد" -#: inventory/models.py:2272 +#: inventory/models.py:2277 msgid "Sales Meeting" msgstr "اجتماع مبيعات" -#: inventory/models.py:2273 +#: inventory/models.py:2278 msgid "Support Call" msgstr "مكالمة دعم" -#: inventory/models.py:2282 +#: inventory/models.py:2287 msgid "Scheduled" msgstr "مجدول" -#: inventory/models.py:2300 inventory/models.py:2581 -#: templates/crm/employee_calendar.html:12 +#: inventory/models.py:2307 templates/emails/schedule_reminder.html:19 +#: templates/emails/schedule_reminder.txt:5 +msgid "Purpose" +msgstr "الغرض" + +#: inventory/models.py:2308 +#, fuzzy +#| msgid "Indicates the status of the reschedule action." +msgid "What is the purpose of this schedule?" +msgstr "يشير إلى حالة إجراء إعادة الجدولة." + +#: inventory/models.py:2310 +#, fuzzy +#| msgid "Scheduled" +msgid "Scheduled Date" +msgstr "مجدول" + +#: inventory/models.py:2312 inventory/models.py:2604 +#: templates/crm/employee_calendar.html:15 #, fuzzy #| msgid "Start time" msgid "Start Time" msgstr "وقت البدء" -#: inventory/models.py:2301 inventory/models.py:2582 -#: templates/crm/employee_calendar.html:13 +#: inventory/models.py:2312 inventory/models.py:2315 +msgid "HH:MM" +msgstr "" + +#: inventory/models.py:2315 inventory/models.py:2605 +#: templates/crm/employee_calendar.html:16 #, fuzzy #| msgid "End time" msgid "End Time" msgstr "وقت الانتهاء" -#: inventory/models.py:2332 templates/components/schedule_modal.html:10 +#: inventory/models.py:2321 +#, fuzzy +#| msgid "Scheduled" +msgid "Scheduled Type" +msgstr "مجدول" + +#: inventory/models.py:2322 +msgid "What type of schedule is this?" +msgstr "" + +#: inventory/models.py:2327 +msgid "Has this schedule been completed?" +msgstr "" + +#: inventory/models.py:2335 +#, fuzzy +#| msgid "Indicates the status of the reschedule action." +msgid "What is the status of this schedule?" +msgstr "يشير إلى حالة إجراء إعادة الجدولة." + +#: inventory/models.py:2338 templates/ledger/ledger/ledger_list.html:24 +#: templates/ledger/reports/car_sale_report.html:233 +msgid "Created Date" +msgstr "تاريخ الإنشاء" + +#: inventory/models.py:2338 +msgid "When was this schedule created?" +msgstr "" + +#: inventory/models.py:2341 +#, fuzzy +#| msgid "Updated At" +msgid "Updated Date" +msgstr "تم التحديث" + +#: inventory/models.py:2341 +msgid "When was this schedule last updated?" +msgstr "" + +#: inventory/models.py:2363 templates/components/schedule_modal.html:10 msgid "Schedule" msgstr "الجدولة" -#: inventory/models.py:2333 +#: inventory/models.py:2364 #, fuzzy #| msgid "Schedule" msgid "Schedules" msgstr "الجدولة" -#: inventory/models.py:2347 +#: inventory/models.py:2378 msgid "Old Status" msgstr "الحالة القديمة" -#: inventory/models.py:2350 +#: inventory/models.py:2381 #: templates/crm/opportunities/opportunity_logs.html:11 msgid "New Status" msgstr "الحالة الجديدة" -#: inventory/models.py:2355 +#: inventory/models.py:2386 msgid "Changed At" msgstr "تم التغيير في" -#: inventory/models.py:2358 +#: inventory/models.py:2389 msgid "Lead Status History" msgstr "تاريخ حالة العميل المحتمل" -#: inventory/models.py:2359 +#: inventory/models.py:2390 msgid "Lead Status Histories" msgstr "تواريخ حالات العملاء المحتملين" -#: inventory/models.py:2367 +#: inventory/models.py:2398 msgid "Probability must be between 0 and 100." msgstr "يجب أن تكون الاحتمالية بين 0 و 100." -#: inventory/models.py:2394 +#: inventory/models.py:2425 msgid "Salary" msgstr "الراتب" -#: inventory/models.py:2399 inventory/models.py:3789 -#: templates/crm/leads/lead_detail.html:417 +#: inventory/models.py:2430 inventory/models.py:3812 +#: templates/crm/leads/lead_detail.html:416 #: templates/support/ticket_list.html:59 msgid "Priority" msgstr "الأولوية" -#: inventory/models.py:2428 -#: templates/crm/opportunities/opportunity_detail.html:278 +#: inventory/models.py:2455 #: ⁨templates/crm/opportunities/opportunity_list copy.html⁩:105 #: templates/crm/opportunities/partials/opportunity_grid.html:78 msgid "Expected Revenue" msgstr "الإيرادات المتوقعة" -#: inventory/models.py:2449 +#: inventory/models.py:2474 msgid "Unique slug for the opportunity." msgstr "المُعرّف الفريد للفرصة (slug)." -#: inventory/models.py:2519 inventory/models.py:2990 -#: templates/crm/leads/lead_detail.html:126 templates/header.html:142 +#: inventory/models.py:2542 inventory/models.py:3013 +#: templates/crm/leads/lead_detail.html:129 templates/header.html:137 #: templates/sales/orders/order_details.html:448 msgid "Opportunity" msgstr "فرصة" -#: inventory/models.py:2520 templates/crm/leads/lead_detail.html:274 -#: templates/crm/leads/lead_detail.html:395 +#: inventory/models.py:2543 templates/crm/leads/lead_detail.html:277 +#: templates/crm/leads/lead_detail.html:394 #: ⁨templates/crm/opportunities/opportunity_list copy.html⁩:5 #: templates/crm/opportunities/opportunity_list.html:5 #: templates/crm/opportunities/opportunity_list.html:14 -#: templates/customers/view_customer.html:163 +#: templates/customers/view_customer.html:191 msgid "Opportunities" msgstr "الفرص" -#: inventory/models.py:2543 inventory/models.py:2551 +#: inventory/models.py:2566 inventory/models.py:2574 #: templates/account/snippets/already_logged_in.html:7 #: templates/components/note_modal.html:10 -#: templates/crm/leads/lead_detail.html:462 -#: templates/crm/opportunities/opportunity_detail.html:648 -#: templates/customers/view_customer.html:115 +#: templates/crm/leads/lead_detail.html:461 +#: templates/crm/leads/lead_detail.html:785 +#: templates/crm/opportunities/opportunity_detail.html:587 +#: templates/customers/view_customer.html:118 msgid "Note" msgstr "ملاحظة" -#: inventory/models.py:2598 templates/components/task_modal.html:17 +#: inventory/models.py:2621 templates/components/task_modal.html:17 msgid "Task" msgstr "مهمة" -#: inventory/models.py:2599 templates/crm/leads/lead_detail.html:234 -#: templates/crm/leads/lead_detail.html:750 -#: templates/crm/opportunities/opportunity_detail.html:500 -#: templates/crm/opportunities/opportunity_detail.html:547 +#: inventory/models.py:2622 templates/crm/leads/lead_detail.html:237 +#: templates/crm/leads/lead_detail.html:749 +#: templates/crm/opportunities/opportunity_detail.html:439 +#: templates/crm/opportunities/opportunity_detail.html:486 msgid "Tasks" msgstr "مهام" -#: inventory/models.py:2624 +#: inventory/models.py:2647 msgid "From Email" msgstr "من البريد الإلكتروني" -#: inventory/models.py:2625 +#: inventory/models.py:2648 msgid "To Email" msgstr "إلى البريد الإلكتروني" -#: inventory/models.py:2626 inventory/models.py:3773 -#: templates/crm/opportunities/opportunity_detail.html:749 +#: inventory/models.py:2649 inventory/models.py:3796 +#: templates/crm/leads/lead_detail.html:582 +#: templates/crm/leads/lead_detail.html:671 +#: templates/crm/opportunities/opportunity_detail.html:688 #: templates/support/ticket_list.html:57 msgid "Subject" msgstr "الموضوع" -#: inventory/models.py:2627 inventory/models.py:2703 +#: inventory/models.py:2650 inventory/models.py:2726 msgid "Message" msgstr "رسالة" -#: inventory/models.py:2642 templates/crm/leads/lead_detail.html:514 +#: inventory/models.py:2665 templates/crm/leads/lead_detail.html:513 msgid "Emails" msgstr "رسائل البريد الإلكتروني" -#: inventory/models.py:2669 +#: inventory/models.py:2692 msgid "Activity Type" msgstr "نوع النشاط" -#: inventory/models.py:2680 templates/crm/leads/lead_detail.html:334 +#: inventory/models.py:2703 templates/crm/leads/lead_detail.html:333 msgid "Activities" msgstr "الأنشطة" -#: inventory/models.py:2704 +#: inventory/models.py:2727 msgid "Is Read" msgstr "تمت قراءته" -#: inventory/models.py:2708 +#: inventory/models.py:2731 msgid "Notification" msgstr "إشعار" -#: inventory/models.py:2709 templates/crm/notifications.html:8 -#: templates/crm/notifications_history.html:4 +#: inventory/models.py:2732 templates/crm/notifications.html:8 +#: templates/crm/notifications_history.html:5 #: templates/notifications-copy.html:35 templates/notifications.html:56 msgid "Notifications" msgstr "الإشعارات" -#: inventory/models.py:2741 +#: inventory/models.py:2764 msgid "Vendor Model" msgstr "نموذج المورد" -#: inventory/models.py:2796 templates/admin_management/user_management.html:168 +#: inventory/models.py:2819 templates/admin_management/user_management.html:168 #: templates/vendors/vendors_list.html:5 templates/vendors/vendors_list.html:7 #: templates/vendors/vendors_list.html:13 msgid "Vendors" msgstr "الموردين" -#: inventory/models.py:2890 inventory/models.py:2921 +#: inventory/models.py:2913 inventory/models.py:2944 msgid "amount" msgstr "المبلغ" -#: inventory/models.py:2893 +#: inventory/models.py:2916 msgid "method" msgstr "طريقة" -#: inventory/models.py:2896 +#: inventory/models.py:2919 msgid "reference number" msgstr "رقم المرجع" -#: inventory/models.py:2898 +#: inventory/models.py:2921 msgid "date" msgstr "التاريخ" -#: inventory/models.py:2903 +#: inventory/models.py:2926 #, fuzzy #| msgid "invoices" msgid "invoice" msgstr "الفواتير" -#: inventory/models.py:2909 +#: inventory/models.py:2932 msgid "payment" msgstr "الدفعة" -#: inventory/models.py:2910 templates/header.html:339 +#: inventory/models.py:2933 templates/header.html:334 msgid "payments" msgstr "المدفوعات" -#: inventory/models.py:2923 +#: inventory/models.py:2946 msgid "reason" msgstr "السبب" -#: inventory/models.py:2924 +#: inventory/models.py:2947 msgid "refund date" msgstr "تاريخ الاسترداد" -#: inventory/models.py:2927 +#: inventory/models.py:2950 msgid "refund" msgstr "استرداد" -#: inventory/models.py:2928 +#: inventory/models.py:2951 msgid "refunds" msgstr "استردادات" -#: inventory/models.py:2940 +#: inventory/models.py:2963 msgid "User Activity Log" msgstr "سجل نشاط المستخدم" -#: inventory/models.py:2941 +#: inventory/models.py:2964 msgid "User Activity Logs" msgstr "سجلات نشاط المستخدم" -#: inventory/models.py:3044 templates/sales/saleorder_detail.html:11 +#: inventory/models.py:3067 templates/sales/saleorder_detail.html:11 #, fuzzy #| msgid "Sale Order" msgid "Sales Order" msgstr "أمر بيع" -#: inventory/models.py:3045 +#: inventory/models.py:3068 #, fuzzy #| msgid "Sale Order" msgid "Sales Orders" msgstr "أمر بيع" -#: inventory/models.py:3118 +#: inventory/models.py:3141 #, fuzzy #| msgid "Customer" msgid "Custom Group" msgstr "العميل" -#: inventory/models.py:3119 +#: inventory/models.py:3142 #, fuzzy #| msgid "Customers" msgid "Custom Groups" msgstr "العملاء" -#: inventory/models.py:3511 +#: inventory/models.py:3534 msgid "Payment History" msgstr "سجل المدفوعات" -#: inventory/models.py:3512 +#: inventory/models.py:3535 msgid "Payment Histories" msgstr "سجلات المدفوعات" -#: inventory/models.py:3552 inventory/models.py:3553 +#: inventory/models.py:3575 inventory/models.py:3576 msgid "PO Items" msgstr "عناصر أمر الشراء" -#: inventory/models.py:3610 inventory/models.py:3611 +#: inventory/models.py:3633 inventory/models.py:3634 msgid "Extra Info" msgstr "معلومات إضافية" -#: inventory/models.py:3703 +#: inventory/models.py:3726 msgid "Recall Title" msgstr "عنوان الاستدعاء" -#: inventory/models.py:3725 templates/sales/orders/order_details.html:119 +#: inventory/models.py:3748 templates/sales/orders/order_details.html:119 #: templates/sales/saleorder_detail.html:39 msgid "Created By" msgstr "تم الإنشاء بواسطة" -#: inventory/models.py:3729 templates/recalls/recall_filter.html:5 +#: inventory/models.py:3752 templates/recalls/recall_filter.html:5 msgid "Recall" msgstr "استدعاء" -#: inventory/models.py:3730 +#: inventory/models.py:3753 msgid "Recalls" msgstr "استدعاءات" -#: inventory/models.py:3747 +#: inventory/models.py:3770 msgid "Recall Notification" msgstr "إشعار استدعاء" -#: inventory/models.py:3748 +#: inventory/models.py:3771 msgid "Recall Notifications" msgstr "إشعارات الاستدعاءات" -#: inventory/models.py:3756 +#: inventory/models.py:3779 msgid "Open" msgstr "مفتوح" -#: inventory/models.py:3757 templates/crm/leads/lead_list.html:161 +#: inventory/models.py:3780 templates/crm/leads/lead_list.html:161 msgid "In Progress" msgstr "قيد التنفيذ" -#: inventory/models.py:3758 +#: inventory/models.py:3781 msgid "Resolved" msgstr "تم الحل" -#: inventory/models.py:3766 +#: inventory/models.py:3789 msgid "Critical" msgstr "حرج" -#: inventory/models.py:3773 +#: inventory/models.py:3796 msgid "Short description" msgstr "وصف قصير" -#: inventory/models.py:3777 templates/support/ticket_detail.html:53 +#: inventory/models.py:3800 templates/support/ticket_detail.html:53 msgid "Resolution Notes" msgstr "ملاحظات" -#: inventory/models.py:3866 +#: inventory/models.py:3889 #, fuzzy #| msgid "Email address" msgid "email address" msgstr "عنوان البريد الإلكتروني" -#: inventory/models.py:3873 -#, fuzzy -#| msgid "VAT Registration Number" +#: inventory/models.py:3896 msgid "Vehicle Registration Number" msgstr "رقم التسجيل في ضريبة القيمة المضافة" @@ -10320,7 +10435,7 @@ msgstr "" msgid "Age" msgstr "العمر" -#: inventory/tasks.py:1004 +#: inventory/tasks.py:1006 #, python-brace-format msgid "" "\n" @@ -10506,7 +10621,7 @@ msgstr "تم تحديث الملاحظة بنجاح" msgid "Dealer updated successfully" msgstr "تم تحديث المعرض بنجاح." -#: inventory/views.py:2437 templates/header.html:151 +#: inventory/views.py:2437 templates/header.html:146 msgid "customers" msgstr "العملاء" @@ -10518,7 +10633,8 @@ msgstr "تم إنشاء المستخدم بنجاح." #: inventory/views.py:2656 msgid "Customer Account with this email is Deactivated,Please Contact Admin" -msgstr "تم تعطيل حساب العميل المرتبط بهذا البريد الإلكتروني، يرجى التواصل مع المسؤول" +msgstr "" +"تم تعطيل حساب العميل المرتبط بهذا البريد الإلكتروني، يرجى التواصل مع المسؤول" #: inventory/views.py:2661 msgid "Customer with this email already exists" @@ -10540,7 +10656,8 @@ msgstr "تم إنشاء المورد بنجاح" #: inventory/views.py:2880 msgid "Vendor Account with this email is Deactivated,Please Contact Admin" -msgstr "تم تعطيل حساب المورد المرتبط بهذا البريد الإلكتروني، يرجى التواصل مع المسؤول" +msgstr "" +"تم تعطيل حساب المورد المرتبط بهذا البريد الإلكتروني، يرجى التواصل مع المسؤول" #: inventory/views.py:2884 msgid "Vendor with this email already exists" @@ -10595,7 +10712,8 @@ msgstr "لقد وصلت إلى الحد الأقصى لعدد أعضاء الف #: inventory/views.py:3642 msgid "A user with this email already exists. Please use a different email." -msgstr "يوجد مستخدم بهذا البريد الإلكتروني بالفعل. يرجى استخدام بريد إلكتروني مختلف." +msgstr "" +"يوجد مستخدم بهذا البريد الإلكتروني بالفعل. يرجى استخدام بريد إلكتروني مختلف." #: inventory/views.py:3708 msgid "User updated successfully" @@ -10655,381 +10773,368 @@ msgstr "تم تحديث المجموعة بنجاح." msgid "Bank account deleted successfully" msgstr "تم حذف الملاحظة بنجاح." -#: inventory/views.py:4409 +#: inventory/views.py:4411 msgid "Account created successfully" msgstr "تم إنشاء الحساب بنجاح." -#: inventory/views.py:4535 +#: inventory/views.py:4541 msgid "Account updated successfully" msgstr "تم تحديث الحساب بنجاح." -#: inventory/views.py:4578 +#: inventory/views.py:4588 msgid "Account deleted successfully" msgstr "تم حذف الحساب بنجاح." -#: inventory/views.py:4640 +#: inventory/views.py:4650 #, fuzzy #| msgid "Order Details" msgid "Sales Order Details" msgstr "تفاصيل الطلب" -#: inventory/views.py:4655 +#: inventory/views.py:4665 #, fuzzy #| msgid "Settings updated" msgid "Sale order status updated" msgstr "تم تحديث الإعدادات" -#: inventory/views.py:4785 +#: inventory/views.py:4795 msgid "Items and Quantities are required" msgstr "المنتجات والكميات مطلوبة" -#: inventory/views.py:4794 inventory/views.py:4802 +#: inventory/views.py:4804 inventory/views.py:4812 msgid "Quantity must be greater than zero" msgstr "يجب أن تكون مدة الفاصل الزمني أكبر من 0." -#: inventory/views.py:4815 inventory/views.py:4828 +#: inventory/views.py:4825 inventory/views.py:4838 msgid "Quantity must be less than or equal to the number of cars in stock" msgstr "يجب أن تكون الكمية أقل من أو تساوي عدد السيارات المتوفرة في المخزون" -#: inventory/views.py:4947 +#: inventory/views.py:4957 msgid "Quotation created successfully" msgstr "تم إنشاء عرض السعر بنجاح" -#: inventory/views.py:5173 +#: inventory/views.py:5184 #, fuzzy #| msgid "Payment amount must be greater than 0" msgid "Discount amount cannot be greater than marked price" msgstr "يجب أن يكون مبلغ الدفع أكبر من 0" -#: inventory/views.py:5177 +#: inventory/views.py:5188 #, python-format msgid "" "Discount amount is greater than 50% of the marked price, proceed with " "caution." msgstr "" -#: inventory/views.py:5179 +#: inventory/views.py:5190 #, fuzzy #| msgid "Account updated successfully" msgid "Discount updated successfully" msgstr "تم تحديث المجموعة بنجاح." -#: inventory/views.py:5358 +#: inventory/views.py:5369 msgid "Quotation is not ready for review" msgstr "العرض غير جاهز للمراجعة." -#: inventory/views.py:5365 +#: inventory/views.py:5376 msgid "Quotation is not ready for approval" msgstr "العرض غير جاهز للموافقة." -#: inventory/views.py:5374 +#: inventory/views.py:5385 msgid "Quotation approved successfully" msgstr "تمت الموافقة على العرض بنجاح." -#: inventory/views.py:5378 +#: inventory/views.py:5389 msgid "Quotation is not ready for rejection" msgstr "العرض غير جاهز للرفض." -#: inventory/views.py:5383 inventory/views.py:5413 +#: inventory/views.py:5394 inventory/views.py:5424 msgid "Quotation canceled successfully" msgstr "تم إلغاء الحجز بنجاح." -#: inventory/views.py:5386 +#: inventory/views.py:5397 msgid "Quotation is not ready for completion" msgstr "العرض غير جاهز للإكمال." -#: inventory/views.py:5392 +#: inventory/views.py:5403 msgid "Quotation is not ready for cancellation" msgstr "العرض غير جاهز للإلغاء." -#: inventory/views.py:5415 +#: inventory/views.py:5426 msgid "Quotation marked as " msgstr "تم وضع علامة على عرض السعر كـ" -#: inventory/views.py:5897 +#: inventory/views.py:5908 msgid "fully paid" msgstr "مدفوع بالكامل" -#: inventory/views.py:5900 +#: inventory/views.py:5911 msgid "Amount exceeds due amount" msgstr "المبلغ يتجاوز المبلغ المستحق" -#: inventory/views.py:5915 inventory/views.py:6050 +#: inventory/views.py:5926 inventory/views.py:6061 msgid "Payment created successfully" msgstr "تم إنشاء الدفعة بنجاح" -#: inventory/views.py:6059 +#: inventory/views.py:6070 msgid "Invoice is not fully paid, Payment cannot be marked as paid" msgstr "لم يتم دفع الفاتورة بالكامل، لا يمكن وضع علامة مدفوعة على الدفعة" -#: inventory/views.py:6314 +#: inventory/views.py:6325 msgid "Lead created successfully" msgstr "تم إنشاء العميل المتوقع بنجاح" -#: inventory/views.py:6443 +#: inventory/views.py:6454 #, fuzzy #| msgid "This field is required." msgid "All fields are required" msgstr "هذا الحقل مطلوب." -#: inventory/views.py:6483 +#: inventory/views.py:6494 #, fuzzy #| msgid "Invalid data." msgid "Invalid date format" msgstr "بيانات غير صالحة." -#: inventory/views.py:6498 +#: inventory/views.py:6509 #, fuzzy #| msgid "Location updated successfully" msgid "Actions updated successfully" msgstr "تم تحديث البريد الإلكتروني بنجاح!" -#: inventory/views.py:6513 +#: inventory/views.py:6524 #, fuzzy #| msgid "User not found" msgid "Lead not found" msgstr "المستخدم غير موجود" -#: inventory/views.py:6526 +#: inventory/views.py:6537 #, fuzzy #| msgid "An error occurred while decoding the VIN." msgid "An error occurred while updating lead actions" msgstr "حدث خطأ أثناء فك تشفير الهيكل" -#: inventory/views.py:6664 +#: inventory/views.py:6675 msgid "Lead deleted successfully" msgstr "تم حذف العميل المتوقع بنجاح" -#: inventory/views.py:6756 +#: inventory/views.py:6779 msgid "Note deleted successfully." msgstr "تم حذف الملاحظة بنجاح." -#: inventory/views.py:6782 +#: inventory/views.py:6809 msgid "Lead is already converted to customer" msgstr "تم تحويل العميل المتوقع بالفعل إلى عميل" -#: inventory/views.py:6793 +#: inventory/views.py:6820 msgid "Lead converted to customer successfully" msgstr "تم تحويل العميل المتوقع إلى عميل بنجاح" -#: inventory/views.py:6840 -#, fuzzy -#| msgid "You do not have permission to schedule lead" -msgid "You do not have permission to schedule." -msgstr "ليست لديك صلاحية جدولة هذا العميل المتوقع" - -#: inventory/views.py:6910 +#: inventory/views.py:6937 msgid "Appointment Created Successfully" msgstr "تم إنشاء الموعد بنجاح" -#: inventory/views.py:6949 +#: inventory/views.py:6976 msgid "Lead transferred successfully" msgstr "تم نقل العميل المتوقع بنجاح" -#: inventory/views.py:7000 +#: inventory/views.py:7027 msgid "Email Draft successfully" msgstr "تم إنشاء مسودة البريد الإلكتروني بنجاح" -#: inventory/views.py:7069 inventory/views.py:8243 +#: inventory/views.py:7096 inventory/views.py:8281 msgid "Email sent successfully" msgstr "تم إرسال البريد الإلكتروني بنجاح!" -#: inventory/views.py:7163 +#: inventory/views.py:7190 #, fuzzy #| msgid "Opportunity deleted successfully" msgid "Opportunity created successfully." msgstr "تم حذف الفرصة بنجاح." -#: inventory/views.py:7239 +#: inventory/views.py:7266 #, fuzzy #| msgid "Opportunity deleted successfully" msgid "Opportunity updated successfully." msgstr "تم حذف الفرصة بنجاح." -#: inventory/views.py:7291 +#: inventory/views.py:7318 #, fuzzy #| msgid "Opportunity status updated successfully" msgid "Opportunity Stage updated successfully." msgstr "تم تحديث حالة الفرصة بنجاح" -#: inventory/views.py:7474 +#: inventory/views.py:7500 msgid "Opportunity deleted successfully" msgstr "تم حذف الفرصة بنجاح." -#: inventory/views.py:7513 +#: inventory/views.py:7539 msgid "Opportunity status updated successfully" msgstr "تم تحديث حالة الفرصة بنجاح" -#: inventory/views.py:7585 +#: inventory/views.py:7623 msgid "Service created successfully" msgstr "تم إنشاء الخدمة بنجاح" -#: inventory/views.py:7635 +#: inventory/views.py:7673 msgid "Service updated successfully" msgstr "تم تحديث الخدمة بنجاح" -#: inventory/views.py:7725 +#: inventory/views.py:7763 #, fuzzy #| msgid "User created successfully" msgid "Expense created successfully" msgstr "تم إنشاء المستخدم بنجاح." -#: inventory/views.py:7881 +#: inventory/views.py:7919 #, fuzzy #| msgid "User created successfully" msgid "Bill created successfully" msgstr "تم إنشاء المستخدم بنجاح." -#: inventory/views.py:8185 +#: inventory/views.py:8223 msgid "Quotation has no items" msgstr "عرض السعر لا يحتوي على أي عناصر" -#: inventory/views.py:8930 inventory/views.py:8963 inventory/views.py:9022 +#: inventory/views.py:8968 inventory/views.py:9001 inventory/views.py:9060 msgid "Unauthorized" msgstr "غير مصرح" -#: inventory/views.py:9148 +#: inventory/views.py:9186 msgid "Settings updated" msgstr "تم تحديث الإعدادات" -#: inventory/views.py:9352 +#: inventory/views.py:9390 #, fuzzy #| msgid "Lead created successfully" msgid "Ledger created successfully" msgstr "تم إنشاء العميل المتوقع بنجاح" -#: inventory/views.py:9407 +#: inventory/views.py:9445 #, fuzzy #| msgid "Lead deleted successfully" msgid "Ledger deleted successfully" msgstr "تم حذف العميل المتوقع بنجاح" -#: inventory/views.py:9508 +#: inventory/views.py:9546 #, fuzzy #| msgid "Account created successfully" msgid "Journal Entry created successfully" msgstr "تم إنشاء المجموعة بنجاح." -#: inventory/views.py:9554 +#: inventory/views.py:9592 msgid "Journal Entry cannot be deleted" msgstr "لا يمكن حذف قيد اليومية" -#: inventory/views.py:9637 +#: inventory/views.py:9675 msgid "Ledger is already locked" msgstr "دفتر الأستاذ مقفل بالفعل" -#: inventory/views.py:9667 +#: inventory/views.py:9705 msgid "Ledger is already Unlocked" msgstr "دفتر الأستاذ غير مقفل بالفعل" -#: inventory/views.py:9699 +#: inventory/views.py:9737 msgid "Ledger is already posted" msgstr "دفتر الأستاذ تم ترحيله بالفعل" -#: inventory/views.py:9732 +#: inventory/views.py:9770 msgid "Ledger is already Unposted" msgstr "دفتر الأستاذ لم يتم ترحيله بعد" -#: inventory/views.py:9757 +#: inventory/views.py:9795 #, fuzzy #| msgid "Already have an account?" msgid "You already have an plan!!" msgstr "هل لديك حساب بالفعل؟" -#: inventory/views.py:9784 +#: inventory/views.py:9822 msgid "Error creating order" msgstr "خطأ أثناء إنشاء الطلب" -#: inventory/views.py:9966 +#: inventory/views.py:10004 #, fuzzy #| msgid "Quotation marked as " msgid "All notifications marked as read." msgstr "تم وضع علامة على عرض السعر كـ" -#: inventory/views.py:10020 +#: inventory/views.py:10058 msgid "Activity added successfully" msgstr "تمت إضافة النشاط بنجاح" -#: inventory/views.py:10027 +#: inventory/views.py:10065 msgid "Activity form is not valid" msgstr "نموذج النشاط غير صالح" -#: inventory/views.py:10078 +#: inventory/views.py:10116 msgid "Task added successfully" msgstr "تمت إضافة المهمة بنجاح" -#: inventory/views.py:10085 +#: inventory/views.py:10123 msgid "Task form is not valid" msgstr "نموذج المهمة غير صالح" -#: inventory/views.py:10163 +#: inventory/views.py:10201 msgid "Note added successfully" msgstr "تمت إضافة الملاحظة بنجاح" -#: inventory/views.py:10170 +#: inventory/views.py:10208 msgid "Note form is not valid" msgstr "نموذج الملاحظة غير صالح" -#: inventory/views.py:10184 +#: inventory/views.py:10223 msgid "Note updated successfully" msgstr "تم تحديث الملاحظة بنجاح" -#: inventory/views.py:10381 +#: inventory/views.py:10420 msgid "Account activated successfully" msgstr "تم تفعيل الحساب بنجاح" -#: inventory/views.py:10425 +#: inventory/views.py:10464 msgid "Account Deleted successfully" msgstr "تم حذف الحساب بنجاح" -#: inventory/views.py:10435 +#: inventory/views.py:10474 msgid "You cannot delete this account,it is related to another account" msgstr "لا يمكنك حذف هذا الحساب، لأنه مرتبط بحساب آخر" -#: inventory/views.py:10494 +#: inventory/views.py:10533 msgid "Purchase order created successfully" msgstr "تم إنشاء أمر الشراء بنجاح" -#: inventory/views.py:10553 +#: inventory/views.py:10592 #, fuzzy #| msgid "Vendor with this email already exists" msgid "Inventory item already exists" msgstr "يوجد مورد مسجل مسبقًا بهذا البريد الإلكتروني" -#: inventory/views.py:10564 +#: inventory/views.py:10603 msgid "Inventory item created successfully" msgstr "تم إنشاء عنصر المخزون بنجاح" -#: inventory/views.py:11413 +#: inventory/views.py:11452 #, fuzzy #| msgid "Your password has been set." msgid "Your password has been set. You may go ahead and log in now." msgstr "تم تعيين كلمة المرور الخاصة بك." -#: inventory/views.py:11416 -#, fuzzy -#| msgid "We couldn't process your payment. Please try again" -msgid "Invalid password. Please try again." -msgstr "تعذر معالجة دفعتك. يرجى المحاولة مرة أخرى" - -#: inventory/views.py:11540 +#: inventory/views.py:11579 #, fuzzy #| msgid "Lead created successfully" msgid "Recall created and notifications sent successfully" msgstr "تم إنشاء العميل المتوقع بنجاح" -#: inventory/views.py:11677 templates/account/signup-wizard.html:24 +#: inventory/views.py:11716 templates/account/signup-wizard.html:24 #: templates/registration/signup.html:23 -#, fuzzy -#| msgid "Your Car Dealership Operations" msgid "Car Dealership Registration" -msgstr "عمليات معرض السيارات الخاص بك" +msgstr "تسجيل معرض السيارات الخاص بك" -#: inventory/views.py:11682 +#: inventory/views.py:11721 msgid "Your request has been submitted. We will contact you soon." msgstr "لقد تم ارسال طلبك. سيتصل بك فريقنا قريباً." -#: templates/403.html:91 +#: templates/403.html:7 templates/403.html:91 templates/404.html:6 +#: templates/500.html:6 #, fuzzy #| msgid "Forbidden" msgid "Access Forbidden" @@ -11078,7 +11183,7 @@ msgstr "" #: templates/account/confirm_login_code..html:43 templates/account/login.html:6 #: templates/account/login.html:28 templates/account/login.html:66 #: templates/account/request_login_code.html:5 templates/account/signup.html:95 -#: templates/header.html:666 templates/welcome-temp.html:117 +#: templates/header.html:676 templates/welcome-temp.html:117 msgid "Sign In" msgstr "تسجيل الدخول" @@ -11426,9 +11531,9 @@ msgstr "تذكرني" msgid "If you have not created an account yet, then please" msgstr "إذا لم تقم بإنشاء حساب بعد، يرجى التسجيل أولاً." -#: templates/account/login.html:74 templates/account/signup-wizard.html:34 +#: templates/account/login.html:74 templates/account/signup-wizard.html:35 #: templates/account/signup.html:5 templates/account/signup.html:27 -#: templates/account/signup.html:93 templates/header.html:670 +#: templates/account/signup.html:93 templates/header.html:680 #: templates/welcome-temp.html:119 templates/welcome_header.html:82 msgid "Sign Up" msgstr "إنشاء حساب" @@ -11442,7 +11547,7 @@ msgid "Mail me a sign-in code" msgstr "أرسل لي رمز تسجيل الدخول عبر البريد الإلكتروني" #: templates/account/logout.html:4 templates/account/logout.html:12 -#: templates/account/logout.html:21 templates/header.html:658 +#: templates/account/logout.html:21 templates/header.html:668 msgid "Sign Out" msgstr "تسجيل الخروج" @@ -11529,7 +11634,8 @@ msgstr "لم تستلم الرمز؟" #: templates/account/password_reset_from_key_done.html:27 #: templates/dealers/dealer_detail.html:35 templates/staff/staff_detail.html:15 #: templates/users/user_detail.html:31 -#: templates/users/user_password_reset.html:28 +#: templates/users/user_password_reset.html:4 +#: templates/users/user_password_reset.html:31 msgid "Change Password" msgstr "تغيير كلمة المرور" @@ -11547,7 +11653,8 @@ msgstr "إعادة تعيين كلمة المرور الخاصة بي" #: templates/account/password_reset.html:44 msgid "Please contact us if you have any trouble resetting your password." -msgstr "يرجى التواصل معنا إذا واجهت أي مشكلة في إعادة تعيين كلمة المرور الخاصة بك." +msgstr "" +"يرجى التواصل معنا إذا واجهت أي مشكلة في إعادة تعيين كلمة المرور الخاصة بك." #: templates/account/password_reset_done.html:34 msgid "" @@ -11615,11 +11722,27 @@ msgstr "خيارات تسجيل الدخول الأخرى" #: templates/account/signup-wizard.html:25 #: templates/registration/signup.html:24 -#, fuzzy -#| msgid "Create your account today" msgid "Create your dealership account today" msgstr "أنشئ حسابك اليوم" +#: templates/account/signup-wizard.html:42 +#: templates/account/signup-wizard.html:52 +msgid "Our Refund Policy" +msgstr "سياسة الاسترداد" + +#: templates/account/signup-wizard.html:105 +#: templates/inventory/car_form.html:743 templates/inventory/car_form.html:783 +#: ⁨templates/inventory/car_form_qabl alfalsafa.html⁩:612 +#: templates/registration/signup.html:326 +msgid "Please Wait" +msgstr "الرجاء الإنتظار" + +#: templates/account/signup-wizard.html:106 +#: templates/inventory/car_form.html:744 templates/inventory/car_form.html:784 +#: ⁨templates/inventory/car_form_qabl alfalsafa.html⁩:613 +msgid "Loading" +msgstr "تحميل" + #: templates/account/signup.html:28 msgid "Create your account today" msgstr "أنشئ حسابك اليوم" @@ -11753,8 +11876,11 @@ msgstr "" "ملاحظة: لا يزال بإمكانك تغيير " "عنوان بريدك الإلكتروني." +#: templates/admin_management/auth_logs.html:4 #: templates/admin_management/auth_logs.html:16 +#: templates/admin_management/model_logs.html:4 #: templates/admin_management/model_logs.html:16 +#: templates/admin_management/request_logs.html:4 #: templates/admin_management/request_logs.html:16 msgid "Audit Log Dashboard" msgstr "لوحة سجل التدقيق" @@ -11785,33 +11911,52 @@ msgstr "عنوان IP" msgid "No authentication audit events found." msgstr "لم يتم العثور على أحداث تدقيق لتغييرات النماذج." -#: templates/admin_management/confirm_activate_account.html:24 +#: templates/admin_management/confirm_activate_account.html:5 +#: templates/admin_management/confirm_activate_account.html:13 #, fuzzy #| msgid "Active Accounts" msgid "Activate Account" msgstr "الحسابات النشطة" -#: templates/admin_management/confirm_activate_account.html:27 +#: templates/admin_management/confirm_activate_account.html:16 #, fuzzy #| msgid "Are you sure you want to delete this account?" msgid "Are you sure you want to activate this account" msgstr "هل أنت متأكد أنك تريد حذف هذا الحساب؟" #: templates/admin_management/management.html:4 -#: templates/admin_management/management.html:8 -msgid "Admin Management" -msgstr "إدارة المشرفين" +#: templates/admin_management/management.html:12 +#, fuzzy +#| msgid "Audit Log Dashboard" +msgid "Admin Dashboard" +msgstr "لوحة سجل التدقيق" -#: templates/admin_management/management.html:16 +#: templates/admin_management/management.html:15 +msgid "" +"Manage user accounts, review system logs, and control access permissions." +msgstr "" + +#: templates/admin_management/management.html:25 #: templates/admin_management/user_management.html:4 #: templates/admin_management/user_management.html:10 msgid "User Management" msgstr "إدارة المستخدمين" #: templates/admin_management/management.html:26 -msgid "Audit Log Dashboard" +msgid "View, edit, and manage all user accounts within the system." +msgstr "" + +#: templates/admin_management/management.html:36 +#, fuzzy +#| msgid "Audit Log Dashboard" +msgid "Audit Log" msgstr "لوحة سجل التدقيق" +#: templates/admin_management/management.html:37 +msgid "" +"Review a detailed history of all critical system activities and changes." +msgstr "" + #: templates/admin_management/model_logs.html:34 msgid "Object ID" msgstr "معرّف الكائن" @@ -11860,21 +12005,27 @@ msgstr "أحداث تسجيل دخول المستخدم" msgid "User Page Requests" msgstr "طلبات صفحات المستخدم" -#: templates/admin_management/permenant_delete_account.html:23 +#: templates/admin_management/permenant_delete_account.html:4 +#, fuzzy +#| msgid "Permenantly Delete" +msgid "Permanent Delete instance" +msgstr "حذف نهائي" + +#: templates/admin_management/permenant_delete_account.html:12 #: templates/ledger/coa_accounts/account_list.html:178 #, fuzzy #| msgid "Create Account" msgid "Delete Account" msgstr "إنشاء حساب" -#: templates/admin_management/permenant_delete_account.html:27 +#: templates/admin_management/permenant_delete_account.html:16 #, python-format msgid "" "Are you sure you want to delete this account \"%(obj.email)s\"? This will " "delete all associated information for this user." msgstr "" -#: templates/admin_management/permenant_delete_account.html:34 +#: templates/admin_management/permenant_delete_account.html:23 #, fuzzy #| msgid "Delete Entity " msgid "Delete Permenantly" @@ -11900,7 +12051,7 @@ msgstr "تاريخ الإنشاء" #: templates/admin_management/user_management.html:124 #: templates/admin_management/user_management.html:201 #: templates/admin_management/user_management.html:278 -#: templates/chart_of_accounts/includes/coa_card.html:24 +#: templates/chart_of_accounts/includes/coa_card.html:25 #: templates/users/user_detail.html:88 msgid "Inactive" msgstr "غير نشط" @@ -11922,7 +12073,7 @@ msgstr "لا توجد بيانات في الجدول" #: templates/admin_management/user_management.html:110 #: templates/admin_management/user_management.html:187 #: templates/admin_management/user_management.html:264 -#: templates/customers/customer_list.html:100 +#: templates/customers/customer_list.html:89 #: templates/organizations/organization_list.html:89 msgid "Create date" msgstr "تاريخ الإنشاء" @@ -11990,18 +12141,25 @@ msgstr "وضع كملغي" #: templates/bill/tags/bill_item_formset.html:128 #: templates/crm/leads/partials/update_action.html:61 #: templates/groups/group_permission_form.html:130 +#: templates/support/ticket_update.html:29 msgid "Save Changes" msgstr "حفظ التغييرات" -#: templates/chart_of_accounts/coa_list.html:14 +#: templates/chart_of_accounts/coa_list.html:17 #, fuzzy #| msgid "Add Note" msgid "Add New" msgstr "إضافة ملاحظة" +#: templates/chart_of_accounts/coa_update.html:6 +#, fuzzy +#| msgid "Create Chart of Account" +msgid "Update chart of Account" +msgstr "إنشاء دليل الحسابات" + #: templates/components/email_modal.html:10 -#: templates/crm/leads/lead_detail.html:531 -#: templates/crm/opportunities/opportunity_detail.html:712 +#: templates/crm/leads/lead_detail.html:530 +#: templates/crm/opportunities/opportunity_detail.html:651 msgid "Send Email" msgstr "إرسال البريد الإلكتروني" @@ -12021,7 +12179,11 @@ msgstr "النشاط" msgid "Add Activity" msgstr "النشاط" -#: templates/crm/employee_calendar.html:30 templates/groups/group_list.html:57 +#: templates/crm/employee_calendar.html:4 +msgid "Calender Events" +msgstr "" + +#: templates/crm/employee_calendar.html:33 templates/groups/group_list.html:57 #: templates/inventory/car_detail.html:150 #: templates/inventory/car_inventory.html:151 #: templates/representatives/representative_list.html:38 @@ -12030,100 +12192,114 @@ msgstr "النشاط" msgid "view" msgstr "عرض" -#: templates/crm/leads/lead_detail.html:40 +#: templates/crm/leads/lead_detail.html:5 +#, fuzzy +#| msgid "Lead Details" +msgid "Lead Detail" +msgstr "تفاصيل العميل المحتمل" + +#: templates/crm/leads/lead_detail.html:43 msgid "Lead Details" msgstr "تفاصيل العميل المحتمل" -#: templates/crm/leads/lead_detail.html:79 +#: templates/crm/leads/lead_detail.html:82 msgid "Car Requested" msgstr "السيارة المطلوبة" -#: templates/crm/leads/lead_detail.html:97 +#: templates/crm/leads/lead_detail.html:100 #: templates/crm/leads/lead_list.html:98 -#: templates/crm/opportunities/opportunity_detail.html:426 +#: templates/crm/opportunities/opportunity_detail.html:365 #: templates/crm/opportunities/partials/opportunity_grid.html:64 msgid "Assigned To" msgstr "مُعين إلى" -#: templates/crm/leads/lead_detail.html:109 +#: templates/crm/leads/lead_detail.html:112 #: templates/crm/leads/lead_list.html:198 #, fuzzy #| msgid "Make" msgid "Me" msgstr "الصانع" -#: templates/crm/leads/lead_detail.html:125 +#: templates/crm/leads/lead_detail.html:128 #: templates/crm/opportunities/opportunity_detail.html:173 msgid "Related Records" msgstr "السجلات المرتبطة" -#: templates/crm/leads/lead_detail.html:131 +#: templates/crm/leads/lead_detail.html:134 msgid "No Opportunity" msgstr "لا توجد فرصة" -#: templates/crm/leads/lead_detail.html:163 +#: templates/crm/leads/lead_detail.html:166 msgid "Lead Source" msgstr "مصدر العميل المحتمل" -#: templates/crm/leads/lead_detail.html:193 +#: templates/crm/leads/lead_detail.html:196 msgid "Lead Channel" msgstr "قناة العميل المحتمل" -#: templates/crm/leads/lead_detail.html:215 +#: templates/crm/leads/lead_detail.html:218 #: templates/crm/leads/partials/update_action.html:25 msgid "Current Stage" msgstr "المرحلة الحالية" -#: templates/crm/leads/lead_detail.html:283 +#: templates/crm/leads/lead_detail.html:286 msgid "Reassign Lead" msgstr "إعادة تعيين الفرصة" -#: templates/crm/leads/lead_detail.html:289 +#: templates/crm/leads/lead_detail.html:292 msgid "Update Actions" msgstr "تحديث الإجراءات" -#: templates/crm/leads/lead_detail.html:302 +#: templates/crm/leads/lead_detail.html:305 msgid "Reassign Lead To Another Employee" msgstr "إعادة تعيين العميل المحتمل إلى موظف آخر" -#: templates/crm/leads/lead_detail.html:378 +#: templates/crm/leads/lead_detail.html:377 msgid "created by" msgstr "تم الإنشاء بواسطة" -#: templates/crm/leads/lead_detail.html:400 +#: templates/crm/leads/lead_detail.html:399 #: ⁨templates/crm/opportunities/opportunity_list copy.html⁩:9 #: templates/crm/opportunities/opportunity_list.html:24 msgid "Add Opportunity" msgstr "إضافة فرصة" -#: templates/crm/leads/lead_detail.html:414 +#: templates/crm/leads/lead_detail.html:413 #: ⁨templates/crm/opportunities/opportunity_list copy.html⁩:148 #: templates/crm/opportunities/partials/opportunity_grid.html:101 msgid "Probability" msgstr "الاحتمالية" -#: templates/crm/leads/lead_detail.html:450 -#: templates/crm/opportunities/opportunity_detail.html:636 -#: templates/customers/view_customer.html:107 +#: templates/crm/leads/lead_detail.html:449 +#: templates/crm/opportunities/opportunity_detail.html:575 +#: templates/customers/view_customer.html:108 msgid "Add Note" msgstr "إضافة ملاحظة" -#: templates/crm/leads/lead_detail.html:465 -#: templates/crm/opportunities/opportunity_detail.html:651 +#: templates/crm/leads/lead_detail.html:464 +#: templates/crm/opportunities/opportunity_detail.html:590 +#: templates/customers/view_customer.html:121 msgid "Created On" msgstr "تم الإنشاء في" -#: templates/crm/leads/lead_detail.html:758 -#: templates/crm/opportunities/opportunity_detail.html:553 +#: templates/crm/leads/lead_detail.html:587 +#: templates/crm/leads/lead_detail.html:676 +#: templates/crm/opportunities/opportunity_detail.html:693 +#, fuzzy +#| msgid "Current Asset" +msgid "Sent by" +msgstr "الأصول الحالية" + +#: templates/crm/leads/lead_detail.html:623 +#: templates/crm/opportunities/opportunity_detail.html:715 +msgid "sent" +msgstr "مرسلة" + +#: templates/crm/leads/lead_detail.html:757 +#: templates/crm/opportunities/opportunity_detail.html:492 msgid "Add Task" msgstr "إضافة مهمة" -#: templates/crm/leads/lead_detail.html:807 -#, fuzzy -#| msgid "View Vendor" -msgid "View in Calendar" -msgstr "عرض المورد" - #: templates/crm/leads/lead_form.html:5 templates/crm/leads/lead_form.html:38 msgid "Update Lead" msgstr "تحديث العميل المحتمل" @@ -12168,13 +12344,13 @@ msgstr "لم يتم العثور على سيارات" msgid "Send Mail" msgstr "إرسال بريد" -#: templates/crm/leads/lead_send.html:57 +#: templates/crm/leads/lead_send.html:54 #, fuzzy #| msgid "Mark as Draft" msgid "Save as Draft" msgstr "وضع كمسودة" -#: templates/crm/leads/lead_send.html:59 +#: templates/crm/leads/lead_send.html:56 #: templates/sales/estimates/estimate_send.html:39 msgid "Send" msgstr "إرسال" @@ -12216,7 +12392,6 @@ msgid "No Action" msgstr "لا يوجد إجراء" #: templates/crm/notifications.html:17 -#: templates/crm/notifications_history.html:16 msgid "System" msgstr "نظام" @@ -12232,17 +12407,42 @@ msgstr "وضع علامة مدفوعة" msgid "Notification history" msgstr "الإشعارات" -#: templates/crm/notifications_history.html:8 -#: templates/notifications-copy.html:36 -msgid "Mark all as read" -msgstr "وضع علامة مقروء على الكل" +#: templates/crm/notifications_history.html:47 +msgid "Inbox" +msgstr "" -#: templates/crm/notifications_history.html:41 +#: templates/crm/notifications_history.html:50 #, fuzzy #| msgid "Notifications" -msgid "No notifications found." +msgid "notifications" msgstr "الإشعارات" +#: templates/crm/notifications_history.html:56 +#, fuzzy +#| msgid "Mark all as read" +msgid "Mark all read" +msgstr "وضع علامة مقروء على الكل" + +#: templates/crm/notifications_history.html:92 +#, fuzzy +#| msgid "Notifications" +msgid "No new notifications" +msgstr "الإشعارات" + +#: templates/crm/notifications_history.html:93 +msgid "You're all caught up. Check back later for updates." +msgstr "" + +#: templates/crm/notifications_history.html:110 +#, fuzzy +#| msgid "Is Read" +msgid "Read:" +msgstr "تمت قراءته" + +#: templates/crm/notifications_history.html:114 +msgid "Unread:" +msgstr "" + #: templates/crm/opportunities/opportunity_confirm_delete.html:3 #: templates/crm/opportunities/opportunity_detail.html:51 #: ⁨templates/crm/opportunities/opportunity_list copy.html⁩:196 @@ -12329,55 +12529,39 @@ msgstr "تم الإنشاء" msgid "Quotation Amount" msgstr "مبلغ عرض السعر" -#: templates/crm/opportunities/opportunity_detail.html:306 -#, fuzzy, python-format -#| msgid "Probability (%)" -msgid "Probability (%%)" -msgstr "الاحتمالية (%)" - -#: templates/crm/opportunities/opportunity_detail.html:403 +#: templates/crm/opportunities/opportunity_detail.html:342 msgid "Contact Name" msgstr "اسم جهة الاتصال" -#: templates/crm/opportunities/opportunity_detail.html:432 +#: templates/crm/opportunities/opportunity_detail.html:371 #: templates/crm/opportunities/partials/opportunity_grid.html:66 msgid "You" msgstr "أنت" -#: templates/crm/opportunities/opportunity_detail.html:458 +#: templates/crm/opportunities/opportunity_detail.html:397 msgid "Create Date" msgstr "تاريخ الإنشاء" -#: templates/crm/opportunities/opportunity_detail.html:586 +#: templates/crm/opportunities/opportunity_detail.html:525 #, fuzzy #| msgid "Assigned To" msgid "Assigned to" msgstr "مُعين إلى" -#: templates/crm/opportunities/opportunity_detail.html:608 -#: templates/crm/opportunities/opportunity_detail.html:787 +#: templates/crm/opportunities/opportunity_detail.html:547 +#: templates/crm/opportunities/opportunity_detail.html:726 #, fuzzy #| msgid "View Bill" msgid "View all" msgstr "عرض الفاتورة" -#: templates/crm/opportunities/opportunity_detail.html:754 -#, fuzzy -#| msgid "Current Asset" -msgid "Sent by" -msgstr "الأصول الحالية" - -#: templates/crm/opportunities/opportunity_detail.html:776 -msgid "sent" -msgstr "مرسلة" - -#: templates/crm/opportunities/opportunity_detail.html:787 +#: templates/crm/opportunities/opportunity_detail.html:726 #, fuzzy #| msgid "New Leads" msgid "View Less" msgstr "عملاء محتملون جدد" -#: templates/crm/opportunities/opportunity_detail.html:896 +#: templates/crm/opportunities/opportunity_detail.html:835 #, fuzzy #| msgid "Update Opportunity" msgid "Update Opportunity Stage" @@ -12399,23 +12583,23 @@ msgstr "إنشاء فرصة جديدة" msgid "Back to list" msgstr "العودة إلى القائمة" -#: templates/crm/opportunities/opportunity_form.html:124 +#: templates/crm/opportunities/opportunity_form.html:126 msgid "Reset" msgstr "إعادة تعيين" -#: templates/crm/opportunities/opportunity_form.html:141 +#: templates/crm/opportunities/opportunity_form.html:143 msgid "Opportunity Guidelines" msgstr "إرشادات الفرص" -#: templates/crm/opportunities/opportunity_form.html:146 +#: templates/crm/opportunities/opportunity_form.html:148 msgid "Probability indicates conversion chance" msgstr "تشير النسبة المئوية إلى فرصة التحويل" -#: templates/crm/opportunities/opportunity_form.html:152 +#: templates/crm/opportunities/opportunity_form.html:154 msgid "Update stage as deal progresses" msgstr "تحديث المرحلة مع تقدم الصفقة" -#: templates/crm/opportunities/opportunity_form.html:158 +#: templates/crm/opportunities/opportunity_form.html:160 msgid "Set realistic closing dates" msgstr "تحديد تواريخ إغلاق واقعية" @@ -12430,6 +12614,7 @@ msgstr "هل أنت متأكد أنك تريد حذف هذه الفرصة؟" #: templates/crm/opportunities/opportunity_list.html:48 #: ⁨templates/inventory/car_form_qabl alfalsafa.html⁩:45 +#: templates/inventory/car_list_view.html:108 #: templates/inventory/car_list_view.html:177 #: templates/inventory/scan_vin.html:13 templates/partials/search_box.html:11 #: templates/representatives/representative_list.html:14 @@ -12513,142 +12698,137 @@ msgstr "يرجى تصحيح القيم المكررة أدناه." msgid "Add Customer" msgstr "إضافة عميل" -#: templates/customers/customer_list.html:154 +#: templates/customers/customer_list.html:140 msgid "Are you sure you want to delete this customer" msgstr "هل أنت متأكد أنك تريد حذف هذا العميل" -#: templates/customers/customer_list.html:164 +#: templates/customers/customer_list.html:150 #, fuzzy #| msgid "No staff members found." msgid "No Customers found." msgstr "لم يتم العثور على أعضاء فريق." -#: templates/customers/view_customer.html:4 +#: templates/customers/view_customer.html:5 msgid "View Customer" msgstr "عرض العميل" -#: templates/customers/view_customer.html:13 +#: templates/customers/view_customer.html:14 msgid "Customer details" msgstr "تفاصيل العميل" -#: templates/customers/view_customer.html:26 +#: templates/customers/view_customer.html:27 #, fuzzy #| msgid "Are you sure you want to delete this customer" msgid "Are you sure you want to delete this customer?" msgstr "هل أنت متأكد أنك تريد حذف هذا العميل" -#: templates/customers/view_customer.html:54 +#: templates/customers/view_customer.html:55 msgid "Member since:" msgstr "عضو منذ:" -#: templates/customers/view_customer.html:63 +#: templates/customers/view_customer.html:64 #: templates/sales/estimates/estimate_list.html:4 #: templates/sales/estimates/estimate_list.html:13 msgid "Quotations" msgstr "العروض" -#: templates/customers/view_customer.html:74 +#: templates/customers/view_customer.html:75 #, fuzzy #| msgid "Personal Information" msgid "Default Information" msgstr "المعلومات الشخصية" -#: templates/customers/view_customer.html:128 -#, fuzzy -#| msgid "No accounts found in this category." -msgid "No notes found for this customer." -msgstr "لم يتم العثور على أي حسابات في هذه الفئة." - -#: templates/customers/view_customer.html:143 +#: templates/customers/view_customer.html:171 #, fuzzy #| msgid "Payment History" msgid "Sales History" msgstr "سجل المدفوعات" -#: templates/customers/view_customer.html:173 +#: templates/customers/view_customer.html:201 #, fuzzy #| msgid "Estimate" msgid "Estimates" msgstr "تقدير" -#: templates/customers/view_customer.html:189 +#: templates/customers/view_customer.html:217 #, fuzzy #| msgid "No accounts found in this category." msgid "No leads found for this customer." msgstr "لم يتم العثور على أي حسابات في هذه الفئة." -#: templates/customers/view_customer.html:206 +#: templates/customers/view_customer.html:234 #, fuzzy #| msgid "No accounts found in this category." msgid "No opportunities found for this customer." msgstr "لم يتم العثور على أي حسابات في هذه الفئة." -#: templates/customers/view_customer.html:241 +#: templates/customers/view_customer.html:269 #, fuzzy #| msgid "Is paid" msgid "Unpaid" msgstr "مدفوع" -#: templates/customers/view_customer.html:256 +#: templates/customers/view_customer.html:284 #, fuzzy #| msgid "No accounts found in this category." msgid "No estimates found for this customer." msgstr "لم يتم العثور على أي حسابات في هذه الفئة." -#: templates/customers/view_customer.html:286 +#: templates/customers/view_customer.html:314 msgid "Error loading form. Please try again later" msgstr "حدث خطأ أثناء تحميل النموذج. يرجى المحاولة مرة أخرى لاحقًا." -#: templates/dashboards/aging_inventory_list.html:8 +#: templates/dashboards/aging_inventory_list.html:5 +#: templates/dashboards/aging_inventory_list.html:11 #, fuzzy #| msgid "Inventory" msgid "Aging Inventory" msgstr "المخزن" -#: templates/dashboards/aging_inventory_list.html:12 +#: templates/dashboards/aging_inventory_list.html:15 #, fuzzy #| msgid "inventory value" msgid "Aging Inventory Total" msgstr "قيمة المخزون" -#: templates/dashboards/aging_inventory_list.html:14 +#: templates/dashboards/aging_inventory_list.html:17 msgid "Cars in inventory for more than 60 days." msgstr "السيارات الموجودة في المخزن منذ أكثر من 60 يوم." -#: templates/dashboards/aging_inventory_list.html:19 +#: templates/dashboards/aging_inventory_list.html:22 #: templates/recalls/recall_detail.html:30 #, fuzzy #| msgid "Make" msgid "Make:" msgstr "الصانع" -#: templates/dashboards/aging_inventory_list.html:29 +#: templates/dashboards/aging_inventory_list.html:32 #: templates/recalls/recall_detail.html:34 #, fuzzy #| msgid "Model" msgid "Model:" msgstr "الموديل" -#: templates/dashboards/aging_inventory_list.html:40 +#: templates/dashboards/aging_inventory_list.html:43 #: templates/recalls/recall_detail.html:38 #, fuzzy #| msgid "Series" msgid "Series:" msgstr "السلسلة" -#: templates/dashboards/aging_inventory_list.html:51 +#: templates/dashboards/aging_inventory_list.html:54 #, fuzzy #| msgid "Year" msgid "Year:" msgstr "السنة" -#: templates/dashboards/aging_inventory_list.html:62 +#: templates/dashboards/aging_inventory_list.html:65 #, fuzzy #| msgid "Stock Type" msgid "Stock Type:" msgstr "نوع المخزون" -#: templates/dashboards/aging_inventory_list.html:74 +#: templates/dashboards/aging_inventory_list.html:77 #: templates/inventory/car_list_view.html:73 #: templates/ledger/reports/car_sale_report.html:108 #: templates/ledger/reports/purchase_report.html:63 @@ -12656,49 +12836,49 @@ msgstr "نوع المخزون" msgid "Filter" msgstr "تصفية" -#: templates/dashboards/aging_inventory_list.html:79 +#: templates/dashboards/aging_inventory_list.html:82 #: templates/partials/tables.html:81 msgid "Page" msgstr "صفحة" -#: templates/dashboards/aging_inventory_list.html:79 +#: templates/dashboards/aging_inventory_list.html:82 #: templates/partials/pagination.html:5 templates/partials/tables.html:81 #, fuzzy #| msgid "Prof" msgid "of" msgstr "الأستاذ" -#: templates/dashboards/aging_inventory_list.html:80 +#: templates/dashboards/aging_inventory_list.html:83 #, fuzzy #| msgid "Total cars" msgid "Total Aging Cars:" msgstr "إجمالي السيارات" -#: templates/dashboards/aging_inventory_list.html:94 +#: templates/dashboards/aging_inventory_list.html:97 msgid "VIN:" msgstr "رقم الهيكل:" -#: templates/dashboards/aging_inventory_list.html:97 +#: templates/dashboards/aging_inventory_list.html:100 msgid "Age:" msgstr "العمر:" -#: templates/dashboards/aging_inventory_list.html:98 +#: templates/dashboards/aging_inventory_list.html:101 #: templates/plans/extend.html:43 templates/plans/plan_table.html:96 #: templates/pricing_page.html:111 msgid "days" msgstr "أيام" -#: templates/dashboards/aging_inventory_list.html:101 +#: templates/dashboards/aging_inventory_list.html:104 #, fuzzy #| msgid "Next Action Date" msgid "Acquisition Date:" msgstr "تاريخ الإجراء التالي" -#: templates/dashboards/aging_inventory_list.html:105 +#: templates/dashboards/aging_inventory_list.html:108 msgid "View Details" msgstr "عرض التفاصيل" -#: templates/dashboards/aging_inventory_list.html:115 +#: templates/dashboards/aging_inventory_list.html:118 msgid "Excellent! There are no cars in the aging inventory at the moment." msgstr "ممتاز! لا توجد أي سيارات في المخزن القديم في الوقت الحالي." @@ -12729,7 +12909,7 @@ msgid "Manager Dashboard" msgstr "لوحة القيادة الخاصة بي" #: templates/dashboards/general_dashboard.html:25 -#: templates/dashboards/sales_dashboard.html:12 +#: templates/dashboards/sales_dashboard.html:15 #: templates/ledger/reports/car_sale_report.html:54 #: templates/ledger/reports/dashboard.html:155 #: templates/ledger/reports/purchase_report.html:54 @@ -12737,7 +12917,7 @@ msgid "Start Date" msgstr "تاريخ البدء" #: templates/dashboards/general_dashboard.html:34 -#: templates/dashboards/sales_dashboard.html:21 +#: templates/dashboards/sales_dashboard.html:24 #: templates/ledger/reports/car_sale_report.html:58 #: templates/ledger/reports/dashboard.html:165 #: templates/ledger/reports/purchase_report.html:58 @@ -12745,7 +12925,7 @@ msgid "End Date" msgstr "تاريخ الانتهاء" #: templates/dashboards/general_dashboard.html:43 -#: templates/dashboards/sales_dashboard.html:30 +#: templates/dashboards/sales_dashboard.html:33 #, fuzzy #| msgid "Filter" msgid "Apply Filter" @@ -12904,7 +13084,7 @@ msgstr "اختر العلامات التجارية" #: templates/dashboards/partials/chart.html:72 #: templates/dashboards/partials/chart.html:122 -msgid "Please select a make from above to see the statistics" +msgid "Please Select a Make from above to see the Statistics" msgstr "" #: templates/dashboards/partials/chart.html:80 @@ -13028,14 +13208,14 @@ msgid "Used Cars Cost" msgstr "تكلفة السيارات المستخدمة" #: templates/dashboards/partials/financial_data_cards.html:173 -#: templates/dashboards/sales_dashboard.html:36 +#: templates/dashboards/sales_dashboard.html:39 #, fuzzy #| msgid "Inventory Items" msgid "Inventory KPIs" msgstr "عناصر المخزون" #: templates/dashboards/partials/financial_data_cards.html:178 -#: templates/dashboards/sales_dashboard.html:40 +#: templates/dashboards/sales_dashboard.html:43 #, fuzzy #| msgid "How many cars are in inventory" msgid "Total Cars in Inventory" @@ -13048,14 +13228,14 @@ msgid "Total Inventory Value" msgstr "قيمة المخزون" #: templates/dashboards/partials/financial_data_cards.html:196 -#: templates/dashboards/sales_dashboard.html:48 +#: templates/dashboards/sales_dashboard.html:51 #, fuzzy #| msgid "How many cars are in inventory" msgid "New Cars in Inventory" msgstr "كم عدد السيارات في المخزون" #: templates/dashboards/partials/financial_data_cards.html:204 -#: templates/dashboards/sales_dashboard.html:56 +#: templates/dashboards/sales_dashboard.html:59 #, fuzzy #| msgid "Update Inventory" msgid "Used Cars in Inventory" @@ -13074,17 +13254,24 @@ msgid "Used Cars Inventory Value" msgstr "تحديث عنصر المخزون" #: templates/dashboards/partials/financial_data_cards.html:234 -#: templates/dashboards/sales_dashboard.html:66 +#: templates/dashboards/sales_dashboard.html:69 msgid "Aging Inventory (> 60 days)" msgstr "المخزون القديم (> 60 يوم)" #: templates/dashboards/partials/financial_data_cards.html:247 -#, python-format +#, fuzzy, python-format +#| msgid "" +#| "\n" +#| " Monthly Performance Trends (%(start_date)s - %(end_date)s)\n" +#| " " msgid "" "\n" -" KPIs للصحة المالية (%(start_date)s - %(end_date)s)\n" +" Financial Health KPIs (%(start_date)s - %(end_date)s)\n" " " msgstr "" +"\n" +" اتجاهات الأداء الشهري (%(start_date)s - %(end_date)s)\n" +" " #: templates/dashboards/partials/financial_data_cards.html:255 #: templates/ledger/reports/car_sale_report.html:133 @@ -13116,35 +13303,36 @@ msgstr "إجمالي التكلفة" msgid "Total Expenses" msgstr "مصاريف الضرائب" -#: templates/dashboards/sales_dashboard.html:7 +#: templates/dashboards/sales_dashboard.html:4 +#: templates/dashboards/sales_dashboard.html:10 #, fuzzy #| msgid "Dashboard" msgid "Sales Dashboard" msgstr "لوحة القيادة" -#: templates/dashboards/sales_dashboard.html:80 +#: templates/dashboards/sales_dashboard.html:83 #, fuzzy #| msgid "Lead Source" msgid "Top Lead Sources" msgstr "مصدر العميل المحتمل" -#: templates/dashboards/sales_dashboard.html:80 +#: templates/dashboards/sales_dashboard.html:83 #, fuzzy #| msgid "Total cars" msgid "Total Leads: " msgstr "إجمالي السيارات" -#: templates/dashboards/sales_dashboard.html:91 +#: templates/dashboards/sales_dashboard.html:94 msgid "Lead Conversion Funnel" msgstr "مهرجان تحويل العملاء المحتملين" -#: templates/dashboards/sales_dashboard.html:122 +#: templates/dashboards/sales_dashboard.html:125 #, fuzzy #| msgid "New Leads" msgid "Number of Leads" msgstr "عملاء محتملون جدد" -#: templates/dashboards/sales_dashboard.html:124 +#: templates/dashboards/sales_dashboard.html:127 #, fuzzy #| msgid "Opportunities" msgid "Number of Opportunities" @@ -13159,7 +13347,7 @@ msgid "Select Car Makes You Sell" msgstr "اختر ماركات السيارات التي تبيعها" #: templates/dealers/dealer_detail.html:4 -#: templates/dealers/dealer_detail.html:10 templates/staff/staff_detail.html:4 +#: templates/dealers/dealer_detail.html:10 msgid "Profile" msgstr "الملف الشخصي" @@ -13213,7 +13401,7 @@ msgid "Car Brands" msgstr "نقل السيارة" #: templates/dealers/dealer_detail.html:155 -#: templates/inventory/car_detail.html:398 templates/plans/current.html:26 +#: templates/inventory/car_detail.html:400 templates/plans/current.html:26 msgid "Expired" msgstr "منتهي الصلاحية" @@ -13247,7 +13435,7 @@ msgid "Subscribe Now" msgstr "الاشتراك" #: templates/dealers/dealer_detail.html:199 -#: templates/inventory/car_detail.html:387 +#: templates/inventory/car_detail.html:389 msgid "Renew" msgstr "تجديد" @@ -13302,11 +13490,6 @@ msgstr "عزيزي المسؤول،" msgid "This is a friendly reminder for your upcoming schedule" msgstr "هذه تذكرة بموعدك القادم." -#: templates/emails/schedule_reminder.html:19 -#: templates/emails/schedule_reminder.txt:5 -msgid "Purpose" -msgstr "الغرض" - #: templates/emails/schedule_reminder.html:21 #: templates/emails/schedule_reminder.txt:6 #, fuzzy @@ -13461,6 +13644,7 @@ msgid "Create Group" msgstr "تحديث المجموعة" #: templates/groups/group_list.html:6 templates/groups/group_list.html:15 +#: templates/users/user_group_form.html:5 msgid "Groups" msgstr "المجموعات" @@ -13552,6 +13736,140 @@ msgstr "اختيار" msgid "Permissions will be updated immediately" msgstr "سيتم تحديث الأذونات على الفور" +#: templates/haikal_policy/refund_policy.html:5 +msgid "Haikal Refund Policy" +msgstr "سياسة رد الأموال لهيكل" + +#: templates/haikal_policy/refund_policy.html:7 +msgid "This policy for Haikal DMS by Tenhal outlines refund conditions." +msgstr "هذه السياسة لهيكل من تنحل وتحديد شروط رد الأموال." + +#: templates/haikal_policy/refund_policy.html:12 +msgid "1. 14-Day Guarantee" +msgstr "1. ضمان 14 يوما" + +#: templates/haikal_policy/refund_policy.html:14 +msgid "" +"Get a full refund of your initial subscription fee within " +"14 days of purchase if you're not satisfied. This is for " +"new customers only and excludes non-refundable fees." +msgstr "" +"احصل على رد كامل لرسم اشتراكك الأولي الرسم الأولي للاشتراك " +"في غضون 14 يوما من تاريخ الشراء إذا لم تكن راضيًا عنها. هذا " +"للزبائن الجدد فقط ولا يشمل الرسوم غير القابلة للاسترداد." + +#: templates/haikal_policy/refund_policy.html:19 +msgid "2. Refund Eligibility" +msgstr "2. أهليّة رد الأموال" + +#: templates/haikal_policy/refund_policy.html:20 +msgid "Refunds are given for:" +msgstr "تُمنح رد الأموال لما يلي:" + +#: templates/haikal_policy/refund_policy.html:23 +msgid "Service Failure:" +msgstr "فشل الخدمة:" + +#: templates/haikal_policy/refund_policy.html:23 +msgid "If the service consistently fails and our support team can't fix it." +msgstr "" +"إذا فشل الخدمة باستمرار ولم يكن فريق الدعم لدينا قادرا على إصلاحها." + +#: templates/haikal_policy/refund_policy.html:26 +msgid "Billing Errors:" +msgstr "أخطاء الفاتورة:" + +#: templates/haikal_policy/refund_policy.html:26 +msgid "For incorrect or duplicate charges." +msgstr "" +"لأغراض الشحن غير الصحيحة أو المكررة. يرجى تصحيح القيم المكررة أدناه." + +#: templates/haikal_policy/refund_policy.html:32 +msgid "3. Non-Refundable Situations" +msgstr "3. حالات غير قابلة للاسترداد" + +#: templates/haikal_policy/refund_policy.html:33 +msgid "We don't offer refunds for:" +msgstr "لا نمنح رد أموال لما يلي:" + +#: templates/haikal_policy/refund_policy.html:36 +msgid "Change of Mind:" +msgstr "تغيير في الرأي:" + +#: templates/haikal_policy/refund_policy.html:36 +msgid "If you simply decide not to use the service." +msgstr "إذا قررتم ببساطة عدم استخدام الخدمة." + +#: templates/haikal_policy/refund_policy.html:39 +msgid "Recurring Payments:" +msgstr "الدفعات المتكررة:" + +#: templates/haikal_policy/refund_policy.html:39 +msgid "Payments after the initial 14-day period." +msgstr "الدفعات بعد فترة 14 يوما الأولى." + +#: templates/haikal_policy/refund_policy.html:42 +msgid "Partial Use:" +msgstr "استخدام جزئي:" + +#: templates/haikal_policy/refund_policy.html:42 +msgid "We don't provide prorated refunds for partial months or years." +msgstr "" +"لا نمنح رد أموال متدرج للاستخدام الجزئي للأشهر أو السنوات." + +#: templates/haikal_policy/refund_policy.html:45 +msgid "One-Time Fees:" +msgstr "الرسوم ذات مرة واحدة:" + +#: templates/haikal_policy/refund_policy.html:45 +msgid "Setup and professional services fees are non-refundable." +msgstr "رسوم الإعداد والخدمات المهنية غير قابلة للاسترداد." + +#: templates/haikal_policy/refund_policy.html:51 +msgid "4. How to Request" +msgstr "4. كيفية الطلب" + +#: templates/haikal_policy/refund_policy.html:53 +msgid "Email our Billing and Support team at" +msgstr "إرسال بريد إلكتروني إلى فريق الدعم والفواتير لدينا في:" + +#: templates/haikal_policy/refund_policy.html:53 +msgid "" +"with your company name, account ID, invoice number, and a detailed reason " +"for the refund." +msgstr "" +" مع اسم الشركة، رقم حسابك، رقم الفاتورة، وسبب مفصل لرد الأموال." + +#: templates/haikal_policy/refund_policy.html:58 +msgid "5. Processing" +msgstr "5. المعالجة" + +#: templates/haikal_policy/refund_policy.html:60 +msgid "" +"Approved refunds are processed in 10-14 business days to " +"your original payment method." +msgstr "" +"تتم معالجة رد الأموال المعتمدة في غضون 10-14 يوما عمل " +"إلى طريقة الدفع الأصلية لديك." + +#: templates/haikal_policy/refund_policy.html:65 +msgid "6. Account Termination" +msgstr "6. إنهاء الحساب" + +#: templates/haikal_policy/refund_policy.html:67 +msgid "" +"Once a refund is issued, your access is revoked. You are responsible for " +"exporting your data before termination." +msgstr "" +"عندما يتم إصدار رد أموال، يتوقف الوصول إلى حسابك. أنت مسؤول عن تصدير بياناتك " +"قبل إلغاء الحساب." + +#: templates/haikalbot/chat.html:3 +#, fuzzy +#| msgid "HaikalBot" +msgid "Haikal Bot" +msgstr "هيكل بوت" + #: templates/haikalbot/chat.html:11 msgid "HaikalBot" msgstr "هيكل بوت" @@ -13594,124 +13912,124 @@ msgstr "ما هي السيارات الأكثر مبيعًا" msgid "Type your message here" msgstr "اكتب رسالتك هنا" -#: templates/header.html:47 +#: templates/header.html:42 msgid "add car" msgstr "إضافة سيارة" -#: templates/header.html:64 templates/inventory/car_inventory.html:62 +#: templates/header.html:59 templates/inventory/car_inventory.html:62 msgid "Stock" msgstr "المخزون" -#: templates/header.html:84 +#: templates/header.html:79 msgid "purchase Orders" msgstr "أوامر الشراء" -#: templates/header.html:92 +#: templates/header.html:87 msgid "Inventory List" msgstr "حجم المخزون" -#: templates/header.html:113 templates/header.html:120 +#: templates/header.html:108 templates/header.html:115 msgid "crm" msgstr "إدارة علاقات العملاء" -#: templates/header.html:125 +#: templates/header.html:120 msgid "leads" msgstr "الفرص" -#: templates/header.html:132 +#: templates/header.html:127 msgid "leads Tracking" msgstr "متابعة العملاء المحتملين" -#: templates/header.html:197 templates/header.html:204 +#: templates/header.html:192 templates/header.html:199 msgid "sales" msgstr "المبيعات" -#: templates/header.html:211 +#: templates/header.html:206 msgid "create quotation" msgstr "إنشاء عرض" -#: templates/header.html:220 +#: templates/header.html:215 msgid "quotations" msgstr "العروض" -#: templates/header.html:229 templates/sales/sales_list.html:5 +#: templates/header.html:224 templates/sales/sales_list.html:5 #: templates/sales/sales_list.html:14 msgid "Sale Orders" msgstr "اوامر البيع" -#: templates/header.html:238 +#: templates/header.html:233 msgid "invoices" msgstr "الفواتير" -#: templates/header.html:259 templates/header.html:266 -#: templates/header.html:368 +#: templates/header.html:254 templates/header.html:261 +#: templates/header.html:363 msgid "Financials" msgstr "البيانات المالية" -#: templates/header.html:321 +#: templates/header.html:316 msgid "vendors" msgstr "الموردين" -#: templates/header.html:330 +#: templates/header.html:325 msgid "bills" msgstr "الفواتير" -#: templates/header.html:374 +#: templates/header.html:369 msgid "Cash Flow" msgstr "التدفق النقدي" -#: templates/header.html:398 +#: templates/header.html:393 msgid "Car purchase Report" msgstr "تقارير شراء السيارات" -#: templates/header.html:407 templates/ledger/reports/car_sale_report.html:6 +#: templates/header.html:402 templates/ledger/reports/car_sale_report.html:6 #: templates/ledger/reports/car_sale_report.html:40 msgid "Car Sale Report" msgstr "تقارير مبيعات السيارات" -#: templates/header.html:488 templates/welcome-temp.html:89 +#: templates/header.html:483 templates/welcome-temp.html:89 #: templates/welcome_header.html:15 msgid "Haikal" msgstr "هيكل" -#: templates/header.html:499 +#: templates/header.html:494 msgid "Logged in as " msgstr "المستخدم " -#: templates/header.html:500 +#: templates/header.html:495 msgid "Hello, " msgstr "مرحبا" -#: templates/header.html:518 templates/header.html:527 +#: templates/header.html:528 templates/header.html:537 #: templates/welcome_header.html:29 templates/welcome_header.html:38 msgid "Switch theme" msgstr "تبديل النمط" -#: templates/header.html:602 templates/header.html:608 +#: templates/header.html:612 templates/header.html:618 msgid "profile" msgstr "الملف الشخصي" -#: templates/header.html:614 +#: templates/header.html:624 msgid "Staff & Groups" msgstr "الموظفون والمجموعات" -#: templates/header.html:624 +#: templates/header.html:634 msgid "Settings" msgstr "الإعدادات" -#: templates/header.html:630 +#: templates/header.html:640 msgid "Admin Managemnet" msgstr "إدارة المشرفين" -#: templates/header.html:636 +#: templates/header.html:646 msgid "Help Center" msgstr "مركز المساعدة" -#: templates/header.html:643 +#: templates/header.html:653 msgid "My Calendar" msgstr "تقويمي" -#: templates/header.html:661 +#: templates/header.html:671 msgid "Privacy policy" msgstr "سياسة الخصوصية" @@ -13794,137 +14112,137 @@ msgstr "السيارة قيد عملية النقل إلى تاجر آخر، ي msgid "This car is reserved until " msgstr "هذه السيارة محجوزة حتى " -#: templates/inventory/car_detail.html:97 templates/inventory/car_list.html:130 +#: templates/inventory/car_detail.html:97 templates/inventory/car_list.html:133 msgid "year" msgstr "السنة" #: templates/inventory/car_detail.html:101 templates/inventory/car_form.html:92 #: ⁨templates/inventory/car_form_qabl alfalsafa.html⁩:70 -#: templates/inventory/car_list.html:90 +#: templates/inventory/car_list.html:93 msgid "make" msgstr "الصانع" #: templates/inventory/car_detail.html:105 #: templates/inventory/car_form.html:103 #: ⁨templates/inventory/car_form_qabl alfalsafa.html⁩:83 -#: templates/inventory/car_list.html:108 +#: templates/inventory/car_list.html:111 msgid "model" msgstr "الموديل" #: templates/inventory/car_detail.html:109 -#: templates/inventory/car_list.html:141 +#: templates/inventory/car_list.html:144 msgid "series" msgstr "السلسلة" #: templates/inventory/car_detail.html:113 #: templates/inventory/car_form.html:126 #: ⁨templates/inventory/car_form_qabl alfalsafa.html⁩:117 -#: templates/inventory/car_list.html:152 +#: templates/inventory/car_list.html:155 msgid "trim" msgstr "الفئة" #: templates/inventory/car_detail.html:143 -#: templates/inventory/car_detail.html:575 +#: templates/inventory/car_detail.html:577 #: templates/inventory/car_form.html:137 templates/inventory/car_form.html:248 #: ⁨templates/inventory/car_form_qabl alfalsafa.html⁩:196 #: ⁨templates/inventory/car_form_qabl alfalsafa.html⁩:229 #: ⁨templates/inventory/car_form_qabl alfalsafa.html⁩:252 -#: templates/inventory/car_list.html:48 templates/inventory/car_list.html:236 +#: templates/inventory/car_list.html:51 templates/inventory/car_list.html:239 msgid "specifications" msgstr "المواصفات" -#: templates/inventory/car_detail.html:212 +#: templates/inventory/car_detail.html:213 #: templates/inventory/car_inventory.html:125 msgid "Our Showroom" msgstr "معرضنا" -#: templates/inventory/car_detail.html:223 +#: templates/inventory/car_detail.html:225 msgid "No location available." msgstr "لا يوجد موقع متاح." -#: templates/inventory/car_detail.html:248 -#: templates/inventory/car_detail.html:279 -#: templates/inventory/car_detail.html:334 +#: templates/inventory/car_detail.html:250 +#: templates/inventory/car_detail.html:281 +#: templates/inventory/car_detail.html:336 msgid "Cannot Edit, Car in Transfer." msgstr "لا يمكن التعديل، السيارة قيد النقل." -#: templates/inventory/car_detail.html:258 +#: templates/inventory/car_detail.html:260 #: templates/sales/orders/order_details.html:212 msgid "Financial Details" msgstr "التفاصيل المالية" -#: templates/inventory/car_detail.html:286 +#: templates/inventory/car_detail.html:288 msgid "No finance details available." msgstr "لا توجد تفاصيل مالية متاحة." -#: templates/inventory/car_detail.html:299 +#: templates/inventory/car_detail.html:301 msgid "Colors Details" msgstr "تفاصيل الألوان" -#: templates/inventory/car_detail.html:306 +#: templates/inventory/car_detail.html:308 msgid "Exterior" msgstr "الخارجي" -#: templates/inventory/car_detail.html:317 +#: templates/inventory/car_detail.html:319 msgid "Interior" msgstr "الداخلي" -#: templates/inventory/car_detail.html:342 +#: templates/inventory/car_detail.html:344 msgid "No color details available." msgstr "لا توجد تفاصيل ألوان متاحة." -#: templates/inventory/car_detail.html:345 +#: templates/inventory/car_detail.html:347 msgid "Add Color" msgstr "إضافة لون" -#: templates/inventory/car_detail.html:359 +#: templates/inventory/car_detail.html:361 msgid "Reservations Details" msgstr "تفاصيل الحجز" -#: templates/inventory/car_detail.html:367 +#: templates/inventory/car_detail.html:369 msgid "Expires At" msgstr "ينتهي في" -#: templates/inventory/car_detail.html:412 +#: templates/inventory/car_detail.html:414 #: templates/inventory/reserve_car.html:22 msgid "Reserve" msgstr "حجز" -#: templates/inventory/car_detail.html:428 +#: templates/inventory/car_detail.html:430 #: templates/inventory/transfer_details.html:72 msgid "Transfer Details" msgstr "تفاصيل النقل" -#: templates/inventory/car_detail.html:436 +#: templates/inventory/car_detail.html:438 msgid "From Showroom" msgstr "من صالة العرض" -#: templates/inventory/car_detail.html:437 +#: templates/inventory/car_detail.html:439 msgid "To Showroom" msgstr "إلى صالة العرض" -#: templates/inventory/car_detail.html:449 +#: templates/inventory/car_detail.html:451 #, fuzzy #| msgid "Quotation is not ready for approval" msgid "waiting for approval" msgstr "العرض غير جاهز للموافقة." -#: templates/inventory/car_detail.html:451 +#: templates/inventory/car_detail.html:453 msgid "waiting for dealer acceptance" msgstr "في انتظار قبول التاجر" -#: templates/inventory/car_detail.html:542 +#: templates/inventory/car_detail.html:544 msgid "Are you sure you want to reserve this car?" msgstr "هل أنت متأكد أنك تريد حجز هذه السيارة؟" -#: templates/inventory/car_detail.html:651 -#: templates/inventory/car_list.html:552 +#: templates/inventory/car_detail.html:653 +#: templates/inventory/car_list.html:555 #: templates/partials/specifications_modal.html:18 msgid "No specifications available." msgstr "لا توجد مواصفات متاحة." -#: templates/inventory/car_detail.html:655 -#: templates/inventory/car_list.html:556 +#: templates/inventory/car_detail.html:657 +#: templates/inventory/car_list.html:559 msgid "Error loading specifications." msgstr "حدث خطأ أثناء تحميل المواصفات." @@ -13985,7 +14303,7 @@ msgstr "اختيار" #: templates/inventory/car_form.html:143 #: ⁨templates/inventory/car_form_qabl alfalsafa.html⁩:202 -#: templates/inventory/car_list.html:25 templates/inventory/car_list.html:230 +#: templates/inventory/car_list.html:28 templates/inventory/car_list.html:233 msgid "options" msgstr "الخيارات" @@ -14001,7 +14319,7 @@ msgstr "حفظ والانتقال إلى المخزون" #: templates/inventory/car_form.html:285 #: ⁨templates/inventory/car_form_qabl alfalsafa.html⁩:262 -#: templates/inventory/car_list.html:163 +#: templates/inventory/car_list.html:166 msgid "equipment" msgstr "التجهيزات" @@ -14033,17 +14351,6 @@ msgstr "الرجاء إدخال رقم هيكل صالح مكون من 17 حرف msgid "An error occurred while decoding the VIN." msgstr "حدث خطأ أثناء فك تشفير الهيكل" -#: templates/inventory/car_form.html:743 templates/inventory/car_form.html:783 -#: ⁨templates/inventory/car_form_qabl alfalsafa.html⁩:612 -#: templates/registration/signup.html:326 -msgid "Please Wait" -msgstr "الرجاء الإنتظار" - -#: templates/inventory/car_form.html:744 templates/inventory/car_form.html:784 -#: ⁨templates/inventory/car_form_qabl alfalsafa.html⁩:613 -msgid "Loading" -msgstr "تحميل" - #: templates/inventory/car_history.html:24 msgid "History" msgstr "التاريخ" @@ -14069,53 +14376,59 @@ msgstr "لا توجد سيارات متاحة." msgid "Add a Car" msgstr "إضافة سيارة" -#: templates/inventory/car_list.html:81 +#: templates/inventory/car_list.html:5 +#, fuzzy +#| msgid "Car Details" +msgid "Car list" +msgstr "تفاصيل السيارة" + +#: templates/inventory/car_list.html:84 msgid "search" msgstr "بحث" -#: templates/inventory/car_list.html:92 templates/inventory/car_list.html:110 -#: templates/inventory/car_list.html:121 templates/inventory/car_list.html:132 -#: templates/inventory/car_list.html:143 templates/inventory/car_list.html:154 -#: templates/inventory/car_list.html:165 templates/inventory/car_list.html:176 -#: templates/inventory/car_list.html:188 templates/inventory/car_list.html:283 -#: templates/inventory/car_list.html:284 templates/inventory/car_list.html:285 -#: templates/inventory/car_list.html:286 templates/inventory/car_list.html:287 -#: templates/inventory/car_list.html:288 templates/inventory/car_list.html:388 -#: templates/inventory/car_list.html:389 templates/inventory/car_list.html:390 -#: templates/inventory/car_list.html:391 templates/inventory/car_list.html:392 -#: templates/inventory/car_list.html:417 templates/inventory/car_list.html:418 -#: templates/inventory/car_list.html:419 templates/inventory/car_list.html:420 -#: templates/inventory/car_list.html:446 templates/inventory/car_list.html:447 -#: templates/inventory/car_list.html:448 templates/inventory/car_list.html:473 -#: templates/inventory/car_list.html:474 templates/inventory/car_list.html:498 +#: templates/inventory/car_list.html:95 templates/inventory/car_list.html:113 +#: templates/inventory/car_list.html:124 templates/inventory/car_list.html:135 +#: templates/inventory/car_list.html:146 templates/inventory/car_list.html:157 +#: templates/inventory/car_list.html:168 templates/inventory/car_list.html:179 +#: templates/inventory/car_list.html:191 templates/inventory/car_list.html:286 +#: templates/inventory/car_list.html:287 templates/inventory/car_list.html:288 +#: templates/inventory/car_list.html:289 templates/inventory/car_list.html:290 +#: templates/inventory/car_list.html:291 templates/inventory/car_list.html:391 +#: templates/inventory/car_list.html:392 templates/inventory/car_list.html:393 +#: templates/inventory/car_list.html:394 templates/inventory/car_list.html:395 +#: templates/inventory/car_list.html:420 templates/inventory/car_list.html:421 +#: templates/inventory/car_list.html:422 templates/inventory/car_list.html:423 +#: templates/inventory/car_list.html:449 templates/inventory/car_list.html:450 +#: templates/inventory/car_list.html:451 templates/inventory/car_list.html:476 +#: templates/inventory/car_list.html:477 templates/inventory/car_list.html:501 msgid "select" msgstr "اختيار" -#: templates/inventory/car_list.html:119 +#: templates/inventory/car_list.html:122 msgid "generation" msgstr "الجيل" -#: templates/inventory/car_list.html:217 +#: templates/inventory/car_list.html:220 msgid "Enter remarks" msgstr "أدخل الملاحظات" -#: templates/inventory/car_list.html:239 +#: templates/inventory/car_list.html:242 msgid "save" msgstr "حفظ" -#: templates/inventory/car_list.html:355 +#: templates/inventory/car_list.html:358 msgid "Make not found for the decoded VIN." msgstr "لم يتم العثور على الشركة الصانعة الخاصة برقم الهيكل المدخل." -#: templates/inventory/car_list.html:363 +#: templates/inventory/car_list.html:366 msgid "Please enter a valid 17-character VIN number." msgstr "الرجاء إدخال رقم هيكل صالح مكون من 17 حرفًا." -#: templates/inventory/car_list.html:597 +#: templates/inventory/car_list.html:600 msgid "No options available." msgstr "لا توجد سيارات متاحة." -#: templates/inventory/car_list.html:601 +#: templates/inventory/car_list.html:604 msgid "Error loading options." msgstr "خطأ في تحميل الخيارات." @@ -14212,27 +14525,33 @@ msgstr "لا يوجد فئات متاحة." msgid "No models available." msgstr "لا توجد موديلات متاحة." -#: templates/inventory/list.html:13 +#: templates/inventory/list.html:6 +#, fuzzy +#| msgid "Inventory" +msgid "Track Inventory" +msgstr "المخزن" + +#: templates/inventory/list.html:16 msgid "Inventory Ordered" msgstr "المخزون جاهز" -#: templates/inventory/list.html:22 +#: templates/inventory/list.html:25 msgid "No inventory in ordered status." msgstr "إجمالي المخزون المستلم." -#: templates/inventory/list.html:33 +#: templates/inventory/list.html:36 msgid "Inventory In Transit" msgstr "إدارة المخزون" -#: templates/inventory/list.html:42 +#: templates/inventory/list.html:45 msgid "No inventory in transit." msgstr "إجمالي المخزون المستلم." -#: templates/inventory/list.html:53 +#: templates/inventory/list.html:56 msgid "Inventory Received" msgstr "المخزون جاهز" -#: templates/inventory/list.html:62 +#: templates/inventory/list.html:65 msgid "No inventory in received status." msgstr "إجمالي المخزون المستلم." @@ -14528,6 +14847,12 @@ msgstr "إضافة المزيد" msgid "No bill found." msgstr "لم يتم العثور على فاتورة." +#: templates/ledger/bills/bill_update_form.html:5 +#, fuzzy +#| msgid "Bill Date" +msgid "Bill Update" +msgstr "تاريخ الفاتورة" + #: templates/ledger/bills/bill_update_form.html:15 #: templates/sales/estimates/estimate_detail.html:115 msgid "Mark As Review" @@ -14553,14 +14878,11 @@ msgstr "عرض المعالملات" msgid "Back to COA List" msgstr "العودة إلى قائمة مخطط الحسابات" -#: templates/ledger/coa_accounts/account_form.html:9 +#: templates/ledger/coa_accounts/account_form.html:8 +#: templates/ledger/coa_accounts/account_form.html:21 msgid "Add New Account" msgstr "إضافة حساب جديد" -#: templates/ledger/coa_accounts/account_form.html:19 -msgid "Edit Account" -msgstr "تعديل الحساب" - #: templates/ledger/coa_accounts/account_list.html:21 msgid "New Account" msgstr "حساب جديد" @@ -14597,11 +14919,19 @@ msgstr "المبلغ المستحق لك" msgid "Invoice Amount" msgstr "لم يتم العثور على فاتورة" -#: templates/ledger/journal_entry/journal_entry_delete.html:13 +#: templates/ledger/journal_entry/journal_entry_delete.html:7 #, fuzzy -#| msgid "Are you sure you want to delete this lead?" -msgid "Are you sure you want to delete?" -msgstr "هل أنت متأكد أنك تريد حذف هذا العميل المحتمل؟" +#| msgid "Create Journal Entry" +msgid "Delete Journal Entry" +msgstr "إنشاء إدخال يومية" + +#: templates/ledger/journal_entry/journal_entry_delete.html:21 +#, fuzzy +#| msgid "Are you sure you want to delete this account?" +msgid "" +"Are you sure you want to delete the journal entry? This action cannot be " +"undone." +msgstr "هل أنت متأكد أنك تريد حذف هذا الحساب؟" #: templates/ledger/journal_entry/journal_entry_list.html:27 #: templates/sales/estimates/estimate_detail.html:61 @@ -14632,17 +14962,30 @@ msgstr "#" msgid "No Transactions Found" msgstr "لم يتم العثور على معاملات" -#: templates/ledger/ledger/ledger_detail.html:50 +#: templates/ledger/journal_entry/journal_entry_txs.html:6 +#, fuzzy +#| msgid "Journal Entry Transactions" +msgid "Jorunal Entry Transactions" +msgstr "معاملات إدخال اليومية" + +#: templates/ledger/ledger/ledger_delete.html:6 +#, fuzzy +#| msgid "Delete Closing Entry" +msgid "Delete Ledger Entry" +msgstr "حذف القيد الختامي" + +#: templates/ledger/ledger/ledger_detail.html:6 +#, fuzzy +#| msgid "Order Details" +msgid "ledger Detail" +msgstr "تفاصيل الطلب" + +#: templates/ledger/ledger/ledger_detail.html:53 #, fuzzy #| msgid "You Still Owe" msgid "You Are Owed" msgstr "ما زلت مديناً" -#: templates/ledger/ledger/ledger_list.html:24 -#: templates/ledger/reports/car_sale_report.html:233 -msgid "Created Date" -msgstr "تاريخ الإنشاء" - #: templates/ledger/ledger/ledger_list.html:121 msgid "No Entries found" msgstr "لم يتم العثور على أي مدخلات" @@ -14997,6 +15340,10 @@ msgstr "" msgid "Modal body text goes here." msgstr "" +#: templates/notifications-copy.html:36 +msgid "Mark all as read" +msgstr "وضع علامة مقروء على الكل" + #: templates/organizations/organization_detail.html:4 msgid "Organization Details" msgstr "تفاصيل الشركة" @@ -15039,7 +15386,8 @@ msgstr "لم يتم العثور على معاملات" #: templates/otp/verify_otp.html:25 msgid "An OTP has been sent to your email. Please enter it below" -msgstr "تم إرسال رمز التحقق لمرة واحدة (OTP) إلى بريدك الإلكتروني. يرجى إدخاله أدناه." +msgstr "" +"تم إرسال رمز التحقق لمرة واحدة (OTP) إلى بريدك الإلكتروني. يرجى إدخاله أدناه." #: templates/otp/verify_otp.html:33 msgid "Enter OTP" @@ -15317,7 +15665,7 @@ msgid "no" msgstr "لا" #: templates/plans/extend.html:39 templates/plans/plan_table.html:64 -#: templates/subscriptions/subscription_plan.html:6 templates/welcome.html:128 +#: templates/subscriptions/subscription_plan.html:6 templates/welcome.html:127 #: templates/welcome_header.html:85 msgid "Pricing" msgstr "السعر" @@ -15424,54 +15772,56 @@ msgstr "تم تطبيق الضريبة العكسية" msgid "If you have any questions about this invoice, please contact us" msgstr "إذا كانت لديك أي أسئلة بخصوص هذه الفاتورة، يرجى الاتصال بنا" -#: templates/plans/order_detail.html:4 templates/sales/saleorder_detail.html:33 +#: templates/plans/order_detail.html:3 templates/sales/saleorder_detail.html:33 msgid "Order Details" msgstr "تفاصيل الطلب" #: templates/plans/order_detail.html:18 -#, fuzzy, python-format -#| msgid "" -#| "Order #%(order_id)s\n" -#| " (status: %(order_status)s)" -msgid "" -"Order #%(order_id)s\n" -" (status: %(order_status)s)" +#, python-format +msgid "Order #%(order_id)s" msgstr "" -"طلب رقم %(order_id)s\n" -"(الحالة: %(order_status)s)" -#: templates/plans/order_detail.html:26 +#: templates/plans/order_detail.html:30 templates/pricing_page.html:288 +#: templates/sales/orders/order_details.html:100 +msgid "Order Summary" +msgstr "ملخص الطلب" + +#: templates/plans/order_detail.html:42 msgid "Printable documents" msgstr "مستندات قابلة للطباعة" -#: templates/plans/order_detail.html:34 templates/pricing_page.html:320 +#: templates/plans/order_detail.html:61 templates/pricing_page.html:320 msgid "Payment" msgstr "الدفع" -#: templates/plans/order_detail.html:37 -#, python-format +#: templates/plans/order_detail.html:67 +#, fuzzy, python-format +#| msgid "" +#| "\n" +#| " Payment completed on: %(completed)s\n" +#| " " msgid "" "\n" -" Payment completed on: %(completed)s\n" -" " +" Payment completed on: %(completed|date:\"F j, Y\")s\n" +" " msgstr "" "\n" " تم إتمام الدفع بتاريخ: %(completed)s\n" " " -#: templates/plans/order_detail.html:58 +#: templates/plans/order_detail.html:87 #, fuzzy -#| msgid "Create Order" -msgid "Pay the order" -msgstr "إنشاء طلب" - -#: templates/plans/order_detail.html:65 +#| msgid "" +#| "\n" +#| " This order is expired. It will accept an incoming " +#| "payment made earlier, but new payment cannot be\n" +#| " initialized. Please make a new order if necessary.\n" +#| " " msgid "" "\n" -" This order is expired. It will accept an incoming " -"payment made earlier, but new payment cannot be\n" -" initialized. Please make a new order if necessary.\n" -" " +" This order is expired. New payments cannot be " +"initialized. Please make a new order if necessary.\n" +" " msgstr "" "\n" " انتهت صلاحية هذا الطلب. سيتم قبول أي دفعة سابقة، لكن لا " @@ -15479,12 +15829,18 @@ msgstr "" " يرجى إنشاء طلب جديد إذا لزم الأمر.\n" " " -#: templates/plans/order_detail.html:74 +#: templates/plans/order_detail.html:99 +#, fuzzy +#| msgid "" +#| "\n" +#| " This order could not be processed as it is not valid. " +#| "Please contact with customer service.\n" +#| " " msgid "" "\n" -" This order could not be processed as it is not valid. Please " -"contact with customer service.\n" -" " +" This order could not be processed as it is not valid. " +"Please contact customer service.\n" +" " msgstr "" "\n" " لا يمكن معالجة هذا الطلب لأنه غير صالح. يرجى الاتصال بخدمة " @@ -15662,11 +16018,6 @@ msgstr "الرجاء إدخال رقم هيكل صالح مكون من 17 حرف msgid "Confirm Your Information" msgstr "تأكيد معلوماتك" -#: templates/pricing_page.html:288 -#: templates/sales/orders/order_details.html:100 -msgid "Order Summary" -msgstr "ملخص الطلب" - #: templates/pricing_page.html:304 msgid "User Information" msgstr "معلومات المستخدم" @@ -15718,23 +16069,35 @@ msgstr "هل أنت متأكد أنك تريد حذف هذا المستخدم؟" msgid "Yes, Delete" msgstr "حذف" -#: templates/purchase_orders/po_delete.html:14 +#: templates/purchase_orders/po_delete.html:6 +#, fuzzy +#| msgid "Delete Purchase Order " +msgid "Delete Purchase Order" +msgstr "حذف أمر الشراء" + +#: templates/purchase_orders/po_delete.html:17 #, python-format msgid "" "Are you sure you want to delete\n" " Purchase Order %(po_model.po_number)s?" msgstr "" -#: templates/purchase_orders/po_delete.html:20 +#: templates/purchase_orders/po_delete.html:23 msgid "click here" msgstr "انقر هنا" +#: templates/purchase_orders/po_detail.html:7 +#: templates/purchase_orders/po_list.html:86 +msgid "Purchase Order Detail" +msgstr "نموذج أمر الشراء" + #: templates/purchase_orders/po_detail_backup.html:59 msgid "View Purchase Order" msgstr "عرض أمر الشراء" #: templates/purchase_orders/po_form.html:6 #: templates/purchase_orders/po_form.html:23 +#: templates/purchase_orders/po_update.html:9 #, fuzzy #| msgid "Create Purchase Order" msgid "Update Purchase Order" @@ -15746,10 +16109,6 @@ msgstr "إنشاء أمر شراء" msgid "Create New Purchase" msgstr "إنشاء منتج جديد" -#: templates/purchase_orders/po_list.html:86 -msgid "Purchase Order Detail" -msgstr "نموذج أمر الشراء" - #: templates/purchase_orders/po_list.html:95 msgid "Fulfill the PO Before Viewing Inventory" msgstr "املأ أمر الشراء قبل عرض المخزون" @@ -15766,11 +16125,22 @@ msgid "" "Order." msgstr "" -#: templates/purchase_orders/po_upload_cars.html:34 +#: templates/purchase_orders/po_upload_cars.html:4 +#, fuzzy +#| msgid "Upload Cars CSV" +msgid "Upload Cars" +msgstr "رفع بيانات السيارات " + +#: templates/purchase_orders/po_upload_cars.html:12 +#: templates/support/ticket_detail.html:24 +msgid "Status:" +msgstr "الحالة" + +#: templates/purchase_orders/po_upload_cars.html:37 msgid "Is Data Uploaded ?" msgstr "هل تم رفع البيانات؟" -#: templates/purchase_orders/po_upload_cars.html:49 +#: templates/purchase_orders/po_upload_cars.html:52 msgid "Upload Data" msgstr "رفع بيانات السيارات" @@ -15955,8 +16325,6 @@ msgid "Commercial Registration Number (CRN)" msgstr "رقم السجل التجاري" #: templates/registration/signup.html:211 -#, fuzzy -#| msgid "VAT Registration Number" msgid "Vehicle Registration Number (VRN)" msgstr "رقم التسجيل في ضريبة القيمة المضافة" @@ -15991,8 +16359,10 @@ msgid "Complete Registration" msgstr "التسجيل" #: templates/registration/signup.html:327 -msgid "Processing your registration..." -msgstr "" +#, fuzzy +#| msgid "An error occurred while decoding the VIN." +msgid "Processing your registration" +msgstr "حدث خطأ أثناء فك تشفير الهيكل" #: templates/registration/signup.html:375 #, fuzzy @@ -16052,6 +16422,7 @@ msgid "Preview Sale Order" msgstr "معاينة أمر البيع" #: templates/sales/estimates/estimate_detail.html:156 +#: templates/sales/estimates/sale_order_form.html:6 #: templates/sales/estimates/sale_order_form.html:14 msgid "Create Sale Order" msgstr "إنشاء أمر بيع" @@ -16097,8 +16468,8 @@ msgstr "لم يتم العثور على عروض" msgid "Send Estimate" msgstr "حفظ التقدير" -#: templates/sales/estimates/sale_order_form.html:6 #: templates/sales/estimates/sale_order_form1.html:5 +#: templates/sales/estimates/sale_order_preview.html:7 #: templates/sales/estimates/sale_order_preview.html:176 #: templates/sales/orders/order_details.html:79 msgid "Sale Order" @@ -16507,6 +16878,10 @@ msgstr "معاينة أمر البيع" msgid "Saving..." msgstr "حساب توفير" +#: templates/staff/staff_detail.html:4 templates/users/user_detail.html:15 +msgid "Staff Profile" +msgstr "الملف الشخصي للموظف" + #: templates/staff/staff_detail.html:10 #, fuzzy #| msgid "View Profile" @@ -16545,11 +16920,17 @@ msgstr "الاشتراك" msgid "Now" msgstr "الآن" -#: templates/support/create_ticket.html:11 +#: templates/support/create_ticket.html:6 +#, fuzzy +#| msgid "Back to list" +msgid "Raise Ticket" +msgstr "العودة إلى القائمة" + +#: templates/support/create_ticket.html:14 msgid "Create Support Ticket" msgstr "إنشاء تذكرة جديدة" -#: templates/support/create_ticket.html:23 +#: templates/support/create_ticket.html:26 #, fuzzy #| msgid "Submit" msgid "Submit Ticket" @@ -16576,10 +16957,6 @@ msgstr "العودة إلى القائمة" msgid "Ticket" msgstr "تذاكر السفر" -#: templates/support/ticket_detail.html:24 -msgid "Status:" -msgstr "الحالة" - #: templates/support/ticket_detail.html:30 msgid "Priority:" msgstr "الأولوية" @@ -16620,26 +16997,37 @@ msgstr "" msgid "Raise a New Ticket" msgstr "قم برفع تذكرة جديدة" -#: templates/support/ticket_list.html:96 +#: templates/support/ticket_list.html:121 #, fuzzy #| msgid "No Entries found" msgid "No tickets found." msgstr "لم يتم العثور على أي مدخلات" -#: templates/support/ticket_list.html:97 +#: templates/support/ticket_list.html:122 msgid "All your past and present tickets will appear here." msgstr "جميع التذاكر الخاصة بك ستظهر هنا." -#: templates/support/ticket_update.html:8 +#: templates/support/ticket_update.html:6 +#: templates/support/ticket_update.html:17 #, fuzzy #| msgid "Update Service" msgid "Update Ticket" msgstr "تحديث الخدمة" +#: templates/support/ticket_update.html:20 +msgid "Make changes to the ticket details below and save." +msgstr "" + #: templates/terms_and_privacy.html:4 msgid "Terms of use and privacy policy" msgstr "شروط الاستخدام وسياسة الخصوصية" +#: templates/tours/start_tour.html:2 +#, fuzzy +#| msgid "Inactive" +msgid "Interactive Guide" +msgstr "غير نشط" + #: templates/tours/start_tour.html:9 #, fuzzy #| msgid "Get Started" @@ -16656,7 +17044,7 @@ msgstr "" msgid "Start Guide Now" msgstr "وقت البدء" -#: templates/tours/tour_list.html:5 +#: templates/tours/tour_list.html:2 templates/tours/tour_list.html:5 #, fuzzy #| msgid "Inactive" msgid "Interactive Guides" @@ -16960,10 +17348,6 @@ msgid "" msgstr "" "ومع ذلك، لا ننصحك بفعل ذلك، ولكن يمكنك أيضًا تعطيل المصادقة الثنائية لحسابك." -#: templates/users/user_detail.html:15 -msgid "Staff Profile" -msgstr "الملف الشخصي للموظف" - #: templates/users/user_detail.html:24 msgid "Are you sure you want to delete this user?" msgstr "هل أنت متأكد أنك تريد حذف هذا المستخدم؟" @@ -17021,19 +17405,19 @@ msgstr "لا يوجد اشتراك نشط، يرجى تفعيل اشتراكك." msgid "Buy Plan" msgstr "شراء باقة " -#: templates/users/user_password_reset.html:9 +#: templates/users/user_password_reset.html:12 #, fuzzy #| msgid "Set Password" msgid "Set New Password" msgstr "تعيين كلمة المرور" -#: templates/users/user_password_reset.html:14 +#: templates/users/user_password_reset.html:17 #, fuzzy #| msgid "Enter your password:" msgid "Enter your new password below." msgstr "أدخل كلمة المرور الخاصة بك:" -#: templates/users/user_password_reset.html:35 +#: templates/users/user_password_reset.html:38 msgid "Remember to choose a strong password." msgstr "تذكر اختيار كلمة مرور قوية." @@ -17101,7 +17485,7 @@ msgstr "تسهيل" msgid "Your Car Dealership Operations" msgstr "عمليات معرض السيارات الخاص بك" -#: templates/welcome-temp.html:135 templates/welcome.html:52 +#: templates/welcome-temp.html:135 templates/welcome.html:51 msgid "Because Inventory Needs Order" msgstr "لأن المخزون يحتاج إلى تنظيم" @@ -17122,29 +17506,29 @@ msgstr "تعرف على المزيد" msgid "Empowering Your Dealership with Precision and Efficiency" msgstr "تمكين معرضك بالدقة والكفاءة" -#: templates/welcome-temp.html:163 templates/welcome.html:65 +#: templates/welcome-temp.html:163 templates/welcome.html:64 msgid "Inventory Management" msgstr "إدارة المخزون" -#: templates/welcome-temp.html:164 templates/welcome.html:67 +#: templates/welcome-temp.html:164 templates/welcome.html:66 msgid "" "Effortlessly manage your car inventory with real-time updates and intuitive " "tools." msgstr "قم بإدارة مخزون السيارات بسهولة مع التحديثات الفورية والأدوات البسيطة." -#: templates/welcome-temp.html:171 templates/welcome.html:80 +#: templates/welcome-temp.html:171 templates/welcome.html:79 msgid "Seamless Accounting" msgstr "محاسبة سلسة" -#: templates/welcome-temp.html:172 templates/welcome.html:81 +#: templates/welcome-temp.html:172 templates/welcome.html:80 msgid "Integrated double-entry accounting tailored for car dealers." msgstr "نظام محاسبة مزدوج القيد مدمج ومصمم خصيصًا لتجار السيارات." -#: templates/welcome-temp.html:179 templates/welcome.html:94 +#: templates/welcome-temp.html:179 templates/welcome.html:93 msgid "Advanced Analytics" msgstr "تحليلات متقدمة" -#: templates/welcome-temp.html:180 templates/welcome.html:95 +#: templates/welcome-temp.html:180 templates/welcome.html:94 msgid "Gain insights and make data-driven decisions for your business." msgstr "احصل على رؤى دقيقة واتخذ قرارات مستندة إلى البيانات لنشاطك التجاري." @@ -17160,7 +17544,7 @@ msgstr "خطط مرنة مصممة لتلبية الاحتياجات الفري msgid "Why us" msgstr "لماذا نحن" -#: templates/welcome.html:33 templates/welcome.html:111 +#: templates/welcome.html:33 templates/welcome.html:110 msgid "CRM" msgstr "إدارة علاقات العملاء" @@ -17172,7 +17556,7 @@ msgstr "المحاسبة" msgid "Reporting" msgstr "التقارير" -#: templates/welcome.html:54 +#: templates/welcome.html:53 msgid "" "Haikal empowers car dealers with a seamless, structured system to manage " "their inventory effortlessly, ensuring every vehicle is tracked, accounted " @@ -17181,7 +17565,7 @@ msgstr "" "يمكن هيكل معارض السيارات من إدارة مخزونهم بسهولة من خلال نظام منظم وسلس، مما " "يضمن تتبع كل مركبة وتسجيلها وجعلها جاهزة للبيع بدقة وكفاءة." -#: templates/welcome.html:113 +#: templates/welcome.html:112 msgid "" "Specialized customer relationship management system designed for car " "dealers, offering streamlined sales." @@ -17189,37 +17573,37 @@ msgstr "" "نظام متخصص لإدارة علاقات العملاء مصمم لتجار السيارات، يوفر عمليات بيع سلسة " "ومنظمة." -#: templates/welcome.html:147 +#: templates/welcome.html:144 #, fuzzy -#| msgid "Month" -msgid "month" -msgstr "الشهر" +#| msgid "Days Off" +msgid "Days" +msgstr "أيام الإجازة" -#: templates/welcome.html:149 +#: templates/welcome.html:146 msgid "Included" msgstr "متضمن" -#: templates/welcome.html:181 +#: templates/welcome.html:176 msgid "Other features" msgstr "ميزات أخرى" -#: templates/welcome.html:182 +#: templates/welcome.html:177 msgid "Find out other features included in Haikal" msgstr "اكتشف الميزات الأخرى المضمنة في هيكل" -#: templates/welcome.html:194 +#: templates/welcome.html:189 msgid "Manage Everything from one place" msgstr "إدارة كل شيء من مكان واحد" -#: templates/welcome.html:204 +#: templates/welcome.html:199 msgid "The Car is in the center of your business" msgstr "السيارة هي محور عملك" -#: templates/welcome.html:214 +#: templates/welcome.html:209 msgid "Fully Integrated System" msgstr "نظام متكامل بالكامل" -#: templates/welcome.html:224 +#: templates/welcome.html:219 msgid "Advanced Dashboards for better decisions" msgstr "لوحات تحكم متقدمة لاتخاذ قرارات أفضل" @@ -17231,6 +17615,74 @@ msgstr "جميع الحقوق محفوظة" msgid "Powered by" msgstr "مدعوم من" +#~ msgid "Probability (%)" +#~ msgstr "الاحتمالية (%)" + +#, fuzzy +#~| msgid "You do not have permission to schedule lead" +#~ msgid "You do not have permission to schedule." +#~ msgstr "ليست لديك صلاحية جدولة هذا العميل المتوقع" + +#, fuzzy +#~| msgid "We couldn't process your payment. Please try again" +#~ msgid "Invalid password. Please try again." +#~ msgstr "تعذر معالجة دفعتك. يرجى المحاولة مرة أخرى" + +#~ msgid "Admin Management" +#~ msgstr "إدارة المشرفين" + +#~ msgid "Audit Log Dashboard" +#~ msgstr "لوحة سجل التدقيق" + +#, fuzzy +#~| msgid "View Vendor" +#~ msgid "View in Calendar" +#~ msgstr "عرض المورد" + +#, fuzzy +#~| msgid "Notifications" +#~ msgid "No notifications found." +#~ msgstr "الإشعارات" + +#, fuzzy, python-format +#~| msgid "Probability (%)" +#~ msgid "Probability (%%)" +#~ msgstr "الاحتمالية (%)" + +#, fuzzy +#~| msgid "No accounts found in this category." +#~ msgid "No notes found for this customer." +#~ msgstr "لم يتم العثور على أي حسابات في هذه الفئة." + +#~ msgid "Edit Account" +#~ msgstr "تعديل الحساب" + +#, fuzzy +#~| msgid "Are you sure you want to delete this lead?" +#~ msgid "Are you sure you want to delete?" +#~ msgstr "هل أنت متأكد أنك تريد حذف هذا العميل المحتمل؟" + +#, fuzzy, python-format +#~| msgid "" +#~| "Order #%(order_id)s\n" +#~| " (status: %(order_status)s)" +#~ msgid "" +#~ "Order #%(order_id)s\n" +#~ " (status: %(order_status)s)" +#~ msgstr "" +#~ "طلب رقم %(order_id)s\n" +#~ "(الحالة: %(order_status)s)" + +#, fuzzy +#~| msgid "Create Order" +#~ msgid "Pay the order" +#~ msgstr "إنشاء طلب" + +#, fuzzy +#~| msgid "Month" +#~ msgid "month" +#~ msgstr "الشهر" + #~ msgid "Services Offered" #~ msgstr "الخدمات المقدمة" @@ -17266,11 +17718,6 @@ msgstr "مدعوم من" #~ msgid "Haikal Contact" #~ msgstr "هيكل بوت" -#, fuzzy -#~| msgid "HaikalBot" -#~ msgid "Haikal Bot" -#~ msgstr "هيكل بوت" - #~ msgid "Ask me anything..." #~ msgstr "اسألني عن أي شيء..." diff --git a/requirements.prod.txt b/requirements.prod.txt new file mode 100644 index 00000000..12816cbf --- /dev/null +++ b/requirements.prod.txt @@ -0,0 +1,162 @@ +annotated-types==0.7.0 +anyio==4.9.0 +arrow==1.3.0 +asgiref==3.9.1 +attrs==25.3.0 +autobahn==24.4.2 +Automat==25.4.16 +Babel==2.15.0 +beautifulsoup4==4.13.4 +blessed==1.21.0 +cattrs==25.1.1 +certifi==2025.7.9 +cffi==1.17.1 +channels==4.2.2 +charset-normalizer==3.4.2 +click==8.2.1 +colorama==0.4.6 +constantly==23.10.4 +crispy-bootstrap5==2025.6 +cryptography==45.0.5 +cssbeautifier==1.15.4 +daphne==4.2.1 +defusedxml==0.7.1 +diff-match-patch==20241021 +distro==1.9.0 +Django==5.2.4 +django-allauth==65.10.0 +django-appconf==1.1.0 +django-appointment==3.8.0 +django-background-tasks==1.2.8 +django-bootstrap5==25.1 +django-ckeditor==6.7.3 +django-cors-headers==4.7.0 +django-countries==7.6.1 +django-crispy-forms==2.4 +django-debug-toolbar==5.2.0 +django-easy-audit==1.3.7 +django-encrypted-model-fields==0.6.5 +django-extensions==4.1 +django-filter==25.1 +django-imagekit==5.0.0 +django-import-export==4.3.8 +django-js-asset==3.1.2 +django-ledger==0.7.11 +django-manager-utils==3.1.5 +django-next-url-mixin==0.4.0 +django-ordered-model==3.7.4 +django-phonenumber-field==8.0.0 +django-picklefield==3.3 +django-plans==2.0.0 +django-prometheus==2.4.1 +django-q2==1.8.0 +django-query-builder==3.2.0 +django-schema-graph==3.1.0 +django-sequences==3.0 +django-tables2==2.7.5 +django-treebeard==4.7.1 +django-widget-tweaks==1.5.0 +djangorestframework==3.16.0 +djhtml==3.0.8 +djlint==1.36.4 +dnspython==2.7.0 +docopt==0.6.2 +EditorConfig==0.17.1 +Faker==37.4.0 +fleming==0.7.0 +fonttools==4.58.5 +fpdf==1.7.2 +fpdf2==2.8.3 +greenlet==3.2.3 +gunicorn==23.0.0 +h11==0.16.0 +h2==4.2.0 +hpack==4.1.0 +httpcore==1.0.9 +httpx==0.28.1 +hyperframe==6.1.0 +hyperlink==21.0.0 +icalendar==6.3.1 +idna==3.10 +incremental==24.7.2 +iron-core==1.2.1 +iron-mq==0.9 +jiter==0.10.0 +jsbeautifier==1.15.4 +json5==0.12.0 +jsonpatch==1.33 +jsonpointer==3.0.0 +jwt==1.4.0 +langchain==0.3.26 +langchain-core==0.3.68 +langchain-ollama==0.3.4 +langchain-text-splitters==0.3.8 +langsmith==0.4.4 +luhnchecker==0.0.12 +Markdown==3.8.2 +markdown-it-py==3.0.0 +mdurl==0.1.2 +num2words==0.5.14 +numpy==2.3.1 +ofxtools==0.9.5 +ollama==0.5.1 +openai==1.93.3 +opencv-python==4.11.0.86 +orjson==3.10.18 +packaging==24.2 +pandas==2.3.1 +pathspec==0.12.1 +phonenumbers==8.13.42 +pilkit==3.0 +pillow==10.4.0 +priority==1.3.0 +prometheus_client==0.22.1 +psycopg2-binary==2.9.10 +pyasn1==0.6.1 +pyasn1_modules==0.4.2 +pycparser==2.22 +pydantic==2.11.7 +pydantic_core==2.33.2 +Pygments==2.19.2 +pymongo==4.14.1 +pyOpenSSL==25.1.0 +python-dateutil==2.9.0.post0 +python-dotenv==1.1.1 +python-slugify==8.0.4 +python-stdnum==2.1 +pytz==2025.2 +pyvin==0.0.2 +PyYAML==6.0.2 +pyzbar==0.1.9 +redis==6.2.0 +regex==2024.11.6 +requests==2.32.4 +requests-toolbelt==1.0.0 +rich==14.0.0 +ruff==0.12.2 +service-identity==24.2.0 +setuptools==80.9.0 +six==1.17.0 +sniffio==1.3.1 +soupsieve==2.7 +SQLAlchemy==2.0.41 +sqlparse==0.5.3 +suds==1.2.0 +swapper==1.3.0 +tablib==3.8.0 +tenacity==9.1.2 +text-unidecode==1.3 +tqdm==4.67.1 +Twisted==25.5.0 +txaio==25.6.1 +types-python-dateutil==2.9.0.20250708 +typing-inspection==0.4.1 +typing_extensions==4.14.1 +tzdata==2025.2 +urllib3==2.5.0 +uvicorn==0.35.0 +uvicorn-worker==0.3.0 +wcwidth==0.2.13 +whitenoise==6.9.0 +zope.interface==7.2 +zstandard==0.23.0 diff --git a/requirements.txt b/requirements.txt index 6b99c8eb..91112eb4 100644 --- a/requirements.txt +++ b/requirements.txt @@ -1,162 +1,374 @@ +aiofiles==24.1.0 +aiohappyeyeballs==2.6.1 +aiohttp==3.11.14 +aiohttp-retry==2.9.1 +aiosignal==1.3.2 +alabaster==1.0.0 +albucore==0.0.23 +albumentations==2.0.5 annotated-types==0.7.0 anyio==4.9.0 +arabic-reshaper==3.0.0 arrow==1.3.0 asgiref==3.9.1 +astor==0.8.1 +astroid==3.3.9 attrs==25.3.0 -autobahn==24.4.2 -Automat==25.4.16 +autopep8==2.3.2 Babel==2.15.0 beautifulsoup4==4.13.4 +bidict==0.23.1 +binaryornot==0.4.4 +bleach==6.2.0 blessed==1.21.0 +blinker==1.9.0 +Brotli==1.1.0 cattrs==25.1.1 certifi==2025.7.9 cffi==1.17.1 -channels==4.2.2 +chardet==5.2.0 charset-normalizer==3.4.2 click==8.2.1 colorama==0.4.6 -constantly==23.10.4 +commonmark==0.9.1 +contourpy==1.3.1 +cookiecutter==2.6.0 crispy-bootstrap5==2025.6 cryptography==45.0.5 cssbeautifier==1.15.4 -daphne==4.2.1 +cssselect2==0.8.0 +cycler==0.12.1 +Cython==3.0.12 +datastar-py==0.6.2 +decorator==5.2.1 defusedxml==0.7.1 +desert==2020.11.18 diff-match-patch==20241021 +dill==0.3.9 +distlib==0.3.9 distro==1.9.0 +dj-rest-auth==7.0.1 +dj-shop-cart==7.1.1 Django==5.2.4 +django-admin-sortable2==1.0.4 django-allauth==65.10.0 +django-angular==2.3.1 django-appconf==1.1.0 django-appointment==3.8.0 django-background-tasks==1.2.8 django-bootstrap5==25.1 django-ckeditor==6.7.3 +django-classy-tags==3.0.1 +django-cms==3.11.3 django-cors-headers==4.7.0 django-countries==7.6.1 django-crispy-forms==2.4 django-debug-toolbar==5.2.0 django-easy-audit==1.3.7 django-encrypted-model-fields==0.6.5 +django-entangled==0.6.2 django-extensions==4.1 +django-extra-views==0.14.0 +django-filer==3.0.3 django-filter==25.1 +django-formtools==2.4 +django-fsm==3.0.0 +django-fsm-admin==1.2.5 +django-haystack==3.3.0 django-imagekit==5.0.0 django-import-export==4.3.8 +django-ipware==7.0.1 django-js-asset==3.1.2 django-ledger==0.7.6.1 django-manager-utils==3.1.5 +django-model-utils==5.0.0 +django-money==3.5.3 django-next-url-mixin==0.4.0 +django-nine==0.2.7 +django-nonefield==0.4 django-ordered-model==3.7.4 +django-oscar==3.2.5 +django-pdf-actions==0.1.44 django-phonenumber-field==8.0.0 django-picklefield==3.3 django-plans==2.0.0 -django-prometheus==2.4.1 +django-polymorphic==3.1.0 +django-post-office==3.6.3 +django-prometheus==2.3.1 django-q2==1.8.0 django-query-builder==3.2.0 +django-rest-auth==0.9.5 django-schema-graph==3.1.0 +django-sekizai==3.0.1 +django-select2==7.10.0 django-sequences==3.0 +django-shop==1.2.4 +django-silk==5.3.2 +django-sms==0.7.0 +django-sslserver==0.22 django-tables2==2.7.5 +django-tailwind==4.0.1 django-treebeard==4.7.1 +django-view-breadcrumbs==2.5.1 +django-viewflow==2.2.12 django-widget-tweaks==1.5.0 +djangocms-admin-style==3.3.1 +djangocms-cascade==1.3.7 +djangocms-text-ckeditor==5.1.7 djangorestframework==3.16.0 +djangorestframework_simplejwt==5.5.0 +djangoviz==0.1.1 djhtml==3.0.8 djlint==1.36.4 -dnspython==2.7.0 docopt==0.6.2 +docutils==0.21.2 +easy-thumbnails==2.9 +ecdsa==0.19.1 EditorConfig==0.17.1 +emoji==2.14.1 +et_xmlfile==2.0.0 +factory-boy==3.2.1 Faker==37.4.0 +fastapi==0.115.12 +filelock==3.18.0 +fire==0.7.0 fleming==0.7.0 fonttools==4.58.5 fpdf==1.7.2 fpdf2==2.8.3 +frozenlist==1.5.0 +fsspec==2025.3.0 +gprof2dot==2024.6.6 +graphqlclient==0.2.4 greenlet==3.2.3 -gunicorn==23.0.0 h11==0.16.0 h2==4.2.0 hpack==4.1.0 +hstspreload==2025.1.1 +html5lib==1.1 +htmx==0.0.0 httpcore==1.0.9 +httptools==0.6.4 httpx==0.28.1 +httpx-ws==0.7.2 hyperframe==6.1.0 -hyperlink==21.0.0 icalendar==6.3.1 idna==3.10 -incremental==24.7.2 -iron-core==1.2.1 -iron-mq==0.9 +ifaddr==0.2.0 +imageio==2.37.0 +imagesize==1.4.1 +imgaug==0.4.0 +iso4217==1.12.20240625 +isodate==0.7.2 +isort==6.0.1 +itsdangerous==2.2.0 +Jinja2==3.1.6 jiter==0.10.0 +joblib==1.4.2 jsbeautifier==1.15.4 json5==0.12.0 +jsonfield==3.1.0 jsonpatch==1.33 jsonpointer==3.0.0 jwt==1.4.0 +kiwisolver==1.4.8 langchain==0.3.26 langchain-core==0.3.68 langchain-ollama==0.3.4 langchain-text-splitters==0.3.8 langsmith==0.4.4 +lazy_loader==0.4 +ledger==1.0.1 +libretranslatepy==2.1.4 +lmdb==1.6.2 +lmstudio==1.4.1 luhnchecker==0.0.12 +lxml==5.3.1 Markdown==3.8.2 markdown-it-py==3.0.0 +markdown2==2.5.3 +MarkupSafe==3.0.2 +marshmallow==3.26.1 +matplotlib==3.10.1 +mccabe==0.7.0 mdurl==0.1.2 +MouseInfo==0.1.3 +mpmath==1.3.0 +msgspec==0.19.0 +multidict==6.2.0 +mypy-extensions==1.0.0 +networkx==3.4.2 +newrelic==10.7.0 +nicegui==2.13.0 +nltk==3.9.1 num2words==0.5.14 numpy==2.3.1 +nvidia-cublas-cu12==12.4.5.8 +nvidia-cuda-cupti-cu12==12.4.127 +nvidia-cuda-nvrtc-cu12==12.4.127 +nvidia-cuda-runtime-cu12==12.4.127 +nvidia-cudnn-cu12==9.1.0.70 +nvidia-cufft-cu12==11.2.1.3 +nvidia-curand-cu12==10.3.5.147 +nvidia-cusolver-cu12==11.6.1.9 +nvidia-cusparse-cu12==12.3.1.170 +nvidia-cusparselt-cu12==0.6.2 +nvidia-nccl-cu12==2.21.5 +nvidia-nvjitlink-cu12==12.4.127 +nvidia-nvtx-cu12==12.4.127 +oauthlib==3.2.2 ofxtools==0.9.5 ollama==0.5.1 openai==1.93.3 +opencv-contrib-python==4.11.0.86 opencv-python==4.11.0.86 +opencv-python-headless==4.11.0.86 +openpyxl==3.1.5 +opt_einsum==3.4.0 orjson==3.10.18 +outcome==1.3.0.post0 packaging==24.2 pandas==2.3.1 +pango==0.0.1 +passlib==1.7.4 pathspec==0.12.1 +pdfkit==1.0.0 phonenumbers==8.13.42 pilkit==3.0 pillow==10.4.0 -priority==1.3.0 -prometheus_client==0.22.1 +pipenv==2024.4.1 +platformdirs==4.3.7 +prometheus_client==0.21.1 +propcache==0.3.0 +protobuf==6.30.1 +pscript==0.7.7 +psycopg-binary==3.2.6 psycopg2-binary==2.9.10 +purl==1.6 +py-moneyed==3.0 pyasn1==0.6.1 -pyasn1_modules==0.4.2 +PyAutoGUI==0.9.54 +pyclipper==1.3.0.post6 +pycodestyle==2.12.1 +pycountry==24.6.1 pycparser==2.22 pydantic==2.11.7 pydantic_core==2.33.2 +pydotplus==2.0.2 +pydyf==0.11.0 +PyGetWindow==0.0.9 Pygments==2.19.2 -pymongo==4.14.1 -pyOpenSSL==25.1.0 +PyJWT==2.9.0 +pylint==3.3.5 +PyMsgBox==1.0.9 +pyparsing==3.2.1 +pypdf==5.4.0 +PyPDF2==3.0.1 +pyperclip==1.9.0 +pyphen==0.17.2 +pypng==0.20220715.0 +PyRect==0.2.0 +PyScreeze==1.0.1 +pyserial==3.5 +PySocks==1.7.1 +python-bidi==0.6.6 python-dateutil==2.9.0.post0 -python-dotenv==1.1.1 +python-docx==1.1.2 +python-dotenv==1.0.1 +python-engineio==4.11.2 +python-ipware==3.0.0 +python-jose==3.5.0 +python-multipart==0.0.20 +python-openid==2.2.5 python-slugify==8.0.4 +python-socketio==5.12.1 python-stdnum==2.1 +python3-saml==1.16.0 +python3-xlib==0.15 +pytweening==1.2.0 pytz==2025.2 pyvin==0.0.2 PyYAML==6.0.2 pyzbar==0.1.9 +qrcode==8.0 +RapidFuzz==3.12.2 redis==6.2.0 regex==2024.11.6 +reportlab==4.3.1 requests==2.32.4 +requests-oauthlib==2.0.0 requests-toolbelt==1.0.0 +rfc3986==2.0.0 rich==14.0.0 +rsa==4.9.1 +rubicon-objc==0.5.0 ruff==0.12.2 -service-identity==24.2.0 +sacremoses==0.1.1 +scikit-image==0.25.2 +scikit-learn==1.6.1 +scipy==1.15.2 +selenium==4.29.0 +sentencepiece==0.2.0 setuptools==80.9.0 +shapely==2.0.7 +simple-websocket==1.1.0 +simsimd==6.2.1 six==1.17.0 sniffio==1.3.1 +snowballstemmer==2.2.0 +sorl-thumbnail==12.9.0 +sortedcontainers==2.4.0 soupsieve==2.7 SQLAlchemy==2.0.41 sqlparse==0.5.3 +stanza==1.10.1 +starlette==0.46.1 +stringzilla==3.12.3 suds==1.2.0 +svglib==1.5.1 swapper==1.3.0 +sympy==1.13.1 tablib==3.8.0 tenacity==9.1.2 +termcolor==2.5.0 text-unidecode==1.3 +threadpoolctl==3.6.0 +tifffile==2025.3.13 +tinycss2==1.4.0 +tinyhtml5==2.0.0 +tomli==2.2.1 +tomlkit==0.13.2 +torch==2.6.0 tqdm==4.67.1 -Twisted==25.5.0 -txaio==25.6.1 +trio==0.29.0 +trio-websocket==0.12.2 +triton==3.2.0 types-python-dateutil==2.9.0.20250708 +typing-inspect==0.9.0 typing-inspection==0.4.1 typing_extensions==4.14.1 tzdata==2025.2 +Unidecode==1.3.8 +upgrade-requirements==1.7.0 urllib3==2.5.0 -uvicorn==0.35.0 -uvicorn-worker==0.3.0 +uv==0.6.14 +uvicorn==0.34.0 +uvloop==0.21.0 +vbuild==0.8.2 +virtualenv==20.30.0 +vishap==0.1.5 +vpic-api==0.7.4 +watchfiles==1.0.4 wcwidth==0.2.13 +weasyprint==64.1 +webencodings==0.5.1 +websocket-client==1.8.0 +websockets==15.0.1 +Werkzeug==3.1.3 whitenoise==6.9.0 -zope.interface==7.2 +wikipedia==1.4.0 +wsproto==1.2.0 +xmlsec==1.3.15 +yarl==1.18.3 +zopfli==0.2.3.post1 zstandard==0.23.0 diff --git a/static/images/customers/3GCNY9EF5LG275234.png b/static/images/customers/3GCNY9EF5LG275234.png new file mode 100644 index 00000000..dccdedef Binary files /dev/null and b/static/images/customers/3GCNY9EF5LG275234.png differ diff --git a/staticfiles/images/customers/3GCNY9EF5LG275234.png b/staticfiles/images/customers/3GCNY9EF5LG275234.png new file mode 100644 index 00000000..dccdedef Binary files /dev/null and b/staticfiles/images/customers/3GCNY9EF5LG275234.png differ diff --git a/templates/account/account_inactive.html b/templates/account/account_inactive.html index 1fa63846..fa1311ca 100644 --- a/templates/account/account_inactive.html +++ b/templates/account/account_inactive.html @@ -1,4 +1,4 @@ -{% extends "allauth/layouts/entrance.html" %} +{% extends "base.html" %} {% load i18n %} {% load allauth %} {% block head_title %} diff --git a/templates/crm/opportunities/opportunity_detail.html b/templates/crm/opportunities/opportunity_detail.html index c208b117..7ad94a70 100644 --- a/templates/crm/opportunities/opportunity_detail.html +++ b/templates/crm/opportunities/opportunity_detail.html @@ -265,74 +265,13 @@ -
-
-
- -
-
-

{{ _("Expected Revenue") }}

-

{{ opportunity.expected_revenue }}

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

{% trans "Probability (%)" %}

-
-
: -

{{ opportunity.probability }} (%)

-
-
-
- -
-

{{ _("Estimated Revenue") }}

-
-
: -

- {{ opportunity.expected_revenue }} -

-
-
+
diff --git a/templates/customers/customer_list.html b/templates/customers/customer_list.html index d606b123..9f66149c 100644 --- a/templates/customers/customer_list.html +++ b/templates/customers/customer_list.html @@ -60,17 +60,6 @@ {{ _("Phone Number") }} - diff --git a/templates/customers/view_customer.html b/templates/customers/view_customer.html index 0bc040b6..53da72fe 100644 --- a/templates/customers/view_customer.html +++ b/templates/customers/view_customer.html @@ -1,4 +1,5 @@ {% extends "base.html" %} +{% load humanize %} {% load i18n static crispy_forms_filters custom_filters %} {% block title %} {{ _("View Customer") }} @@ -109,23 +110,50 @@ {% endif %}
-
-
-
- -
- {{ _("National ID") |capfirst }} -
-
{{ customer.phone_number }} - - {{ customer.national_id }} - {{ customer.address }}
- +
+ - - + + + + - + {% for note in notes %} - - - - - {% empty %} - - + + + + {% endfor %} diff --git a/templates/dealers/dealer_detail.html b/templates/dealers/dealer_detail.html index 8c61aa8a..280a10a5 100644 --- a/templates/dealers/dealer_detail.html +++ b/templates/dealers/dealer_detail.html @@ -168,7 +168,6 @@

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

-
{{ _("Per month") }}
    {% for line in dealer.user.userplan.plan.description|splitlines %} @@ -222,7 +221,7 @@
    {{ _("Used") }}: {{ dealer.staff_count }} - +
    @@ -237,7 +236,7 @@
    {{ _("Used") }}: {{ cars_count }} - +
    {{ _("Contact support to increase your limits") }} diff --git a/templates/haikal_policy/refund_policy.html b/templates/haikal_policy/refund_policy.html index c771bd21..2e9402c2 100644 --- a/templates/haikal_policy/refund_policy.html +++ b/templates/haikal_policy/refund_policy.html @@ -50,7 +50,7 @@

    {% trans "4. How to Request" %}

    - {% trans "Email our Billing and Support team at" %} haikal@support.sa {% trans "with your company name, account ID, invoice number, and a detailed reason for the refund." %} + {% trans "Email our Billing and Support team at" %} haikal@tehnal.sa {% trans "with your company name, account ID, invoice number, and a detailed reason for the refund." %}

    diff --git a/templates/inventory/car_detail.html b/templates/inventory/car_detail.html index 4b8b0c68..b47d6b5b 100644 --- a/templates/inventory/car_detail.html +++ b/templates/inventory/car_detail.html @@ -259,7 +259,7 @@
{% trans 'Note' %}{% trans 'Date' %}{{ _("Note") }}{{ _("Created On") }}{{ _("Last Updated") }}
{{ note.note|default_if_none:""|linebreaksbr }}{{ note.created|date:"d M Y" }}
- {% trans 'No notes found for this customer.' %} +
{{ note.note }}{{ note.created|naturalday|capfirst }}{{ note.updated|naturalday|capfirst }} + {% if note.created_by == request.user %} + + + {{ _("Update") }} + + + {% endif %}
- {% if car.marked_price %} + {% if car.marked_price and request.is_accountant or request.is_dealer or request.is_manager %} {% if request.is_dealer or request.is_accountant or request.manager%} diff --git a/templates/ledger/coa_accounts/account_list.html b/templates/ledger/coa_accounts/account_list.html index 8cc61741..482ad806 100644 --- a/templates/ledger/coa_accounts/account_list.html +++ b/templates/ledger/coa_accounts/account_list.html @@ -10,7 +10,6 @@ {% endblock %} {% block content %} - {% if accounts or request.GET.q %}

@@ -199,10 +198,7 @@

- {% else %} - {% url 'account_create' request.dealer.slug coa_pk as create_account_url %} - {% include "empty-illustration-page.html" with value="account" url=create_account_url %} - {% endif %} + {% endblock %} {% block customerJS %}
{% trans "Cost Price"|capfirst %}